15 #include <osg/MatrixTransform>
19 class Dt3DLineModelInstanceSegmentInterface;
20 class Dt3DLineModelInstanceSegment;
21 class DtOsgSegmentPickable;
64 virtual void setPosition(
int vtx,
const DtVector& position );
68 virtual DtVector removePosition(
int vtx );
71 virtual void setWidth(
float width);
74 virtual void setColor(
float r,
float g,
float b,
float a);
77 virtual void setStipplePattern(
unsigned int pattern,
int repeatFactor );
81 virtual void setStyleSegments(
const std::vector<double>& segmentPercentages);
84 virtual void setSegmentColor(
unsigned int segmentIndex,
85 float r,
float g,
float b,
float a);
88 virtual void setSegmentLightningStyle(
unsigned int segmentIndex,
89 bool enableLightningStyle);
92 virtual void setSegmentStartArrow(
unsigned int segmentIndex,
96 virtual void setSegmentEndArrow(
unsigned int segmentIndex,
101 virtual void setSegmentStipplePattern(
unsigned int segmentIndex,
102 unsigned int stipplePattern,
int repeatFactor);
105 virtual void setSegmentWidth(
unsigned int segmentWidth,
double width);
109 virtual void setSegmentStartColor(
unsigned int segmentIndex,
float r,
110 float g,
float b,
float a );
114 virtual void setSegmentEndColor(
unsigned int segmentIndex,
float r,
115 float g,
float b,
float a );
118 virtual void setTerrainIntersect(
bool enabled);
121 virtual void setModelSet(
int modelSet );
135 virtual void setDepthTestEnabled(
bool enabled);
138 virtual void setVisible(
bool isVisible);
141 virtual void setPickable(
bool pickable );
144 bool pickable()
const;
147 virtual void update();
150 virtual const std::vector<DtVector>& points()
const;
164 virtual void updatePickableSegments();
168 virtual void adjustSegmentVisibility(
int vtx,
bool visible );
171 virtual void resizeSegments(
int size);
174 virtual void resizeSegmentAttributes(
int size);
177 virtual void updateGeometry();
180 virtual void updateAllSegmentAttributes();
192 std::vector<Dt3DLineModelInstanceSegmentInterface*>
mySegments;
DtOsgSegmentPickable * myPickable
Definition: Dt3DSegmentedLineModelInstance.h:197
std::vector< SegmentAttributes > mySegmentAttributes
Definition: Dt3DSegmentedLineModelInstance.h:206
std::vector< DtVector > myVertices
Definition: Dt3DSegmentedLineModelInstance.h:185
Create a series of cylinders that can be used as pickable on lines that only have osg width...
Definition: DtOsgSegmentPickable.h:23
int myModelSet
Definition: Dt3DSegmentedLineModelInstance.h:188
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
bool mySegmentAttributesDirty
Definition: Dt3DSegmentedLineModelInstance.h:204
std::vector< Dt3DLineModelInstanceSegmentInterface * > mySegments
Definition: Dt3DSegmentedLineModelInstance.h:192
bool startArrow
Definition: Dt3DSegmentedLineModelInstance.h:34
voidpf void uLong size
Definition: ioapi.h:39
double width
Definition: Dt3DSegmentedLineModelInstance.h:37
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:38
bool lightning
Definition: Dt3DSegmentedLineModelInstance.h:36
int stippleRepeat
Definition: Dt3DSegmentedLineModelInstance.h:39
Contains makVrv::DtOsgModelInstance class.
DtOsgSceneConnector is used by models to create an OSG position/orientation transform so that it can ...
Definition: DtOsgSceneConnector.h:76
unsigned int stipplePattern
Definition: Dt3DSegmentedLineModelInstance.h:38
unsigned int myStipplePattern
Definition: Dt3DSegmentedLineModelInstance.h:201
std::vector< double > mySegmentPercentages
Definition: Dt3DSegmentedLineModelInstance.h:191
int myStippleRepeat
Definition: Dt3DSegmentedLineModelInstance.h:202
bool endArrow
Definition: Dt3DSegmentedLineModelInstance.h:35
The base class for simple OSG based model instances.
Definition: DtOsgModelInstance.h:76
Model instance to draw a 3D line with styleable segments.
Definition: Dt3DSegmentedLineModelInstance.h:25
osg::ref_ptr< osg::Group > myGroup
Definition: Dt3DSegmentedLineModelInstance.h:194
double myWidth
Definition: Dt3DSegmentedLineModelInstance.h:199
osg::Vec4 myColor
Definition: Dt3DSegmentedLineModelInstance.h:200
Helper class to draw a styleable line segment; generates a geode containing the line segment geometry...
Definition: Dt3DLineModelInstanceSegment.h:24
bool myVisible
Definition: Dt3DSegmentedLineModelInstance.h:189
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
bool myTerrainIntersectMode
Definition: Dt3DSegmentedLineModelInstance.h:187
Structure to contain the line segments' attributes.
Definition: Dt3DSegmentedLineModelInstance.h:31
bool myGeometryDirty
Definition: Dt3DSegmentedLineModelInstance.h:205
Dt3DLineModelInstanceSegmentInterface is an abstract class providing a common interface for line mode...
Definition: Dt3DLineModelInstanceSegmentInterface.h:30