HAnimHumanoid
The HAnimHumanoid node is used to: (a) store references to the joints, segments and views, (b) serve as a container for the entire humanoid, (c) provide a convenient way of moving the humanoid through its environment, and (d) store human-readable data such as author and copyright information. HAnimHumanoid contains HAnimJoint, HAnimSegment, HAnimSite, Coordinate, Normal, Viewpoint and skin nodes. The geometry of an H-Anim figure can be described in two ways: either by segments or skinned.
Inheritance
Code
XML encoding
<HAnimHumanoid logFeature='' showBBox='FALSE' render='TRUE' bboxSize='-1 -1 -1' bboxCenter='0 0 0' showProxyGeometry='FALSE' invert='FALSE' translation='0 0 0' scaleOrientation='0 0 1 0' scale='1 1 1' center='0 0 0' rotation='0 0 1 0' localCoordSystem='FALSE' minEffectiveWeight='0.0' weight='' height='' gender='' age='' usageRestrictions='' creationDate='' copyright='' authorName='' authorEmail='' humanoidVersion='2.0' name='' version='2.0' info='' />
Classic encoding
HAnimHumanoid { logFeature [""] showBBox FALSE render TRUE bboxSize -1 -1 -1 bboxCenter 0 0 0 showProxyGeometry FALSE invert FALSE translation 0 0 0 scaleOrientation 0 0 1 0 scale 1 1 1 center 0 0 0 rotation 0 0 1 0 localCoordSystem FALSE minEffectiveWeight 0.0 weight "" height "" gender "" age "" usageRestrictions "" creationDate "" copyright "" authorName "" authorEmail "" humanoidVersion "2.0" name "" version "2.0" info [""] }
Interface
Filter: X3D only | Avalon only | All
id | Name | DataType | PartType | Default | ValueType | Description |
---|---|---|---|---|---|---|
info | MFString | inputOutput | Metadata keyword=value pairs VRML 97 encoding combines all the regular keyword=value pairs under info. Hint: the info field can usually be ignored since the other XML attributes for HAnimHumanoid can contain all required info. | |||
name | SFString | inputOutput | name must be present so that HAnimHumanoid can be identified at runtime. | |||
version | SFString | inputOutput | 2.0 | Humanoid Animation (H-Anim) Specification version | ||
humanoidVersion | SFString | inputOutput | 2.0 | Metadata keyword=value pair. | ||
authorName | SFString | inputOutput | Author name. Hint: can be encoded as info attribute keyword=value pair. | |||
authorEmail | SFString | inputOutput | Author Email address. Hint: can be encoded as info attribute keyword=value pair. | |||
copyright | SFString | inputOutput | Copyright information. Hint: can be encoded as info attribute keyword=value pair. | |||
creationDate | SFString | inputOutput | Humanoid model creation date. Hint: can be encoded as info attribute keyword=value pair. | |||
usageRestrictions | SFString | inputOutput | Author/owner-specified usage restrictions. Hint: can be encoded as info attribute keyword=value pair. | |||
age | SFString | inputOutput | Humanoid model age in human years. Hint: can be encoded as info attribute keyword=value pair. | |||
gender | SFString | inputOutput | Humanoid model gender (typically male or female). | |||
height | SFString | inputOutput | Humanoid model height (meters). Hint: can be encoded as info attribute keyword=value pair. | |||
weight | SFString | inputOutput | Humanoid model weight (kilograms). Hint: can be encoded as info attribute keyword=value pair. | |||
skeleton | MFNode | inputOutput | HAnimJoint | holds scene graph of the joint hierarchy to describe geometry | ||
joints | MFNode | inputOutput | HAnimJoint | The joints field contains an unordered list of references, one for each Joint object defined within the skeleton field hierarchy of the Humanoid object. | ||
segments | MFNode | inputOutput | HAnimSegment | The segments field contains an unordered list of references, one for each Segment object defined within the skeleton field hierarchy of the Humanoid object. | ||
sites | MFNode | inputOutput | HAnimSite | The sites field contains an unordered list of references, one for each Site object defined within the skeleton field hierarchy of the Humanoid object. | ||
skin | MFNode | inputOutput | The skin field contains one or more indexed face set definitions. Those indexed face set definitions utilize the point and normal data that is defined within the skinCoord and skinNormal fields, respectively, of the Humanoid object. | |||
skinCoord | SFNode | inputOutput | Coordinate3D | The skinCoord field contains a single sequence of points which are used by the internal mechanisms of the Humanoid object to create the appropriate surface deformations as well as by the indexed face set definitions within the skin field which do the actual rendering of the surface geometry. | ||
skinNormal | SFNode | inputOutput | Normal3D | The skinNormal field contains the normal data definition which is used by the internal mechanisms of the Humanoid object to create the appropriate surface deformations as well as the indexed face set definitions within the skin field, which contains the actual surface geometry that is rendered. | ||
viewpoints | MFNode | inputOutput | Viewpoint | The viewpoints field can contain zero or more Site object definitions. The purpose of these Site objects is to define locations for virtual cameras in the reference frame of the Humanoid object. | ||
minEffectiveWeight | SFFloat | inputOutput | 0.0 | Ignore joints with little (smaller minEffectiveWeight) influence. | ||
localCoordSystem | SFBool | initializeOnly | FALSE | Defines if vertices and normals initially shall beconverted into the humanoids local coordinate system. | ||
center | SFVec3f | inputOutput | 0 0 0 | Translation offset from origin of local coordinate system. | ||
rotation | SFRotation | inputOutput | 0 0 1 0 | Orientation of children relative to local coordinate system. | ||
scale | SFVec3f | inputOutput | 1 1 1 | Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation. | ||
scaleOrientation | SFRotation | inputOutput | 0 0 1 0 | Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations). | ||
translation | SFVec3f | inputOutput | 0 0 0 | Position of children relative to local coordinate system. | ||
matrix_changed | SFMatrix4f | outputOnly | The matrix that defines the nodes transformation after an update. | |||
invert | SFBool | inputOutput | FALSE | inverts matrix if true | ||
showProxyGeometry | SFBool | inputOutput | FALSE | show cartesian coordinate system | ||
children | MFNode | inputOutput | Node | field that contains a list of children nodes | ||
addChildren | MFNode | inputOnly | The addChildren event appends nodes to the children field of a grouping node. Any nodes passed to the addChildren inputOnly field that are already in the children list of the grouping node are ignored | |||
removeChildren | MFNode | inputOnly | The removeChildren event removes nodes from the children fieldof the grouping node . Any nodes in the removeChildren event that are not in the children list of the grouping node are ignored | |||
bboxCenter | SFVec3f | initializeOnly | 0 0 0 | Bounding box center: position offset from origin of local coordinate system. | ||
bboxSize | SFVec3f | initializeOnly | -1 -1 -1 | Bounding box size: automatically calculated, can be specified as an optimization or constraint. | ||
render | SFBool | inputOutput | TRUE | Flag to control the visibility of the node or subtree | ||
showBBox | SFBool | inputOutput | FALSE | Show Bounding Box of Subtree. | ||
logFeature | MFString | inputOutput | state, child, parent, route, eventIn, eventOut | controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything | ||
metadata | SFNode | inputOutput | MetadataObject | container for payload metadata inside MetadataSet element |