[x3d-public] Humanoid Animation and Medical Examples review, creation of new archive

John Carlson yottzumm at gmail.com
Wed May 6 07:36:24 PDT 2020


People can verify my work by downloading:

https://github.com/coderextreme/x3dvalidate

then using the command-line to validate the JSON:

In: the folder x3dvalidate:

$ node x3dvalidate.js H* K*

(you'll have to download node, and ajv, jsonlint, by running `npm install`).

Thanks for double checking my work!

As part of (f), I suggest:

1.  Testing build of Humanoid Animation
2.  Test generation of Humanoid Animation website (X3d Resources Examples).
3.  Test X3DJSONLD, including making sure the generated source code creates
good roundtrips.
4.  Test X3DJSAIL, X3dTo*.xslt
5.  Test conforming browsers (or browser conformance.
6.  Perhaps test x3d.py and pythonSAI, if we get a conforming web
implementation (of HAnimMotion especially).
7.  Test x3d.js with jupyter notebook

Also, we could apply skin, ala:
https://www.web3d.org/x3d/content/examples/Basic/Medical/BodySkinIndexedFaceSetNISTIndex.html
to
various skeletons!

We've got quite a bit to do, even with just testing.

Onwards!  Tallyho!

John

On Wed, May 6, 2020 at 8:55 AM Don Brutzman <brutzman at nps.edu> wrote:

> [renamed subject line from "My errors left in HAnim, I think."]
>
> John, thanks for steady progress.  Let's devote part of our weekly meeting
> with Joe Williams tomorrow to looking at specific details of your status.
>
> [1]     Humanoid Animation and Medical Examples weekly meeting
>         Thursdays 13-1500 pacific
>         https://www.web3d.org/member/teleconference-information
>
> For everyone's information, because of their large and growing size, last
> week we successfully ported examples
>
> [2]     X3D Example Archives: Basic, Humanoid Animation
>         https://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation
>
> to a new independent top-level archive nearby.  Version control:
>
> [3]
> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation
>
> to
> [4]
> https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/HumanoidAnimation
>
> with an eye on
>
> [5]     X3D Example Archives: Basic, Medical
>         https://www.web3d.org/x3d/content/examples/Basic/Medical
>
> Our initial sorting of HAnim examples resulted in following preliminary
> list of directories:
>
>   CharactersV1
>   CharactersV2
>   HAnimSpecificationV1
>   HAnimSpecificationV2
>   Motions
>   NonStandard
>   Prototypes
>   Templates
>
> We will continue working on these.  As discussed elsewhere, efforts
> include the following work list:
>
> a. updating all model metadata to reflect new location,
> b. fixing a hodgepodge of legacy version numbers: allowed official HAnim
> versions are 1 and 2,
> c. adding Medical examples to this archive, possibly renaming as
> HumanoidAnimationMedical
> d. integrating existing regression testing, build process and deployment
> in this new archive,
> e. updating validation tools,
> f. testing existing implementations,
> g. documenting a list of changes and improvements for clarity.
>
> The new HAnim version 2 is published by ISO and will soon be published by
> Web3D.  Available to members now on github.
>
> [6]
> https://github.com/Web3DConsortium/HAnim/blob/master/ISO-IEC19774-combined-IS.Web3D.zip
>
> This can serve as our agenda for Thursday, all additions and suggested
> requirements welcome.
>
> Have fun with X3D Humanoid Animation Medical examples!  8)
>
> p.s. X3D HAM??
>
> On 5/5/2020 12:02 AM, John Carlson wrote:
> > Pretty pictures (animation doesn't work for this one!). Note that I got
> the image in the X_ITE-JSON version and not the X_ITE-XML version, so it
> appears that the XML version doesn't work, or the translation from XML to
> JSON to XML.  I'm no sure what's up with X3DOM.
> >
> > I was able to also get the other spec example animated in X_ITE-JSON
> >
> > image.png
> >
> > On Tue, May 5, 2020 at 1:29 AM John Carlson <yottzumm at gmail.com <mailto:
> yottzumm at gmail.com>> wrote:
> >
> >     Fixed the skeleton issue in DOM2JSONSerializer.js
> >
> >     Remaining skeleton issue (problem with original .x3d).
> >     File: KoreanCharacterAnnexD01Jin.json
> >     Error reading KoreanCharacterAnnexD01Jin.json
> >       keyword: additionalProperties
> >       dataPath: X3D > Scene
> >       value: {"-children":"|omitted|","-skeleton":"|omitted|"}
> >       message: should not have additional properties
> >       params: {"additionalProperty":"-skeleton"}
> >       file: KoreanCharacterAnnexD01Jin.json
> >       version: 4.0
> >     =====================================================
> >     This one appears to not translate properly.  Hmm.
> >
> >       keyword: type
> >       dataPath: X3D > Scene > -children > 2 > HAnimHumanoid > -skeleton
> > 0 > HAnimJoint > -children > 0 > HAnimSegment > -children > 0 > Transform
> > -children > 0 > Shape > -geometry > IndexedFaceSet > -coord > Coordinate
> > @point > 0
> >       value: null
> >       message: should be number
> >       params: {"type":"number"}
> >       file: KoreanCharacterAnnexC01Jin.json
> >       version: 4.0
> >
> >     Fixed, by doing a trim() around attribute values.
> >
> >     So it seems like I have conquered most of the issues my code.  The
> remaining one is the -skeleton right under Scene.  I believe this is an
> issue with the standard x3d example, and should be reported as an issue
> (even in X3dToJson.xslt, if not already).
> >
> >     John
> >
> >     On Tue, May 5, 2020 at 12:50 AM John Carlson <yottzumm at gmail.com
> <mailto:yottzumm at gmail.com>> wrote:
> >
> >         DOM2JSONSerializer.js has the following issues:
> >
> >         -skeleton is treated as an object instead of an array.
> >
> >         John
> >
> >         Loading schema
> >         Parsing schema
> >         Adding schema
> >         Schema 4.0 added
> >         Schema 4.0 compiled
> >
>  ================================================================================
> >         File: HAnimModelFootLeft.json
> >         Error reading HAnimModelFootLeft.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Left_Foot","@info":"|omitted|","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"@DEF"}
> >           file: HAnimModelFootLeft.json
> >           version: 4.0
> >
> >           keyword: type
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid >
> -skeleton
> >           value: {"HAnimJoint":"|omitted|"}
> >           message: should be array
> >           params: {"type":"array"}
> >           file: HAnimModelFootLeft.json
> >           version: 4.0
> >
> >           keyword: oneOf
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Left_Foot","@info":"|omitted|","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should match exactly one schema in "oneOf"
> >           params: {"passingSchemas":null}
> >           file: HAnimModelFootLeft.json
> >           version: 4.0
> >
> >
>  ================================================================================
> >         File: HAnimModelFootRight.json
> >         Error reading HAnimModelFootRight.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Right_Foot","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"@DEF"}
> >           file: HAnimModelFootRight.json
> >           version: 4.0
> >
> >           keyword: type
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid >
> -skeleton
> >           value: {"HAnimJoint":"|omitted|"}
> >           message: should be array
> >           params: {"type":"array"}
> >           file: HAnimModelFootRight.json
> >           version: 4.0
> >
> >           keyword: oneOf
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Right_Foot","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should match exactly one schema in "oneOf"
> >           params: {"passingSchemas":null}
> >           file: HAnimModelFootRight.json
> >           version: 4.0
> >
> >
>  ================================================================================
> >         File: HAnimModelHandLeft.json
> >         Error reading HAnimModelHandLeft.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Left_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"@DEF"}
> >           file: HAnimModelHandLeft.json
> >           version: 4.0
> >
> >           keyword: type
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid >
> -skeleton
> >           value: {"HAnimJoint":"|omitted|"}
> >           message: should be array
> >           params: {"type":"array"}
> >           file: HAnimModelHandLeft.json
> >           version: 4.0
> >
> >           keyword: oneOf
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Left_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should match exactly one schema in "oneOf"
> >           params: {"passingSchemas":null}
> >           file: HAnimModelHandLeft.json
> >           version: 4.0
> >
> >
>  ================================================================================
> >         File: HAnimModelHandRight.json
> >         Error reading HAnimModelHandRight.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Right_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"@DEF"}
> >           file: HAnimModelHandRight.json
> >           version: 4.0
> >
> >           keyword: type
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid >
> -skeleton
> >           value: {"HAnimJoint":"|omitted|"}
> >           message: should be array
> >           params: {"type":"array"}
> >           file: HAnimModelHandRight.json
> >           version: 4.0
> >
> >           keyword: oneOf
> >           dataPath: X3D > Scene > -children > 1 > HAnimHumanoid
> >           value:
> {"@DEF":"Humanoid_Right_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}
> >           message: should match exactly one schema in "oneOf"
> >           params: {"passingSchemas":null}
> >           file: HAnimModelHandRight.json
> >           version: 4.0
> >
> >         Success reading HAnimModelsHandsFeet.json
> >
>  ================================================================================
> >         File: KoreanCharacterAnnexC01Jin.json
> >         Error reading KoreanCharacterAnnexC01Jin.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene > -children > 2 > HAnimHumanoid
> >           value:
> {"@DEF":"hanim_AnnexC01Jin","@info":"|omitted|","@name":"AnnexC01Jin","@scale":"|omitted|","@version":"2.0","-skeleton":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"@DEF"}
> >           file: KoreanCharacterAnnexC01Jin.json
> >           version: 4.0
> >
> >           keyword: type
> >           dataPath: X3D > Scene > -children > 2 > HAnimHumanoid >
> -skeleton
> >           value: {"HAnimJoint":"|omitted|"}
> >           message: should be array
> >           params: {"type":"array"}
> >           file: KoreanCharacterAnnexC01Jin.json
> >           version: 4.0
> >
> >           keyword: oneOf
> >           dataPath: X3D > Scene > -children > 2 > HAnimHumanoid
> >           value:
> {"@DEF":"hanim_AnnexC01Jin","@info":"|omitted|","@name":"AnnexC01Jin","@scale":"|omitted|","@version":"2.0","-skeleton":"|omitted|"}
> >           message: should match exactly one schema in "oneOf"
> >           params: {"passingSchemas":null}
> >           file: KoreanCharacterAnnexC01Jin.json
> >           version: 4.0
> >
> >
>  ================================================================================
> >         File: KoreanCharacterAnnexD01Jin.json
> >         Error reading KoreanCharacterAnnexD01Jin.json
> >           keyword: additionalProperties
> >           dataPath: X3D > Scene
> >           value: {"-children":"|omitted|","-skeleton":"|omitted|"}
> >           message: should not have additional properties
> >           params: {"additionalProperty":"-skeleton"}
> >           file: KoreanCharacterAnnexD01Jin.json
> >           version: 4.0
> >
> >
> > _______________________________________________
> > x3d-public mailing list
> > x3d-public at web3d.org
> > http://web3d.org/mailman/listinfo/x3d-public_web3d.org
> >
>
> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20200506/58fc7843/attachment-0001.html>


More information about the x3d-public mailing list