Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals

transform_fields_ Struct Reference

#include <vrmltypes.h>

Collaboration diagram for transform_fields_:

Collaboration graph
[legend]

Detailed Description

Internal rapresentation of the fields of vrml Transform node.

The Transform node is formally defined as:

Transform { 
  eventIn      MFNode  addChildren
  eventIn      MFNode  removeChildren
  exposedField SFVec3f     center           0 0 0    # (-infinite, infinite)
  exposedField MFNode      children         []
  exposedField SFRotation  rotation         0 0 1 0  # [-1,1],(-infinite, infinite)
  exposedField SFVec3f     scale            1 1 1    # (0,infinite)
  exposedField SFRotation  scaleOrientation 0 0 1 0  # [-1,1],(-infinite, infinite)
  exposedField SFVec3f     translation      0 0 0    # (-infinite, infinite)
  field        SFVec3f bboxCenter    0 0 0     # (-infinite, infinite)
  field        SFVec3f bboxSize      -1 -1 -1  # (0,infinite) or -1,-1,-1
}

We use the node.child field for storing children data, so the children field in this struct is omitted. Note that the following Transform node:

Transform { 
    center           C
    rotation         R
    scale            S
    scaleOrientation SR
    translation      T
    children         [...]
}
is equivalent to the nested sequence of:
Transform {
  translation T 
  children Transform {
    translation C
    children Transform {
      rotation R
      children Transform {
        rotation SR 
        children Transform {
          scale S 
          children Transform {
            rotation -SR 
            children Transform {
              translation -C
              children [...]
}}}}}}}

See also:
International Standard ISO/IEC 14772-1:1997 : Information technology -- Computer graphics and image processing -- The Virtual Reality Modeling Language (VRML) -- Part 1: Functional specification and UTF-8 encoding. Chapter 6.52 Transform.


Data Fields

sfvec3f bboxCenter
 The center of the bounding box enclosing the Transform.

sfvec3f bboxSize
 The size of the bounding box enclosing the Transform.

sfvec3f center
 The center field specifies a translation offset from the origin of the local coordinate system (0,0,0).

sfrotation rotation
 The rotation field specifies a rotation of the coordinate system.

sfvec3f scale
 The scale field specifies a non-uniform scale of the coordinate system.

sfrotation scaleOrientation
 The scaleOrientation specifies a rotation of the coordinate system before the scale (to specify scales in arbitrary orientations).

sfvec3f translation
 The translation field specifies a translation to the coordinate system.


Field Documentation

sfvec3f transform_fields_::bboxCenter
 

The center of the bounding box enclosing the Transform.

sfvec3f transform_fields_::bboxSize
 

The size of the bounding box enclosing the Transform.

sfvec3f transform_fields_::center
 

The center field specifies a translation offset from the origin of the local coordinate system (0,0,0).

sfrotation transform_fields_::rotation
 

The rotation field specifies a rotation of the coordinate system.

sfvec3f transform_fields_::scale
 

The scale field specifies a non-uniform scale of the coordinate system.

Scale values shall be greater than zero.

sfrotation transform_fields_::scaleOrientation
 

The scaleOrientation specifies a rotation of the coordinate system before the scale (to specify scales in arbitrary orientations).

The scaleOrientation applies only to the scale operation.

sfvec3f transform_fields_::translation
 

The translation field specifies a translation to the coordinate system.


The documentation for this struct was generated from the following file:

SourceForge.net Logo

Generated on Mon Jun 14 17:25:56 2004 for D.R.I.V.E. by doxygen 1.3.7