VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes | Private Member Functions
makVrv::DtOverlayScreenIntervaledTextInstance Class Reference

Class to draw a screen spaced perimeter text on polygons, lines, or other geometry.

Public Types

using DtScreenIntervaledTextCollection = std::vector< DtUnicode >
 

Public Member Functions

 DtOverlayScreenIntervaledTextInstance (DtDe &de)
 
virtual ~DtOverlayScreenIntervaledTextInstance ()
 
virtual void createScreenIntervaledTextIfNecessary ()
 
virtual void updateScreenIntervaledText ()
 
virtual void updateGeometry ()
 
virtual void channelUpdated (const DtTacticalGraphicModelUpdaterManager::ChannelUpdateData &)
 
virtual void translateAndUpdateVertex (unsigned int index, const DtVector &position, DtTextProxyInterface *text)
 
virtual void translateAndUpdateVertex (unsigned int index, const DtVector &position, DtQuadProxyInterface *quad)
 
virtual void setChannelInstance (DtChannel *c, DtModelSetId modelSet)
 
virtual void setIsClosedFigure (bool)
 
virtual void setIsScreenIntervaledTextRenderingEnabled (bool)
 
virtual void setScreenIntervaledTextPrefix (const std::string &prefixString)
 
virtual void setScreenIntervaledTextPostfix (const std::string &postfixString)
 
virtual void setScreenIntervaledTextPrefixAndPostFixSeparator (const std::string &separatorString)
 
virtual void setScreenIntervaledTextCollection (DtScreenIntervaledTextCollection)
 
virtual void setScreenIntervaledTextInterval (int intervalInScreenSpaceCM)
 
virtual void setScreenIntervaledTextFont (std::string fontFile, float fontPointSize)
 
virtual void setScreenIntervaledTextColor (float r, float g, float b, float a)
 
virtual void setScreenIntervaledTextBackgroundColor (float r, float g, float b, float a)
 
virtual void setVisible (bool isVisible)
 
virtual void setModelSet (DtModelSetId)
 
virtual void setPosition (int vtx, const DtVector &position)
 
virtual void setRotation (const DtQuat &quat)
 
virtual void setOrigin (const DtVector &)
 
virtual void setGroup (int)
 
virtual DtVector origin () const
 
virtual void addPoint (const DtVector &point, int index)
 
virtual void removePoint (int index)
 
virtual void setVertsWithVertexList (const DtOverlayPolygonModelInstance::VertexList &)
 
virtual void setVertexList (const vrvTacticalGraphicUtilities::DtVerticesVector &verList)
 
virtual const
vrvTacticalGraphicUtilities::DtVerticesVector
vertexList () const
 
virtual void slot_coordinateSystemChanged ()
 

Protected Attributes

DtDemyDe
 
std::vector< DtVector > myVertices
 
std::vector
< DtTextProxyInterface * > 
myScreenIntervaledTextProxies
 
std::vector
< DtQuadProxyInterface * > 
myScreenIntervaledTextProxiesBackgrounds
 
bool myIsClosedFigure
 
bool myIsScreenIntervaledTextRenderingEnabled
 
DtScreenIntervaledTextCollection myScreenIntervaledTextCollection
 
int myScreenIntervaledTextIntervalInScreenSpaceCM
 
std::string myScreenIntervaledTextPrefixPostfixSeparatorString
 
std::string myScreenIntervaledTextPrefixString
 
std::string myScreenIntervaledTextPostfixString
 
std::string myScreenIntervaledTextFontFile
 
float myScreenIntervaledTextFontPointSize
 
float myScreenIntervaledTextFontColor [4]
 
float myScreenIntervaledTextBackgroundColor [4]
 
int myGroup
 
DtModelSetId myModelSet
 
DtChannelmyChannelInstance
 
DtVector myOrigin
 
DtQuat myRotation
 
bool myVisibleFlag
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
DtSignalConnectionManager myConnections
 

Private Member Functions

 DtOverlayScreenIntervaledTextInstance ()
 
 DtOverlayScreenIntervaledTextInstance (const DtOverlayScreenIntervaledTextInstance &)
 
DtOverlayScreenIntervaledTextInstanceoperator= (const DtOverlayScreenIntervaledTextInstance &)
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtOverlayScreenIntervaledTextInstance::DtOverlayScreenIntervaledTextInstance ( DtDe de)

CTOR.

virtual makVrv::DtOverlayScreenIntervaledTextInstance::~DtOverlayScreenIntervaledTextInstance ( )
virtual

DTOR.

makVrv::DtOverlayScreenIntervaledTextInstance::DtOverlayScreenIntervaledTextInstance ( )
private

Default Constructor not implemented.

makVrv::DtOverlayScreenIntervaledTextInstance::DtOverlayScreenIntervaledTextInstance ( const DtOverlayScreenIntervaledTextInstance )
private

Copy Constructor not implemented - Copy not allowed.

Member Function Documentation

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::createScreenIntervaledTextIfNecessary ( )
virtual

If not already created, creates only the screen intervaled text visuals.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::updateScreenIntervaledText ( )
virtual

Updates the screen intervaled text based on this polygon's channel instance.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::updateGeometry ( )
virtual

Updates the vertex information into the polygon (if not locked)

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::channelUpdated ( const DtTacticalGraphicModelUpdaterManager::ChannelUpdateData )
virtual

Update text information with zoom and orientation changes.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::translateAndUpdateVertex ( unsigned int  index,
const DtVector &  position,
DtTextProxyInterface text 
)
virtual

Sets a text vertex's position.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::translateAndUpdateVertex ( unsigned int  index,
const DtVector &  position,
DtQuadProxyInterface quad 
)
virtual

Sets a quad vertex's position.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setChannelInstance ( DtChannel c,
DtModelSetId  modelSet 
)
virtual

Set to make this model channel specific. This means it will only update itself when the channel it is assigned to is updated. Enabled only to display on the channel/model set combination.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setIsClosedFigure ( bool  )
virtual

Whether or not the provided vertices represent a closed figure. Default is true.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setIsScreenIntervaledTextRenderingEnabled ( bool  )
virtual

Whether or not to render screen intervaled text.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextPrefix ( const std::string &  prefixString)
virtual

Set the prefix string that will be applied to all screen intervaled text, if rendered. The prefix string automatically has a newline appended to the end of it.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextPostfix ( const std::string &  postfixString)
virtual

Set the postfix string that will be applied to all screen intervaled text, if rendered. The postfix string automatically has a newline appended to the beginning of it.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextPrefixAndPostFixSeparator ( const std::string &  separatorString)
virtual

Set the separator string that will be applied after the prefix string and before the postfix string. The default is a newline.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextCollection ( DtScreenIntervaledTextCollection  )
virtual

Sets the collection of strings that will be rendered and wrapped around the perimeter of the polygon. The order they will be rendered in will depend on their order in the passed DtScreenIntervaledTextCollection.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextInterval ( int  intervalInScreenSpaceCM)
virtual

Set the interval, in centimeters of screen space, at which the screen intervaled text will appear at. If the perimeter of the polygon does not exceed: minimumScreenSpacePerimeterRequired = # of screen intervaled text strings * interval in CM) then, the screen intervaled text is not rendered at all.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextFont ( std::string  fontFile,
float  fontPointSize 
)
virtual

Set the font that the screen intervaled text will use.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set the color that the screen intervaled text will use.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setScreenIntervaledTextBackgroundColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Set the background color that the screen intervaled text will use.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setVisible ( bool  isVisible)
virtual

Set the text to be visible or not.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setModelSet ( DtModelSetId  )
virtual

Sets the model set this overlay item belongs to. Will clear out channelInstance if set.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setPosition ( int  vtx,
const DtVector &  position 
)
virtual

Set one of the endpoints of the Polygon.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setRotation ( const DtQuat quat)
virtual

Set the rotation of the polygon.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setOrigin ( const DtVector &  )
virtual

Sets the origin. Will update geometry.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setGroup ( int  )
virtual

The higher the Z order the "closer" to the eyepoint this element will be drawn. Use this variable to stack overlay objects in the particular order you want them displayed.

virtual DtVector makVrv::DtOverlayScreenIntervaledTextInstance::origin ( ) const
virtual

Returns the origin.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::addPoint ( const DtVector &  point,
int  index 
)
virtual

Add a new point to the polygon at the specified index, or, at the end if index is -1.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::removePoint ( int  index)
virtual

Removes the point from the specified index.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setVertsWithVertexList ( const DtOverlayPolygonModelInstance::VertexList )
virtual

Sets the vertex information for this polygon.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::setVertexList ( const vrvTacticalGraphicUtilities::DtVerticesVector verList)
virtual

Sets the vertex information using DtVectors.

virtual const vrvTacticalGraphicUtilities::DtVerticesVector& makVrv::DtOverlayScreenIntervaledTextInstance::vertexList ( ) const
virtual

Sets the vertex information using DtVectors.

virtual void makVrv::DtOverlayScreenIntervaledTextInstance::slot_coordinateSystemChanged ( )
virtual

slot for when the coordinate system changes

DtOverlayScreenIntervaledTextInstance& makVrv::DtOverlayScreenIntervaledTextInstance::operator= ( const DtOverlayScreenIntervaledTextInstance )
private

Assignment Operator not implemented - Copy not allowed.

Member Data Documentation

DtDe& makVrv::DtOverlayScreenIntervaledTextInstance::myDe
protected
std::vector<DtVector> makVrv::DtOverlayScreenIntervaledTextInstance::myVertices
protected
std::vector<DtTextProxyInterface*> makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextProxies
protected
std::vector<DtQuadProxyInterface*> makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextProxiesBackgrounds
protected
bool makVrv::DtOverlayScreenIntervaledTextInstance::myIsClosedFigure
protected
bool makVrv::DtOverlayScreenIntervaledTextInstance::myIsScreenIntervaledTextRenderingEnabled
protected
DtScreenIntervaledTextCollection makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextCollection
protected
int makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextIntervalInScreenSpaceCM
protected
std::string makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextPrefixPostfixSeparatorString
protected
std::string makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextPrefixString
protected
std::string makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextPostfixString
protected
std::string makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextFontFile
protected
float makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextFontPointSize
protected
float makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextFontColor[4]
protected
float makVrv::DtOverlayScreenIntervaledTextInstance::myScreenIntervaledTextBackgroundColor[4]
protected
int makVrv::DtOverlayScreenIntervaledTextInstance::myGroup
protected
DtModelSetId makVrv::DtOverlayScreenIntervaledTextInstance::myModelSet
protected
DtChannel* makVrv::DtOverlayScreenIntervaledTextInstance::myChannelInstance
protected
DtVector makVrv::DtOverlayScreenIntervaledTextInstance::myOrigin
protected
DtQuat makVrv::DtOverlayScreenIntervaledTextInstance::myRotation
protected
bool makVrv::DtOverlayScreenIntervaledTextInstance::myVisibleFlag
protected
DtCoordinateSystem* makVrv::DtOverlayScreenIntervaledTextInstance::myCoordinateSystem = nullptr
protected

local clone of the system wide coordinate system. for thread safety.

DtSignalConnectionManager makVrv::DtOverlayScreenIntervaledTextInstance::myConnections
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)