<div dir="auto">Here are the “visitor pattern” methods I’d like to implement as an independent extension of X3DJSAIL to improve HAnim scaling code in scenegraphs.  A prototype is complete.  This is called X3DGAIL as I will call it from GraalJS, and  interact with Java classes in the Java/GraalJS FFI (FCI?).  This will be created in the JSHumanoids repository under Apache license.</div><div dir="auto"><br></div><div dir="auto">These will be implemented in Java as subclasses of, or delegating to X3DJSAIL classes with an abstract SAI interface inheritance, and possibly other interfaces for each method.  The app code will remain in GraalJS.</div><div dir="auto"><br></div><div dir="auto"><div>
<div>
<p dir="auto">findObjectsByInterface(interfaceArray)</p>
<p dir="auto">—To find humanoid objects in the scene graph.</p>
<p><br></p>
<p dir="auto">applyMatrix(Matrix4f, depth) or 3f?</p>
<p dir="auto">—For rescaling humanoids, centers, transforms, and geometry in the scene graph by their scaling factor, for applying standard matrix transformations to the humanoid figure,  but can be used more generally to rotate, scale, translate or skew an object .</p><p dir="auto">— depth of -1 means entire scene graph below current node, 0 is NO-OP. 1 means current node, 2 means 2 levels, …  you subtract from depth going down the scene graph recursively.</p>
<p><br></p>
<p dir="auto">reparentChildrenByParentClass(class, newParent, ignoredFieldSet)</p><p dir="auto">— if ignoredFieldSet is null, force reparenting.</p><p dir="auto">— for removing defaulted parents, like extra Transforms.</p><p dir="auto"><br></p><p dir="auto">These methods apply from the current object down the scene graph.</p><p dir="auto"><br></p><p dir="auto">I will probably try to implement this with a Java SAX Parser-Generator parsing X3DUOM and generating Java code.  If someone wants to turn this into a stylesheet, go for it , but we probably want to keep X3DJSAIL pristine.  There may be private methods used.</p><p dir="auto">Ultimately, this will be folded into X3DEOM and I will update the X3DEOM once the classes are working.</p><p dir="auto"><br></p><p dir="auto">It’s been a long day, sorry for the massive rambling.</p><p dir="auto">I reserve the last parameters for an error callback, or I will return a boolean.  Ideally, these could be implemented in a Compute Shader.</p><p dir="auto">Suggestions welcome!</p><p dir="auto"><br></p><p dir="auto">John</p><p dir="auto"><br></p><p dir="auto">I thought of X3DGRAIL, lol.</p>
</div>
</div><br></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 20, 2024 at 5:52 PM Polys, Nicholas <<a href="mailto:npolys@vt.edu">npolys@vt.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">



<div>
<div dir="auto">Indeed on the member side of Web3D</div>
<div dir="auto">We are eager for implementations and examples. </div>
<div dir="auto"><br>
</div>
<div dir="auto">As far as spec preparation, this is not public until The WG deems it.</div>
<div dir="auto">The WG has a Google drive space  to develop material, such as working drafts for mber review.</div>
<div dir="auto"><br>
</div>
<div dir="auto">When the Chairs deem a spec or errata  ready as a  working draft document draft ,</div>
<div dir="auto">The Web3D Consortium will create a GitHub branch for the spec version in question. At that point, the Chairs will be responsible to maintain updates on the way to review and submission by the Web3D Standards WG to </div>
<div dir="auto">Be approved by</div>
<div dir="auto">The Web3D Board  </div>
<div dir="auto">For submission to ISO</div>
<div dir="auto"><br>
</div>
<div dir="auto">Br,</div>
<div dir="auto">N </div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div id="m_7318832894757583950mail-editor-reference-message-container" dir="auto">
<br>
<hr style="display:inline-block;width:98%">
<div id="m_7318832894757583950divRplyFwdMsg" style="font-size:11pt"><strong>From:</strong> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
<strong>Sent:</strong> Tuesday, March 19, 2024 10:23:02 PM<br>
<strong>To:</strong> Anita Havele <<a href="mailto:anita.havele@web3d.org" target="_blank">anita.havele@web3d.org</a>>; Carol McDonald <<a href="mailto:carol@gneissconcept.com" target="_blank">carol@gneissconcept.com</a>>; Katy Schildmeyer KS APPAREL DESIGN <<a href="mailto:katy@ksappareldesign.com" target="_blank">katy@ksappareldesign.com</a>>; Emma Scott <<a href="mailto:connect@fashionshouldempower.com" target="_blank">connect@fashionshouldempower.com</a>>; Richard F. Puk <<a href="mailto:puk@igraphics.com" target="_blank">puk@igraphics.com</a>>; Polys, Nicholas
 <<a href="mailto:npolys@vt.edu" target="_blank">npolys@vt.edu</a>>; Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank">joedwil@earthlink.net</a>>; Myeong Won Lee <<a href="mailto:myeongwonlee@gmail.com" target="_blank">myeongwonlee@gmail.com</a>>; <a href="mailto:william.glascoe@tailoredaccess.com" target="_blank">william.glascoe@tailoredaccess.com</a> <<a href="mailto:william.glascoe@tailoredaccess.com" target="_blank">william.glascoe@tailoredaccess.com</a>>; <a href="mailto:vmarchetti@kshell.com" target="_blank">vmarchetti@kshell.com</a> <<a href="mailto:vmarchetti@kshell.com" target="_blank">vmarchetti@kshell.com</a>>; <a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a> <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>>;
 <a href="mailto:highaspirations@hotmail.com" target="_blank">highaspirations@hotmail.com</a> <<a href="mailto:highaspirations@hotmail.com" target="_blank">highaspirations@hotmail.com</a>><br>
<strong>Cc:</strong> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
<strong>Subject:</strong> RE: HAnim Resources page - add new/draft spec documents for review<br>
</div></div></div><div><div id="m_7318832894757583950mail-editor-reference-message-container" dir="auto">
<br>


<div>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:11pt;font-family:Aptos,sans-serif">Glad to see possible progress, but...  I have been emphatic (for at least a year) that proposed products looking to gain consensus must be publicly visible and comment-able to be considered for integration into tool suites and
 examples.  Have not heard or seen anything about that.</span></p>
<div>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New""> </span></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New"">all the best, Don</span></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New"">-- </span></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New"">Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank" style="font-family:"Courier New"">brutzman@nps.edu</a></span></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New"">Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:9pt;font-family:"Courier New"">X3D graphics, virtual worlds, navy robotics <a href="https://faculty.nps.edu/brutzman" target="_blank" style="font-family:"Courier New"">https://faculty.nps.edu/brutzman</a></span></p>
</div>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<span style="font-size:11pt;font-family:Aptos,sans-serif"> </span></p>
<div>
<div style="border-width:1pt medium medium;border-style:solid none none;padding:3pt 0in 0in;border-color:rgb(225,225,225) currentcolor currentcolor">
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
<b style="font-family:Aptos,sans-serif"><span style="font-size:11pt;font-family:Calibri,sans-serif">From:</span></b><span style="font-size:11pt;font-family:Calibri,sans-serif"> Anita Havele <<a href="mailto:anita.havele@web3d.org" target="_blank" style="font-family:Calibri,sans-serif">anita.havele@web3d.org</a>>
<br>
<b style="font-family:Calibri,sans-serif">Sent:</b> Tuesday, March 19, 2024 3:44 PM<br>
<b style="font-family:Calibri,sans-serif">To:</b> Carol McDonald <<a href="mailto:carol@gneissconcept.com" target="_blank" style="font-family:Calibri,sans-serif">carol@gneissconcept.com</a>>; Katy Schildmeyer KS APPAREL DESIGN <<a href="mailto:katy@ksappareldesign.com" target="_blank" style="font-family:Calibri,sans-serif">katy@ksappareldesign.com</a>>; Emma Scott <<a href="mailto:connect@fashionshouldempower.com" target="_blank" style="font-family:Calibri,sans-serif">connect@fashionshouldempower.com</a>>; Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank" style="font-family:Calibri,sans-serif">brutzman@nps.edu</a>>; Richard F. Puk <<a href="mailto:puk@igraphics.com" target="_blank" style="font-family:Calibri,sans-serif">puk@igraphics.com</a>>; Nicholas
 Polys <<a href="mailto:npolys@vt.edu" target="_blank" style="font-family:Calibri,sans-serif">npolys@vt.edu</a>>; Joseph D Williams <<a href="mailto:joedwil@earthlink.net" target="_blank" style="font-family:Calibri,sans-serif">joedwil@earthlink.net</a>>; Myeong Won Lee <<a href="mailto:myeongwonlee@gmail.com" target="_blank" style="font-family:Calibri,sans-serif">myeongwonlee@gmail.com</a>>; <a href="mailto:william.glascoe@tailoredaccess.com" target="_blank" style="font-family:Calibri,sans-serif">william.glascoe@tailoredaccess.com</a>; <a href="mailto:vmarchetti@kshell.com" target="_blank" style="font-family:Calibri,sans-serif">vmarchetti@kshell.com</a>; <a href="mailto:yottzumm@gmail.com" target="_blank" style="font-family:Calibri,sans-serif">yottzumm@gmail.com</a>; <a href="mailto:highaspirations@hotmail.com" target="_blank" style="font-family:Calibri,sans-serif">highaspirations@hotmail.com</a><br>
<b style="font-family:Calibri,sans-serif">Subject:</b> HAnim Resources page - add new/draft spec documents for review</span></p>
</div>
</div>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
 </p>
<p><span style="font-family:"Times New Roman",serif">Hi All,</span></p>
<p><span style="font-family:"Times New Roman",serif">Thank you team for these important discussions on now best to define the new feature points. To help us share and reference documents efficiently, I have created a members only resource page for the HAnim
 WG at : <a href="https://www.web3d.org/member/wg/hanim" target="_blank" style="font-family:"Times New Roman",serif">https://www.web3d.org/member/wg/hanim</a></span></p>
<p><span style="font-family:"Times New Roman",serif"><img border="0" src="cid:ii_18e5f6bb3c6ad7999131" style="width:824px;max-width:100%"></span></p>
<p><span style="font-family:"Times New Roman",serif">The <a href="https://drive.google.com/drive/folders/1zBUZXSg4R8VRcT_JM_kwR-BFOMs3M-l6?usp=sharing" target="_blank" style="font-family:"Times New Roman",serif">
documents folder</a> has a sub folder for -  <u style="font-family:"Times New Roman",serif">HAnim v3.0 Draft Documents</u> - <b style="font-family:"Times New Roman",serif">
please upload your new feature points documents here.</b> After proper review the documents will be moved to the
<a href="https://github.com/Web3DConsortium" target="_blank" style="font-family:"Times New Roman",serif">Web3D GitHub</a> Repository by WG chairs.
</span></p>
<p><span style="font-family:"Times New Roman",serif">Don and Myeong Won I see two branches for HAnim (Master and markers_for 3dbp) 
<a href="https://github.com/Web3DConsortium/HAnim/tree/markers_for_3dbp" target="_blank" style="font-family:"Times New Roman",serif">https://github.com/Web3DConsortium/HAnim/tree/markers_for_3dbp</a></span></p>
<p><span style="font-family:"Times New Roman",serif">This <a href="https://www.web3d.org/member/wg/hanim" target="_blank" style="font-family:"Times New Roman",serif">
HAnim resources page</a>  is also available from the<a href="https://www.web3d.org/calendar/month" target="_blank" style="font-family:"Times New Roman",serif"> Web3D calendar</a> under the HAnim meeting event. Here you can access meeting agendas, minutes and documents.  These are shared folders and documents so  please
 be mindful when making changes. This is a <b style="font-family:"Times New Roman",serif">member-only page</b>. You will need your Web3D member login.  If you have issues accessing  this page please contact me directly.
</span></p>
<p><span style="font-family:"Times New Roman",serif">Hope this helps!</span></p>
<p>-- <br>
Best regards, Anita-Havele Executive Director, Web3D Consortium <a href="http://www.web3d.org/" target="_blank">
www.web3d.org</a> Phone: +1 248 342 7662 <a href="http://www.web3d.org/havele" target="_blank">http://www.web3d.org/havele</a></p>
<p class="MsoNormal" style="margin:0in;font-size:12pt;font-family:Aptos,sans-serif">
 </p>
</div>
<br>
</div>
</div>

</blockquote></div></div>