Model instance to draw a 3D line with styleable segments onto the 2D overlay.
More...
Public Member Functions |
| | DtOverlayGreatCircleArcModelInstance (DtDe &de) |
| | CTOR.
|
| virtual | ~DtOverlayGreatCircleArcModelInstance () |
| | DTOR.
|
| virtual void | setMaxSubdivisions (int subDivisions) |
| | The maximum number of subdivisions that will be created when implementing curvature.
|
| virtual void | setPreferredSubdivisionSize (double size) |
| | The preferred size of curvature-related subdivisions.
|
| virtual void | setHeightScale (double heightScale) |
| | This scales the arc height of segments to the arcLength of the segment times the heightScale value.
|
| virtual bool | realize (DtModelDefinition &definition) |
| | Attempt to realize a definition.
|
| | DtOverlaySegmentedLineModelInstance (DtDe &de) |
| | CTOR.
|
| virtual | ~DtOverlaySegmentedLineModelInstance () |
| | DTOR.
|
| virtual void | setPosition (int vtx, const DtVector &position) |
| | Set the position of one endpoint of the line.
|
| virtual void | removePosition (int vtx) |
| | Remove the vertex at position vtx.
|
| virtual void | setWidth (float width) |
| | Set the width of the line.
|
| virtual void | setColor (float r, float g, float b, float a) |
| | Set the color of the line.
|
| virtual void | setStipplePattern (unsigned int pattern, int repeatFactor) |
| | Set a stipple pattern for the line.
|
| 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.
|
| virtual void | setSegmentColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| | Set the color of a particular segment.
|
| virtual void | setSegmentLightningStyle (unsigned int segmentIndex, bool enableLightningStyle) |
| | Turn on or off lightning bolt style for a particular segment.
|
| virtual void | setSegmentStartArrow (unsigned int segmentIndex, bool enableArrow) |
| | Turn on or off the arrow at a segment's start point.
|
| virtual void | setSegmentEndArrow (unsigned int segmentIndex, bool enableArrow) |
| | Turn on or off the arrow at a segment's end point.
|
| 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.
|
| virtual void | setSegmentWidth (unsigned int segmentIndex, double width) |
| | Set the line width of a segment.
|
| virtual void | setSegmentStartColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| | Set the color of the firt vertex in a segment.
|
| virtual void | setSegmentEndColor (unsigned int segmentIndex, float r, float g, float b, float a) |
| | Set the color of the end vertex in a segment.
|
| virtual void | setModelSet (int modelSet) |
| | Set the model set this model instance uses (needed for doing intersections).
|
| virtual void | setVisible (bool isVisible) |
| | Set the line visible or invisible; maintains state.
|
| virtual void | setEventsEnabled (bool enabled, unsigned long long userData) |
| | Turn on or off the ability to pick the line. Off by default.
|
| virtual void | setEventWidth (float width) |
| | Sets the width of the segment (in pixels), for picking and mouse-over.
|
| virtual void | update () |
| | Indicate that its time to prepare actual scene graph data to be rendered.
|
| virtual void | setRotation (const osg::Quat &quat) |
| | rotate the points about the origin
|
| virtual void | setArrowSize (double) |
| | Sets the size of the arrow (in pixels)
|
| virtual void | setLineStyle (vrvTacticalGraphicUtilities::LineStyle) |
| | Sets the line style (see DtTacticalGraphicUtilities.h for types)
|
| virtual void | setArrowStyle (vrvTacticalGraphicUtilities::ArrowStyle) |
| | Sets the style of the arrow (see DtTacticalGraphicUtilities.h for types)
|
| virtual void | setTexture (osg::Texture *) |
| | Sets a pattern to apply to the line and recreates line object.
|
| virtual bool | isTextured () const |
| | Returns true if this instance has a textured line.
|
| 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).
|
| virtual void | setChannelInstance (DtChannel *, int modelSet) |
| | Set to make this model channel specific.
|
virtual const std::vector
< DtVector > & | points () const |
| | Returns the points of the line.
|
| virtual void | setPoints (const std::vector< DtVector > &) |
| | Sets the points on the line.
|
virtual const
SegmentAttributesVector & | segmentInformation () const |
| | Returns segment information.
|
| virtual void | setSegmentInformation (const SegmentAttributesVector &) |
| | Sets segment information.
|
| virtual | ~DtOsgModelInstance () |
| | DTOR.
|
| virtual void | addToConnector (DtOsgSceneConnector *connector) |
| | Brief Tell the model instance to add itself to the provided node.
|
| virtual bool | removeFromConnector (DtOsgSceneConnector *connector) |
| | Brief Tell the model instance to remove itself from the provided node.
|
| virtual bool | saveModelToFile (const std::string &filename) const |
| | Attempt to save the model to a file.
|
| virtual void | enableColorBlending (bool b) |
| | Enable / disable coloring on all models in the scene object.
|
| virtual void | setBlendColor (float r, float g, float b, float a) |
| | set the model's color
|
| virtual void | enableTexture (bool onOff) |
| virtual osg::Node * | rootNode () |
| | Get the model instance's root node.
|
| virtual const osg::Node * | rootNode () const |
| | Get the model instance's root node.
|
| | DtModelInstance (DtDe &de) |
| | CTOR.
|
| virtual | ~DtModelInstance () |
| | DTOR.
|
| const std::string & | realizedDefinitionName () const |
| | Get the name of the definition that this model instance was realized with.
|
| const DtVector & | boundingBoxExtents () const |
| | Get the bounding box extents of the model instance.
|
| void | getBoundingBoxExtents (double &x, double &y, double &z) const |
| | Get the bounding box extents of the model instance.
|
| const DtVector & | boundingBoxCenter () const |
| | Get the bounding box center of the model instance.
|
| void | getBoundingBoxCenter (double &x, double &y, double &z) const |
| | Get the bounding box center of the model instance.
|
| void | getBoundingBoxComponents (DtVector &minimum, DtVector &maximum) |
| virtual void | setContributesToBound (bool trueOrFalse) |
| | Set whether this model instance contributes to an object's overall bounding volume.
|
| bool | contributesToBound () const |
| | Get whether this model instance contributes to an object's overall bounding volume.
|
Protected Member Functions |
| virtual void | updateGeometry () |
| | Updates the segment information.
|
| virtual void | generateStyleSegmentedGeometry () |
| | Called by updateGeometry when style segments are used.
|
| virtual void | generateMultipointGeometry () |
| | Called by updateGeometry when style segments are not used.
|
| virtual void | updateSegments () |
| | Updates the segment information.
|
| virtual void | resizeSegmentAttributes (int size) |
| | Override to resize SegmentLandmarks as well.
|
| virtual int | calculateNumSubdivisions (const DtGreatCircleCurveGenerator &curveGen, const DtVector &endGeod, double percentage) const |
| | Calculate the number of segment subdivisions that will be used in this segment to approximate the curve.
|
| DtVector | localToGeodetic (const DtVector &local) |
| | Convert osg::Vec3 in local coordinates to DtVector in Geodetic.
|
| DtVector | geodeticToLocal (const DtVector &geodetic) |
| | Convert DtVector in Geodetic to osg::Vec3 in local coordinates.
|
| 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)
|
| virtual void | createLineIfNecessary () |
| | Creates the line model.
|
| virtual void | updateGeometryForLineStyle () |
| | Calculates vertices to draw for updating line style.
|
| virtual void | set3DVertexPosition (unsigned int index, double x, double y, double z) |
| | Sets a lines vertex's position.
|
| virtual void | set3DPositionAux (double x, double y, double z, float tempPackedCoords[4]) |
| | Utility function for transforming a vertex and setting it on the line.
|
| virtual void | channelUpdated (DtTacticalGraphicModelUpdaterManager::ChannelUpdateData) |
| | Called to effect zoom level if textured to make sure textures keep proper aspect.
|
| 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.
|
| virtual void | updateColorBlending () |
| | calls update color blending with the model root.
|
| virtual void | updateColorBlending (osg::Node *node) |
| virtual void | enableTexture (osg::Node *root, bool onOff) |
| virtual void | updateBoundingBoxViaContents () |
| | DtOsgModelInstance (DtDe &de) |
| | CTOR.
|
| virtual void | setRootNode (osg::Node *node) |
| | Set the model instance's root node.
|
Model instance to draw a 3D line with styleable segments onto the 2D overlay.