[x3d-public] HAnim2 LOA4 Hierarchy from X3DUOM
John Carlson
yottzumm at gmail.com
Sat Jan 28 22:18:11 PST 2023
Make that 2 USE and 1 DEF.
Ugh, i fall into confusion now.
The parents have different names and the child has 1 DEF and 2 USE.
Sorry!
John
On Sun, Jan 29, 2023 at 12:09 AM John Carlson <yottzumm at gmail.com> wrote:
> Actually I haven’t checked my code for “several parent” issues yet. I
> have no idea what several parents would look like, except for 3 USE/1 DEF
> nodes with same name field value. I’m pretty sure this only applies to
> LOA4—we don’t have a lot of LOA4 examples of yet.
>
> If this is not yet included in your tools, that would be helpful to check.
>
> I hope we haven’t lost this info!
>
> It’s my recollection that this occurred in either the hands or feet.
>
> John
>
> I made a couple of changes from previous mail, below, sorry for confusion.
>
> On Sat, Jan 28, 2023 at 11:45 PM John Carlson <yottzumm at gmail.com> wrote:
>
>> It’s also useful to recall that a couple of parts of the skeleton have
>> multiple parents (with the root as topmost parent), which I have yet to
>> include, FYI. More details would be welcome!
>>
>
>> John
>>
>> On Sat, Jan 28, 2023 at 3:19 PM Brutzman, Donald (Don) (CIV) <
>> brutzman at nps.edu> wrote:
>>
>>> 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/20230129/156aabb4/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/20230129/156aabb4/attachment-0001.png>
More information about the x3d-public
mailing list