109 Types< SFFontStyleNode, MFFloat, SFFloat, MFString > >{
112 virtual void update();
125 virtual void callList(
bool build_list );
133 Types<SFFontStyleNode, MFString> > > {
136 virtual void update();
142 Text( Inst< SFNode > _metadata = 0,
143 Inst< SFBound > _bound = 0,
144 Inst< DisplayList > _displayList = 0,
145 Inst< SFFontStyleNode > _fontStyle = 0,
146 Inst< MFFloat > _length = 0,
147 Inst< SFFloat > _maxExtent = 0,
148 Inst< MFString > _string = 0,
149 Inst< MFVec2f > _lineBounds = 0,
150 Inst< SFVec3f > _origin = 0,
151 Inst< SFVec2f > _textBounds = 0,
152 Inst< SFBool > _solid = 0,
153 Inst< OutputUpdater > _outputUpdater = 0 );
156 virtual void render();
174 virtual bool lineIntersect(
177 LineIntersectResult& result );
271 void updateLineBounds();
280 virtual void scaleToMaxExtent(
const std::vector< std::string >& text,
285 virtual void justifyMinor(
const std::vector< std::string >& text,
292 virtual void moveToNewLine(
const std::string& text,
X3DFontStyleNode* font );
296 virtual void renderTextLine(
const std::string& text,
301 virtual void justifyLine(
const std::string& text,
Header file for FontStyle, X3D scene-graph node.
Contains the MFFloat field class.
Contains the MFString field class.
Contains the MFVec2f field class.
Header file for PeriodicUpdate, template field modifier.
Contains the SFFloat field class.
Contains the SFVec2f field class.
Contains the SFVec3f field class.
Header file for X3DFontStyleNode, X3D scene-graph node.
Header file for X3DGeometryNode, X3D scene-graph node.
The PeriodicUpdate is a template modifier that changes the way the field is updated.
Definition: PeriodicUpdate.h:74
We extend the DisplayList to build the fonts of the X3DFontStyleNode in the fontStyle field of the Te...
Definition: Text.h:122
Internal field class to update values of origin, textBounds, lineBounds.
Definition: Text.h:133
The SFBound field is specialized to update itself from the values in the fields of the Text node.
Definition: Text.h:109
The Text node specifies a two-sided, flat text string object positioned in the Z=0 plane of the local...
Definition: Text.h:96
virtual int nrTriangles()
The number of triangles renderered in this geometry, we don't know so return -1.
Definition: Text.h:164
H3DUniquePtr< MFVec2f > lineBounds
A set of 2D vectors where each vector contains the size of the 2D bounding box for each line of rende...
Definition: Text.h:233
H3DUniquePtr< SFFloat > maxExtent
The maxExtent field limits and compresses all of the text strings if the length of the maximum string...
Definition: Text.h:217
H3DUniquePtr< SFVec2f > textBounds
The dimensions of Text node's 2D bounding box.
Definition: Text.h:250
H3DUniquePtr< SFVec3f > origin
3D position that specifies the origin of the text local coordinate system in units of the coordinate ...
Definition: Text.h:243
H3DUniquePtr< MFString > stringF
The strings to render.
Definition: Text.h:224
H3DUniquePtr< SFFontStyleNode > fontStyle
The style the text should be rendered with.
Definition: Text.h:184
H3DUniquePtr< OutputUpdater > outputUpdater
Internal field to update output fields origin, lineBounds, textBounds.
Definition: Text.h:268
H3DUniquePtr< MFFloat > length
The length field contains an MFFloat value that specifies the length of each text string in the local...
Definition: Text.h:201
H3DUniquePtr< SFBool > solid
The solid field determines whether one or both sides of each polygon shall be displayed.
Definition: Text.h:261
static AutoRef< FontStyle > default_font_style
The font style to use when no style is specified.
Definition: Text.h:274
static H3DNodeDatabase database
The H3DNodeDatabase for this node.
Definition: Text.h:264
TraverseInfo is a structure that is passed along when traversing the scene graph.
Definition: TraverseInfo.h:57
A template modifier class for adding type checking on the routes to any Field class.
Definition: TypedField.h:84
Template to make sure that the Node that is set in a SFNode is of a specified Node type.
Definition: SFNode.h:97
This abstract node type is the base node type for all FontStyle nodes.
Definition: X3DFontStyleNode.h:41
Display list is extended in order to set front sidedness of triangles outside the display list.
Definition: X3DGeometryNode.h:76
This is the base node type for all geometry in X3D.
Definition: X3DGeometryNode.h:61
H3D API namespace.
Definition: Anchor.h:38
The H3DNodeDatabase contains a mapping between a name of a Node and the constructor for the Node with...
Definition: H3DNodeDatabase.h:194