[x3d-public] HAnim 1.0, 2.0 joint, segment and featurePoint names implemented in X3DUOM, X3DJSAIL
Brutzman, Donald (Don) (CIV)
brutzman at nps.edu
Sun Mar 3 23:17:43 PST 2019
Progress report. Following up on progress with X3Dv4 XML Schema and X3D Unified Object Model (X3DUOM), all of the allowed X3Dv4 / HAnim v2.0 enumerations for jointName, segmentName and featurePointName are now implemented in X3DJSAIL as lists and utility methods. Accessor methods are also provided for index, Level of Articulation (LOA), alias and parent.
===================================================================
X3D Java Scene Access Interface Library (X3DJSAIL)
http://www.web3d.org/specifications/java/X3DJSAIL.html
X3D Java Scene Access Interface Library (X3DJSAIL) supports programmers with standards-based X3D Java interfaces and objects, all as open source.
===================================================================
Example documentation:
http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/HAnim/HAnimJointObject.html
http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/HAnim/HAnimJointObject.html#jointNameValues
http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/HAnim/HAnimJointObject.html#getName--
http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/HAnim/HAnimJointObject.html#setName-java.lang.String-
static boolean hasJointNameAlias(java.lang.String jointName)
Whether a alias exists for this jointName
static boolean hasJointNameIndex(java.lang.String jointName)
Whether an index exists for this jointName
static boolean hasJointNameLoa(java.lang.String jointName)
Whether an loa exists for this jointName
static boolean hasJointNameParent(java.lang.String jointName)
Whether a parent exists for this jointName
static java.lang.String getJointNameAlias(java.lang.String jointName)
Get alias for this jointName
static int getJointNameIndex(java.lang.String jointName)
Get index for this jointName
static int getJointNameLoa(java.lang.String jointName)
Get Level of Articulation (loa) for this jointName
static java.lang.String getJointNameParent(java.lang.String jointName)
Get parent for this jointName
etc. etc. Similar enumeration lists can be found in HAnimSegment and HAnimSite.
Joe, thanks for all the excellent work on aliases. If you want to continue and integrate corresponding values for object centers and site translations, we can update all these assets further. Starting-point example values are found in
* HAnim 1.0 Annex A (informative) Nominal body dimensions and levels of articulation
http://www.web3d.org/documents/specifications/19774/V1.0/HAnim/BodyDimensionsAndLOAs.html
Looking ahead: next round of X3DJSAIL implementation work will add parent-child validation checks for HAnimJoint, HAnimSegment and HAnimSite nodes. Might possibly skeleton-tree serialization output as well. The alias values will allow backwards validation of HAnim 1.0 (X3Dv3) models. Such capabilities will significantly improve our Quality Assurance (QA) of HAnim models.
We will then work on upgrading X3D Schematron rules and HAnim example scenes to X3Dv4 / HAnim2.0 specifications.
X3D Example Archives: Basic, Humanoid Animation
http://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation
It remains our hope that HAnimsupport v2.0 representations for full anatomical fidelity of skeleton models and BVH-style motion animation will eventually lead to better support for accurate human modeling in medical tools and electronic health records.
Onward we go. Have fun with Humanoid Animation (HAnim)! 8)
all the best, Don
--
Don Brutzman Naval Postgraduate School, Code USW/Br brutzman at nps.edu
Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman
More information about the x3d-public
mailing list