man SoText2 () - screen-aligned 2D text shape node
NAME
SoText2 - screen-aligned 2D text shape node
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoShape > SoText2
SYNOPSIS
#include <Inventor/nodes/SoText2.h>
enum Justification {
c
}
c
}
Left edges of all strings are aligned
c
}
c
}
Right edges of all strings are aligned
c
}
c
}
Centers of all strings are aligned
}
Fields from class SoText2:
c
}
c
}
string
c
}
c
}
spacing
c
}
c
}
justification
Methods from class SoText2:
c
}
c
}
SoText2()
c
}
c
}
getClassTypeId()
Methods from class SoNode:
c
}
c
}
setOverride(SbBool state)
c
}
c
}
isOverride() const
c
}
c
}
copy(SbBool copyConnections = FALSE) const
c
}
c
}
affectsState() const
c
}
c
}
getByName(const SbName &name)
c
}
c
}
getByName(const SbName &name, SoNodeList &list)
Methods from class SoFieldContainer:
c
}
c
}
setToDefaults()
c
}
c
}
hasDefaultValues() const
c
}
c
}
fieldsAreEqual(const SoFieldContainer *fc) const
c
}
c
}
copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)
c
}
c
}
set(const char *fieldDataString)
c
}
c
}
get(SbString &fieldDataString)
c
}
c
}
getFields(SoFieldList &resultList) const
c
}
c
}
getField(const SbName &fieldName) const
c
}
c
}
getFieldName(const SoField *field, SbName &fieldName) const
c
}
c
}
isNotifyEnabled() const
c
}
c
}
enableNotify(SbBool flag)
Methods from class SoBase:
c
}
c
}
ref()
c
}
c
}
unref() const
c
}
c
}
unrefNoDelete() const
c
}
c
}
touch()
c
}
c
}
getTypeId() const
c
}
c
}
isOfType(SoType type) const
c
}
c
}
setName(const SbName &name)
c
}
c
}
getName() const
DESCRIPTION
This node defines one or more strings of 2D text. The text is always aligned horizontally with the screen and does not change size with distance in a perspective projection. The text origin is at (0,0,0) after applying the current transformation. Rotations and scales have no effect on the orientation or size of 2D text, just the location. SoText2 uses the current font to determine the typeface and size. The text is always drawn with the diffuse color of the current material; it is not lit, regardless of the lighting model. Furthermore, 2D text can not be textured, and it ignores the current drawing style and complexity. Because 2D text is screen-aligned, it has some unusual characteristics. For example, the 3D bounding box surrounding a 2D text string depends on the current camera and the current viewport size, since changing the field of view or the mapping onto the window changes the relative size of the text with respect to the rest of the scene. This has implications for caching as well, since a render cache in an SoSeparator that contains an SoText2 node depends on the current camera.
FIELDS
c
}
c
}
string
The text string(s) to display. Each string will appear on its own line. The string(s) can be ascii or UTF-8.
c
}
c
}
spacing
Defines the distance (in the negative y direction) between the base points of successive strings, measured with respect to the current font height. A value of 1 indicates single spacing, a value of 2 indicates
double spacing, and so on.
c
}
c
}
justification
Indicates placement and alignment of strings. With LEFT justification, the left edge of the first line is at the (transformed) origin, and all left edges are aligned. RIGHT justification is similar. CENTER justification
places the center of the first string at the (transformed) origin, with the centers of all remaining strings aligned under it.
METHODS
c
}
c
}
SoText2()
Creates a 2D text node with default settings.
c
}
c
}
getClassTypeId()
Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction
Draws text based on the current font, at a location based on the current transformation.
SoRayPickAction
Performs a pick on the text. Text will be picked if the picking ray intersects the bounding box of the strings. The string index and character position are available from the SoTextDetail.
SoGetBoundingBoxAction
Computes the bounding box that encloses the text.
FILE FORMAT/DEFAULTS
Text2 { string "" spacing 1 justification LEFT }
SEE ALSO
SoFont, SoText3, SoTextDetail