Coin Logo http://www.sim.no/
http://www.coin3d.org/

SoVRMLText Class Reference
[VRML97 Classes]

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:. More...

#include <Inventor/VRMLnodes/SoVRMLText.h>

Inheritance diagram for SoVRMLText:
SoVRMLGeometry SoShape SoNode SoFieldContainer SoBase

List of all members.

Public Types

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

Public Member Functions

 SoVRMLText (void)
virtual void GLRender (SoGLRenderAction *action)
virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action)
virtual void notify (SoNotList *list)
virtual SoChildListgetChildren (void) const

Static Public Member Functions

static void initClass (void)

Public Attributes

SoMFString string
SoSFNode fontStyle
SoSFFloat maxExtent
SoMFFloat length

Protected Member Functions

virtual ~SoVRMLText ()
virtual void computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center)
virtual void generatePrimitives (SoAction *action)

Protected Attributes

SoChildListchildren

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

void SoVRMLText::initClass ( void   )  [static]

Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.

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

The strings. Empty by default.

Can contain an SoVRMLFontStyle node.

Maximum object space extent of longest string.

Length of each string in the local coordinate system.


The documentation for this class was generated from the following files:

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.

Generated on 19 Dec 2016 for Coin by Doxygen 1.6.1.