Provided by: libcoin80-doc_3.1.4~abc9f50-4ubuntu2_all bug

NAME

       SoVRMLText -

       The SoVRMLText class is used to represent text in a scene.

       The detailed class documentation is taken verbatim from the VRML97 standard (ISO/IEC
       14772-1:1997). It is copyright The Web3D Consortium, and is used by permission of the
       Consortium:

SYNOPSIS

       #include <Inventor/VRMLnodes/SoVRMLText.h>

       Inherits SoVRMLGeometry.

   Public Types
       enum Justification { BEGIN = 0x01, END = 0x02, MIDDLE = 0x03 }

   Public Member Functions
       virtual SoType getTypeId (void) const
           Returns the type identification of an object derived from a class inheriting SoBase.
           This is used for run-time type checking and 'downward' casting.
       SoVRMLText (void)
       virtual void GLRender (SoGLRenderAction *action)
       virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action)
       virtual void notify (SoNotList *list)
       virtual SoChildList * getChildren (void) const

   Static Public Member Functions
       static SoType getClassTypeId (void)
       static void initClass (void)

   Public Attributes
       SoMFString string
       SoSFNode fontStyle
       SoSFFloat maxExtent
       SoMFFloat length

   Protected Member Functions
       virtual const SoFieldData * getFieldData (void) const
       virtual ~SoVRMLText ()
       virtual void computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center)
       virtual void generatePrimitives (SoAction *action)

   Static Protected Member Functions
       static const SoFieldData ** getFieldDataPtr (void)

   Protected Attributes
       SoChildList * children

   Additional Inherited Members

Detailed Description

       The SoVRMLText class is used to represent text in a scene.

       The detailed class documentation is taken verbatim from the VRML97 standard (ISO/IEC
       14772-1:1997). It is copyright The Web3D Consortium, and is used by permission of the
       Consortium:

       Important note: currently, the implementation of this node is not complete, and some of
       the features mentioned in the documentation below may not be working yet.

       The detailed class documentation is taken verbatim from the VRML97 standard (ISO/IEC
       14772-1:1997). It is copyright The Web3D Consortium, and is used by permission of the
       Consortium:

       Text {
         exposedField  MFString string    []
         exposedField  SFNode   fontStyle NULL
         exposedField  MFFloat  length    []      # [0,)
         exposedField  SFFloat  maxExtent 0.0     # [0,)
       }

       The Text node specifies a two-sided, flat text string object positioned in the Z=0 plane
       of the local coordinate system based on values defined in the fontStyle field (see
       SoVRMLFontStyle). Text nodes may contain multiple text strings specified using the UTF-8
       encoding as specified by ISO 10646-1:1993 (see
       <http://www.web3d.org/x3d/specifications/vrml/ISO-
       IEC-14772-VRML97/part1/references.html#[UTF8]>). The text strings are stored in the order
       in which the text mode characters are to be produced as defined by the parameters in the
       FontStyle node.

       The text strings are contained in the string field. The fontStyle field contains one
       FontStyle node that specifies the font size, font family and style, direction of the text
       strings, and any specific language rendering techniques used for the text.

       The maxExtent field limits and compresses all of the text strings if the length of the
       maximum string is longer than the maximum extent, as measured in the local coordinate
       system. If the text string with the maximum length is shorter than the maxExtent, then
       there is no compressing. The maximum extent is measured horizontally for horizontal text
       (FontStyle node: horizontal=TRUE) and vertically for vertical text (FontStyle node:
       horizontal=FALSE). The maxExtent field shall be greater than or equal to zero.

       The length field contains an MFFloat value that specifies the length of each text string
       in the local coordinate system. If the string is too short, it is stretched (either by
       scaling the text or by adding space between the characters). If the string is too long, it
       is compressed (either by scaling the text or by subtracting space between the characters).
       If a length value is missing (for example, if there are four strings but only three length
       values), the missing values are considered to be 0. The length field shall be greater than
       or equal to zero.

       Specifying a value of 0 for both the maxExtent and length fields indicates that the string
       may be any length.

       See Also:
           SoVRMLFontStyle

Constructor & Destructor Documentation

   SoVRMLText::SoVRMLText (void)
       Constructor.

   SoVRMLText::~SoVRMLText () [protected],  [virtual]
       Destructor.

Member Function Documentation

   SoType SoVRMLText::getTypeId (void) const [virtual]
       Returns the type identification of an object derived from a class inheriting SoBase. This
       is used for run-time type checking and 'downward' casting. Usage example:

       void foo(SoNode * node)
       {
         if (node->getTypeId() == SoFile::getClassTypeId()) {
           SoFile * filenode = (SoFile *)node;  // safe downward cast, knows the type
         }
       }

       For application programmers wanting to extend the library with new nodes, engines,
       nodekits, draggers or others: this method needs to be overridden in all subclasses. This
       is typically done as part of setting up the full type system for extension classes, which
       is usually accomplished by using the pre-defined macros available through for instance
       Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes),
       Inventor/engines/SoSubEngine.h (for engine classes) and so on.

       For more information on writing Coin extensions, see the class documentation of the
       toplevel superclasses for the various class groups.

       Reimplemented from SoVRMLGeometry.

   const SoFieldData * SoVRMLText::getFieldData (void) const [protected],  [virtual]
       Returns a pointer to the class-wide field data storage object for this instance. If no
       fields are present, returns NULL.

       Reimplemented from SoVRMLGeometry.

   void SoVRMLText::GLRender (SoGLRenderAction *action) [virtual]
       Action method for the SoGLRenderAction.

       This is called during rendering traversals. Nodes influencing the rendering state in any
       way or who wants to throw geometry primitives at OpenGL overrides this method.

       Reimplemented from SoShape.

   void SoVRMLText::getPrimitiveCount (SoGetPrimitiveCountAction *action) [virtual]
       Action method for the SoGetPrimitiveCountAction.

       Calculates the number of triangle, line segment and point primitives for the node and adds
       these to the counters of the action.

       Nodes influencing how geometry nodes calculates their primitive count also overrides this
       method to change the relevant state variables.

       Reimplemented from SoShape.

   void SoVRMLText::notify (SoNotList *l) [virtual]
       Notifies all auditors for this instance when changes are made.

       Reimplemented from SoVRMLGeometry.

   SoChildList * SoVRMLText::getChildren (void) const [virtual]
       Returns list of children for this node.

       Reimplemented from SoVRMLGeometry.

   void SoVRMLText::computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center) [protected],
       [virtual]
       Implemented by SoShape subclasses to let the SoShape superclass know the exact size and
       weighted center point of the shape's bounding box.

       The bounding box and center point should be calculated and returned in the local
       coordinate system.

       The method implements action behavior for shape nodes for SoGetBoundingBoxAction. It is
       invoked from SoShape::getBoundingBox(). (Subclasses should not override
       SoNode::getBoundingBox().)

       The box parameter sent in is guaranteed to be an empty box, while center is undefined upon
       function entry.

       Implements SoShape.

   void SoVRMLText::generatePrimitives (SoAction *action) [protected],  [virtual]
       The method implements action behavior for shape nodes for SoCallbackAction. It is invoked
       from SoShape::callback(). (Subclasses should not override SoNode::callback().)

       The subclass implementations uses the convenience methods SoShape::beginShape(),
       SoShape::shapeVertex(), and SoShape::endShape(), with SoDetail instances, to pass the
       primitives making up the shape back to the caller.

       Implements SoShape.

Member Data Documentation

   SoMFString SoVRMLText::string
       The strings. Empty by default.

   SoSFNode SoVRMLText::fontStyle
       Can contain an SoVRMLFontStyle node.

   SoSFFloat SoVRMLText::maxExtent
       Maximum object space extent of longest string.

   SoMFFloat SoVRMLText::length
       Length of each string in the local coordinate system.

Author

       Generated automatically by Doxygen for Coin from the source code.