<div dir="ltr"><div dir="ltr"><div>[cc: x3d-public]</div><div><br></div><div>Monday 1600-1745 8 DEC 2025. Attendees Carol, Cheryl, Katy, Joe, Aaron, Don. Regrets Dick.</div><div><br></div><div>We had another excellent meeting yesterday, getting through the entire agenda (improving draft HAnim specification prose) and then some. Discussion summaries are next, detailed agenda follows as attached email.</div><div><br></div><div>Carol identified Daz3D as a popular tool with many capabilities. They offer both free and paid versions of their software under a commercial license. They are also careful to distinguish between software and 3D models by a Published Author (PA), separately or in their online store. Their license also pays attention to physical copies of virtual 3D models that are produced using 3D printing (aka additive manufacturing AM) or Computer Numerical Control (CNC) (aka subtractive manufacturing).</div><div><ul><li>Daz3D, world's most versatile Genesis character creator</li><li>The integrated character creation system in our free 3D software forms the cornerstone of Daz’s ecosystem</li><li><a href="https://www.daz3d.com">https://www.daz3d.com</a></li></ul></div><div>We had an excellent discussion about adding synonym names in Latin to continue building potential usage of HAnim models in a medical context. Cheryl's medical expertise is very helpful for clarifying our understanding. Continuing work expected.</div><div><br></div><div>Carol showed her work in Rhino3D to create a curved spine for the Jin model. Very clear, impressive progress!</div><div><br></div><div>She showed a mesh Poncho that had three versions: initial/flat, midpoint bending while draping, final draped over shoulder. These should be easily adapted into an animation. Here is a quite-similar example for that technique:</div><div><ul><li>X3D Example Archives: X3D4WA, X3D for Web Authors, Chapter 07 Event Animation Interpolation, Dolphin Morpher</li><li>Morph coordinates for smooth animation between 3 different dolphin poses using CoordinateInterpolator.</li><li><a href="https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/DolphinMorpherIndex.html">https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/DolphinMorpherIndex.html</a></li><li>individual 3 poses follow as DolphinPose01.x3d DolphinPose02.x3d and DolphinPose03.x3d</li><li>The technique is pretty simple, copy the three sets of point values in three Coordinate nodes to create a CoordinateInterpolator node, which is then a simple source of smooth animation for the mesh.</li><li>Animation design for this example: <a href="https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/TimeSensorScalarInterpolatorFilterDiagram.png">https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/TimeSensorScalarInterpolatorFilterDiagram.png</a></li><li>10-step animation design process: <a href="https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/Chapter07-EventAnimationInterpolation.10StepAnimationDesignProcess.pdf">https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/Chapter07-EventAnimationInterpolation.10StepAnimationDesignProcess.pdf</a></li><li>X3D model documentation, Event Graph ROUTE Table shows event connections</li><li><a href="https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/DolphinMorpher.html#EventGraph">https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/DolphinMorpher.html#EventGraph</a></li><li><img src="cid:ii_miystulj1" alt="image.png" width="562" height="81"></li></ul></div><div>Carol also showed a side-view cross-section comparison of the original (mostly straight) Jin spine, plus a second curved Jin spine. When ready, this will be an excellent example to add to HAnim Example Archives. Am thinking there are two ways to do this, and probably both are important to pursue for this important example. Something like:</div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div>a. <b>JinSpineCurved.x3d </b>HAnimHumanoid <i>skeleton </i>field replaced with the curved-spine coordinates,</div></div><div><div>b. <b>JinSpineOffsetBinding.x3d </b>HAnimHumanoid <i>skeleton </i>field containing the original curved-spine coordinates, then compute offsets and add <i>jointBindingPositions </i>for the curved-spine corrections. This can adapt a reusable model (such as Jin) to a person's individual posture.</div><div><br></div></div></blockquote>I don't think we have a good example using
HAnimHumanoid <i>jointBindingPositions</i> so these would be great additions. For specification details on functionality see<div><ul><li>X3D Tooltips, HAnimHumanoid</li><li><a href="https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimHumanoid">https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimHumanoid</a></li></ul><ul><li>X3D Architecture, draft v4.1, clause 26 Humanoid animation, 26.3.2 HAnimHumanoid</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD//Part01/components/hanim.html#HAnimHumanoid">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD//Part01/components/hanim.html#HAnimHumanoid</a></li></ul><ul><li>HAnim Architecture, draft 2.1, clause 6 Object interfaces, 6.3 Humanoid</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/ObjectInterfaces.html#Humanoid">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/ObjectInterfaces.html#Humanoid</a></li></ul><div>We finished up with scrutiny and adjustments to Site object general definitions, reflecting the larger role expected for Site nodes.
I made the ordering and prose consistent for the following Site sections, this is a good topic for repeated review next week.
</div><div><ul><li>HAnim Architecture, draft 2.1, clause 4 Concepts, 4.8 Site object</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#SegmentObject">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#SegmentObject</a></li></ul></div><div><ul><li> HAnim Architecture, draft 2.1, clause 6 Object interfaces, 6.7 Site</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/ObjectInterfaces.html#Site">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/ObjectInterfaces.html#Site</a></li></ul></div><div><span style="font-family:arial,sans-serif">Everything else in the agenda seemed pretty agreeable. As usual we made a number of specification adjustments and clarifications as we proceeded.</span></div><div><span style="font-family:arial,sans-serif"><br>Am expecting to see our emphasis of activity increasingly shift towards implementation and evaluation of HAnim by building even more X3D example models.</span></div><div dir="ltr"><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div style="color:rgb(34,34,34)"><font face="arial, sans-serif"><br>All scrutiny, examples and feedback are always welcome.</font></div><div style="color:rgb(34,34,34)"><font face="arial, sans-serif"><br></font></div><div style="color:rgb(34,34,34)"><font face="arial, sans-serif">Have fun with HAnim and X3D! 😀</font></div><div style="color:rgb(34,34,34)"><font face="monospace"><br></font></div><div style="color:rgb(34,34,34)"><font face="monospace">all the best, Don</font></div><div style="color:rgb(34,34,34)"><font face="monospace">-- </font></div><div style="color:rgb(34,34,34)"><font face="monospace">X3D Graphics, Maritime Robotics, Distributed Simulation</font></div><div style="color:rgb(34,34,34)"><font face="monospace">Relative Motion Consulting <a href="https://RelativeMotion.info" target="_blank">https://RelativeMotion.info</a></font></div></div></div></div><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sun, Dec 7, 2025 at 7:28 PM Don Brutzman <<a href="mailto:don.brutzman@gmail.com">don.brutzman@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div>Lots of interesting work is progressing!</div><div><br></div><div>0. <b>Latin</b>. As Carol mentioned last week, Cheryl thinks that adding Latin-language synonyms for each Joint and Segment names can aid our ability to cross reference precisely using medical terminology. We have figured out a number of cool references and how to add them to X3DUOM.</div><div><ul><li>AnatoNomina</li><li><a href="http://terminologia-anatomica.org/en" target="_blank">http://terminologia-anatomica.org/en</a> (note http vice https)</li><li><a href="http://terminologia-anatomica.org/en/Terms/Occurence/1455" target="_blank">http://terminologia-anatomica.org/en/Terms/Occurence/1455</a> for <span style="color:rgb(43,81,120);font-family:"Segoe UI",Verdana,Helvetica,sans-serif;font-size:14px;text-align:justify;background-color:rgb(219,232,250)">Sternoclavicular joint</span></li><li><a href="http://terminologia-anatomica.org/en/ImageSet/ViewSet/2287?imageId=755&imageAnnotationId=24324&mobile=false" target="_blank">Suprahyoid and infrahyoid neck muscles</a></li></ul></div><div>also wikipedia and wikidata have a lot of excellent reference links, including to Semantic Web RDF.</div><div><div><ul><li style="margin-left:15px">NIH MeSH <a href="https://meshb.nlm.nih.gov/record/ui?ui=D013247" target="_blank">https://meshb.nlm.nih.gov/record/ui?ui=D013247</a></li></ul><ul><li style="margin-left:15px">TA98 Entity Page, English, articulatio sternoclavicularis</li><li style="margin-left:15px"><a href="https://ifaa.unifr.ch/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/03.5.04.001%20Entity%20TA98%20EN.htm" target="_blank">https://ifaa.unifr.ch/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/03.5.04.001%20Entity%20TA98%20EN.htm</a></li></ul><ul><li style="margin-left:15px">TA2 Viewer</li><li style="margin-left:15px"><a href="https://ta2viewer.openanatomy.org/?id=1750" target="_blank">https://ta2viewer.openanatomy.org/?id=1750</a></li></ul><ul><li style="margin-left:15px">Wikidata: sternoclavicular articulation (Q640022) includes alternate human languages, Gray's Anatomy images</li><li style="margin-left:15px"><a href="https://www.wikidata.org/wiki/Q640022" target="_blank">https://www.wikidata.org/wiki/Q640022</a></li></ul></div></div><div>We have an abundance of riches available to guide our correctly aligning with medical references! 😀👍</div><div><br></div><div><br></div><div>1. <b> Addition of
<span style="background-color:rgb(255,255,0)">vc7 : c7</span> joint:segment pair to LOA-2.</b></div><div><br></div><div>Following up on some interesting review comments by Cheryl and Carol, Joe noticed an important discrepancy between LOA-2 and LOA-3/4. LOA-2 was missing joint:segment objects <span style="background-color:rgb(255,255,0)">vc7 : c7</span>, which broke our HAnim design requirement to have each skeleton subgraph a consistent, strict subset of greater LOAs (specifically "<span style="background-color:rgb(255,255,0)">all LOA-2 joints and segments are included in an LOA-3 model</span>"). This is an important animation discrepancy to find!</div><div><br></div><div>We've added <span style="background-color:rgb(255,255,0)">vc7 : c7</span><span style="background-color:rgb(255,255,255)"> to the LOA-2 tree diagram. This looks to be an important correction that does not break any previously existing HAnim LOA-2 models.</span></div><div><ul><li><div>Humanoid Animation (HAnim) Architecture v2.1 draft, clause 4 Concepts, 4.11.6.3 LOA‑2 hierarchy</div></li><li><span style="background-color:rgb(255,255,255)"><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#Hierarchy2" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#Hierarchy2</a></span></li></ul></div><div><pre style="color:rgb(0,0,0);font-size:11.7px;border:1px solid;border-radius:5px;padding:4px"> vl5 : l5
vl3 : l3
vl1 : l1
vt10 : t10
vt6 : t6
vt1 : t1
<span title="corrected consistency with LOA-3, 4" style="background-color:yellow">vc7 : c7</span>
| vc4 : c4
| vc2 : c2
| skullbase : skull
l_sternoclavicular : l_clavicle
| l_acromioclavicular : l_scapula
| l_shoulder : l_upperarm
| l_elbow : l_forearm
| l_radiocarpal : l_carpal</pre></div><div><span style="background-color:rgb(255,255,255)">This change will require simple updates to several of our validation tools and tables - am rechecking.</span></div><div><span style="background-color:rgb(255,255,255)"><br></span></div><div><span style="background-color:rgb(255,255,255)">Let's review this on Monday. If agreed upon, then <b>Myeong </b>we are hoping you might update the corresponding figure.</span></div><div><ul><li><span style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center">Figure </span><span title="editorial" style="background-color:yellow;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center">4.6</span><span style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center"> </span><span title="editorial" style="background-color:orange;text-decoration-line:line-through;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center">4.5</span><span style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center"> — LOA‑2 joints, </span><span title="editorial" style="background-color:yellow;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center">for additional information see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#LevelsOfArticulation" target="_blank">Figure 4.10.5 Levels of Articulation (LOA)</a> </span>
<span style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif;font-weight:700;text-align:center;background-color:rgb(224,255,255)">(Editors note: Myeong please add vc7 to the corresponding drawing)</span></li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA2Joints" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA2Joints</a></li></ul><div><img src="cid:ii_miwgsb420" alt="image.png" width="188" height="66" style="margin-right: 0px;"><br></div></div><div><br></div><div><br></div><div>2. <b>Improved LOA definitions.</b></div><div><br></div><div>Discussions over the past few weeks have continued to bring our understanding of LOA into better focus. I have applied some editorial improvements, and request review. Getting clear on goals for each LOA helps us decide whether some joint-segment pairs can be added to the lesser LOAs, leaving LOA-4 unchanged.</div><div><ul><li>Humanoid Animation (HAnim) Architecture v2.1 draft, clause 4 Concepts, 4.10.5 Levels of articulation (LOA)</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#LevelsOfArticulation" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#LevelsOfArticulation</a></li></ul></div><div><h2 style="margin-top:18px;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><font size="2"><span title="editorial" style="background-color:yellow"><span title="Mantis 1504">4.10.5</span> Levels of articulation</span> <span title="editorial" style="background-color:yellow">(LOA)</span> <span title="Mantis 1504" style="background-color:orange;text-decoration-line:line-through">4.8.5</span></font></h2><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif">Level of articulation (LOA) represents the complexity and detail of joints <span title="editorial" style="background-color:yellow">that make up</span> <span title="editorial" style="background-color:orange;text-decoration-line:line-through">for</span> a humanoid skeletal hierarchy. <span title="editorial" style="background-color:yellow">The skeletal hierarchy</span> can be used for <span title="editorial" style="background-color:orange;text-decoration-line:line-through">generating</span> various <span title="editorial" style="background-color:yellow">joint</span> motions <span title="editorial" style="background-color:orange;text-decoration-line:line-through">based on the joints</span> <span title="editorial" style="background-color:yellow">and is also the basis for animating meshes that represent the skin</span>.</p><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><span title="editorial" style="background-color:yellow">Defining the LOA for a given humanoid is useful for sharing interoperable animations.</span> <span title="editorial" style="background-color:yellow">The <code>humanoid_root</code> <span style="font-weight:bold">Joint</span> object is always required for every LOA, so that the location and direction of any Humanoid can be moved consistently within a scene.</span></p><div title="editorial" style="background-color:yellow;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><p>Each LOA is a strict subset of the next LOA. This means that</p><ul><li style="margin-top:4px">the LOA-0 definition has a single joint and segment included in all greater LOA models,</li><li style="margin-top:4px">all LOA-1 joints and segments are included in an LOA-2 model,</li><li style="margin-top:4px">all LOA-2 joints and segments are included in an LOA-3 model,</li><li style="margin-top:4px">all LOA-3 joints and segments are included in an LOA-4 model, and</li><li style="margin-top:4px">an LOA-4 model contains all joints and segments (primarily adding hands and feet).</li></ul></div><p style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif">There are five <span title="editorial" style="background-color:yellow">defined</span> levels of articulation. <span title="editorial" style="background-color:yellow">Since each lesser LOA remains a strict subset of the greater LOAs, animations for lesser LOAs also work as satisfactory animations for greater LOAs. </span><span title="editorial, moved from below" style="background-color:yellow">Above LOA-0, each segment typically has a corresponding parent joint in the hierarchy.</span></p><ul style="color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><li style="margin-top:4px"><b>LOA‑0</b> <span title="editorial" style="background-color:yellow">consists of 1 joint and 1 segment</span> <span title="editorial" style="background-color:yellow">(see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA0Joint" target="_blank">Figure 4.4</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-BasicSetJointHierarchy0" target="_blank">Figure 4.11</a>). LOA‑0</span> represents only the <code>humanoid_root</code> <span style="font-weight:bold">Joint</span> object <span title="editorial" style="background-color:yellow">with a single <code>sacrum</code> segment and no accompanying hierarchy.</span> <span title="editorial" style="background-color:orange;text-decoration-line:line-through">, as shown in (<a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA0Joint" target="_blank">Figure 4.4</a>).</span></li><li style="margin-top:4px"><b>LOA‑1</b> <span title="editorial" style="background-color:yellow">consists of up to</span> 18 joints and 18 segments <span title="editorial" style="background-color:yellow">(see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA1Joints" target="_blank">Figure 4.5</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-BasicSetJointHierarchy1" target="_blank">Figure 4.12</a>). LOA-1</span> represents the simplest <span title="editorial" style="background-color:yellow">specified</span> organization and hierarchy of joints for a humanoid. <span title="editorial, moved to above" style="background-color:orange;text-decoration-line:line-through">Each segment has a joint in the hierarchy. <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA1Joints" target="_blank">Figure 4.5</a> <span title="editorial">represents</span> LOA‑1 joints.</span></li><li style="margin-top:4px"><b>LOA‑2</b> consists of <span title="editorial" style="background-color:yellow">up to</span> 72 joints and 72 segments (see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA2Joints" target="_blank">Figure 4.6</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-BasicSetJointHierarchy2" target="_blank">Figure 4.13</a>).</li><li style="margin-top:4px"><b>LOA‑3</b> consists of <span title="editorial" style="background-color:yellow">up to</span> 94 joints and 94 segments (see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA3Joints" target="_blank">Figure 4.7</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-BasicSetJointHierarchy3" target="_blank">Figure 4.14</a>).</li><li style="margin-top:4px"><b>LOA‑4</b> consists of <span title="editorial" style="background-color:yellow">up to</span> <span title="editorial" style="background-color:yellow">146</span> <span title="editorial" style="background-color:orange;text-decoration-line:line-through">148</span> joints and <span title="editorial" style="background-color:yellow">146</span> <span title="editorial" style="background-color:orange;text-decoration-line:line-through">148</span> segments. <span title="editorial" style="background-color:yellow">LOA‑4</span> builds on LOA‑3 by adding anatomical details of hands and feet (see <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-LOA4Joints" target="_blank">Figure 4.8</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#f-BasicSetJointHierarchy4" target="_blank">Figure 4.15</a>). <span title="editorial" style="background-color:orange;text-decoration-line:line-through">Hands</span> <span title="editorial" style="background-color:yellow">Hand joints</span> and feet joints for LOA‑4 are illustrated in <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#TheHands" target="_blank"><span title="editorial" style="background-color:yellow">Figure</span> 4.10.3</a> and <a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#TheFeet" target="_blank"><span title="editorial" style="background-color:yellow">Figure</span> 4.10.4</a> respectively.</li></ul><p title="editorial" style="color:rgb(0,0,0);background-color:yellow;font-family:Verdana,Arial,Helvetica,sans-serif">Animation interoperability is a key design goal of LOA representations, where animations for lesser LOAs can work correctly for humanoids at greater LOAs. Some of the predefined joints for a given LOA might be omitted, while additional joints might be included in the given model, and so animation for missing (or added) joints might be ignored without effect. Inclusion of child <span style="font-weight:bold">Segment</span> objects is always optional. Animations for greater LOAs can work for humanoid models at lesser LOAs, if the correct joints are found. Unused animation events intended for undefined <span style="font-weight:bold">Joint</span> objects may be ignored without run-time errors.</p><p title="editorial" style="color:rgb(0,0,0);background-color:lightcyan;font-family:Verdana,Arial,Helvetica,sans-serif">TODO. Specification editors are considering how to best list descriptions of typical usage for each LOA, in order to better communicate the functionality of LOA use cases.</p><p title="editorial" style="color:rgb(0,0,0);background-color:yellow;font-family:Verdana,Arial,Helvetica,sans-serif">General functional descriptions for each LOA are defined as follows.</p><ul title="editorial" style="background-color:yellow;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><li style="margin-top:4px"><b>LOA-0 purpose</b>. Humanoid location and direction,</li><li style="margin-top:4px"><b>LOA-1 purpose</b>. Simple animation and poses,</li><li style="margin-top:4px"><b>LOA-2 purpose</b>. Everyday motion and sports,</li><li style="margin-top:4px"><b>LOA-3 purpose</b>. Clothing and apparel plus an individual's body posture,</li><li style="margin-top:4px"><b>LOA-4 purpose</b>. Anatomically correct human skeleton that includes all movable joints, suitable for medical applications.</li></ul><p title="editorial" style="color:rgb(0,0,0);background-color:lightcyan;font-family:Verdana,Arial,Helvetica,sans-serif">TODO. Specification editors and the HAnim Working Group are willing to consider inclusion or removal of already-defined joints in the lesser LOAs, in order to better support modeling of clothing. Adjustments have potential to encourage interoperable animation with other specifications, such as IEEE 3DBP requirements as well as Character and Avatar practices under consideration by Metaverse Standards Forum (MSF).</p><p title="editorial" style="color:rgb(0,0,0);background-color:lightcyan;font-family:Verdana,Arial,Helvetica,sans-serif">TODO. Facial expressions are expected to be defined separately as part of a set of definitions using <a href="https://en.wikipedia.org/wiki/Facial_Action_Coding_System" target="_blank">Facial Action Coding System (FACS)</a>.</p></div><div><br></div><div>3. <b>Partial Human Figures update</b></div><div><br></div><div>Have revised the following section, now simpler and able to work compatibly across different LOAs. Review and comment please.</div><div><ul><li>4.10.6 Partial HAnim figures</li><li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#PartialHAnimFigures" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/concepts.html#PartialHAnimFigures</a></li></ul><div><h2 style="margin-top:18px;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><font size="2"><span title="Mantis 1504" style="background-color:yellow">4.10.6</span> <span title="editorial, consistency" style="background-color:yellow">Partial HAnim figures</span> <span title="Mantis 1504" style="background-color:orange;text-decoration-line:line-through">4.8.6</span></font></h2><h2 style="margin-top:18px;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif"><p style="font-weight:400"><font size="2">Modelling of partial figures <span title="editorial, consistency" style="background-color:yellow">(e.g., a limb or internal skeletal structure) is accomplished by listing no joints</span> <span title="editorial, consistency" style="background-color:orange;text-decoration-line:line-through">(e.g., an arm or leg) is supported by using empty joints</span> between the <span title="editorial, consistency" style="background-color:yellow"><code>humanoid_root</code> <span style="font-weight:bold">Joint</span> object</span> <strong><span title="editorial, consistency" style="background-color:orange;text-decoration-line:line-through">humanoidRoot</span></strong> and the first joint to be modelled. <span title="editorial, consistency" style="background-color:yellow">This approach permits integration of the partial figure at the correct location within a parent <span style="font-weight:bold">Humanoid</span> object of arbitrary LOA.</span></font></p><p style="font-weight:400"><font size="2">EXAMPLE <span title="editorial, consistency" style="background-color:yellow">If providing a partial model that consists of a head, starting at the <code>skullbase</code> <span style="font-weight:bold">Joint</span> object,</span> a hierarchy such as the following meets all relationship rules <span title="correctness" style="background-color:yellow">compatibly with all LOAs.</span> <span title="correctness" style="background-color:orange;text-decoration-line:line-through">but can be used to display only the head:</span></font></p><pre style="font-weight:400"><font size="2"><span title="editorial, consistency" style="background-color:yellow">humanoid_root : sacrum
skullbase : skull</span>
<span title="correctness" style="background-color:orange;text-decoration-line:line-through">humanoidRoot : sacrum
vc3 : c3
vc2 : c2
vc1 : c1
skullbase : skull</span></font></pre><p style="font-weight:400"><font size="2">For this <span title="editorial, consistency" style="background-color:yellow">example</span> <span title="editorial, consistency" style="background-color:orange;text-decoration-line:line-through">case</span> the geometry can be such that the <span title="editorial, consistency" style="background-color:yellow">listed <code>humanoid_root</code> <span style="font-weight:bold">Joint</span> object</span> <span title="editorial, consistency" style="background-color:orange;text-decoration-line:line-through">humanoidRoot</span> is simply a <span title="correctness" style="background-color:yellow">reference object.</span> <span title="correctness" style="background-color:orange;text-decoration-line:line-through">dummy object, not being drawn.</span> <span title="correctness" style="background-color:yellow">The <code>skullbase : skull</code> joint and segment can then be correctly composed within the parent <span style="font-weight:bold">Humanoid</span> object <i>skeleton</i> tree, attached at the correct location in the skeletal hierarchy. The remaining joints and segments then follow within the example <code>skullbase</code> <span style="font-weight:bold">Joint</span> object, providing desired structures and values for the head and facial models.</span></font></p><p style="font-weight:400"><span title="correctness" style="background-color:orange;text-decoration-line:line-through"><font size="2">Transforms can modify the translations so that the <code>vc3 : c3</code> vertebrae is at 0 height. The rest then follow with default values for the head/facial portion.</font></span></p><p style="background-color:lightcyan;font-weight:400"><font size="2">Editors note: These changes for partial HAnim models are intended to allow correct integration of partial figures with any LOA. It assumes that a browser will insert the topmost joint at the correct location corresponding to the given LOA. Careful editorial review needs to confirm correctness of the preceding important change. Once ready, circulate proposed prose broadly for comment and establishing consensus.</font></p><p style="background-color:lightcyan;font-weight:400"><font size="2">Editors note, possible TODO: We have not described all details about collecting multiple partial figures together into a single Humanoid. This is not necessarily a requirement for the HAnim Architecture, but might be interesting to consider.</font></p></h2></div></div><div><br></div><div><b>4. Work in progress: </b> <b>new table for Joint parent relationships at each LOA. </b></div><div><br></div><div>I've created the following table, likely insertable as Appendix C of the specification. Thank you Joe for steady help checking correctness.</div><div><ul><li>HAnim2JointParentsLoaTable.html</li><li><a href="https://x3d-code/www.web3d.org/x3d/stylesheets/HAnim2JointParentsLoaTable.html" target="_blank">https://x3d-code/www.web3d.org/x3d/stylesheets/HAnim2JointParentsLoaTable.html</a></li><li>Cells with a <span style="background-color:rgb(217,234,211)">greenyellow background</span> indicates that the row has been checked against all specification LOA tables.</li></ul></div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div style="color:rgb(34,34,34)"><h2 style="color:rgb(0,0,0);font-family:"Times New Roman"">HAnim2JointParentsLoaTable.html</h2><p style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium">This table shows parent-child relationships between all Joint objects for all LOAs, providing an alternate view for relationships already defined in <a href="http://concepts.html" target="_blank">4. Concepts</a>.</p><p style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium">This table is a candidate for inclusion as a new Annex C (informative) in the HAnim Architecture draft v2.1.</p><p style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium">This table can help authors checking skeleton hierarchies, and also reflects how strong validation rules can precisely confirm parent-child Joint correctness for each LOA.</p><p style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium">Latest draft version available at<br><a href="https://www.web3d.org/x3d/stylesheets/HAnim2JointParentsLoaTable.html" target="_blank">https://www.web3d.org/x3d/stylesheets/HAnim2JointParentsLoaTable.html</a></p><p style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium">Color key:</p><ul style="color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><li>Cells with a <span style="background-color:greenyellow">greenyellow background</span> indicates that the row has been checked against all specification LOA tables.</li><li>Cells with a <span style="background-color:lightgrey">lightgrey background</span> indicates a lower LOA value than the joint for that row.</li><li>An empty cell entry indicates that next parent Joint to right (in lower LOA column) is appropriate.</li></ul><table border="1" style="font-family:"Times New Roman""><tbody><tr><th>Index</th><th colspan="2">Joint name, LOA</th><th>LOA-4<br>parent Joint</th><th>LOA-3<br>parent Joint</th><th>LOA-2<br>parent Joint</th><th>LOA-1<br>parent Joint</th><th>LOA-0<br>parent Joint</th></tr><tr style="background-color:greenyellow"><td> 1</td><td>humanoid_root</td><td>0</td><td></td><td></td><td></td><td></td><td>none</td></tr><tr style="background-color:greenyellow"><td> 2</td><td>sacroiliac</td><td>1</td><td>humanoid_root (loa=0)</td><td></td><td></td><td></td><td style="background-color:lightgrey">humanoid_root</td></tr><tr style="background-color:greenyellow"><td> 3</td><td>l_hip</td><td>1</td><td>sacroiliac (loa=1)</td><td></td><td></td><td>sacroiliac</td><td style="background-color:lightgrey">humanoid_root</td></tr><tr style="background-color:greenyellow"><td> 4</td><td>l_knee</td><td>1</td><td>l_hip (loa=1)</td><td></td><td></td><td>l_hip</td><td style="background-color:lightgrey">humanoid_root</td></tr><tr style="background-color:greenyellow"><td> 5</td><td>l_talocrural</td><td>1</td><td>l_knee (loa=1)</td><td></td><td></td><td>l_knee</td><td style="background-color:lightgrey">humanoid_root</td></tr><tr style="background-color:greenyellow"><td> 6</td><td>l_talocalcaneonavicular</td><td>4</td><td>l_talocrural (loa=1)</td><td style="background-color:lightgrey"></td><td style="background-color:lightgrey"></td><td style="background-color:lightgrey">l_talocrural</td><td style="background-color:lightgrey">humanoid_root</td></tr></tbody></table></div><div style="color:rgb(34,34,34)"><font face="monospace"><br></font></div><div style="color:rgb(34,34,34)"><font face="monospace">all the best, Don</font></div><div style="color:rgb(34,34,34)"><font face="monospace">-- </font></div><div style="color:rgb(34,34,34)"><font face="monospace">X3D Graphics, Maritime Robotics, Distributed Simulation</font></div><div style="color:rgb(34,34,34)"><font face="monospace">Relative Motion Consulting <a href="https://RelativeMotion.info" target="_blank">https://RelativeMotion.info</a></font></div></div></div></div></div>
</div>
</blockquote></div></div></div>