![]() |
VR-Forces 4.8 Class Documentation
|
Model instance to draw a 3D line with styleable segments onto the 2D overlay. More...

Classes | |
| struct | SegmentAttributes |
Public Types | |
| typedef std::vector < SegmentAttributes > | SegmentAttributesVector |
| Vector of segment information. More... | |
Public Types inherited from makVrv::DtOsgModelInstance | |
| enum | AlphaToCoverageState { USE_GLOBAL, FORCE_OFF, FORCE_ON } |
| The possible states of a control point. More... | |
| typedef boost::unordered_map < std::string, bool > | SensorRegionStateMap |
| Dynamic Sensor Region methods. More... | |
Public Member Functions | |
| DtOverlaySegmentedLineModelInstance (DtDe &de) | |
| CTOR. More... | |
| virtual | ~DtOverlaySegmentedLineModelInstance () |
| DTOR. More... | |
| virtual void | setPosition (int vtx, const DtVector &position) |
| Set the position of one endpoint of the line. More... | |
| virtual void | removePosition (int vtx) |
| Remove the vertex at position vtx. More... | |
| virtual void | setWidth (float width) |
| Set the width of the line. More... | |
| virtual void | setColor (float r, float g, float b, float a) |
| Set the color of the line. More... | |
| virtual void | setStipplePattern (unsigned int pattern, int repeatFactor) |
| Set a stipple pattern for the line. More... | |
| virtual void | setStyleSegments (const std::vector< double > &segmentPercentages) |
| Set the style segments to percentages of the total line length The values in segmentPercentages must add up to 1.0. More... | |
| virtual void | setSegmentColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| Set the color of a particular segment. More... | |
| virtual void | setSegmentLightningStyle (unsigned int segmentIndex, bool enableLightningStyle) |
| Turn on or off lightning bolt style for a particular segment. More... | |
| virtual void | setSegmentStartArrow (unsigned int segmentIndex, bool enableArrow) |
| Turn on or off the arrow at a segment's start point. More... | |
| virtual void | setSegmentEndArrow (unsigned int segmentIndex, bool enableArrow) |
| Turn on or off the arrow at a segment's end point. More... | |
| virtual void | setSegmentStipplePattern (unsigned int segmentIndex, unsigned int stipplePattern, int repeatFactor) |
| Set the line stipple pattern for a segment, according to the OpenGL line stippling specification. More... | |
| virtual void | setSegmentWidth (unsigned int segmentIndex, double width) |
| Set the line width of a segment. More... | |
| virtual void | setSegmentStartColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| Set the color of the firt vertex in a segment. More... | |
| virtual void | setSegmentEndColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| Set the color of the end vertex in a segment. More... | |
| virtual void | setModelSet (int modelSet) |
| Set the model set this model instance uses (needed for doing intersections). More... | |
| virtual bool | realize (DtModelDefinition &definition) |
| Attempt to realize a definition. More... | |
| virtual void | setVisible (bool isVisible) |
| Set the line visible or invisible; maintains state. More... | |
| virtual void | setEventsEnabled (bool enabled, unsigned long long userData) |
| Turn on or off the ability to pick the line. Off by default. More... | |
| virtual void | setEventWidth (float width) |
| Sets the width of the segment (in pixels), for picking and mouse-over. More... | |
| virtual void | update () |
| Indicate that its time to prepare actual scene graph data to be rendered. More... | |
| virtual void | setRotation (const osg::Quat &quat) |
| rotate the points about the origin More... | |
| virtual void | setArrowSize (double) |
| Sets the size of the arrow (in pixels) More... | |
| virtual void | setLineStyle (vrvTacticalGraphicUtilities::LineStyle) |
| Sets the line style (see DtTacticalGraphicUtilities.h for types) More... | |
| virtual void | setArrowStyle (vrvTacticalGraphicUtilities::ArrowStyle) |
| Sets the style of the arrow (see DtTacticalGraphicUtilities.h for types) More... | |
| virtual void | setTexture (osg::Texture *) |
| Sets a pattern to apply to the line and recreates line object. More... | |
| virtual bool | isTextured () const |
| Returns true if this instance has a textured line. More... | |
| virtual void | setFixedWidthSizing (bool) |
| For those lines that support it, whether or not the lines sizes when zooming to pixel space (fixed width) or to the database (non-fixed width). More... | |
| virtual void | setGroup (int) |
| The higher the Z order the "closer" to the eyepoint this element will be drawn. More... | |
| virtual void | setChannelInstance (DtChannel *, int modelSet) |
| Set to make this model channel specific. More... | |
| virtual const std::vector < DtVector > & | points () const |
| Returns the points of the line. More... | |
| virtual void | setPoints (const std::vector< DtVector > &) |
| Sets the points on the line. More... | |
| virtual const SegmentAttributesVector & | segmentInformation () const |
| Returns segment information. More... | |
| virtual void | setSegmentInformation (const SegmentAttributesVector &) |
| Sets segment information. More... | |
| virtual void | updateGeometry () |
| Updates the lines geometry. More... | |
Public Member Functions inherited from makVrv::DtOsgModelInstance | |
| virtual | ~DtOsgModelInstance () |
| DTOR. More... | |
| virtual bool | cloneInstance (DtModelDefinition &definition) |
| Attempt to clone the basic geometry. More... | |
| virtual void | addToConnector (DtOsgSceneConnector *connector) |
| Brief Tell the model instance to add itself to the provided node. More... | |
| virtual bool | removeFromConnector (DtOsgSceneConnector *connector) |
| Brief Tell the model instance to remove itself from the provided node. More... | |
| virtual bool | saveModelToFile (const std::string &filename) const |
| Attempt to save the model to a file. More... | |
| virtual void | enableColorBlending (bool b) |
| Enable / disable coloring on all models in the scene object Note about enableColorBlending: If this particular model has instancing enabled then this flag is set to false and color blending is handled by the instance manager. More... | |
| virtual void | setBlendColor (float r, float g, float b, float a) |
| set the model's color More... | |
| virtual void | enableTexture (bool onOff) |
| virtual osg::Node * | rootNode () |
| Get the model instance's root node. More... | |
| virtual const osg::Node * | rootNode () const |
| virtual osg::Node * | sensorNode () |
| Get the model instance's sensor node, . More... | |
| virtual const osg::Node * | sensorNode () const |
| virtual void | addDynamicSensorRegion (const std::string ®ion) |
| Add an active region state. More... | |
| virtual void | setDynamicSensorRegion (const std::string ®ion, bool state) |
| Set the state of an active region. More... | |
| virtual bool | dynamicSensorRegion (const std::string ®ion) |
| Get the current state of the specified sensor region. More... | |
| SensorRegionStateMap const | dynamicSensorRegionMap () const |
| Get the map containing all regions and their current states. More... | |
| virtual void | slot_atcGlobalModelEnableChanged () |
| Slot to handle the global alpha to coverage signal for entities. More... | |
| virtual bool | alphaToCoverageEnabled () |
| Get the current setting for alpha to coverage for this model. More... | |
| virtual void | registerLightPoints (const std::string &groupName, bool daylightControlledLights) |
| loop over all this models light points and register them with the light point manager daylightControlled is only used if the light points do not already have a type specified More... | |
Public Member Functions inherited from makVrv::DtModelInstance | |
| DtModelInstance (DtDe &de) | |
| CTOR. More... | |
| virtual | ~DtModelInstance () |
| DTOR. More... | |
| const std::string & | realizedDefinitionName () const |
| Get the name of the definition that this model instance was realized with. More... | |
| const DtVector & | boundingBoxExtents () const |
| Get the bounding box extents of the model instance. More... | |
| void | getBoundingBoxExtents (double &x, double &y, double &z) const |
| Get the bounding box extents of the model instance. More... | |
| const DtVector & | boundingBoxCenter () const |
| Get the bounding box center of the model instance. More... | |
| void | getBoundingBoxCenter (double &x, double &y, double &z) const |
| Get the bounding box center of the model instance. More... | |
| void | getBoundingBoxComponents (DtVector &minimum, DtVector &maximum) |
| Get the bounding box min/max of the model instance. More... | |
| const DtVector & | allGeometryboundingBoxExtents () const |
| functions for getting the allGeometry versions of the extents (they are calculated by traversing as if all switch paths are active) More... | |
| void | getAllGeometryBoundingBoxExtents (double &x, double &y, double &z) const |
| Get the all geometry version of bounding box extents of the model instance. More... | |
| const DtVector & | allGeometryboundingBoxCenter () const |
| Get the all geometry version of bounding box center of the model instance. More... | |
| void | getAllGeometryBoundingBoxCenter (double &x, double &y, double &z) const |
| Get the all geometry version of bounding box center of the model instance. More... | |
| void | getAllGeometryBoundingBoxComponents (DtVector &minimum, DtVector &maximum) |
| Get the all geometry version of bounding box min/max of the model instance. More... | |
| virtual void | setContributesToBound (bool trueOrFalse) |
| Set whether this model instance contributes to an object's overall bounding volume. More... | |
| bool | contributesToBound () const |
| Get whether this model instance contributes to an object's overall bounding volume. More... | |
Protected Types | |
| typedef std::vector< DtVector > | Points |
Protected Member Functions | |
| virtual void | updateSegmentsWithArrows (const std::vector< DtVector > &pts, std::vector< DtVector > &drawPoints, std::vector< DtVector > &twodOffsets) |
| Updates segments with arrows as appropriate (beginning or end) More... | |
| virtual void | createLineIfNecessary () |
| Creates the line model. More... | |
| virtual void | updateSegments () |
| Updates the segment information. More... | |
| virtual void | updateGeometryForLineStyle () |
| Calculates vertices to draw for updating line style. More... | |
| virtual void | resizeSegmentAttributes (int size) |
| Add segments to the segments attribute vector. More... | |
| virtual void | set3DVertexPosition (unsigned int index, double x, double y, double z) |
| Sets a lines vertex's position. More... | |
| virtual void | set3DPositionAux (double x, double y, double z, float tempPackedCoords[4]) |
| Utility function for transforming a vertex and setting it on the line. More... | |
| virtual void | channelUpdated (const DtTacticalGraphicModelUpdaterManager::ChannelUpdateData &) |
| Called to effect zoom level if textured to make sure textures keep proper aspect. More... | |
| void | updatePointsForLineStyle (const std::vector< DtVector > &, std::vector< DtVector > &drawPoints, std::vector< DtVector > &twodOffsets, std::vector< int > &segmentsToErase) const |
| Creates the points for the line given the line style. More... | |
Protected Member Functions inherited from makVrv::DtOsgModelInstance | |
| virtual void | updateColorBlending () |
| calls update color blending with the model root. More... | |
| virtual void | updateColorBlending (osg::Node *node) |
| virtual void | enableTexture (osg::Node *root, bool onOff) |
| virtual void | updateBoundingBoxViaContents () |
| DtOsgModelInstance (DtDe &de) | |
| CTOR. More... | |
| virtual void | setRootNode (osg::Node *node) |
| Set the model instance's root node. More... | |
Private Member Functions | |
| DtOverlaySegmentedLineModelInstance () | |
| Default, unimplemented constructor. More... | |
| DtOverlaySegmentedLineModelInstance (const DtOverlaySegmentedLineModelInstance &) | |
| Unimplemented copy constructor. More... | |
| DtOverlaySegmentedLineModelInstance & | operator= (const DtOverlaySegmentedLineModelInstance &) |
| Unimplemented assignment operator. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from makVrv::DtOsgModelInstance | |
| static osg::Vec4 | readVec4 (const std::string ¶mName, const DtModelDefinition &definition, const osg::Vec4 &initValue=osg::Vec4(1, 1, 1, 1)) |
| static osg::Vec3 | readVec3 (const std::string ¶mName, const DtModelDefinition &definition, const osg::Vec3 &initValue=osg::Vec3(1, 1, 1)) |
Static Public Member Functions inherited from makVrv::DtModelInstance | |
| static float | readFloat (const std::string ¶mName, const DtModelDefinition &definition) |
| static DtVector | readVector (const std::string ¶mName, const DtModelDefinition &definition) |
Public Attributes inherited from makVrv::DtOsgModelInstance | |
| boost::signal< void(const std::string &) > | signal_dynamicSensorRegionAdded |
| Signal raised when a dynamic sensor region is added. More... | |
| boost::signal< void(const std::string &, bool) > | signal_dynamicSensorRegionChanged |
| Signal raised when a dynamic sensor region's state changes. More... | |
| boost::signal< void(bool)> | signal_atcModeEnableChanged |
| Signal raised when alpha to coverage for this model is changed. More... | |
Public Attributes inherited from makVrv::DtModelInstance | |
| boost::signal< void(DtModelInstance *)> | signal_modelInstanceChanged |
Model instance to draw a 3D line with styleable segments onto the 2D overlay.
| typedef std::vector<SegmentAttributes> makVrv::DtOverlaySegmentedLineModelInstance::SegmentAttributesVector |
Vector of segment information.
|
protected |
| makVrv::DtOverlaySegmentedLineModelInstance::DtOverlaySegmentedLineModelInstance | ( | DtDe & | de | ) |
CTOR.
|
virtual |
DTOR.
|
private |
Default, unimplemented constructor.
|
private |
Unimplemented copy constructor.
|
virtual |
Set the position of one endpoint of the line.
|
virtual |
Remove the vertex at position vtx.
|
virtual |
Set the width of the line.
|
virtual |
Set the color of the line.
|
virtual |
Set a stipple pattern for the line.
|
virtual |
Set the style segments to percentages of the total line length The values in segmentPercentages must add up to 1.0.
|
virtual |
Set the color of a particular segment.
|
virtual |
Turn on or off lightning bolt style for a particular segment.
|
virtual |
Turn on or off the arrow at a segment's start point.
|
virtual |
Turn on or off the arrow at a segment's end point.
|
virtual |
Set the line stipple pattern for a segment, according to the OpenGL line stippling specification.
|
virtual |
Set the line width of a segment.
|
virtual |
Set the color of the firt vertex in a segment.
This can be used for color blending between vertices.
|
virtual |
Set the color of the end vertex in a segment.
This can be used for color blending between vertices.
|
virtual |
Set the model set this model instance uses (needed for doing intersections).
Will clear out channelInstance if set
|
virtual |
Attempt to realize a definition.
If the model instance can't realize the definition it should return false.
Reimplemented from makVrv::DtOsgModelInstance.
Reimplemented in makVrv::DtOverlayGreatCircleArcModelInstance.
|
virtual |
Set the line visible or invisible; maintains state.
Implements makVrv::DtModelInstance.
|
virtual |
Turn on or off the ability to pick the line. Off by default.
|
virtual |
Sets the width of the segment (in pixels), for picking and mouse-over.
|
virtual |
Indicate that its time to prepare actual scene graph data to be rendered.
|
virtual |
rotate the points about the origin
|
virtual |
Sets the size of the arrow (in pixels)
|
virtual |
Sets the line style (see DtTacticalGraphicUtilities.h for types)
|
virtual |
Sets the style of the arrow (see DtTacticalGraphicUtilities.h for types)
|
virtual |
Sets a pattern to apply to the line and recreates line object.
|
virtual |
Returns true if this instance has a textured line.
|
virtual |
For those lines that support it, whether or not the lines sizes when zooming to pixel space (fixed width) or to the database (non-fixed width).
Default is fixed width. If changing modes, be sure to change the arrow size
|
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 |
Set to make this model channel specific.
This means it will only update itself when the channel it is assigned to is updated for the specified model set
|
virtual |
Returns the points of the line.
|
virtual |
Sets the points on the line.
|
virtual |
Returns segment information.
|
virtual |
Sets segment information.
If number of segments is less than the information provided, only set up to the number of segments that represents this line.
|
virtual |
Updates the lines geometry.
Reimplemented in makVrv::DtOverlayGreatCircleArcModelInstance.
|
protectedvirtual |
Updates segments with arrows as appropriate (beginning or end)
|
private |
Unimplemented assignment operator.
|
protectedvirtual |
Creates the line model.
|
protectedvirtual |
Updates the segment information.
Reimplemented in makVrv::DtOverlayGreatCircleArcModelInstance.
|
protectedvirtual |
Calculates vertices to draw for updating line style.
|
protectedvirtual |
Add segments to the segments attribute vector.
Reimplemented in makVrv::DtOverlayGreatCircleArcModelInstance.
|
protectedvirtual |
Sets a lines vertex's position.
|
protectedvirtual |
Utility function for transforming a vertex and setting it on the line.
|
protectedvirtual |
Called to effect zoom level if textured to make sure textures keep proper aspect.
|
protected |
Creates the points for the line given the line style.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |