<div dir="auto">Don,  I got close with what transforms are applied to attach hands and feet to humanoids in skeleton10.x3d. These transforms will need to be converted to existing HAnim* nodes.</div><div dir="auto"><br></div><div dir="auto">The best resource I have is skeleton10.x3d or perhaps <a href="http://h2.pl">h2.pl</a> (source code).</div><div dir="auto"><br></div><div dir="auto">I will sit down perhaps Wednesday and try to compute HAnim* translations and centers for connecting hands and feet.</div><div dir="auto"><br></div><div dir="auto">Meanwhile, I can share what I have.   Seems like a busy weekend.</div><div dir="auto"><br></div><div dir="auto">My hands and feet models likely need to be updated with what’s in the archive?</div><div dir="auto"><br></div><div dir="auto">My main goal at this point is to get an LOA4 skeleton.</div><div dir="auto"><br></div><div dir="auto">John</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Mar 14, 2021 at 2:06 PM Don Brutzman <<a href="mailto:brutzman@nps.edu">brutzman@nps.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)">Joe, thanks for your ongoing help scrutinizing HAnim model correctness and quality assurance.<br>
<br>
Check question please: does this all look good to you?<br>
<br>
The latest diagnostics (X3DUOM loa/parent information, X3D Schematron, X3dTidy) identified a topology flaw in our HAnim2 X3D4 hand models.<br>
<br>
Now mostly fixed - some geometry visualization values can be improved for the corrected joints, image attached.<br>
<br>
Public offer - does anyone want to fix the visualization geometry?<br>
<br>
<a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/HAnimModelHandRightSegmentVisualizationError.png" rel="noreferrer" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/HAnimModelHandRightSegmentVisualizationError.png</a><br>
<br>
=======================================================================================================<br>
Visualization report for HAnimHumanoid model hanim_Hand_Right<br>
<a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/HAnimModelHandRight.html#Hand_RightHAnimHumanoidReport" rel="noreferrer" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/HAnimModelHandRight.html#Hand_RightHAnimHumanoidReport</a><br>
=======================================================================================================<br>
HAnimHumanoid skeleton holds X3D4 HAnim2 triplets, HAnimJoint (25) : HAnimSegment (24) : HAnimSite (0)<br>
=======================================================================================================<br>
HAnimHumanoid DEF='hanim_Hand_Right name='Hand_Right' loa='4'<br>
   humanoid_root<br>
     r_radiocarpal : r_carpal<br>
       r_midcarpal_1 : r_trapezium<br>
       | r_carpometacarpal_1 : r_metacarpal_1<br>
       |   r_metacarpophalangeal_1 : r_carpal_proximal_phalanx_1<br>
       |     r_carpal_interphalangeal_1 : r_carpal_distal_phalanx_1<br>
       r_midcarpal_2 : r_trapezoid<br>
       | r_carpometacarpal_2 : r_metacarpal_2<br>
       |   r_metacarpophalangeal_2 : r_carpal_proximal_phalanx_2<br>
       |     r_carpal_proximal_interphalangeal_2 : r_carpal_middle_phalanx_2<br>
       |       r_carpal_distal_interphalangeal_2 : r_carpal_distal_phalanx_2<br>
       r_midcarpal_3 : r_capitate<br>
       | r_carpometacarpal_3 : r_metacarpal_3<br>
       |   r_metacarpophalangeal_3 : r_carpal_proximal_phalanx_3<br>
       |     r_carpal_proximal_interphalangeal_3 : r_carpal_middle_phalanx_3<br>
       |       r_carpal_distal_interphalangeal_3 : r_carpal_distal_phalanx_3<br>
       r_midcarpal_4_5 : r_hamate<br>
         r_carpometacarpal_4 : r_metacarpal_4<br>
         | r_metacarpophalangeal_4 : r_carpal_proximal_phalanx_4<br>
         |   r_carpal_proximal_interphalangeal_4 : r_carpal_middle_phalanx_4<br>
         |     r_carpal_distal_interphalangeal_4 : r_carpal_distal_phalanx_4<br>
         r_carpometacarpal_5 : r_metacarpal_5<br>
           r_metacarpophalangeal_5 : r_carpal_proximal_phalanx_5<br>
             r_carpal_proximal_interphalangeal_5 : r_carpal_middle_phalanx_5<br>
               r_carpal_distal_interphalangeal_5 : r_carpal_distal_phalanx_5<br>
=======================================================================================================<br>
<br>
<a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/build.X3dTidy.log.txt" rel="noreferrer" target="_blank">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/build.X3dTidy.log.txt</a><br>
<br>
C:\x3d-code\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\x3d\content\examples\HumanoidAnimation\Characters\HAnimModelHandRight.x3d<br>
check well-formedness of original model...<br>
1 file(s) have been successfully validated.<br>
check DTD validation  of original model...<br>
1 file(s) have been successfully validated.<br>
check schema validation of original model...<br>
check schematron validation of original model...<br>
C:\x3d-code\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\x3d\content\examples\HumanoidAnimation\Characters\HAnimModelHandRight.x3d validation using X3D Schematron rules<br>
X3D version 4.0 is approved by Web3D Consortium and focused on interoperabiliity with HTML, glTF Physically Based Rendering (PBR) and Web Audio API, undergoing review by ISO national bodies in 2021. [/X3D, diagnostic]<br>
<meta name='TODO' content='fix visible geometry for thumb and index finger, midcarpal_1 and midcarpal_2'/> [/X3D/head/meta[6], diagnostic]<br>
<meta name='warning' content='not yet to scale, also relatively flat'/> [/X3D/head/meta[7], diagnostic]<br>
<meta name='warning' content='TODO will X3D HAnim component add a new level to support LOA-4 functionality?'/> [/X3D/head/meta[8], diagnostic]<br>
<meta name='info' content='TODO describe how to compute and apply offsets for center values whenever attaching this appendage to a body'/> [/X3D/head/meta[9], diagnostic]<br>
<meta name='TODO' content='Integrate and confirm Segment/Joint names, Viewpoints.'/> [/X3D/head/meta[17], diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> version='2.0' with X3D version='4.0' [/X3D/Scene/HAnimHumanoid, diagnostic]<br>
==================================================================================================================== [/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(HAnimJoint)           within skeleton hierarchy        = 25[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(HAnimSegment)         within skeleton hierarchy        = 24[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(HAnimSite)            within HAnimHumanoid             = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(HAnimSite//Viewpoint) within skeleton hierarchy        = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(HAnimDisplacer)       within skeleton hierarchy        = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(<HAnimJoint   USE='*' containerField = 'joints'/>)     = 25[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(<HAnimSegment USE='*' containerField = 'segments'/>)   = 24[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(<HAnimSite    USE='*' containerField = 'sites'/>)      = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimHumanoid DEF='hanim_Hand_Right' name='Hand_Right'/> node count(<HAnimSite    DEF='*' name ends with '_view'/>)        = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br>
==================================================================================================================== [/X3D/Scene/HAnimHumanoid, diagnostic]<br>
<HAnimJoint DEF='hanim_r_radiocarpal' name='r_radiocarpal'/> has a missing (or default zero) offset field: center='0 0 0' [/X3D/Scene/HAnimHumanoid/HAnimJoint[1]/HAnimJoint, error]<br>
<HAnimJoint DEF='hanim_r_radiocarpal' name='r_radiocarpal'/> has parent HAnimJoint name='humanoid_root' rather than expected parent name='r_elbow', recommend checking model [/X3D/Scene/HAnimHumanoid/HAnimJoint[1]/HAnimJoint, warning]<br>
=======================================================================================================<br>
<br>
Further good news, specifications definitely helped confirm this is coming together consistently.<br>
<br>
<meta name='reference' content=' <a href="https://www.web3d.org/working-groups/humanoid-animation-HAnim" rel="noreferrer" target="_blank">https://www.web3d.org/working-groups/humanoid-animation-HAnim</a> '/><br>
<meta name='reference' content=' <a href="https://www.web3d.org/documents/specifications/19774/V2.0" rel="noreferrer" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0</a> '/><br>
<meta name='reference' content=' <a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#TheHands" rel="noreferrer" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#TheHands</a> '/><br>
<meta name='reference' content=' <a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-HandJoints" rel="noreferrer" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-HandJoints</a> '/><br>
<meta name='reference' content=' <a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4" rel="noreferrer" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4</a> '/><br>
<meta name='reference' content=' <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-WD2/Part01/components/hanim.html" rel="noreferrer" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-WD2/Part01/components/hanim.html</a> '/><br>
<br>
Having fun with Humanoid Animation (HAnim)!  8)<br>
<br>
all the best, Don<br>
-- <br>
Don Brutzman  Naval Postgraduate School, Code USW/Br       <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><br>
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer" target="_blank">http://faculty.nps.edu/brutzman</a><br>
_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>