<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>ISO/IEC 19774-1:2019 — 4 Concepts</title>
<link rel="stylesheet" href="HAnim.css" type="text/css">
</head>
<body>

        <div class="CenterDiv">
                <p class="HeadingPart"><a href="HAnimArchitecture.html" title="to index"><img class="HAnimLogo" src="../Images/IsoIecLogos.png" alt="ISO-IEC logo" width="200" height="90"></a></p>
                <p class="HeadingPart">Part 1:  Humanoid animation (HAnim) architecture</p>
                <p class="HeadingClause">4 Concepts</p>
        </div>

<a href="#" title="to top"><img class="HAnimBar" src="../Images/SimpleBar.png" alt="--- HAnim separator bar ---"></a>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
<a name="General"></a>4.1 General</h1>

<h2><a name="Overview"></a>4.1.1 Overview</h2> 

<p>This clause specifies the HAnim core concepts, including how HAnim figures
        are structured and manipulated.</p>

<h2><a name="Topics"></a>4.1.2 Topics</h2> 

<p><a href="#t-Topics">Table 4.1</a> lists the topics in this clause.</p>

<div class="CenterDiv">

<p class="TableCaption"><a name="t-Topics"></a>Table 4.1 — Topics</p>

<table class="topics" summary="Topics">
 <tr> 
  <td> 
   <ul>
    <li><a href="#General">4.1 General</a> 
     <ul>
      <li><a href="#Overview">4.1.1 Overview</a></li>
          <li><a href="#Topics">4.1.2 Topics</a></li> 
      <li><a href="#Conventions">4.1.3 Conventions used</a></li> 
     </ul>
        </li>
    <li><a href="#HAnimFigures">4.2 HAnim figures</a> 
     <ul>
      <li><a href="#HAnimFiguresOverview">4.2.1 Overview</a></li> 
      <li><a href="#Assembly">4.2.2 Assembly</a></li> 
      <li><a href="#SkeletalHierarchy">4.2.3 Skeletal hierarchy</a></li> 
      <li><a href="#Manipulation">4.2.4 Manipulation</a></li> 
     </ul>
        </li>
    <li><a href="#HumanoidObject">4.3 Humanoid object</a> 
     <ul>
      <li><a href="#HumanoidObjectOverview">4.3.1 Overview</a></li> 
      <li><a href="#SkeletalBodyGeometrySpecification">4.3.2 Skeletal body
                          geometry specification</a></li> 
      <li><a href="#SkinnedBodyGeometrySpecification">4.3.3 Skinned body
                          geometry specification</a></li> 
     </ul>
        </li>
    <li><a href="#JointObject">4.4 Joint object</a></li> 
     <li><a href="#SegmentObject">4.5 Segment object</a></li> 
     <li><a href="#SiteObject">4.6 Site object</a></li> 
     <li><a href="#DisplacerObject">4.7 Displacer object</a></li> 
     <li><a href="#ModellingOfHumanoids">4.8 Modelling of humanoids</a> 
     <ul>
      <li><a href="#ModellingOverview">4.8.1 Overview</a></li> 
      <li><a href="#ModellingOfHumanLikeHAnimFigures">4.8.2 Modelling of
                          human-like HAnim figures</a></li>
                 <li><a href="#Poses">4.8.3 Poses</a></li>
          <li><a href="#ModellingOfNonHumanHAnimFigures">4.8.4 Modelling of
                          non-human HAnim figures</a></li>
      <li><a href="#LevelsOfArticulation">4.8.5 Levels of articulation</a></li>
                 <li><a href="#PartialHAnimFigures">4.8.6 Partial HAnim figures</a></li>
     </ul>
    </li>
       <li><a href="#StructureOfAHumanoid">4.9 Structure of a humanoid</a>
           <ul>
                   <li><a href="#StructureOfAHumanoidOverview">4.9.1 Overview</a></li>
                   <li><a href="#TheBody">4.9.2 The body</a></li>
                   <li><a href="#TheHands">4.9.3 The hands</a></li>
                   <li><a href="#TheFeet">4.9.4 The feet</a></li>
                   <li><a href="#TheFace">4.9.5 The face</a></li>
                   <li><a href="#Hierarchy">4.9.6 Hierarchy</a>
                   <ul>
                           <li><a href="#Hierarchy1">4.9.6.1 LOA‑1 hierarchy</a></li>
                           <li><a href="#Hierarchy2">4.9.6.2 LOA‑2 hierarchy</a></li>
                           <li><a href="#Hierarchy3">4.9.6.3 LOA‑3 Hierarchy</a></li>
                           <li><a href="#Hierarchy4">4.9.6.4 LOA‑4 hierarchy</a></li>
                   </ul>
                   </li>
                   <li><a href="#SiteSegmentRelationships">4.9.7 Site and Segment
                           relationships</a></li>
                   <li><a href="#AdditionalJointAndSegmentObjects">4.9.8 Additional Joint
                           and Segment objects</a></li>
           </ul>
           </li>
   </ul>
   <ul>
    <li><a href="#f-DefaultPose">Figure 4.1 — Humanoid default position</a></li> 
    <li><a href="#f-HandOrientation">Figure 4.2 — Hand orientation</a></li> 
    <li><a href="#f-LOA0Joint">Figure 4.3 — LOA‑0 joint</a></li>
    <li><a href="#f-LOA1Joints">Figure 4.4 — LOA‑1 joints</a></li>
    <li><a href="#f-LOA2Joints">Figure 4.5 — LOA‑2 joints</a></li>
    <li><a href="#f-LOA3Joints">Figure 4.6 — LOA‑3 joints</a></li>
    <li><a href="#f-LOA4Joints">Figure 4.7 — LOA‑4 joints</a></li>
    <li><a href="#f-HandJoints">Figure 4.8 — LOA‑4 hand joints</a></li>
    <li><a href="#f-FootJoints">Figure 4.9 — LOA‑4 foot joints</a></li>
    <li><a href="#BasicSetJointHierarchy1">Figure 4.10 — Basic set of Joint:Segment
                        hierarchy for LOA‑1</a></li> 
    <li><a href="#BasicSetJointHierarchy2">Figure 4.11 — Basic set of Joint:Segment
                        hierarchy for LOA‑2</a></li> 
    <li><a href="#BasicSetJointHierarchy3">Figure 4.12 — Basic set of Joint:Segment
                        hierarchy for LOA‑3</a></li> 
    <li><a href="#BasicSetJointHierarchy4">Figure 4.13 — Basic set of Joint:Segment
                        hierarchy for LOA‑4</a></li>  
   </ul>
   <ul>
    <li><a href="#t-Topics">Table 4.1 — Table of contents</a></li>
    <li><a href="#t-LOA23HandJoints">Table 4.2 — LOA‑2 and LOA‑3 Hand Joint object names</a></li>
    <li><a href="#t-LOA4HandJoints">Table 4.3 — LOA‑4 hand Joint object names</a></li>
    <li><a href="#t-LOA23FootJoints">Table 4.4 — LOA‑2 and 3 foot Joint object names</a></li>
    <li><a href="#t-LOA4FootJoints">Table 4.5 — LOA‑4 foot Joint object names </a></li>
    <li><a href="#t-FaceJoints">Table 4.6 — Face Joint object names</a></li>
    <li><a href="#t-SiteSegments">Table 4.7 — Site and Segment relationships</a></li>
   </ul>
  </td>
 </tr>
</table>
</div>

<h2><a name="Conventions"></a>4.1.3 Conventions used</h2>

<p>The following conventions are used throughout this document:</p>

<p><i>Italics</i> are used for <a href="glossary.html#Field">field</a> names,
        and are also used when new terms are introduced and equation variables are
        referenced.</p>

<p>A <code>fixed-space</code> font is used for source code examples.</p>

<p>Object names are appropriately capitalized (e.g., "The
        <span class="Object">Joint</span> object is a ...") and are represented
        in Bold face font.
        The identifying name of an individual object can precede it using a fixed-point font,
        e.g. <span class="Code">humanoid_root</span> <span class="Object">Joint</span>.</p>

<p>Throughout this document, references to external documents in
        the bibliography are denoted using the "[ABCD]" notation.</p>

<p class="Example">EXAMPLE  [ABCD] refers to a reference described in the
        <a href="bibliography.html">Bibliography</a>.</p>

<p>All length measurements in this document are in metres. All
        angle measurements are in radians.</p>

<p>All rotations are specified as a rotation axis and an angle (e.g., 1 0 0 <span class="pi">π</span>).</p>

<p>Numeric entries representing field values use decimal points (rather than decimal commas) in order to remain syntactically correct.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube"> <a name="HAnimFigures">
</a>4.2 HAnim figures</h1>

<h2><a name="HAnimFiguresOverview"></a>4.2.1 Overview</h2>

<p>This document specifies the structure and manipulation of
        <i>HAnim figures</i>. HAnim figures are articulated 3D representations
        that depict animated characters. While HAnim figures are intended to
        represent human-like characters, they are a general concept that is not
        limited to the same number of limbs, heads, and other body parts that are
        typical of human beings. A single HAnim figure is called a <i>humanoid</i>.</p>

<p>Guidelines for embedding HAnim within VRML and X3D worlds are contained in
    <a href="Guidelines.html">Annex E</a>.
Guidelines for designing HAnim figures are contained in
    <a href="Design.html">Annex F</a>.
   </p>

<h2><a name="Assembly"></a>4.2.2 Assembly</h2>

<p>HAnim figures are described using the following HAnim objects:</p>

<ul>
  <li><span class="Object">Humanoid</span>,</li>
  <li><span class="Object">Joint</span>,</li>
  <li><span class="Object">Segment</span>,</li>
  <li><span class="Object">Site</span>, and</li>
  <li><span class="Object">Displacer</span>.</li>
</ul>

<p>The <span class="Object">Humanoid</span> object is the root of an HAnim
        figure and provides the attachment framework for all other parts of the
        humanoid. More detailed information about the
        <span class="Object">Humanoid</span> object is specified in
        <a href="#HumanoidObject">4.3 Humanoid object</a>.</p>

<p>The <span class="Object">Joint</span> object is attached to the
        <span class="Object">Humanoid</span> object or other
        <span class="Object">Joint</span> objects using a transform that specifies
        the current state of articulation along with geometry associated with the
        attached body part. More detailed information about the
        <span class="Object">Joint</span> object is specified in
        <a href="#JointObject">4.4 Joint object</a>.</p>

<p>The <span class="Object">Segment</span> object specifies the attributes of
        the physical links between the joints of the humanoid figure. More detailed
        information about the <span class="Object">Segment</span> object is
        specified in <a href="#SegmentObject">4.5 Segment object</a>.</p>

<p>The <span class="Object">Site</span> object specifies locations at which
        known semantics can be associated. More detailed information about the
        <span class="Object">Site</span> object is specified in
        <a href="#SiteObject">4.6 Site object</a>.</p>

<p>The <span class="Object">Displacer</span> object specifies information about
        the range of movement allowed for the object in which it is embedded. More
        detailed information about the <span class="Object">Displacer</span> object
        is specified in <a href="#DisplacerObject">4.7 Displacer object</a>.</p>

<h2><a name="SkeletalHierarchy"></a>4.2.3 Skeletal hierarchy</h2>

<p>The skeletal description of the HAnim figure consists of a tree of
        <span class="Object">Joint</span> objects that define the transformations
        from the <code>humanoid_root</code> <span class="Object">Joint</span> to the
        end effector of each appendage of the humanoid. The only requirement of this
        document for the definition of the skeletal hierarchy is that
        it shall have a <code>humanoid_root</code> <span class="Object">Joint</span>
        object defined. All of the other <span class="Object">Joint</span> objects
        are optional and are not required for a humanoid figure to be HAnim
        compliant. It is expected that most HAnim figures have many more
        joints defined than the required <code>humanoid_root</code>.</p>

<p>The term
        <i>level of articulation</i> (LOA) is a measure of fidelity, and specifically
        refers to the number of articulations
        (or joints) that are defined for a humanoid figure. A humanoid figure with
        fourteen joints is said to have a "low level of articulation",
        whereas a humanoid figure with 72 joints can be said to have a "high
        level of articulation". A skeletal hierarchy containing only a
        <code>humanoid_root</code> <span class="Object">Joint</span> object is the
        lowest level of articulation that is allowed for an HAnim figure.</p>

<p><a href="#LevelsOfArticulation">4.8.4 Levels of articulation</a> defines five
        different LOAs that are common and may be used to generally categorize and
        describe the overall movement ability of an HAnim human figure. However, an
        HAnim human figure is not constrained to conform to any particular LOA but
        may use any appropriate LOA. An individual human figure may have an
        alternate skeletal hierarchy suited to its purpose. This hierarchy may
        include any number of optional model specific
        <span class="Object">Joint</span> objects, which may be dispersed among the
        standard HAnim <span class="Object">Joint</span> objects. As long as the
        ancestral ordering of the standard <span class="Object">Joint</span> objects
        is preserved, model specific <span class="Object">Joint</span> objects may
        be inserted between the standard <span class="Object">Joint</span> objects
        in the hierarchy.</p>

<p>The skeletal hierarchy for HAnim figures that are intended to represent
        humans is specified in <a href="#StructureOfAHumanoid">4.9 Structure of a
        humanoid</a>.</p>

<h2><a name="Manipulation"></a>4.2.4 Manipulation</h2>

<p>HAnim figures are animated by applying transformations at the joints. The
        resulting geometry and/or skin vertices are further adjusted by adding
        associated displacer information. The ability of an HAnim figure to
        rearrange its limbs and body is dictated by the number of joints and
        segments used to specify each limb and body. More joints and segments result
        in a more articulated figure. Fewer joints result in a figure that is less
        articulated. Skin can also be manipulated through displacement of vertices
        or animation of skin-related meshes.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube"><a name="HumanoidObject">
</a>4.3 Humanoid object</h1>

<h2><a name="HumanoidObjectOverview"></a>4.3.1 Overview</h2>

<p>The geometry that specifies the body of an HAnim humanoid figure can be
        described in two ways:</p>

<ul>
  <li>skeletal, and</li>
  <li>skinned.</li>
</ul>

<p>Each of these is described below. The interface for the
        <span class="Object">Humanoid</span> object is specified in
        <a href="ObjectInterfaces.html#Humanoid">6.2 Humanoid</a>.</p>

<h2><a name="SkeletalBodyGeometrySpecification"></a>4.3.2 Skeletal body geometry specification</h2>

<p>The skeletal method specifies the geometry within the scene graph of the
        skeletal hierarchy, which is defined in the <i>skeleton</i> field of the
        <span class="Object">Humanoid</span> object. The geometry defined within the
        <span class="Object">Segment</span> objects of the joint hierarchy describes
        the body as separate geometric pieces. This method, while computationally
        efficient, can cause certain visual anomalies (such as seams or creases)
        that detract from the appearance of the humanoid figure.</p>

<h2><a name="SkinnedBodyGeometrySpecification"></a>4.3.3 Skinned body geometry specification</h2>

<p>The skinned method specifies the body as a continuous piece of geometry,
        within the <i>skin</i> field of the <span class="Object">Humanoid</span>
        object. For this method, point and normal vector data sets are first defined
        in the <i>skinCoord</i> and <i>skinNormal</i> fields of the
        <span class="Object">Humanoid</span> object (see
        <a href="ObjectInterfaces.html#Humanoid">6.2 Humanoid</a>). The data is
        defined in this manner to separate it from the internal mechanisms of the
        <span class="Object">Humanoid</span> object that utilize this information.
        The <span class="Object">Humanoid</span> object uses the coordinate and
        normal vector data sets to describe the geometry that makes up the skin
        surface of the humanoid figure. This surface may be implemented as a
        single mesh (see <a href="bibliography.html#I19775_1">ISO/IEC 19775-1</a>), as
        multiple meshes, or as another representation that provides the same
        functionality. Depending on how the mesh is rendered within the graphics
        pipeline and the configuration of the humanoid figure, it is possible that
        meshes may provide better performance by isolating the continuous mesh
        changes to localized surfaces. For this reason the specification does not
        constrain the implementation of the skin surface to a single method. The
        <span class="Object">Humanoid</span> object also manipulates the coordinate
        and normal vector data sets defined in the <i>skinCoord</i> and
        <i>skinNormal</i> fields to reflect the changes that occur within the
        skeletal scene graph of the <i>skeleton</i> field. In the context of skin
        deformation, each <span class="Object">Joint</span> object of the skeletal
        hierarchy serves the purpose of defining the coordinate frame within which
        the vertices of the continuous mesh are deformed. Additional details on this
        vertex manipulation can be found in the description of how a
        <span class="Object">Joint</span> object operates.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="JointObject"></a>4.4 Joint object</h1>

<p>The <span class="Object">Joint</span> object is used as a building block to
        describe the articulations of the humanoid figure. Each articulation of the
        humanoid figure is represented by a <span class="Object">Joint</span>
        object. These <span class="Object">Joint</span> objects are organized into a
        hierarchy that describes the inherent parent-child relationship of
        <span class="Object">Joint</span> objects of the skeleton and provides a
        container for information that is specific to each joint of the skeleton.</p>

<p>The <span class="Object">Joint</span> object specifies a coordinate system
        for itself and objects defined in its <i>children</i> field. This coordinate
        system is relative to the coordinate systems of a parent object, which in
        most cases is another <span class="Object">Joint</span> object, but which
        can also be the <span class="Object">Humanoid</span> object. Thus, the
        <span class="Object">Joint</span> object is a specialized grouping object
        that can only be a child of another <span class="Object">Joint</span> object
        or, as occurs in the case of the <code>humanoid_root</code>
        <span class="Object">Joint</span> object, the first object of the skeletal
        hierarchy defined in the <i>skeleton</i> field of the
        <span class="Object">Humanoid</span> object.</p>

<p>A <span class="Object">Joint</span> object has two fields that allow it to
        manipulate individual vertices defined within the <i>skinCoord</i> field of
        the <span class="Object">Humanoid</span> object. Incoming <i>rotation</i>
        field events of the <span class="Object">Joint</span> object affect the
        vertices indicated by the <i>skinCoordIndex</i> field by a factor that is
        described by the corresponding values within the <i>skinCoordWeight</i>
        field of the <span class="Object">Joint</span> object. The
        <i>skinCoordWeight</i> field contains a list of floating point values that
        describe an amount of "weighting" to be used to affect the
        appropriate vertices (as indicated by the <i>skinCoordIndex</i> field) of
        the <i>skinCoord</i> field of the <span class="Object">Humanoid</span>
        object. The <i>skinCoordWeight</i> and <i>skinCoordIndex</i> fields are only
        used when a single continuous mesh HAnim model is being defined.</p>

<p>The <span class="Object">Joint</span> object is also used to store other
        joint-specific information. In particular, a joint <i>name</i> is provided
        so that applications can determine the identity of the
        <span class="Object">Joint</span> object. The
        <span class="Object">Joint</span> object may also contain attributes for
        inverse kinematics systems that control the HAnim figure. These attributes
        include the upper and lower joint limits, the orientation of the joint
        limits, and a stiffness/resistance value. The application is responsible for
        enforcing these limits and there may be certain domains where an application
        chooses to ignore the limits.</p>

<p>The object interface for <span class="Object">Joint</span> objects is
        specified in <a href="ObjectInterfaces.html#Joint">6.3 Joint</a>.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="SegmentObject"></a>4.5 Segment object</h1>

<p>Each body part (e.g., forearm, thigh, calf, etc.) of the humanoid figure is
        represented by a <span class="Object">Segment</span> object. These
        <span class="Object">Segment</span> objects are organized in the
        <span class="Object">Joint</span> object skeletal hierarchy of the humanoid
        and provide a container for information that is specific to each segment of
        the body.</p>

<p>The <span class="Object">Segment</span> object is a specialized grouping
        object that provides a container for objects in its <i>children</i> field. A
        <span class="Object">Segment</span> object can only be defined as a child of
        a <span class="Object">Joint</span> object and shall be matched with the
        correct <span class="Object">Joint</span> object, as specified in
        <a href="#StructureOfAHumanoid">4.9 Structure of a humanoid</a>.</p>

<p>The object interface for <span class="Object">Segment</span> objects is
        specified in <a href="ObjectInterfaces.html#Segment">6.4 Segment</a>.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="SiteObject"></a>4.6 Site object</h1>

<p>The <span class="Object">Site</span> object can be used for three purposes:</p>

<ol type="a">
  <li>to define an "end effector" location that can be used by an
          inverse kinematics system,</li>
  <li>to define an attachment point for accessories such as jewelry and
          clothing, and</li>
  <li>to define a location for a virtual camera in the reference frame of a
          <span class="Object">Segment</span> object (such as a view "through
          the eyes" of the humanoid for use in multi-user worlds).</li>
</ol>

<p><span class="Object">Site</span> objects that are intended to be used as
        attachment points from which a certain viewing perspective can be seen
        (such as the left and right eyes) shall be oriented so that they face in the
        direction the camera is looking.</p>

<p>A list of recommended <span class="Object">Site</span> objects and nominal
        body dimensions and levels of articulation can be found in
        <a href="BodyDimensionsAndLOAs.html">Annex A Nominal human body dimensions
        and levels of articulation</a>.</p>

<p><span class="Object">Site</span> objects are grouping objects that can only
        be defined within the <i>children</i> field of a
        <span class="Object">Segment</span> object. The <i>rotation</i> and
        <i>translation</i> fields of the <span class="Object">Site</span> object
        define the location and orientation of the end effector within the
        coordinate frame of the <span class="Object">Segment</span>. The
        <i>children</i> field of the <span class="Object">Site</span> object is used
        to store any accessories that can be attached to the
        <span class="Object">Segment</span> object. The
        <span class="Object">Site</span> object specifies a coordinate system for
        objects in its <i>children</i> field that is relative to the coordinate
        systems of its parent object.</p>

<p>       <span class="Object">Site</span> objects are ordinarily placed 
        within the <i>children</i> field of the closest relative 
        <span class="Object">Segment</span> in the human body, so that they are
        animated appropriately (as specified in <a href="#t-SiteSegments">Table 4.7</a>).
        For lower LOA levels, a <span class="Object">Site</span> object may instead
        appear within its closest available ancestor.</p>

<p>The object interface for <span class="Object">Site</span> objects is
        specified in <a href="ObjectInterfaces.html#Site">6.5 Site</a>.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="DisplacerObject"></a>4.7 Displacer object</h1>

<p>The shape of individual mesh objects may be altered according to application
        requirements. At the most basic level, this is done by manipulating the data
        stored in the <i>coord</i> field of the mesh objects. In the case of
        skeletal HAnim figures, the mesh objects reside in the
        <span class="Object">Segment</span> objects. In the case of the skinned
        HAnim figures, the mesh objects are specified by the <i>skin</i> field of
        the <span class="Object">Humanoid</span> object.</p>

<p>It may be necessary to identify specific groups of vertices within a mesh.</p>

<p class="Example">EXAMPLE 1  The application may need to know which vertices
        within the skull comprise the left eyebrow.</p>

<p>It may also be necessary to provide "hints" as to the direction in
        which each vertex may move. Such information is stored in a
        <span class="Object">Displacer</span> object. For skeletal HAnim figures,
        the <span class="Object">Displacer</span> objects for a particular
        <span class="Object">Segment</span> object are stored in the
        <i>displacers</i> field of that <span class="Object">Segment</span>. For
        skinned HAnim figures, the <span class="Object">Displacer</span> objects
        are stored in the <i>displacers</i> fields of the
        <span class="Object">Joint</span> objects in the HAnim figure. This
        information, called <i>displacements,</i> is specified in the local space of
        the particular <span class="Object">Joint</span> object, and transformed
        into the <span class="Object">Humanoid</span> space before being applied to
        the mesh.</p>

<p>A <span class="Object">Displacer</span> object can be used in three different
        ways. At its most basic level, it can simply be used to identify the
        vertices corresponding to a particular feature on the mesh. At the next
        level, it can be used to represent a particular muscular action which
        displaces the vertices in various directions. The third way in which a
        <span class="Object">Displacer</span> object can be used is to represent a
        complete configuration of the vertices in a mesh.</p>

<p class="Example">EXAMPLE 2  In the case of a face, there can be a
        <span class="Object">Displacer</span> object for each facial expression.</p>

<p>Each <span class="Object">Displacer</span> object specifies a location,
        called a <i>morph target</i>, that can be used to modify the displacement
        properties of the figure. The scalar magnitude of the displacement of these
        <span class="Object">Displacer</span> objects can be dynamically driven by
        an external source, such as an interpolator. Thus, the mesh may be morphed
        smoothly using the base mesh and a linear combination of the
        <i>displacements</i> defined by the
        <span class="Object">Displacer</span> objects.</p>

<p>While <span class="Object">Displacer</span> objects are most often used to
        control the shape of the face, they can  be used for other body parts.</p>

<p class="Example">EXAMPLE 3  <span class="Object">Displacer</span> objects
        may be used to control the changing shape of an arm
        <span class="Object">Segment</span> as the arm flexes, simulating the effect
        of muscle inflation.</p>

<p>The object interface for <span class="Object">Displacer</span> objects is
        specified in <a href="ObjectInterfaces.html#Displacer">6.6 Displacer</a>. A
        basic list of suggested <span class="Object">Displacer</span> objects is in
        <a href="FeaturePoints.html">Annex B Feature points for the human body</a>.</p>

<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="ModellingOfHumanoids"></a>4.8 Modelling of humanoids</h1>

<h2><a name="ModellingOverview"></a>4.8.1 Overview</h2>

<p>This document defines a possible restriction on the modeling of
        HAnim human figures to ensure that animations designed for one HAnim human
        figure are deployable to another HAnim human figure, when both HAnim human
        figures fully comply with the restrictions defined in 4.8. These
        restrictions specify the state of a model before any animations are applied.</p>

<p>Models do not need to comply with the restrictions defined in this section to
        properly function. These restrictions are included to provide the definition
        of a skeleton configuration that promotes sharing of animations. Models that
        do conform to this more restrictive configuration are identified by the
        <i>skeletalConfiguration</i> field of the
        <span class="Object">Humanoid</span> object. The <i>skeletalConfiguration</i>
        field shall be set to "BASIC" for models that comply with this
        restrictive skeletal configuration.</p>

<p>Any HAnim figure can share animations with another HAnim figure when they
        both share a common skeletal configuration. Two skeletons are defined to
        have the same skeletal configuration if the skeletons become identical when
        the joint rotations from one skeleton are applied to the other skeleton,
        using the <span class="Object">Joint</span> objects' <i>name</i> field to
        map between skeletons.</p>

<p>It is recommended that models sharing a common skeletal configuration also
        share the same <span class="Object">Humanoid</span> object
        <i>skeletalConfiguration</i> field value so that applications can easily
        identify animation data sets for use with that particular model. Any models
        that have the same value of <i>skeletalConfiguration</i> shall also be able
        to perform similar behaviours using the same animation data.</p>

<h2><a name="ModellingOfHumanLikeHAnimFigures"></a>4.8.2 Modelling of human-like
        HAnim figures</h2>

<p>The restrictions in this subclause only apply to models that have been
        designated as using a <i>skeletalConfiguration</i> value of "BASIC".</p>

<p>The humanoid shall be modelled so that, when all joint rotation angles are
        zero, it positions the humanoid in a standing position, facing in the +Z
        direction with +Y up and +X to the humanoid's left. The origin (0, 0, 0)
        shall be located at ground level, between the humanoid's feet.</p>

<p>The feet shall be flat on the ground, spaced apart about the same distance
        as the width of the hips. The bottom of the feet shall be at Y=0. The arms
        shall be straight and parallel to the sides of the body with the palms of
        the hands facing inwards towards the thighs. The hands shall be flat, with
        the axes of joints "1" through "3" of the fingers being parallel to the Y
        axis and the axis of the thumb being angled up at π/2 radians towards
        the +Z direction. Thus, the coordinate system for each joint in the thumb
        is still oriented to align with that of the overall humanoid.</p>

<p>The face shall be modelled with the eyebrows at rest, the mouth closed and
        the eyes wide open. </p>

<p>The humanoid shall be built with actual human size ranges in mind. All
        dimensions are in metres. A typical human is roughly 1.75 metres tall.
        <a href="#f-DefaultPose">Figure 4.1</a> depicts the default position of
        the humanoid.</p>

<div class="CenterDiv">
<p><a name="f-DefaultPose"></a>
  <img src="../Images/femaleFront.png" alt="Female front">
  <img src="../Images/FemalePerspective.png" alt="default side female">
  <img src="../Images/MaleFront.png" alt="default front male">
  <img src="../Images/malePerspective.png" alt="Male front"></p>

<p class="FigureCaption">Figure 4.1 — Humanoid default position</p>
</div>

<p>In this position, all the joint angles shall be zero. That is, all the
        <i>rotation</i> fields in all the <span class="Object">Joint</span> objects
        shall have the default value of (0 0 1 0). In addition, the <i>translation</i>
        fields shall have the default value of (0 0 0) and the <i>scale</i> factors
        shall have the default value of (1 1 1). The only field that shall have a
        non-default value is <i>center</i>, which is used to specify the point
        around which the joint (and its attached children and body segments, if any)
        can rotate. Applying the default values for translation, rotation and
        scaling to all the joints in the body shall return the body to the neutral
        position described above. To facilitate this, the coordinate system for each
        <span class="Object">Joint</span> object is oriented to align with that of
        the overall <span class="Object">Humanoid</span> object.</p>

<p>The <i>center</i> field of each <span class="Object">Joint</span> object
        shall be placed so that the joints rotate in the same way that they do on
        a real human body.</p>

<p><a href="#f-HandOrientation">Figure 4.2</a> shows the orientation of the
        hand. The cross hairs suggest possible locations for the
        <span class="Object">Joint</span> object <i>center</i> field values for the
        finger joints and <span class="Object">Site</span> object <i>center</i>
        field values for the finger tips.</p>

<div class="CenterDiv">
  <a name="f-HandOrientation"></a><img src="../Images/hand.png" alt="Hand" width="375">
<p class="FigureCaption">Figure 4.2 — Hand orientation</p>
</div>

<p>It is suggested, but not required, that all of the body
        <span class="Object">Segment</span> objects be built in place. That is, they
        require no additional translation, rotation, or scaling to be connected with their
        neighbours.</p>

<p class="Example">EXAMPLE  The hand is built so that it is in the correct
        position relative to the forearm. The forearm is built so that it is in the
        correct position relative to the upper arm, and so on.</p>

<p>All of the  coordinates of the body share a common origin, which is that of
        the humanoid itself. If this proves difficult for an authoring tool to
        implement, it is acceptable to use whatever geometric transformation
        mechanism is available in the encoding language to move the geometry defined
        within each <span class="Object">Segment</span> object into the correct
        position. Using such transformations instead of building the geometry hierarchically may
        impact performance.</p>

<p>The above defines the skeletal configuration for the "I" pose. Use
        of other poses is specified in 4.8.3. </p>

<p>Transportable animations that use the <i>skeletalConfiguration</i> of
        "<span class="Code">Basic</span>" shall have a binding pose for
        the skeleton that is a neutral position with all joints at zero rotation as
        described in <a href="#ModellingOverview">4.8.1</a> and
        <a href="#ModellingOfHumanLikeHAnimFigures">4.8.2</a> above.</p>

<h2><a name="Poses"></a>4.8.3 Poses</h2>

<p>The initial posture of an HAnim figure is called a pose. Three poses are 
common and are labelled "I", "T", and "A" (based
        on the similarity of the shape made by the figure to the shape of the
        letters), are used for a geometric model. The "I" pose represents
        a figure standing at attention. When combined with the restrictions
        specified in 4.8.2, this constitutes the <i>skeletalConfiguration</i>
        "<code>Basic</code>". The "T" pose represents a figure
        standing upright with arms extended out to the sides in a 90 degree angle
        from the body.  The "A" pose represents a figure standing upright
        with arms extended out to the sides at a 45 degree angle from the body.</p>

<p>The default
pose specified by the provided geometry is termed the "source pose". This document
specifies that only one pose is provided per HAnim 
figure and the pose used for operations is the "I" pose.</p>

<p>Only one pose is defined in a <span class="Object">Humanoid</span> object.
Design systems that create a pose other than the "I" pose can map their source 
pose to the "I" pose by using the following five fields to specify this mapping:</p>

<ul>
  <li><i>jointBindingPositions</i></li>
  <li><i>jointBindingRotations</i></li>
  <li><i>jointBindingScales</i></li>
  <li><i>skinBindingCoords</i>, and</li>
  <li><i>skinBindingNormals</i></li>
</ul>

<p>The browser uses the data in these fields to automatically map the source 
pose to the pose required for operations, termed the "initial pose". If these 
fields are not specified (or specify default values), the source pose and the 
initial pose are identical to the "I" pose.</p>

<h2>4.8.4 Modelling of non-human
        HAnim figures</h2>

<p>Non-human HAnim figures can also be represented with their joints and
        segments similarly to human HAnim figures. Corresponding animation can be
        generated appropriate to the specified hierarchy. However, for non-human
        HAnim figures, the number of joints and segments may differ, levels of
        articulation are not specified, and the source pose is specified to be the 
initial pose.</p>

<p>A model that does not comply with the restrictions specified in 4.8.2 shall
        have a <i>skeletalConfiguration</i> designation other than
        "<span class="Code">Basic</span>". For these non-basic models,
        the fields in the <strong>Humanoid</strong> node that support binding a general skin to
        a general skeleton may be used to prepare these models for HAnim operations. These fields are:</p>

<ul>
  <li><i>jointBindingPositions</i></li>
  <li><i>jointBindingRotations</i></li>
  <li><i>jointBindingScales</i></li>
  <li><i>skinBindingCoords</i>, and</li>
  <li><i>skinBindingNormals</i></li>
</ul>

<p>Detailed definitions of these fields are specified in
        <a href="ObjectInterfaces.html">6 Object interfaces</a>. These fields are
        not required for models that comply with the
        "<span class="Code">Basic</span>" <i>skeletalConfiguration</i>.</p>

<h2><a name="LevelsOfArticulation"></a>4.8.5 Levels of articulation</h2>

<p>Level of articulation (LOA) represents the complexity and detail of joints
        for a humanoid skeletal hierarchy, and can be used for generating various
        motions based on the joints. There are five levels of articulation:</p>
<ul>
        <li>
                LOA‑0 represents only the <code>humanoid_root</code> Joint object
                without an accompanying hierarchy, as shown in (<a href="#f-LOA0Joint">Figure 4.3</a>).
        </li>
        <li>
                LOA‑1 represents the simplest organization and hierarchy of joints for
                a humanoid. There are 18 joints and 18 segments. Each segment has a joint
                in the hierarchy. <a href="#f-LOA1Joints">Figure 4.4</a> represents
                LOA‑1 joints.
        </li>
        <li>
                LOA‑2 consists of 71 joints and 71 segments (<a href="#f-LOA2Joints">Figure 4.5</a>). 
        </li>
        <li>
                LOA‑3 consists of 94 joints and 94 segments (<a href="#f-LOA3Joints">Figure 4.6</a>).
        </li>
        <li>
                LOA‑4 builds
                on LOA‑3 by adding anatomical details of hands and feet
                (<a href="#f-LOA4Joints">Figure 4.7</a>). LOA‑4 consists of 148 joints
                and 148 segments. Hands and feet joints for LOA‑4 are illustrated in
                <a href="#TheHands">4.9.3</a> and <a href="#TheFeet">4.9.4</a> respectively.
        </li>
</ul>

<div class="CenterDiv"> <a name="f-LOA0Joint"></a>
        <img src="../Images/LOA0.png" alt="LOA‑1 figure">
        <p class="FigureCaption">Figure 4.3 — LOA‑0 joint</p>
        <img src="../Images/ImageSeparatorLine.png" alt="ImageSeparatorLine">
</div>

<div class="CenterDiv"> <a name="f-LOA1Joints"></a>
        <img src="../Images/LOA1.png" alt="LOA‑1 figure">
        <p class="FigureCaption">Figure 4.4 — LOA‑1 joints</p>
        <img src="../Images/ImageSeparatorLine.png" alt="ImageSeparatorLine">
</div>

<div class="CenterDiv"> <a name="f-LOA2Joints"></a>
        <img src="../Images/LOA2.png" alt="LOA‑2 figure">
        <p class="FigureCaption">Figure 4.5 — LOA‑2 joints</p>
        <img src="../Images/ImageSeparatorLine.png" alt="ImageSeparatorLine">
</div>

<div class="CenterDiv"> <a name="f-LOA3Joints"></a>
        <img src="../Images/LOA3.png" alt="LOA‑3 figure">
        <p class="FigureCaption">Figure 4.6 — LOA‑3 joints</p>
        <img src="../Images/ImageSeparatorLine.png" alt="ImageSeparatorLine">
</div>

<div class="CenterDiv"> <a name="f-LOA4Joints"></a>
        <img src="../Images/LOA4.png" alt="LOA‑4">
        <p class="FigureCaption">Figure 4.7 — LOA‑4 joints</p>
</div>

<h1> </h1>

<h2><a name="PartialHAnimFigures"></a>4.8.6 Partial HAnim figures</h2>

<p>Modelling of partial figures (e.g., an arm or leg) is supported by using 
empty joints between the <strong>humanoidRoot</strong> and the first joint to be 
modelled.</p>
<p class="example">EXAMPLE  A hierarchy such as the following meets all 
relationship rules but can be used to display only the head:</p>

<pre>humanoidRoot : sacrum
  vc3 : c3
    vc2 : c2
      vc1 : c1
         skullbase : skull</pre>
<p class="example">For this case the geometry can be such that the 
humanoidRoot is simply a dummy object, not being drawn. 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.</p>
<h1><img class="cube" src="../Images/cube.png" alt="cube">
        <a name="StructureOfAHumanoid"></a>4.9 Structure of a humanoid</h1>

<h2><a name="StructureOfAHumanoidOverview"></a>4.9.1 Overview</h2>

<p>The human body consists of a number of segments (such as the forearm, hand
        and foot) that are connected to each other by joints (such as the elbow,
        wrist and ankle). This document defines abstractions for these
        segments and joints that allow a human body to be described in a structured
        and standardized way. An HAnim body is built as a series of nested
        <span class="Object">Joint</span> objects, each of which may have a
        <span class="Object">Segment</span> associated with it. The hierarchy in
        <a href="#Hierarchy">4.9.6 Hierarchy</a> shows the
        <span class="Object">Joint</span>:<span class="Object">Segment</span> object
        pair matching that is defined by this document. If a standard
        HAnim <span class="Object">Joint</span> object is defined, and that
        <span class="Object">Joint</span> object defines a
        <span class="Object">Segment</span> object, that
        <span class="Object">Segment</span> object shall use the appropriate name
        from this hierarchy.</p>

<p class="Example">EXAMPLE  If an <span class="Code">l_upperarm</span>
        <span class="Object">Segment</span> object is defined, it shall be defined
        as a child of the <span class="Code">l_shoulder</span>
        <span class="Object">Joint</span> object and similarly, if an
        <span class="Code">r_knee</span> <span class="Object">Joint</span> object
        has a <span class="Object">Segment</span> object defined within its
        <i>children</i> field, it shall be an <span class="Code">r_calf</span>
        <span class="Object">Segment</span> object.</p>

<h2><a name="TheBody"></a>4.9.2 The body</h2>

<p>The names of the <span class="Object">Joint</span> objects for the body are
        specified in <a href="#f-LOA0Joint">Figure 4.3</a> for LOA‑0,
        <a href="#f-LOA1Joints">Figure 4.4</a> for LOA‑1,
        <a href="#f-LOA2Joints">Figure 4.5</a> for LOA‑2,
        <a href="#f-LOA3Joints">Figure 4.6</a> for LOA‑3, and
        <a href="#f-LOA4Joints">Figure 4.7</a> for LOA‑4.</p>

<p>For LOA‑1 and above the <span class="Code">vl5</span> and
        <span class="Code">sacroiliac</span> <span class="Object">Joint</span>
        objects are children of the <span class="Code">humanoid_root</span>
        <span class="Object">Joint</span> object. The
        <span class="Code">humanoid_root</span> <span class="Object">Joint</span>
        object is stored in the <i>skeleton</i> field of the
        <span class="Object">Humanoid</span> object, but all other
        <span class="Object">Joint</span> objects are descended from either
        <span class="Code">vl5</span> or <span class="Code">sacroiliac</span>. If
        those <span class="Object">Joint</span> objects are missing, lower-level
        <span class="Object">Joint</span> objects can be children of the
        <span class="Code">humanoid_root</span> <span class="Object">Joint</span>
        object.</p>
 
<h2><a name="TheHands"></a>4.9.3 The hands</h2>

<p>The names of the <span class="Object">Joint</span> objects for the
        LOA‑2 and 3 hands are specified in
        <a href="#t-LOA23HandJoints">Table 4.2</a>.</p>

<div class="CenterDiv">
<p class="TableCaption"><a name="t-LOA23HandJoints"></a>Table 4.2 — LOA‑2 and LOA‑3 hand Joint object names</p>

<table summary="Table 4.2 — LOA‑2 and LOA‑3 hand Joint object names">
    <tr>
      <th colspan="5" align="left">Left hand</th>
    </tr>
    <tr>
      <td>l_carpometacarpal_1</td>
      <td>l_metacarpophalangeal_1</td>
      <td align="left">l_carpal_interphalangeal_1</td>
      <td> </td>
    </tr>
    <tr>
      <td>l_carpometacarpal_2</td>
      <td>l_metacarpophalangeal_2</td>
      <td>l_carpal_proximal_interphalangeal_2</td>
      <td>l_carpal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>l_carpometacarpal_3</td>
      <td>l_metacarpophalangeal_3</td>
      <td>l_carpal_proximal_interphalangeal_3</td>
      <td>l_carpal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td>l_carpometacarpal_4</td>
      <td>l_metacarpophalangeal_4</td>
      <td>l_carpal_proximal_interphalangeal_4</td>
      <td>l_carpal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>l_carpometacarpal_5</td>
      <td>l_metacarpophalangeal_5</td>
      <td>l_carpal_proximal_interphalangeal_5</td>
      <td>l_carpal_distal_interphalangeal_5</td>
    </tr>
    <tr>
      <th colspan="5" align="left">Right hand</th>
    </tr>
    <tr>
      <td>r_carpometacarpal_1</td>
      <td>r_metacarpophalangeal_1</td>
      <td align="left">r_carpal_interphalangeal_1</td>
      <td> </td>
    </tr>
    <tr>
      <td>r_carpometacarpal_2</td>
      <td>r_metacarpophalangeal_2</td>
      <td>r_carpal_proximal_interphalangeal_2</td>
      <td>r_carpal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>r_carpometacarpal_3</td>
      <td>r_metacarpophalangeal_3</td>
      <td>r_carpal_proximal_interphalangeal_3</td>
      <td>r_carpal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td>r_carpometacarpal_4</td>
      <td>r_metacarpophalangeal_4</td>
      <td>r_carpal_proximal_interphalangeal_4</td>
      <td>r_carpal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>r_carpometacarpal_5</td>
      <td>r_metacarpophalangeal_5</td>
      <td>r_carpal_proximal_interphalangeal_5</td>
      <td>r_carpal_distal_interphalangeal_5</td>
    </tr>
  </table>
  <p> </p>
</div>

<p>The joints of a hand are illustrated as in <a href="#f-HandJoints">Figure 4.8</a>.
        The figure shows the LOA‑4 joints of a hand.</p>

<div class="CenterDiv"> 
<p><a name="f-HandJoints"></a>
        <img src="../Images/right_hand.png" alt="right hand joints" width="750"></p>
<p> </p>
<p><img src="../Images/left_hand.png" alt="left hand joints" width="750"></p>
<p class="FigureCaption" id="Hand_joints">Figure 4.8 — LOA‑4 hand joints</p>
</div>

<p>The names of the <span class="Object">Joint</span> objects for the
        LOA‑4 hand joints are specified in
        <a href="#t-LOA4HandJoints">Table 4.3</a>.</p>

<div class="CenterDiv">
  <p class="TableCaption"><a name="t-LOA4HandJoints"></a>Table 4.3 — LOA‑4 hand Joint object names</p>
  <table summary="Table 4.3 — LOA‑4 hand Joint object names" align="center">
    <tr>
      <th colspan="5" align="left">Left hand</th>
    </tr>
    <tr>
      <td>l_midcarpal_1</td>
      <td>l_carpometacarpal_1</td>
      <td>l_metacarpophalangeal_1</td>
      <td align="left">l_carpal_interphalangeal_1</td>
          <td> </td>
    </tr>
    <tr>
      <td>l_midcarpal_2</td>
      <td>l_carpometacarpal_2</td>
      <td>l_metacarpophalangeal_2</td>
      <td>l_carpal_proximal_interphalangeal_2</td>
      <td>l_carpal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>l_midcarpal_3</td>
      <td>l_carpometacarpal_3</td>
      <td>l_metacarpophalangeal_3</td>
      <td>l_carpal_proximal_interphalangeal_3</td>
      <td>l_carpal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td rowspan="2">l_midcarpal_4_5</td>
      <td>l_carpometacarpal_4</td>
      <td>l_metacarpophalangeal_4</td>
      <td>l_carpal_proximal_interphalangeal_4</td>
      <td>l_carpal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>l_carpometacarpal_5</td>
      <td>l_metacarpophalangeal_5</td>
      <td>l_carpal_proximal_interphalangeal_5</td>
      <td>l_carpal_distal_interphalangeal_5</td>
    </tr>
    <tr>
      <th colspan="5" align="left">Right hand</th>
    </tr>
    <tr>
      <td>r_midcarpal_1</td>
      <td>r_carpometacarpal_1</td>
      <td>r_metacarpophalangeal_1</td>
      <td align="left">r_carpal_interphalangeal_1</td>
          <td> </td>
    </tr>
    <tr>
      <td>r_midcarpal_2</td>
      <td>r_carpometacarpal_2</td>
      <td>r_metacarpophalangeal_2</td>
      <td>r_carpal_proximal_interphalangeal_2</td>
      <td>r_carpal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>r_midcarpal_3</td>
      <td>r_carpometacarpal_3</td>
      <td>r_metacarpophalangeal_3</td>
      <td>r_carpal_proximal_interphalangeal_3</td>
      <td>r_carpal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td rowspan="2">r_midcarpal_4_5</td>
      <td>r_carpometacarpal_4</td>
      <td>r_metacarpophalangeal_4</td>
      <td>r_carpal_proximal_interphalangeal_4</td>
      <td>r_carpal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>r_carpometacarpal_5</td>
      <td>r_metacarpophalangeal_5</td>
      <td>r_carpal_proximal_interphalangeal_5</td>
      <td>r_carpal_distal_interphalangeal_5</td>
    </tr>
  </table>
</div>

<h2><a name="TheFeet"></a>4.9.4 The feet</h2>

<p>The names of the <span class="Object">Joint</span> objects for the
        LOA‑2 and 3 feet are specified in
        <a href="#t-LOA23FootJoints">Table 4.4</a>.</p>

<div class="CenterDiv">
  <p class="TableCaption"><a name="t-LOA23FootJoints"></a>Table 4.4 — LOA‑2 and 3  foot Joint object names</p>
  <table summary="Table 4.4 — LOA‑2 and 3  foot Joint object names">
    <tr>
      <th colspan="4" align="left">Left foot</th>
    </tr>
    <tr>
      <td>l_talocrural</td>
      <td>l_tarsometatarsal</td>
      <td>l_metatarsophalangeal</td>
      <td>l_tarsal_interphalangeal</td>
    </tr>
    <tr>
      <th colspan="4" align="left">Right foot</th>
    </tr>
    <tr>
      <td>r_talocrural</td>
      <td>r_tarsometatarsal</td>
      <td>r_metatarsophalangeal</td>
      <td>r_tarsal_interphalangeal</td>
    </tr>
  </table>
  <p> </p>
</div>

<p>The LOA‑4 joints of a foot are illustrated as in
        <a href="#f-FootJoints">Figure 4.9</a>.</p>

<div class="CenterDiv"><a name="f-FootJoints"></a>
        <img src="../Images/right_foot.png" alt="right foot joints" width="850">
        <p> </p>
        <img src="../Images/left_foot.png" alt="left foot joints" width="850">
        <p> </p>
        <p class="FigureCaption">Figure 4.9 — LOA‑4 foot joints</p>
</div>

<p>The names of the <span class="Object">Joint</span> objects for
        LOA‑4 feet are specified in <a href="#t-LOA4FootJoints">Table 4.5</a>.</p>

<div class="CenterDiv">
  <p class="TableCaption"><a name="t-LOA4FootJoints"></a>Table 4.5 — LOA‑4 foot Joint object names</p>
  <table summary="Table 4.5 — LOA‑4 foot Joint object names">
    <tr>
      <th colspan="6" align="left">Left foot</th>
    </tr>
    <tr>
      <td rowspan="2">l_talocrural</td>
      <td>l_cuneonavicular_1</td>
      <td>l_tarsometatarsal_1</td>
      <td>l_metatarsophalangeal_1</td>
      <td>l_tarsal_proximal_interphalangeal_1</td>
      <td>l_tarsal_distal_interphalangeal_1</td>
    </tr>
    <tr>
      <td>l_cuneonavicular_2</td>
      <td>l_tarsometatarsal_2</td>
      <td>l_metatarsophalangeal_2</td>
      <td>l_tarsal_proximal_interphalangeal_2</td>
      <td>l_tarsal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>l_talocalcaneonavicular</td>
      <td>l_cuneonavicular_3</td>
      <td>l_tarsometatarsal_3</td>
      <td>l_metatarsophalangeal_3</td>
      <td>l_tarsal_proximal_interphalangeal_3</td>
      <td>l_tarsal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td rowspan="2">l_calcaneocuboid</td>
      <td rowspan="2">l_transversetarsal</td>
      <td>l_tarsometatarsal_4</td>
      <td>l_metatarsophalangeal_4</td>
      <td>l_tarsal_proximal_interphalangeal_4</td>
      <td>l_tarsal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>l_tarsometatarsal_5</td>
      <td>l_metatarsophalangeal_5</td>
      <td>l_tarsal_proximal_interphalangeal_5</td>
      <td>l_tarsal_distal_interphalangeal_5</td>
    </tr>
    <tr>
      <th colspan="6" align="left">Right foot</th>
    </tr>
    <tr>
      <td rowspan="2">r_talocrural</td>
      <td>r_cuneonavicular_1</td>
      <td>r_tarsometatarsal_1</td>
      <td>r_metatarsophalangeal_1</td>
      <td>r_tarsal_proximal_interphalangeal_1</td>
      <td>r_tarsal_distal_interphalangeal_1</td>
    </tr>
    <tr>
      <td>r_cuneonavicular_2</td>
      <td>r_tarsometatarsal_2</td>
      <td>r_metatarsophalangeal_2</td>
      <td>r_tarsal_proximal_interphalangeal_2</td>
      <td>r_tarsal_distal_interphalangeal_2</td>
    </tr>
    <tr>
      <td>r_talocalcaneonavicular</td>
      <td>r_cuneonavicular_3</td>
      <td>r_tarsometatarsal_3</td>
      <td>r_metatarsophalangeal_3</td>
      <td>r_tarsal_proximal_interphalangeal_3</td>
      <td>r_tarsal_distal_interphalangeal_3</td>
    </tr>
    <tr>
      <td rowspan="2">r_calcaneocuboid</td>
      <td rowspan="2">r_transversetarsal</td>
      <td>r_tarsometatarsal_4</td>
      <td>r_metatarsophalangeal_4</td>
      <td>r_tarsal_proximal_interphalangeal_4</td>
      <td>r_tarsal_distal_interphalangeal_4</td>
    </tr>
    <tr>
      <td>r_tarsometatarsal_5</td>
      <td>r_metatarsophalangeal_5</td>
      <td>r_tarsal_proximal_interphalangeal_5</td>
      <td>r_tarsal_distal_interphalangeal_5</td>
    </tr>
  </table>
</div>

<h2><a name="TheFace"></a>4.9.5 The face</h2>

<p>Many humanoid implementations have made use of jointed facial structures to
        simulate facial expression. These work in a fashion similar to the facial
        parts of a ventriloquist's dummy. The following is a basic set of facial
        <span class="Object">Joint</span> and <span class="Object">Segment</span>
        objects that support this type of facial animation.</p>

<p>The suffix "<span class="Code">_joint</span>" is used here because
        these features are controlled by muscle groups instead of actual joints, the
        exception being the <span class="Code">temporomandibular</span>
        <span class="Object">Joint</span> object. The
        "<span class="Code">_joint</span>" suffix provides a distinction
        between the name of the <span class="Object">Joint</span> object and the
        name of the  corresponding <span class="Object">Segment</span> object.</p>

<p>All facial <span class="Object">Joint</span> objects are children of the
        <span class="Code">skullbase</span> <span class="Object">Joint</span>
        object. The centre of rotation of the eye and the eyelid is the geometric
        centre of the eyeball. The eyelid rotation defaults to zero radians, and a
        positive rotation of π radians shall close the eyelid until it is
        complete. The eyebrows are at zero radians rotation by default, and can be
        rotated around the middle of the eyebrow. The mouth is closed when the
        <span class="Code">temporomandibular</span> 
        <span class="Object">Joint</span> object is at zero radians.</p>

<p>The names of the <span class="Object">Joint</span> objects for the face are
        specified in <a href="#t-FaceJoints">Table 4.6</a>.</p>

<div class="CenterDiv">
<p class="TableCaption"><a name="t-FaceJoints"></a>Table 4.6 — Face Joint object names</p>

<table summary="Table 4.6 — Face Joint object names">
  <tbody>
    <tr>
      <td>l_eyeball_joint</td>
      <td>r_eyeball_joint</td>
    </tr>
    <tr>
      <td>l_eyebrow_joint</td>
      <td>r_eyebrow_joint</td>
    </tr>
    <tr>
      <td>l_eyelid_joint</td>
      <td>r_eyelid_joint</td>
    </tr>
    <tr>
      <td>temporomandibular</td>
      <td> </td>
    </tr>
  </tbody>
</table>

</div>

<p>See <a href="#AdditionalJointAndSegmentObjects">4.9.8 Additional
                <span class="Object">Joint</span> and
                <span class="Object">Segment</span> objects</a> for details on how
                additional facial joints may be added.</p>

<p>The face <span class="Object">Joint</span> objects from the basic set of
        <span class="Object">Joint</span> objects only provide a primitive form of
        facial animation.</p>

<h2><a name="Hierarchy"></a>4.9.6 Hierarchy</h2>

<h3><a name="Hierarchy1"></a>4.9.6.1 LOA‑1 hierarchy </h3>

<p>The LOA‑1 hierarchy forming the basic set of
        <span class="Object">Joint</span> objects is specified in
        <a href="#BasicSetJointHierarchy1">Figure 4.10</a> with the segment names
        listed after the joints to which they are attached.</p>

<pre class=diagram><a name="BasicSetJointHierarchy1"></a><strong>humanoid_root</strong> : sacrum
  sacroiliac : pelvis
  | l_hip : l_thigh
  | | l_knee : l_calf
  | |   l_talocrural : l_talus
  | |     l_metatarsophalangeal_2 : l_tarsal_proximal_phalanx_2
  | r_hip : r_thigh
  |   r_knee : r_calf
  |     r_talocrural : r_talus
  |       r_metatarsophalangeal_2 : r_tarsal_proximal_phalanx_2
  vl5 : l5
    skullbase : skull
    l_shoulder : l_upperarm
    | l_elbow : l_forearm
    |   l_radiocarpal : l_carpal
    r_shoulder : r_upperarm
      r_elbow : r_forearm
        r_radiocarpal : r_carpal
</pre>

<div class="CenterDiv">
<p class=FigureCaption id="f48">Figure 4.10 — Basic set of Joint:Segment
        hierarchy for LOA‑1 (joint name : segment name)</p>
</div>

<h2> </h2>
<h3><a name="Hierarchy2"></a>4.9.6.2 LOA‑2 hierarchy </h3>

<p>The LOA‑2 hierarchy forming the basic set of
        <span class="Object">Joint</span> objects is specified in
        <a href="#BasicSetJointHierarchy2">Figure 4.11</a> with the segment names
        listed after the joints to which they are attached.</p>

<pre class=diagram><a name="BasicSetJointHierarchy2"></a>humanoid_root : sacrum
  sacroiliac : pelvis
  | l_hip : l_thigh
  | | l_knee : l_calf
  | |   l_talocrural : l_talus
  | |     l_tarsometatarsal_2 : l_metatarsal_2
  | |       l_metatarsophalangeal_2 : l_tarsal_proximal_phalanx_2
  | |         l_tarsal_distal_interphalangeal_2 : l_tarsal_distal_phalanx_2
  | r_hip : r_thigh
  |   r_knee : r_calf
  |     r_talocrural : r_talus
  |       r_tarsometatarsal_2 : r_metatarsal_2
  |         r_metatarsophalangeal_2 : r_tarsal_proximal_phalanx_2
  |             r_tarsal_distal_interphalangeal_2 : r_tarsal_distal_phalanx_2
  vl5 : l5
    vl3 : l3
      vl1 : l1
        vt10 : t10
          vt6 : t6
            vt1 : t1
              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
              |         l_carpometacarpal_1 : l_metacarpal_1
              |         | l_metacarpophalangeal_1 : l_carpal_proximal_phalanx_1
              |         |   l_carpal_interphalangeal_1 : l_carpal_distal_phalanx_1
              |         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_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_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_carpometacarpal_1 : r_metacarpal_1
                        | r_metacarpophalangeal_1 : r_carpal_proximal_phalanx_1
                        |   r_carpal_interphalangeal_1 : r_carpal_distal_phalanx_1
                        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_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_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
</pre>

<div class="CenterDiv">
  <p class="FigureCaption">Figure 4.11 — Basic set of Joint:Segment
          hierarchy for LOA‑2</p>
</div>

<h3><a name="Hierarchy3"></a>4.9.6.3 LOA‑3 hierarchy </h3>

<p>The LOA‑3 hierarchy forming the basic set of
        <span class="Object">Joint</span> objects is specified in
        <a href="#BasicSetJointHierarchy3">Figure 4.12</a> with the segment names
        listed after the joints to which they are attached.</p>

<pre class=diagram><a name="BasicSetJointHierarchy3"></a>humanoid_root : sacrum
  sacroiliac : pelvis
  | l_hip : l_thigh
  | | l_knee : l_calf
  | |   l_talocrural : l_talus
  | |     l_tarsometatarsal_2 : l_metatarsal_2
  | |       l_metatarsophalangeal_2 : l_tarsal_proximal_phalanx_2
  | |         l_tarsal_distal_interphalangeal_2 : l_tarsal_distal_phalanx_2
  | r_hip : r_thigh
  |   r_knee : r_calf
  |     r_talocrural : r_talus
  |       r_tarsometatarsal_2 : r_metatarsal_2
  |         r_metatarsophalangeal_2 : r_tarsal_proximal_phalanx_2
  |             r_tarsal_distal_interphalangeal_2 : r_tarsal_distal_phalanx_2
  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_carpometacarpal_1 : l_metacarpal_1
                                    |         | l_metacarpophalangeal_1 : l_carpal_proximal_phalanx_1
                                    |         |   l_carpal_interphalangeal_1 : l_carpal_distal_phalanx_1
                                    |         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_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_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_carpometacarpal_1 : r_metacarpal_1
                                              | r_metacarpophalangeal_1 : r_carpal_proximal_phalanx_1
                                              |   r_carpal_interphalangeal_1 : r_carpal_distal_phalanx_1
                                              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_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_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
</pre>

<div class="CenterDiv">
<p class="FigureCaption">Figure 4.12 — Basic set of Joint:Segment
        hierarchy for LOA‑3</p>
</div>

<h3><a name="Hierarchy4"></a>4.9.6.4 LOA‑4 hierarchy </h3>

<p>The LOA‑4 hierarchy forming the basic set of
        <span class="Object">Joint</span> objects is specified in
        <a href="#BasicSetJointHierarchy4">Figure 4.13</a> with the segment names
        listed after the joints to which they are attached.</p>

<pre class=diagram><a name="BasicSetJointHierarchy4"></a>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_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 : l_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</pre>

<div class="CenterDiv">
  <p class="FigureCaption">Figure 4.13 — Basic set of Joint:Segment
          hierarchy for LOA‑4</p>
</div>

<h2><a name="SiteSegmentRelationships"></a>4.9.7 Site and Segment relationships</h2>

<p>A set of predefined <span class="Object">Site</span> object names are listed
        in <a href="#t-SiteSegments">Table 4.7</a> (see
        <a href="FeaturePoints.html">Annex B Feature points for the human body</a>
        for more information). The first column lists the predefined site names, and
        the other columns list the <span class="Object">Segment</span> object names
        to which the site shall be attached. Since not all
        <span class="Object">Segment</span> objects are present in all LOAs, the
        specific <span class="Object">Segment</span> object to which a particular
        <span class="Object">Site</span> object is attached may be different
        for different LOAs.

<div class="CenterDiv">
<p class="TableCaption"><a name="t-SiteSegments"></a>Table 4.7 — Site and Segment relationships</p>
  <table summary="Table 4.7 — Site and Segment relationships">
    <tr>
      <th>Index</th>
      <th>Site name</th>
      <th>Segment names for LOA‑4</th>
      <th>Segment names for LOA‑3</th>
      <th>Segment names for LOA‑2</th>
      <th>Segment names for LOA‑1</th>
      <th>Segment names for LOA‑0</th>
        </tr>
    <tr>
      <td>0</td>
      <td>skull_vertex</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>1</td>
      <td>glabella</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>2</td>
      <td>sellion</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>3</td>
      <td>l_infraorbitale</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>4</td>
      <td>l_tragion</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>5</td>
      <td>l_gonion</td>
      <td>jaw</td>
      <td>jaw</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>6</td>
      <td>r_infraorbitale</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>7</td>
      <td>r_tragion</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>8</td>
      <td>r_gonion</td>
      <td>jaw</td>
      <td>jaw</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>9</td>
      <td>supramenton</td>
      <td>jaw</td>
      <td>jaw</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>10</td>
      <td>cervicale</td>
      <td>t1</td>
      <td>t1</td>
      <td>t1</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>11</td>
      <td>adams_apple</td>
      <td>c2</td>
      <td>c2</td>
      <td>c2</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>12</td>
      <td>suprasternale</td>
      <td>t1</td>
      <td>t1</td>
      <td>t1</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>13</td>
      <td>substernale</td>
      <td>t10</td>
      <td>t10</td>
      <td>t10</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>14</td>
      <td>l_clavicale</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>15</td>
      <td>l_acromion</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>16</td>
      <td>l_axilla_proximal</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>17</td>
      <td>l_axilla_distal</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>18</td>
      <td>l_axilla_posterior_folds</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>19</td>
      <td>r_clavicale</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>20</td>
      <td>r_acromion</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>21</td>
      <td>r_axilla_proximal</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>22</td>
      <td>r_axilla_distal</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>23</td>
      <td>r_axilla_posterior_folds</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>r_clavicle</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>24</td>
      <td>spine_1_middle_back</td>
      <td>t5</td>
      <td>t5</td>
      <td>l3</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>25</td>
      <td>spine_2_middle_back</td>
      <td>l2</td>
      <td>l2</td>
      <td>l3</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>26</td>
      <td>waist_preferred_anterior</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>27</td>
      <td>waist_preferred_posterior</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>28</td>
      <td>l_rib10</td>
      <td>l2</td>
      <td>l2</td>
      <td>l3</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>29</td>
      <td>l_thelion</td>
      <td>t9</td>
      <td>t9</td>
      <td>t10</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>30</td>
      <td>r_rib10</td>
      <td>l2</td>
      <td>l2</td>
      <td>l3</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>31</td>
      <td>r_thelion</td>
      <td>t9</td>
      <td>t9</td>
      <td>t10</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>32</td>
      <td>l_asis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>33</td>
      <td>l_iliocristale</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>34</td>
      <td>l_psis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>35</td>
      <td>r_asis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>36</td>
      <td>r_iliocristale</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>37</td>
      <td>r_psis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>38</td>
      <td>crotch</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>39</td>
          <td>l_femoral_medial_epicondyles</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>40</td>
      <td>l_femoral_lateral_epicondyles</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>41</td>
      <td>l_suprapatella</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>42</td>
      <td>l_trochanterion</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>43</td>
      <td>r_femoral_lateral_epicondyles</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>44</td>
          <td>r_femoral_medial_epicondyles</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>45</td>
      <td>r_suprapatella </td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>46</td>
      <td>r_trochanterion</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>47</td>
      <td>l_tibiale</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>48</td>
      <td>l_medial_malleolus</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>49</td>
      <td>l_lateral_malleolus</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>l_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>50</td>
      <td>l_sphyrion</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>51</td>
      <td>r_tibiale</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>52</td>
      <td>r_medial_malleolus</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>53</td>
      <td>r_lateral_malleolus</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>r_calf</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>54</td>
      <td>r_sphyrion</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>55</td>
      <td>l_metatarsal_phalanx_1</td>
      <td>l_tarsal_proximal_phalanx_1</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>56</td>
      <td>l_metatarsal_phalanx_5</td>
      <td>l_tarsal_proximal_phalanx_5</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>57</td>
      <td>l_dactylion</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>58</td>
      <td>l_calcaneus_posterior</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>l_talus</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>59</td>
      <td>r_metatarsal_phalanx_1</td>
      <td>r_tarsal_proximal_phalanx_1</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>60</td>
      <td>r_metatarsal_phalanx_5</td>
      <td>r_tarsal_proximal_phalanx_5</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>61</td>
      <td>r_dactylion</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>62</td>
      <td>r_calcaneus_posterior</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>r_talus</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>63</td>
      <td>l_humeral_lateral_epicondyles</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>64</td>
      <td>l_humeral_medial_epicondyles</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>65</td>
      <td>l_olecranon</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>66</td>
      <td>r_humeral_lateral_epicondyles</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>67</td>
      <td>r_humeral_medial_epicondyles</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>68</td>
      <td>r_olecranon</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>69</td>
      <td>l_radiale</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>70</td>
      <td>l_ulnar_styloid</td>
      <td>l_carpal</td>
      <td>l_carpal</td>
      <td>l_carpal</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>71</td>
      <td>l_radial_styloid</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>l_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>72</td>
      <td>r_radiale</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>73</td>
      <td>r_ulnar_styloid</td>
      <td>r_carpal</td>
      <td>r_carpal</td>
      <td>r_carpal</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>74</td>
      <td>r_radial_styloid</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>r_forearm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>75</td>
      <td>l_metacarpal_phalanx_2</td>
      <td>l_metacarpal_2</td>
      <td>l_metacarpal_2</td>
      <td>l_metacarpal_2</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>76</td>
      <td>l_metacarpal_phalanx_3</td>
      <td>l_metacarpal_3</td>
      <td>l_metacarpal_3</td>
      <td>l_metacarpal_3</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>77</td>
      <td>l_metacarpal_phalanx_5</td>
      <td>l_metacarpal_5</td>
      <td>l_metacarpal_5</td>
      <td>l_metacarpal_5</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>78</td>
      <td>r_metacarpal_phalanx_2</td>
      <td>r_metacarpal_2</td>
      <td>r_metacarpal_2</td>
      <td>r_metacarpal_2</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>79</td>
      <td>r_metacarpal_phalanx_3</td>
      <td>r_metacarpal_3</td>
      <td>r_metacarpal_3</td>
      <td>r_metacarpal_3</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>80</td>
      <td>r_metacarpal_phalanx_5</td>
      <td>r_metacarpal_5</td>
      <td>r_metacarpal_5</td>
      <td>r_metacarpal_5</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>81</td>
      <td>nuchale</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>82</td>
      <td>l_neck_base</td>
      <td>c7</td>
      <td>c7</td>
      <td>t1</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>83</td>
      <td>r_neck_base</td>
      <td>c7</td>
      <td>c7</td>
      <td>t1</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>84</td>
      <td>navel</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>85</td>
      <td>l_ectocanthus</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>86</td>
      <td>r_ectocanthus</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>87</td>
      <td>menton</td>
      <td>jaw</td>
      <td>jaw</td>
      <td>skull</td>
      <td>skull</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>88</td>
      <td>mesosternale</td>
      <td>t6</td>
      <td>t6</td>
      <td>t6</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>89</td>
      <td>opisthocranion</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
      <td>skull</td>
        </tr>
    <tr>
      <td>90</td>
      <td>l_knee_crease</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>l_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>91</td>
      <td>r_knee_crease</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>r_thigh</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>92</td>
      <td>rear_center_midsagittal_plane</td>
      <td>t6</td>
      <td>t6</td>
      <td>t6</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>93</td>
      <td>buttocks_standing_wall_contact_point</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>pelvis</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>94</td>
      <td>l_chest_midsagittal_plane</td>
      <td>t6</td>
      <td>t6</td>
      <td>t6</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>95</td>
      <td>r_chest_midsagittal_plane</td>
      <td>t6</td>
      <td>t6</td>
      <td>t6</td>
      <td>l5</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>96</td>
      <td>l_bideltoid</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>l_upperarm</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>97</td>
      <td>r_bideltoid</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>r_upperarm</td>
      <td>sacrum</td>
        </tr>
    <tr style="background-color:lightgrey">
      <td>98</td>
      <td>(reserved)</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
    <tr style="background-color:lightgrey">
      <td>99</td>
      <td>(reserved)</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
    <tr style="background-color:lightgrey">
      <td>100</td>
      <td>(reserved)</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
        </tr>
    <tr>
      <td>101</td>
      <td>l_carpal_distal_phalanx_1</td>
      <td>l_carpal_distal_phalanx_1</td>
      <td>l_carpal_distal_phalanx_1</td>
      <td>l_carpal_distal_phalanx_1</td>
      <td>l_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>102</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_carpal_distal_phalanx_2</td>
      <td>l_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>103</td>
      <td>l_carpal_distal_phalanx_3</td>
      <td>l_carpal_distal_phalanx_3</td>
      <td>l_carpal_distal_phalanx_3</td>
      <td>l_carpal_distal_phalanx_3</td>
      <td>l_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>104</td>
      <td>l_carpal_distal_phalanx_4</td>
      <td>l_carpal_distal_phalanx_4</td>
      <td>l_carpal_distal_phalanx_4</td>
      <td>l_carpal_distal_phalanx_4</td>
      <td>l_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>105</td>
      <td>l_carpal_distal_phalanx_5</td>
      <td>l_carpal_distal_phalanx_5</td>
      <td>l_carpal_distal_phalanx_5</td>
      <td>l_carpal_distal_phalanx_5</td>
      <td>l_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>106</td>
      <td>r_carpal_distal_phalanx_1</td>
      <td>r_carpal_distal_phalanx_1</td>
      <td>r_carpal_distal_phalanx_1</td>
      <td>r_carpal_distal_phalanx_1</td>
      <td>r_carpal</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>107</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_carpal_distal_phalanx_2</td>
      <td>r_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>108</td>
      <td>r_carpal_distal_phalanx_3</td>
      <td>r_carpal_distal_phalanx_3</td>
      <td>r_carpal_distal_phalanx_3</td>
      <td>r_carpal_distal_phalanx_3</td>
      <td>r_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>109</td>
      <td>r_carpal_distal_phalanx_4</td>
      <td>r_carpal_distal_phalanx_4</td>
      <td>r_carpal_distal_phalanx_4</td>
      <td>r_carpal_distal_phalanx_4</td>
      <td>r_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>110</td>
      <td>r_carpal_distal_phalanx_5</td>
      <td>r_carpal_distal_phalanx_5</td>
      <td>r_carpal_distal_phalanx_5</td>
      <td>r_carpal_distal_phalanx_5</td>
      <td>r_hand</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>111</td>
      <td>l_tarsal_distal_phalanx_1</td>
      <td>l_tarsal_distal_phalanx_1</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>112</td>
      <td>l_tarsal_distal_phalanx_2</td>
      <td>l_tarsal_distal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>113</td>
      <td>l_tarsal_distal_phalanx_3</td>
      <td>l_tarsal_distal_phalanx_3</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>114</td>
      <td>l_tarsal_distal_phalanx_4</td>
      <td>l_tarsal_distal_phalanx_4</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>115</td>
      <td>l_tarsal_distal_phalanx_5</td>
      <td>l_tarsal_distal_phalanx_5</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>l_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>116</td>
      <td>r_tarsal_distal_phalanx_1</td>
      <td>r_tarsal_distal_phalanx_1</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>117</td>
      <td>r_tarsal_distal_phalanx_2</td>
      <td>r_tarsal_distal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>118</td>
      <td>r_tarsal_distal_phalanx_3</td>
      <td>r_tarsal_distal_phalanx_3</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>119</td>
      <td>r_tarsal_distal_phalanx_4</td>
      <td>r_tarsal_distal_phalanx_4</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
    <tr>
      <td>120</td>
      <td>r_tarsal_distal_phalanx_5</td>
      <td>r_tarsal_distal_phalanx_5</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>r_tarsal_proximal_phalanx_2</td>
      <td>sacrum</td>
        </tr>
  </table>
</div>

<h2><a name="AdditionalJointAndSegmentObjects"></a>4.9.8 Additional Joint and Segment objects</h2>

<p>Additional <span class="Object">Joint</span> objects and body
        <span class="Object">Segment</span> objects may be defined for a humanoid. There are only
        three requirements: </p>

<ol type="a">
  <li>The <span class="Object">Joint</span> objects listed in the hierarchy, if
          present, shall use the specified names.</li>
  <li>No new <span class="Object">Joint</span> objects are allowed within the
          chain of the standard <span class="Object">Joint</span> hierarchy.</li>
  <li>Non-standard <span class="Object">Joint</span> objects may be children of
          either standard <span class="Object">Joint</span> objects or other
          non-standard <span class="Object">Joint</span> objects.</li>
</ol>

<p class=Example>EXAMPLE  An additional elbow cannot be added to the arm.
        However, new appendages (such as hair and tails) can be added to a humanoid
        by creating new <span class="Object">Joint</span> objects that exist as
        children of other <span class="Object">Joint</span> objects.</p>
<ol type="a" start="3">
  <li>Additional <span class="Object">Joint</span> objects shall be added in
          such as way as to not interfere with the movement of standard
          <span class="Object">Joint</span> objects, even if no animation is
          available for them.</li>
</ol>
                
<p>Animations for <span class="Object">Joint</span> objects from the basic set
        shall not be dependent upon animations of any additional
        <span class="Object">Joint</span> objects (or their children) that may be
        parented to them. Inverse kinematic systems may consider additional
        <span class="Object">Joint</span> objects when performing calculations but
        are not required to do so.</p>

<p>Additional <span class="Object">Joint</span> objects shall be given the
        prefix "<span class="Code">x_</span>" (<i>e.g.,</i>
        <span class="Code">x_pigtails</span>) to distinguish them from basic set of
        <span class="Object">Joint</span> objects that may have similar names.</p>

<a href="#" title="to top"><img class="HAnimBar" src="../Images/SimpleBar.png" alt="--- HAnim separator bar ---"></a>

</body>
</html>