<xs:element name="HAnimJoint">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="name" type="jointNames"/>
<xs:element name="addChildren" type="MFNode" fixed="inputOnlyField" default="HAnimJoint|HAnimSegment"/>
<xs:element name="removeChildren" type="MFNode" fixed="inputOnlyField" default="HAnimJoint|HAnimSegment"/>
<xs:element name="children" type="MFNode" fixed="inputOutputField" default="HAnimJoint|HAnimSegment"/>
<xs:element name="displacers" type="MFNode" fixed="inputOutputField" default="HAnimDisplacer"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DBoundedObject"/>
<xs:attribute name="componentName" type="xs:NMTOKEN" fixed="H-Anim"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
</xs:appinfo>
<xs:documentation source="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/hanim.html#HAnimJoint"/>
<!-- H-Anim specification http://www.web3d.org/documents/specifications/19774/V1.0/HAnim/ObjectInterfaces.html#Joint -->
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="X3DChildNode">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>restricted version of X3DGroupingNode, content model is [HAnimJoint,HAnimSegment,HAnimSite] children and HAnimDisplacer displacers</xs:documentation>
</xs:annotation>
<xs:element ref="HAnimJoint">
<xs:annotation>
<xs:documentation>children</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="HAnimSegment">
<xs:annotation>
<xs:documentation>children</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="HAnimDisplacer">
<xs:annotation>
<xs:documentation>displacers</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:attribute name="name" type="xs:NMTOKEN"/>
<xs:attribute name="center" type="SFVec3f" default="0 0 0"/>
<xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/>
<xs:attribute name="scale" type="SFVec3f" default="1 1 1">
<xs:annotation>
<xs:appinfo>
<xs:minExclusive value="0"/>
</xs:appinfo>
</xs:annotation>
</xs:attribute>
<xs:attribute name="scaleOrientation" type="SFRotation" default="0 0 1 0"/>
<xs:attribute name="translation" type="SFVec3f" default="0 0 0"/>
<xs:attribute name="skinCoordIndex" type="MFInt32">
<xs:annotation>
<xs:appinfo>
<xs:minInclusive value="0"/>
</xs:appinfo>
</xs:annotation>
</xs:attribute>
<xs:attribute name="skinCoordWeight" type="MFFloat"/>
<xs:attribute name="llimit" type="MFFloat"/>
<xs:attribute name="ulimit" type="MFFloat"/>
<xs:attribute name="limitOrientation" type="SFRotation" default="0 0 1 0"/>
<xs:attribute name="stiffness" type="MFFloat" default="1 1 1">
<xs:annotation>
<xs:appinfo>
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1"/>
</xs:appinfo>
</xs:annotation>
</xs:attribute>
<xs:attribute name="bboxCenter" type="SFVec3f" default="0 0 0"/>
<xs:attribute name="bboxSize" type="boundingBoxSizeType" default="-1 -1 -1"/>
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element> |