[x3d-public] HAnim2 LOA4 Hierarchy from X3DUOM: sleuthing to resolve an HAnimJoint validation error

John Carlson yottzumm at gmail.com
Fri Feb 10 22:03:52 PST 2023


I started looking for missing or duplicate centers and translations in
sites and joints again.  Here is the final result, an entry in
loa4both.text (attached) means there's two enumerations in X3DUOM for LOA4
for that name, AFAIK (I checked one name).  No value at the end of a line,
means the default may be missing from X3DUOM (we'll have to double check
these).  I will check the code into www.web3d.org/x3d/tools/HAnim/hier2x3d
on sourceforge. (x3d project)

I hope this helps.  You can try different X3D XML in the work.sh file.  So
far, only LOA4 is accepted.


XML name attribute | name in file | default value (possibly none)
l_calcaneocuboid | l_calcaneocuboid
l_calcaneus | l_calcaneus
l_capitate | l_capitate
l_cuboid | l_cuboid
l_cuneiform_1 | l_cuneiform_1
l_cuneiform_2 | l_cuneiform_2
l_cuneiform_3 | l_cuneiform_3
l_cuneonavicular_1 | l_cuneonavicular_1
l_cuneonavicular_2 | l_cuneonavicular_2
l_cuneonavicular_3 | l_cuneonavicular_3
l_hamate | l_hamate
l_metatarsal_1 | l_metatarsal_1
l_metatarsal_3 | l_metatarsal_3
l_metatarsal_4 | l_metatarsal_4
l_metatarsal_5 | l_metatarsal_5
l_metatarsal_phalanx_1 | l_metatarsal_phalanx_1
l_metatarsal_phalanx_5 | l_metatarsal_phalanx_5
l_metatarsophalangeal_1 | l_metatarsophalangeal_1
l_metatarsophalangeal_3 | l_metatarsophalangeal_3
l_metatarsophalangeal_4 | l_metatarsophalangeal_4
l_metatarsophalangeal_5 | l_metatarsophalangeal_5
l_midcarpal_1 | l_midcarpal_1
l_midcarpal_2 | l_midcarpal_2
l_midcarpal_3 | l_midcarpal_3
l_midcarpal_4_5 | l_midcarpal_4_5
l_navicular | l_navicular
l_talocalcaneonavicular | l_talocalcaneonavicular
l_tarsal_distal_interphalangeal_3 | l_tarsal_distal_interphalangeal_3
l_tarsal_distal_interphalangeal_4 | l_tarsal_distal_interphalangeal_4
l_tarsal_distal_interphalangeal_5 | l_tarsal_distal_interphalangeal_5
l_tarsal_distal_phalanx_1 | l_tarsal_distal_phalanx_1 = 0.090 0.012 0.188
l_tarsal_distal_phalanx_1 | l_tarsal_distal_phalanx_1
l_tarsal_distal_phalanx_3 | l_tarsal_distal_phalanx_3 = 0.128 0.011 0.185
l_tarsal_distal_phalanx_3 | l_tarsal_distal_phalanx_3
l_tarsal_distal_phalanx_4 | l_tarsal_distal_phalanx_4 = 0.142 0.011 0.178
l_tarsal_distal_phalanx_4 | l_tarsal_distal_phalanx_4
l_tarsal_distal_phalanx_5 | l_tarsal_distal_phalanx_5 = 0.154 0.010 0.168
l_tarsal_distal_phalanx_5 | l_tarsal_distal_phalanx_5
l_tarsal_interphalangeal_1 | l_tarsal_interphalangeal_1
l_tarsal_middle_phalanx_2 | l_tarsal_middle_phalanx_2
l_tarsal_middle_phalanx_3 | l_tarsal_middle_phalanx_3
l_tarsal_middle_phalanx_4 | l_tarsal_middle_phalanx_4
l_tarsal_middle_phalanx_5 | l_tarsal_middle_phalanx_5
l_tarsal_proximal_interphalangeal_2 | l_tarsal_proximal_interphalangeal_2
l_tarsal_proximal_interphalangeal_3 | l_tarsal_proximal_interphalangeal_3
l_tarsal_proximal_interphalangeal_4 | l_tarsal_proximal_interphalangeal_4
l_tarsal_proximal_interphalangeal_5 | l_tarsal_proximal_interphalangeal_5
l_tarsal_proximal_phalanx_1 | l_tarsal_proximal_phalanx_1
l_tarsal_proximal_phalanx_3 | l_tarsal_proximal_phalanx_3
l_tarsal_proximal_phalanx_4 | l_tarsal_proximal_phalanx_4
l_tarsal_proximal_phalanx_5 | l_tarsal_proximal_phalanx_5
l_tarsometatarsal_1 | l_tarsometatarsal_1
l_tarsometatarsal_3 | l_tarsometatarsal_3
l_tarsometatarsal_4 | l_tarsometatarsal_4
l_tarsometatarsal_5 | l_tarsometatarsal_5
l_transversetarsal | l_transversetarsal
l_trapezium | l_trapezium
l_trapezoid | l_trapezoid
r_calcaneocuboid | r_calcaneocuboid
r_calcaneus | r_calcaneus
r_capitate | r_capitate
r_cuboid | r_cuboid
r_cuneiform_1 | r_cuneiform_1
r_cuneiform_2 | r_cuneiform_2
r_cuneiform_3 | r_cuneiform_3
r_cuneonavicular_1 | r_cuneonavicular_1
r_cuneonavicular_2 | r_cuneonavicular_2
r_cuneonavicular_3 | r_cuneonavicular_3
r_hamate | r_hamate
r_metatarsal_1 | r_metatarsal_1
r_metatarsal_3 | r_metatarsal_3
r_metatarsal_4 | r_metatarsal_4
r_metatarsal_5 | r_metatarsal_5
r_metatarsal_phalanx_1 | r_metatarsal_phalanx_1
r_metatarsal_phalanx_5 | r_metatarsal_phalanx_5
r_metatarsophalangeal_1 | r_metatarsophalangeal_1
r_metatarsophalangeal_3 | r_metatarsophalangeal_3
r_metatarsophalangeal_4 | r_metatarsophalangeal_4
r_metatarsophalangeal_5 | r_metatarsophalangeal_5
r_midcarpal_1 | r_midcarpal_1
r_midcarpal_2 | r_midcarpal_2
r_midcarpal_3 | r_midcarpal_3
r_midcarpal_4_5 | r_midcarpal_4_5
r_navicular | r_navicular
r_talocalcaneonavicular | r_talocalcaneonavicular
r_tarsal_distal_interphalangeal_3 | r_tarsal_distal_interphalangeal_3
r_tarsal_distal_interphalangeal_4 | r_tarsal_distal_interphalangeal_4
r_tarsal_distal_interphalangeal_5 | r_tarsal_distal_interphalangeal_5
r_tarsal_distal_phalanx_1 | r_tarsal_distal_phalanx_1 = -0.090 0.012 0.188
r_tarsal_distal_phalanx_1 | r_tarsal_distal_phalanx_1
r_tarsal_distal_phalanx_3 | r_tarsal_distal_phalanx_3 = -0.128 0.011 0.185
r_tarsal_distal_phalanx_3 | r_tarsal_distal_phalanx_3
r_tarsal_distal_phalanx_4 | r_tarsal_distal_phalanx_4 = -0.142 0.011 0.178
r_tarsal_distal_phalanx_4 | r_tarsal_distal_phalanx_4
r_tarsal_distal_phalanx_5 | r_tarsal_distal_phalanx_5 = -0.154 0.010 0.168
r_tarsal_distal_phalanx_5 | r_tarsal_distal_phalanx_5
r_tarsal_interphalangeal_1 | r_tarsal_interphalangeal_1
r_tarsal_middle_phalanx_2 | r_tarsal_middle_phalanx_2
r_tarsal_middle_phalanx_3 | r_tarsal_middle_phalanx_3
r_tarsal_middle_phalanx_4 | r_tarsal_middle_phalanx_4
r_tarsal_middle_phalanx_5 | r_tarsal_middle_phalanx_5
r_tarsal_proximal_interphalangeal_2 | r_tarsal_proximal_interphalangeal_2
r_tarsal_proximal_interphalangeal_3 | r_tarsal_proximal_interphalangeal_3
r_tarsal_proximal_interphalangeal_4 | r_tarsal_proximal_interphalangeal_4
r_tarsal_proximal_interphalangeal_5 | r_tarsal_proximal_interphalangeal_5
r_tarsal_proximal_phalanx_1 | r_tarsal_proximal_phalanx_1
r_tarsal_proximal_phalanx_3 | r_tarsal_proximal_phalanx_3
r_tarsal_proximal_phalanx_4 | r_tarsal_proximal_phalanx_4
r_tarsal_proximal_phalanx_5 | r_tarsal_proximal_phalanx_5
r_tarsometatarsal_1 | r_tarsometatarsal_1
r_tarsometatarsal_3 | r_tarsometatarsal_3
r_tarsometatarsal_4 | r_tarsometatarsal_4
r_tarsometatarsal_5 | r_tarsometatarsal_5
r_transversetarsal | r_transversetarsal
r_trapezium | r_trapezium
r_trapezoid | r_trapezoid


On Fri, Feb 10, 2023 at 7:24 PM John Carlson <yottzumm at gmail.com> wrote:

> As suspected the rest of the differences between Don's hierarchy. the LOA4
> standard hierarchy, and my hierarchy is in the leading spaces. The good
> news for me is that mine matches the LOA4 standard hierarchy. The bad
> news is Don's doesn't match the LOA4 standard hierarchy.
>
> Don, your indentations look ok in your hierarchy.
>
> Here are the files with the leading spaces attached.  Mine is
> LeadSpace.txt the standard is LeadSpace4.txt, and Don's is LeadSpaceDon.txt
>
> I am seeing a bad indentation in Hierarchy.txt (mine) at vl4 : l4,  I will
> fix. Some one will have to fix the standard.
>
> On Fri, Feb 10, 2023 at 6:55 PM John Carlson <yottzumm at gmail.com> wrote:
>
>> There was a white space problem at vc6 : c6 in both the standard LOA4
>> hierarchy and my LOA4 hierarchy.  I have patched my Hierarchy and present
>> the differences in an svn diff, attached. This also affected the humanoid
>> output, and I report that patch as well.
>>
>> I detected the difference by left justifying all the lines and compared
>> with Don's left justified hierarchy, and that revealed the problem. I haven
>> not detected any errors in Don's hierarchy yet
>>
>> Thanks for the Hierarchy and double checking me, Don!
>>
>> On Fri, Feb 10, 2023 at 5:17 PM John Carlson <yottzumm at gmail.com> wrote:
>>
>>> There are whitespace differences with my version of the Hierarchy.
>>> Looks like it will take more time to correctly assess things.
>>>
>>> $ diff -w Hierarchy.txt ../../../stylesheets/HAnimLOA4HierarchyTable.txt
>>> 0a1,9
>>> > HAnim2 LOA4 Hierarchy from X3DUOM
>>> > https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt
>>> >
>>> > Authoritative reference: HAnim version 2, Part 1: Humanoid animation
>>> (HAnim) architecture,
>>> >   clause 4 Concepts, section 4.9.6.4 LOA‑4 hierarchy
>>> >
>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4
>>> >   clause 4 Concepts, Figure 4.7 — LOA‑4 joints
>>> >
>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints
>>> >
>>>
>>> I have moved my HAnim development, for the most part, minus adding
>>> center and translations that aren't in tables.
>>>
>>> The development is under this folder x3d-code/
>>> www.web3d.org/x3d/tools/HAnim:
>>>
>>>
>>> HAnim/hier2x3d/build.xml -- ant script for building LOA1 - LOA4, Don's
>>> Humanoid (from X3DUOM?), and corrected standard (spaces, etc.)
>>> HAnim/hier2x3d/hier2x3d.pl -- perl script to build each humanoid
>>> HAnim/hier2x3d/hier2x3d.sh -- sample script to build a couple of
>>> humanoids, see build.xml
>>> HAnim/hier2x3d/sed.sh -- script to scrape even A annexes
>>> HAnim/hier2x3d/sitesed.sh -- script to scrap old A annexes
>>>
>>> HAnim/results/DonHumanoid.x3d -- result
>>> from ../../../stylesheets/HAnimLOA4HierarchyTable.txt
>>> HAnim/results/Humanoid1.x3d -- result from LOA1
>>> HAnim/results/Humanoid2.x3d -- result from LOA2
>>> HAnim/results/Humanoid3.x3d -- result from LOA3
>>> HAnim/results/Humanoid4.x3d -- result from LOA4
>>> HAnim/results/StandardHumanoid.x3d -- result from cleaned up LOA4
>>>
>>> Input standards
>>>
>>> HAnim/standards/4.7.txt
>>> HAnim/standards/A.10.txt
>>> HAnim/standards/A.11.txt
>>> HAnim/standards/A.2.txt
>>> HAnim/standards/A.3.txt
>>> HAnim/standards/A.4.txt
>>> HAnim/standards/A.5.txt
>>> HAnim/standards/A.6.txt
>>> HAnim/standards/A.7.txt
>>> HAnim/standards/A.8.txt
>>> HAnim/standards/A.9.txt
>>> HAnim/standards/B.2.txt
>>> HAnim/standards/Hier1.txt
>>> HAnim/standards/Hier2.txt
>>> HAnim/standards/Hier3.txt
>>> HAnim/standards/Hier4.txt
>>> HAnim/standards/Hierarchy.txt (modified Hier4.txt)
>>>
>>> On Fri, Feb 10, 2023 at 10:14 AM Brutzman, Donald (Don) (CIV) <
>>> brutzman at nps.edu> wrote:
>>>
>>>> Wondering who might be willing to check that the autogenerated table
>>>> correctly matches the specification?
>>>>
>>>>
>>>>
>>>>    - https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt
>>>>
>>>>
>>>>
>>>> It will be excellent one we are confident that our autogenerated
>>>> validation checks are 100% consistent with the X3D4 and HAnim2 architecture
>>>> specifications.
>>>>
>>>>
>>>>
>>>> all the best, Don
>>>>
>>>> --
>>>>
>>>> Don Brutzman  Naval Postgraduate School, Code USW/Br
>>>> brutzman at nps.edu
>>>>
>>>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>>>> +1.831.656.2149
>>>>
>>>> X3D graphics, virtual worlds, Navy robotics https://
>>>> faculty.nps.edu/brutzman
>>>>
>>>>
>>>>
>>>> *From:* Brutzman, Donald (Don) (CIV)
>>>> *Sent:* Sunday, January 29, 2023 10:19 AM
>>>> *To:* Joseph D Williams <joedwil at earthlink.net>; John Carlson <
>>>> yottzumm at gmail.com>
>>>> *Cc:* X3D Graphics public mailing list <x3d-public at web3d.org>;
>>>> brutzman at nps.edu
>>>> *Subject:* RE: HAnim2 LOA4 Hierarchy from X3DUOM: sleuthing to resolve
>>>> an HAnimJoint validation error
>>>>
>>>>
>>>>
>>>> While testing for deployment, found another glaring error.  From
>>>> recently adjusted JoeKick.x3d model:
>>>>
>>>>
>>>>
>>>>    -
>>>>    https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKickIndex.html
>>>>
>>>>
>>>>
>>>>  <HAnimJoint DEF='Joe_skullbase' center='0 1.63 -0.01' name='skullbase'
>>>> skinCoordIndex='0 1 2 3 4 5 6 7 8 9' skinCoordWeight='1 1 1 1 1 1 1 1 1 1'>
>>>>
>>>>                 <HAnimDisplacer DEF='Joe_skull_tip_raiser_action'
>>>> coordIndex='0 1 2 3 4 5 6 7 8 9' displacements='0 0.15 0 0 0 0.15 -0.1 0
>>>> 0.15 0.1 0 0.05 0 -0.02 0.05 -0.15 0 0 -0.05 0 0 0.15 0 0 0.05 0 0 0 0
>>>> -0.15' name='skull_tip_raiser_action'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_l_eyelid_joint' center='0.034
>>>> 1.659 0.06' name='l_eyelid_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_l_eyeball_joint' center='0.034
>>>> 1.659 0.06' name='l_eyeball_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_l_eyebrow_joint' center='0.034
>>>> 1.659 0.06' name='l_eyebrow_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_r_eyelid_joint' center='-0.034
>>>> 1.659 0.06' name='r_eyelid_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_r_eyeball_joint' center='-0.034
>>>> 1.659 0.06' name='r_eyeball_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_r_eyebrow_joint' center='-0.034
>>>> 1.659 0.06' name='r_eyebrow_joint'/>
>>>>
>>>>                 <HAnimJoint DEF='Joe_temporomandibular' center='0.034
>>>> 1.659 0.06' name='temporomandibular'/>
>>>>
>>>>   </HAnimJoint>
>>>>
>>>>
>>>>
>>>> Which certainly looks legal according to the two governing
>>>> specifications, which both state that HAnimJoint can contain multiple
>>>> HAnimDisplacer, HAnimJoint and HAnimSegment nodes.
>>>>
>>>>    - *X3D4 Architecture, HAnim component, 26.3.3 HAnimJoint*
>>>>    -
>>>>    https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/components/hanim.html#HAnimJoint
>>>>    - *HAnim2 part 1, 6 Object interfaces, 6.3 Joint*
>>>>    -
>>>>    https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Joint
>>>>
>>>>
>>>>
>>>> HOWEVER, this block produces obscure X3D XML DTD and X3D XML Schema
>>>> errors such as
>>>>
>>>>
>>>>
>>>> Performing DTD validation...
>>>>
>>>> Checking file:/C:/x3d-code/
>>>> www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d.
>>>> ..
>>>>
>>>> The content of element type "HAnimJoint" must match
>>>> "(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|MetadataSet|MetadataString|ProtoInstance)?,(HAnimJoint|HAnimSegment|ProtoInstance)*)".
>>>>
>>>> XML DTD validation: fail!
>>>>
>>>>
>>>>
>>>> XML validation started.
>>>>
>>>> Checking file:/C:/x3d-code/
>>>> www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.x3d.
>>>> ..
>>>>
>>>> cvc-complex-type.2.4.a: Invalid content was found starting with element
>>>> 'HAnimDisplacer'. One of '{IS, MetadataBoolean, MetadataDouble,
>>>> MetadataFloat, MetadataInteger, MetadataSet, MetadataString, HAnimJoint,
>>>> HAnimSegment, ProtoInstance}' is expected. [101]
>>>>
>>>> The content of element type "HAnimJoint" must match
>>>> "(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|MetadataSet|MetadataString|ProtoInstance)?,(HAnimJoint|HAnimSegment|ProtoInstance)*)".
>>>> [109]
>>>>
>>>> XML validation finished.
>>>>
>>>>
>>>>
>>>> Quiz question:  what are these cryptic errors telling us?  Look
>>>> carefully, try to understand what these XML tools are saying…
>>>>
>>>>
>>>>
>>>> Quiz hint, found in those diagnostic reports:  *Invalid content was
>>>> found starting with element 'HAnimDisplacer'*
>>>>
>>>>
>>>>
>>>> Quiz answer: neither validation tool is allowing the HAnimJoint content
>>>> model of contained nodes to include HAnimDisplacer… which is a mistake by
>>>> each tool!  The X3D4 and HAnim2 specifications are authoritative, and they
>>>> say OK.
>>>>
>>>>
>>>>
>>>> Therefore, good news: our relentless testing found another validation
>>>> error.  I’ve applied the correction and updated X3D XML DTD, X3D XML Schema
>>>> and corresponding documentation.  These corrections help us with all of our
>>>> other model testing, now and in the future.
>>>>
>>>>
>>>>
>>>> Five-star surprise: this error has persisted through X3D 3.0, 3.1, 3.2,
>>>> 3.3 and 4.0.  Oh my goodness… we are still learning, and we certainly don’t
>>>> have enough models using HAnimDisplacer to force exposure of such an
>>>> issue.  Thanks Joe for continuing with your JoeKick model and other
>>>> examples.
>>>>
>>>>
>>>>
>>>> The journey continues…  updates checked in and deployed.  JoeKick.x3d
>>>> now validates without complaint.  Am restarting the test and deployment
>>>> cycle, onward we go.
>>>>
>>>>
>>>>
>>>> all the best, Don
>>>>
>>>> --
>>>>
>>>> Don Brutzman  Naval Postgraduate School, Code USW/Br
>>>> brutzman at nps.edu
>>>>
>>>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>>>> +1.831.656.2149
>>>>
>>>> X3D graphics, virtual worlds, Navy robotics https://
>>>> faculty.nps.edu/brutzman
>>>>
>>>>
>>>>
>>>> *From:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
>>>> *Sent:* Saturday, January 28, 2023 1:19 PM
>>>> *To:* Joseph D Williams <joedwil at earthlink.net>; John Carlson <
>>>> yottzumm at gmail.com>
>>>> *Cc:* X3D Graphics public mailing list <x3d-public at web3d.org>;
>>>> Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
>>>> *Subject:* HAnim2 LOA4 Hierarchy from X3DUOM
>>>>
>>>>
>>>>
>>>> As part of followup actions from yesterday’s three specific
>>>> parent-child relationship corrections, am now autogenerating the following
>>>> table using X3DUOM.  It should match the international-standard
>>>> hand-generated HAnim2 specification for LOA-4 Hierarchy.
>>>>
>>>>
>>>>
>>>> Spot check:
>>>>
>>>>    1. Joint vl5 has parent humanoid_root
>>>>    2. Joint l_sternoclavicular has parent vt1
>>>>    3. Joint r_sternoclavicular has parent vt1
>>>>
>>>>
>>>>
>>>> Am hoping that someone can check that *everything* matches correctly
>>>> -- hey, this should match your body too!  Any remaining parent-child
>>>> relationship errors that are similar to yesterday’s errors should stand
>>>> out.  All corrections are most welcome.
>>>>
>>>>
>>>>
>>>> This is another great confirmation test to continue improving our
>>>> confidence when producing and diagnosing the correctness of HAnim models.
>>>> The autogeneration stylesheet and these results are all checked into
>>>> version control, and they are now part of our production chain for X3D4
>>>> validation.  I will continue work on various other autogenerated
>>>> diagnostics (X3D Schematron, X3D Validator, X3D-Edit etc.) and report when
>>>> everything is ready.
>>>>
>>>>
>>>>
>>>> Thanks again to Joe and John for dogged persistence tracking down the
>>>> errors in the first place.  Essential work.
>>>>
>>>>
>>>>
>>>> Have fun with HAnim and X3D!  8)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> HAnim2 LOA4 Hierarchy from X3DUOM
>>>>
>>>> https://www.web3d.org/x3d/stylesheets/HAnimLOA4HierarchyTable.txt
>>>>
>>>>
>>>>
>>>> Authoritative reference: HAnim version 2, Part 1: Humanoid animation
>>>> (HAnim) architecture,
>>>>
>>>>   clause 4 Concepts, section 4.9.6.4 LOA‑4 hierarchy
>>>>
>>>>
>>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#Hierarchy4
>>>>
>>>>   clause 4 Concepts, Figure 4.7 — LOA‑4 joints
>>>>
>>>>
>>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#f-LOA4Joints
>>>>
>>>>
>>>>
>>>> humanoid_root : sacrum
>>>>
>>>>   sacroiliac : pelvis
>>>>
>>>>   | l_hip : l_thigh
>>>>
>>>>   | | l_knee : l_calf
>>>>
>>>>   | |   l_talocrural : l_talus
>>>>
>>>>   | |     l_talocalcaneonavicular : l_navicular
>>>>
>>>>   | |     | l_cuneonavicular_1 : l_cuneiform_1
>>>>
>>>>   | |     | | l_tarsometatarsal_1 : l_metatarsal_1
>>>>
>>>>   | |     | |   l_metatarsophalangeal_1 : l_tarsal_proximal_phalanx_1
>>>>
>>>>   | |     | |     l_tarsal_interphalangeal_1 : l_tarsal_distal_phalanx_1
>>>>
>>>>   | |     | l_cuneonavicular_2 : l_cuneiform_2
>>>>
>>>>   | |     | | l_tarsometatarsal_2 : l_metatarsal_2
>>>>
>>>>   | |     | |   l_metatarsophalangeal_2 : l_tarsal_proximal_phalanx_2
>>>>
>>>>   | |     | |     l_tarsal_proximal_interphalangeal_2 :
>>>> l_tarsal_middle_phalanx_2
>>>>
>>>>   | |     | |       l_tarsal_distal_interphalangeal_2 :
>>>> l_tarsal_distal_phalanx_2
>>>>
>>>>   | |     | l_cuneonavicular_3 : l_cuneiform_3
>>>>
>>>>   | |     |   l_tarsometatarsal_3 : l_metatarsal_3
>>>>
>>>>   | |     |     l_metatarsophalangeal_3 : l_tarsal_proximal_phalanx_3
>>>>
>>>>   | |     |       l_tarsal_proximal_interphalangeal_3 :
>>>> l_tarsal_middle_phalanx_3
>>>>
>>>>   | |     |         l_tarsal_distal_interphalangeal_3 :
>>>> l_tarsal_distal_phalanx_3
>>>>
>>>>   | |     l_calcaneocuboid : l_calcaneus
>>>>
>>>>   | |       l_transversetarsal : l_cuboid
>>>>
>>>>   | |         l_tarsometatarsal_4 : l_metatarsal_4
>>>>
>>>>   | |         | l_metatarsophalangeal_4 : l_tarsal_proximal_phalanx_4
>>>>
>>>>   | |         |   l_tarsal_proximal_interphalangeal_4 :
>>>> l_tarsal_middle_phalanx_4
>>>>
>>>>   | |         |     l_tarsal_distal_interphalangeal_4 :
>>>> l_tarsal_distal_phalanx_4
>>>>
>>>>   | |         l_tarsometatarsal_5 : l_metatarsal_5
>>>>
>>>>   | |           l_metatarsophalangeal_5 : l_tarsal_proximal_phalanx_5
>>>>
>>>>   | |             l_tarsal_proximal_interphalangeal_5 :
>>>> l_tarsal_middle_phalanx_5
>>>>
>>>>   | |               l_tarsal_distal_interphalangeal_5 :
>>>> l_tarsal_distal_phalanx_5
>>>>
>>>>   | r_hip : r_thigh
>>>>
>>>>   |   r_knee : r_calf
>>>>
>>>>   |     r_talocrural : r_talus
>>>>
>>>>   |       r_talocalcaneonavicular : r_navicular
>>>>
>>>>   |       | r_cuneonavicular_1 : r_cuneiform_1
>>>>
>>>>   |       | | r_tarsometatarsal_1 : r_metatarsal_1
>>>>
>>>>   |       | |   r_metatarsophalangeal_1 : r_tarsal_proximal_phalanx_1
>>>>
>>>>   |       | |     r_tarsal_interphalangeal_1 : r_tarsal_distal_phalanx_1
>>>>
>>>>   |       | r_cuneonavicular_2 : r_cuneiform_2
>>>>
>>>>   |       | | r_tarsometatarsal_2 : r_metatarsal_2
>>>>
>>>>   |       | |   r_metatarsophalangeal_2 : r_tarsal_proximal_phalanx_2
>>>>
>>>>   |       | |     r_tarsal_proximal_interphalangeal_2 :
>>>> r_tarsal_middle_phalanx_2
>>>>
>>>>   |       | |       r_tarsal_distal_interphalangeal_2 :
>>>> r_tarsal_distal_phalanx_2
>>>>
>>>>   |       | r_cuneonavicular_3 : r_cuneiform_3
>>>>
>>>>   |       |   r_tarsometatarsal_3 : r_metatarsal_3
>>>>
>>>>   |       |     r_metatarsophalangeal_3 : r_tarsal_proximal_phalanx_3
>>>>
>>>>   |       |       r_tarsal_proximal_interphalangeal_3 :
>>>> r_tarsal_middle_phalanx_3
>>>>
>>>>   |       |         r_tarsal_distal_interphalangeal_3 :
>>>> r_tarsal_distal_phalanx_3
>>>>
>>>>   |       r_calcaneocuboid : r_calcaneus
>>>>
>>>>   |         r_transversetarsal : r_cuboid
>>>>
>>>>   |           r_tarsometatarsal_4 : r_metatarsal_4
>>>>
>>>>   |           | r_metatarsophalangeal_4 : r_tarsal_proximal_phalanx_4
>>>>
>>>>   |           |   r_tarsal_proximal_interphalangeal_4 :
>>>> r_tarsal_middle_phalanx_4
>>>>
>>>>   |           |     r_tarsal_distal_interphalangeal_4 :
>>>> r_tarsal_distal_phalanx_4
>>>>
>>>>   |           r_tarsometatarsal_5 : r_metatarsal_5
>>>>
>>>>   |             r_metatarsophalangeal_5 : r_tarsal_proximal_phalanx_5
>>>>
>>>>   |               r_tarsal_proximal_interphalangeal_5 :
>>>> r_tarsal_middle_phalanx_5
>>>>
>>>>   |                 r_tarsal_distal_interphalangeal_5 :
>>>> r_tarsal_distal_phalanx_5
>>>>
>>>>   vl5 : l5
>>>>
>>>>     vl4 : l4
>>>>
>>>>       vl3 : l3
>>>>
>>>>         vl2 : l2
>>>>
>>>>           vl1 : l1
>>>>
>>>>             vt12 : t12
>>>>
>>>>               vt11 : t11
>>>>
>>>>                 vt10 : t10
>>>>
>>>>                   vt9 : t9
>>>>
>>>>                     vt8 : t8
>>>>
>>>>                       vt7 : t7
>>>>
>>>>                         vt6 : t6
>>>>
>>>>                           vt5 : t5
>>>>
>>>>                             vt4 : t4
>>>>
>>>>                               vt3 : t3
>>>>
>>>>                                 vt2 : t2
>>>>
>>>>                                   vt1 : t1
>>>>
>>>>                                     vc7 : c7
>>>>
>>>>                                     | vc6 : c6
>>>>
>>>>                                     |   vc5 : c5
>>>>
>>>>                                     |     vc4 : c4
>>>>
>>>>                                     |       vc3 : c3
>>>>
>>>>                                     |         vc2 : c2
>>>>
>>>>                                     |           vc1 : c1
>>>>
>>>>                                     |             skullbase : skull
>>>>
>>>>                                     |               l_eyelid_joint :
>>>> l_eyelid
>>>>
>>>>                                     |               r_eyelid_joint :
>>>> r_eyelid
>>>>
>>>>                                     |               l_eyeball_joint :
>>>> l_eyeball
>>>>
>>>>                                     |               r_eyeball_joint :
>>>> r_eyeball
>>>>
>>>>                                     |               l_eyebrow_joint :
>>>> l_eyebrow
>>>>
>>>>                                     |               r_eyebrow_joint :
>>>> r_eyebrow
>>>>
>>>>                                     |               temporomandibular :
>>>> jaw
>>>>
>>>>                                     l_sternoclavicular : l_clavicle
>>>>
>>>>                                     | l_acromioclavicular : l_scapula
>>>>
>>>>                                     |   l_shoulder : l_upperarm
>>>>
>>>>                                     |     l_elbow : l_forearm
>>>>
>>>>                                     |       l_radiocarpal : l_carpal
>>>>
>>>>                                     |         l_midcarpal_1 :
>>>> l_trapezium
>>>>
>>>>                                     |         | l_carpometacarpal_1 :
>>>> l_metacarpal_1
>>>>
>>>>                                     |         |
>>>> l_metacarpophalangeal_1 : l_carpal_proximal_phalanx_1
>>>>
>>>>                                     |         |
>>>> l_carpal_interphalangeal_1 : l_carpal_distal_phalanx_1
>>>>
>>>>                                     |         l_midcarpal_2 :
>>>> l_trapezoid
>>>>
>>>>                                     |         | l_carpometacarpal_2 :
>>>> l_metacarpal_2
>>>>
>>>>                                     |         |
>>>> l_metacarpophalangeal_2 : l_carpal_proximal_phalanx_2
>>>>
>>>>                                     |         |
>>>> l_carpal_proximal_interphalangeal_2 : l_carpal_middle_phalanx_2
>>>>
>>>>                                     |         |
>>>> l_carpal_distal_interphalangeal_2 : l_carpal_distal_phalanx_2
>>>>
>>>>                                     |         l_midcarpal_3 : l_capitate
>>>>
>>>>                                     |         | l_carpometacarpal_3 :
>>>> l_metacarpal_3
>>>>
>>>>                                     |         |
>>>> l_metacarpophalangeal_3 : l_carpal_proximal_phalanx_3
>>>>
>>>>                                     |         |
>>>> l_carpal_proximal_interphalangeal_3 : l_carpal_middle_phalanx_3
>>>>
>>>>                                     |         |
>>>> l_carpal_distal_interphalangeal_3 : l_carpal_distal_phalanx_3
>>>>
>>>>                                     |         l_midcarpal_4_5 : l_hamate
>>>>
>>>>                                     |           l_carpometacarpal_4 :
>>>> l_metacarpal_4
>>>>
>>>>                                     |           |
>>>> l_metacarpophalangeal_4 : l_carpal_proximal_phalanx_4
>>>>
>>>>                                     |           |
>>>> l_carpal_proximal_interphalangeal_4 : l_carpal_middle_phalanx_4
>>>>
>>>>                                     |           |
>>>> l_carpal_distal_interphalangeal_4 : l_carpal_distal_phalanx_4
>>>>
>>>>                                     |           l_carpometacarpal_5 :
>>>> l_metacarpal_5
>>>>
>>>>                                     |
>>>> l_metacarpophalangeal_5 : l_carpal_proximal_phalanx_5
>>>>
>>>>                                     |
>>>> l_carpal_proximal_interphalangeal_5 : l_carpal_middle_phalanx_5
>>>>
>>>>                                     |
>>>> l_carpal_distal_interphalangeal_5 : l_carpal_distal_phalanx_5
>>>>
>>>>                                     r_sternoclavicular : r_clavicle
>>>>
>>>>                                       r_acromioclavicular : r_scapula
>>>>
>>>>                                         r_shoulder : r_upperarm
>>>>
>>>>                                           r_elbow : r_forearm
>>>>
>>>>                                             r_radiocarpal : r_carpal
>>>>
>>>>                                               r_midcarpal_1 :
>>>> r_trapezium
>>>>
>>>>                                               | r_carpometacarpal_1 :
>>>> r_metacarpal_1
>>>>
>>>>                                               |
>>>> r_metacarpophalangeal_1 : r_carpal_proximal_phalanx_1
>>>>
>>>>                                               |
>>>> r_carpal_interphalangeal_1 : r_carpal_distal_phalanx_1
>>>>
>>>>                                               r_midcarpal_2 :
>>>> r_trapezoid
>>>>
>>>>                                               | r_carpometacarpal_2 :
>>>> r_metacarpal_2
>>>>
>>>>                                               |
>>>> r_metacarpophalangeal_2 : r_carpal_proximal_phalanx_2
>>>>
>>>>                                               |
>>>> r_carpal_proximal_interphalangeal_2 : r_carpal_middle_phalanx_2
>>>>
>>>>                                               |
>>>> r_carpal_distal_interphalangeal_2 : r_carpal_distal_phalanx_2
>>>>
>>>>                                               r_midcarpal_3 : r_capitate
>>>>
>>>>                                               | r_carpometacarpal_3 :
>>>> r_metacarpal_3
>>>>
>>>>                                               |
>>>> r_metacarpophalangeal_3 : r_carpal_proximal_phalanx_3
>>>>
>>>>                                               |
>>>> r_carpal_proximal_interphalangeal_3 : r_carpal_middle_phalanx_3
>>>>
>>>>                                               |
>>>> r_carpal_distal_interphalangeal_3 : r_carpal_distal_phalanx_3
>>>>
>>>>                                               r_midcarpal_4_5 : r_hamate
>>>>
>>>>                                                 r_carpometacarpal_4 :
>>>> r_metacarpal_4
>>>>
>>>>                                                 |
>>>> r_metacarpophalangeal_4 : r_carpal_proximal_phalanx_4
>>>>
>>>>                                                 |
>>>> r_carpal_proximal_interphalangeal_4 : r_carpal_middle_phalanx_4
>>>>
>>>>                                                 |
>>>> r_carpal_distal_interphalangeal_4 : r_carpal_distal_phalanx_4
>>>>
>>>>                                                 r_carpometacarpal_5 :
>>>> r_metacarpal_5
>>>>
>>>>
>>>> r_metacarpophalangeal_5 : r_carpal_proximal_phalanx_5
>>>>
>>>>
>>>> r_carpal_proximal_interphalangeal_5 : r_carpal_middle_phalanx_5
>>>>
>>>>
>>>>                                            r_carpal_distal_interphalangeal_5
>>>> : r_carpal_distal_phalanx_5
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> all the best, Don
>>>>
>>>> --
>>>>
>>>> Don Brutzman  Naval Postgraduate School, Code USW/Br
>>>> brutzman at nps.edu
>>>>
>>>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>>>> +1.831.656.2149
>>>>
>>>> X3D graphics, virtual worlds, Navy robotics https://
>>>> faculty.nps.edu/brutzman
>>>>
>>>>
>>>>
>>>> *From:* Brutzman, Donald (Don) (CIV)
>>>> *Sent:* Friday, January 27, 2023 7:02 PM
>>>> *To:* Joseph D Williams <joedwil at earthlink.net>; John Carlson <
>>>> yottzumm at gmail.com>
>>>> *Cc:* X3D Graphics public mailing list <x3d-public at web3d.org>;
>>>> brutzman at nps.edu
>>>> *Subject:* RE: HAnim Schematron output sampled
>>>>
>>>>
>>>>
>>>> Thanks for discussion Joe, really helpful.  We definitely have had some
>>>> mixed signals here.
>>>>
>>>>
>>>>
>>>> Summary of changes we applied to HAnim schema relationships:
>>>>
>>>>    1. Joint vl5 has parent humanoid_root
>>>>    2. Joint l_sternoclavicular has parent vt1
>>>>    3. Joint r_sternoclavicular has parent vt1
>>>>
>>>>
>>>>
>>>> I will work on updating these corrections into all the tools
>>>> accordingly – X3DUOM, X3D Schematron, X3DJSAIL Java, X3DPSAIL Python, and
>>>> X3D-Edit..
>>>>
>>>>
>>>>
>>>> Thanks too for fixing multiple models together.
>>>>
>>>>
>>>>
>>>> Awesome work, sincere thanks, take care.
>>>>
>>>>
>>>>
>>>> all the best, Don
>>>>
>>>> --
>>>>
>>>> Don Brutzman  Naval Postgraduate School, Code USW/Br
>>>> brutzman at nps.edu
>>>>
>>>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>>>> +1.831.656.2149
>>>>
>>>> X3D graphics, virtual worlds, Navy robotics https://
>>>> faculty.nps.edu/brutzman
>>>>
>>>>
>>>>
>>>> *From:* Joseph D Williams <joedwil at earthlink.net>
>>>> *Sent:* Sunday, January 22, 2023 11:53 AM
>>>> *To:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>; John Carlson <
>>>> yottzumm at gmail.com>
>>>> *Cc:* X3D Graphics public mailing list <x3d-public at web3d.org>
>>>> *Subject:* RE: HAnim Schematron output sampled
>>>>
>>>>
>>>>
>>>>    - vl5 has parent humanoid_root rather than expected sacroiliac
>>>>    - l_sternoclavicular has parent vt1 rather than expected vc7
>>>>    - r_sternoclavicular has parent vt1 rather than expected vc7
>>>>
>>>>
>>>>
>>>> Don, these three items serve as a summary when processing a model that
>>>> is correct according to the diagram.
>>>>
>>>> Much to discuss regarding some existing examples.
>>>>
>>>> Joe
>>>>
>>>>
>>>>
>>>> *From: *Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
>>>> *Sent: *Sunday, January 22, 2023 10:09 AM
>>>> *To: *Joseph D Williams <joedwil at earthlink.net>; John Carlson
>>>> <yottzumm at gmail.com>
>>>> *Cc: *X3D Graphics public mailing list <x3d-public at web3d.org>
>>>> *Subject: *Re: HAnim Schematron output sampled
>>>>
>>>>
>>>>
>>>> Sounds like progress, but not quite focused enough to make any fixes
>>>> yet…. Clarity his critical.
>>>>
>>>>
>>>>
>>>> Hopefully you guys can create a simple list consisting of simple
>>>> triplets:
>>>>
>>>>    - suspect joint or segment name,
>>>>    - the incorrect parent described in the X3D XML schema,, and
>>>>    - the correct parent shown by the diagrams in the specifications.
>>>>
>>>>
>>>>
>>>> If there is such a simple list of a few names/errors/corrections
>>>> available, I hope to have some time Monday or Tuesday afternoon to work on
>>>> it together.  Onward…
>>>>
>>>>
>>>>
>>>> v/r Don
>>>>
>>>> *From:* Joseph D Williams <joedwil at earthlink.net>
>>>> *Sent:* Saturday, January 21, 2023 11:07:06 PM
>>>> *To:* John Carlson <yottzumm at gmail.com>; Brutzman, Donald (Don) (CIV) <
>>>> brutzman at nps.edu>; X3D Graphics public mailing list <
>>>> x3d-public at web3d.org>
>>>> *Subject:* RE: HAnim Schematron output sampled
>>>>
>>>>
>>>>
>>>> Hi,
>>>>
>>>> The expected ones are not correct.  Vl5 is a child of root and sternos
>>>> and vc7 are childs of vt1. The schematron claims are wrong.
>>>>
>>>> The schematron is wrong according to the Concepts 4 diagrams for loa3
>>>> and loa4.
>>>>
>>>>
>>>>
>>>>    - Yes, vl5 is a child of sacroiliac, according to Joe.
>>>>     X3DUOM/schematron wins!
>>>>
>>>>
>>>>
>>>> No, vl5 is a child of root. Schematron is wrong.
>>>>
>>>> The diagrams are correct.
>>>>
>>>> Joe
>>>>
>>>>
>>>>
>>>> *From: *John Carlson <yottzumm at gmail.com>
>>>> *Sent: *Sunday, January 15, 2023 5:46 PM
>>>> *To: *Joe D Williams <joedwil at earthlink.net>; Don Brutzman
>>>> <brutzman at nps.edu>; X3D Graphics public mailing list
>>>> <x3d-public at web3d.org>
>>>> *Subject: *Re: HAnim Schematron output sampled
>>>>
>>>>
>>>> vl5 has parent humanoid_root rather than expected sacroiliac.  Yes, vl5
>>>> is a child of sacroiliac, according to Joe.   X3DUOM/schematron wins!
>>>>
>>>> l_sternoclavicular has parent vt1 rather than expected vc7.  Please
>>>> confirm.
>>>>
>>>> r_sternoclavicular has parent vt1 rather than expected vc7.  Please
>>>> confirm.
>>>>
>>>>
>>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230211/49290854/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 159 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230211/49290854/attachment-0001.png>
-------------- next part --------------
XML name attribute | name in file | default value (possibly none)
l_calcaneocuboid | l_calcaneocuboid
l_calcaneus | l_calcaneus
l_capitate | l_capitate
l_cuboid | l_cuboid
l_cuneiform_1 | l_cuneiform_1
l_cuneiform_2 | l_cuneiform_2
l_cuneiform_3 | l_cuneiform_3
l_cuneonavicular_1 | l_cuneonavicular_1
l_cuneonavicular_2 | l_cuneonavicular_2
l_cuneonavicular_3 | l_cuneonavicular_3
l_hamate | l_hamate
l_metatarsal_1 | l_metatarsal_1
l_metatarsal_3 | l_metatarsal_3
l_metatarsal_4 | l_metatarsal_4
l_metatarsal_5 | l_metatarsal_5
l_metatarsal_phalanx_1 | l_metatarsal_phalanx_1
l_metatarsal_phalanx_5 | l_metatarsal_phalanx_5
l_metatarsophalangeal_1 | l_metatarsophalangeal_1
l_metatarsophalangeal_3 | l_metatarsophalangeal_3
l_metatarsophalangeal_4 | l_metatarsophalangeal_4
l_metatarsophalangeal_5 | l_metatarsophalangeal_5
l_midcarpal_1 | l_midcarpal_1
l_midcarpal_2 | l_midcarpal_2
l_midcarpal_3 | l_midcarpal_3
l_midcarpal_4_5 | l_midcarpal_4_5
l_navicular | l_navicular
l_talocalcaneonavicular | l_talocalcaneonavicular
l_tarsal_distal_interphalangeal_3 | l_tarsal_distal_interphalangeal_3
l_tarsal_distal_interphalangeal_4 | l_tarsal_distal_interphalangeal_4
l_tarsal_distal_interphalangeal_5 | l_tarsal_distal_interphalangeal_5
l_tarsal_distal_phalanx_1 | l_tarsal_distal_phalanx_1 = 0.090 0.012 0.188
l_tarsal_distal_phalanx_1 | l_tarsal_distal_phalanx_1
l_tarsal_distal_phalanx_3 | l_tarsal_distal_phalanx_3 = 0.128 0.011 0.185
l_tarsal_distal_phalanx_3 | l_tarsal_distal_phalanx_3
l_tarsal_distal_phalanx_4 | l_tarsal_distal_phalanx_4 = 0.142 0.011 0.178
l_tarsal_distal_phalanx_4 | l_tarsal_distal_phalanx_4
l_tarsal_distal_phalanx_5 | l_tarsal_distal_phalanx_5 = 0.154 0.010 0.168
l_tarsal_distal_phalanx_5 | l_tarsal_distal_phalanx_5
l_tarsal_interphalangeal_1 | l_tarsal_interphalangeal_1
l_tarsal_middle_phalanx_2 | l_tarsal_middle_phalanx_2
l_tarsal_middle_phalanx_3 | l_tarsal_middle_phalanx_3
l_tarsal_middle_phalanx_4 | l_tarsal_middle_phalanx_4
l_tarsal_middle_phalanx_5 | l_tarsal_middle_phalanx_5
l_tarsal_proximal_interphalangeal_2 | l_tarsal_proximal_interphalangeal_2
l_tarsal_proximal_interphalangeal_3 | l_tarsal_proximal_interphalangeal_3
l_tarsal_proximal_interphalangeal_4 | l_tarsal_proximal_interphalangeal_4
l_tarsal_proximal_interphalangeal_5 | l_tarsal_proximal_interphalangeal_5
l_tarsal_proximal_phalanx_1 | l_tarsal_proximal_phalanx_1
l_tarsal_proximal_phalanx_3 | l_tarsal_proximal_phalanx_3
l_tarsal_proximal_phalanx_4 | l_tarsal_proximal_phalanx_4
l_tarsal_proximal_phalanx_5 | l_tarsal_proximal_phalanx_5
l_tarsometatarsal_1 | l_tarsometatarsal_1
l_tarsometatarsal_3 | l_tarsometatarsal_3
l_tarsometatarsal_4 | l_tarsometatarsal_4
l_tarsometatarsal_5 | l_tarsometatarsal_5
l_transversetarsal | l_transversetarsal
l_trapezium | l_trapezium
l_trapezoid | l_trapezoid
r_calcaneocuboid | r_calcaneocuboid
r_calcaneus | r_calcaneus
r_capitate | r_capitate
r_cuboid | r_cuboid
r_cuneiform_1 | r_cuneiform_1
r_cuneiform_2 | r_cuneiform_2
r_cuneiform_3 | r_cuneiform_3
r_cuneonavicular_1 | r_cuneonavicular_1
r_cuneonavicular_2 | r_cuneonavicular_2
r_cuneonavicular_3 | r_cuneonavicular_3
r_hamate | r_hamate
r_metatarsal_1 | r_metatarsal_1
r_metatarsal_3 | r_metatarsal_3
r_metatarsal_4 | r_metatarsal_4
r_metatarsal_5 | r_metatarsal_5
r_metatarsal_phalanx_1 | r_metatarsal_phalanx_1
r_metatarsal_phalanx_5 | r_metatarsal_phalanx_5
r_metatarsophalangeal_1 | r_metatarsophalangeal_1
r_metatarsophalangeal_3 | r_metatarsophalangeal_3
r_metatarsophalangeal_4 | r_metatarsophalangeal_4
r_metatarsophalangeal_5 | r_metatarsophalangeal_5
r_midcarpal_1 | r_midcarpal_1
r_midcarpal_2 | r_midcarpal_2
r_midcarpal_3 | r_midcarpal_3
r_midcarpal_4_5 | r_midcarpal_4_5
r_navicular | r_navicular
r_talocalcaneonavicular | r_talocalcaneonavicular
r_tarsal_distal_interphalangeal_3 | r_tarsal_distal_interphalangeal_3
r_tarsal_distal_interphalangeal_4 | r_tarsal_distal_interphalangeal_4
r_tarsal_distal_interphalangeal_5 | r_tarsal_distal_interphalangeal_5
r_tarsal_distal_phalanx_1 | r_tarsal_distal_phalanx_1 = -0.090 0.012 0.188
r_tarsal_distal_phalanx_1 | r_tarsal_distal_phalanx_1
r_tarsal_distal_phalanx_3 | r_tarsal_distal_phalanx_3 = -0.128 0.011 0.185
r_tarsal_distal_phalanx_3 | r_tarsal_distal_phalanx_3
r_tarsal_distal_phalanx_4 | r_tarsal_distal_phalanx_4 = -0.142 0.011 0.178
r_tarsal_distal_phalanx_4 | r_tarsal_distal_phalanx_4
r_tarsal_distal_phalanx_5 | r_tarsal_distal_phalanx_5 = -0.154 0.010 0.168
r_tarsal_distal_phalanx_5 | r_tarsal_distal_phalanx_5
r_tarsal_interphalangeal_1 | r_tarsal_interphalangeal_1
r_tarsal_middle_phalanx_2 | r_tarsal_middle_phalanx_2
r_tarsal_middle_phalanx_3 | r_tarsal_middle_phalanx_3
r_tarsal_middle_phalanx_4 | r_tarsal_middle_phalanx_4
r_tarsal_middle_phalanx_5 | r_tarsal_middle_phalanx_5
r_tarsal_proximal_interphalangeal_2 | r_tarsal_proximal_interphalangeal_2
r_tarsal_proximal_interphalangeal_3 | r_tarsal_proximal_interphalangeal_3
r_tarsal_proximal_interphalangeal_4 | r_tarsal_proximal_interphalangeal_4
r_tarsal_proximal_interphalangeal_5 | r_tarsal_proximal_interphalangeal_5
r_tarsal_proximal_phalanx_1 | r_tarsal_proximal_phalanx_1
r_tarsal_proximal_phalanx_3 | r_tarsal_proximal_phalanx_3
r_tarsal_proximal_phalanx_4 | r_tarsal_proximal_phalanx_4
r_tarsal_proximal_phalanx_5 | r_tarsal_proximal_phalanx_5
r_tarsometatarsal_1 | r_tarsometatarsal_1
r_tarsometatarsal_3 | r_tarsometatarsal_3
r_tarsometatarsal_4 | r_tarsometatarsal_4
r_tarsometatarsal_5 | r_tarsometatarsal_5
r_transversetarsal | r_transversetarsal
r_trapezium | r_trapezium
r_trapezoid | r_trapezoid
-------------- next part --------------
l_tarsal_distal_phalanx_1
l_tarsal_distal_phalanx_3
l_tarsal_distal_phalanx_4
l_tarsal_distal_phalanx_5
r_tarsal_distal_phalanx_1
r_tarsal_distal_phalanx_3
r_tarsal_distal_phalanx_4
r_tarsal_distal_phalanx_5


More information about the x3d-public mailing list