[x3d-public] X3D Semantic Web minutes: event-animation chains and representing accessType

Don Brutzman brutzman at nps.edu
Mon Apr 20 10:38:27 PDT 2020


Jakub and I had a useful meeting today.  We looked at X3D Ontology completeness to diagnose event animation chains.

A design pattern for representing animation chains is described in detail as part of the following chapter slideset.  Single-page checklist also attached as a convenience.

* X3D Graphics for Web Authors: Chapter 7, Event Animation Interpolation
   http://x3dgraphics.com/slidesets/X3dForWebAuthors/Chapter07EventAnimationInterpolation.pdf
   http://x3dgraphics.com/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/

slide 11.  "Event-animation design pattern. X3D can be imposing, there are many nodes. Nevertheless a simple design pattern is used for nearly every kind of animation.  his consistent event ROUTE pattern enables you to expertly animate most X3D scene behaviors."

* Event-animation design pattern:
   Trigger node (optional) -> TimeSensor -> Interpolator/Sequencer/Script -> Target node's field

A 10-step algorithm for author creation of this design pattern is provided and has proven helpful.  Keeping a consistent pattern let's you avoid thinking that the various animation nodes are “really different” when they are not. It also helps you avoid skipping steps and making mistakes that are hard to debug afterwards.

Example diagram also attached that illustrates the following model.

* X3D Example Archives: X3D for Web Authors, Chapter 07 Event Animation Interpolation, Dolphin Morpher
   https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation/DolphinMorpherIndex.html

So, for X3D ontology, we want to see if we can write rules/queries to (a) illustrate event chains, and (b) diagnose whether any problems exist.

Example problems:
- mismatched ROUTE DEF or field-name values
- mismatched data types,
- mismatched accessType values,
- missing pieces.

So next step is to check X3D ontology for completeness of information provided.  As an example, let's look at Transform in X3D Ontology.  Excerpt:

http://www.web3d.org/specifications/X3dOntology4.0
##################################################
:Transform a owl:Class ;
   rdfs:subClassOf :X3DGroupingNode ;
   rdfs:label "Transform is a Grouping node that can contain most nodes." .
# bboxCenter field inheritedFrom=X3DGroupingNode with accessType=initializeOnly, type=SFVec3f, default=0 0 0
# bboxSize field inheritedFrom=X3DGroupingNode with accessType=initializeOnly, type=SFVec3f, default=-1 -1 -1, baseType=bboxSizeType
:center a owl:DatatypeProperty ;
   rdfs:domain :Transform ;
   rdfs:range :SFVec3f .
# children field inheritedFrom=X3DGroupingNode with accessType=inputOutput, type=MFNode
# displayBBox field inheritedFrom=X3DGroupingNode with accessType=inputOutput, type=SFBool, default=false
:rotation a owl:DatatypeProperty ;
   rdfs:domain :Transform ;
   rdfs:range :SFRotation .
:scale a owl:DatatypeProperty ;
   rdfs:domain :Transform ;
   rdfs:range :SFVec3f .
:scaleOrientation a owl:DatatypeProperty ;
   rdfs:domain :Transform ;
   rdfs:range :SFRotation .
:translation a owl:DatatypeProperty ;
   rdfs:domain :Transform ;
   rdfs:range :SFVec3f.
##################################################

So, our prior effort was not complete.  Looks like we need to come up with a proper representation for accessType and defaultValue field to achieve full expressive power in X3D Ontology that already exists in X3DUOM.

   rdfs:TBD1 accessType inputOutput;
   rdfs:TBD2 defaultValue 0;

... so that is how far we got.  More thinking and likely additions to to X3D Ontology will follow.

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 --------------
A non-text attachment was scrubbed...
Name: Chapter07-EventAnimationInterpolation.10StepAnimationDesignProcess.pdf
Type: application/pdf
Size: 134094 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20200420/016413cc/attachment-0001.pdf>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TimeSensorScalarInterpolatorFilterDiagram.png
Type: image/png
Size: 47938 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20200420/016413cc/attachment-0001.png>


More information about the x3d-public mailing list