16 #include <matrix/vlVector.h>
18 #include <osg/PrimitiveSet>
20 #include <osg/Geometry>
21 #include <osg/LineWidth>
33 class DtOsgSegmentPickable;
56 virtual void setStipplePattern(
unsigned int,
int repeatFactor);
59 virtual void getStipplePattern(
unsigned int&,
int&);
62 virtual void setColor(
const osg::Vec4&);
65 virtual void getColor(
float& r,
float& g,
float& b,
float& a);
72 virtual void setTextureHeight(
double height);
75 virtual void setTextureWidth(
double width);
88 virtual void setUpExtent(
float height);
91 virtual void setDownExtent(
float height);
94 virtual void setLeftExtent(
float height);
97 virtual void setRightExtent(
float heigh);
101 virtual void setWidth(
float);
104 virtual void setScribeWidth(
float);
108 virtual void setHeight(
float);
112 virtual void setLineWidth(
float width);
115 virtual void setScribed(
bool b);
119 virtual void setScribeColor(
const osg::Vec4&);
122 virtual void setOcclusionEnabled(
bool enabled);
125 virtual void setPickable(
bool);
128 bool pickable()
const;
131 osg::Node* rootNode();
137 virtual void setSolid(
bool);
140 virtual void setEndArrow(
bool);
143 virtual bool endArrow()
const;
146 virtual void setStartArrow(
bool);
149 virtual bool startArrow()
const;
152 virtual void setArrowSize(
double);
160 virtual void setIsLastSegment(
bool);
161 virtual bool isLastSegment()
const;
164 virtual void updateColors();
168 virtual void updateMode();
171 virtual void updateTextureCoordinates();
174 virtual int addPointsForExtentExtrusion(
const DtVector& point);
178 virtual void setupScribeTransparency(
bool b);
181 virtual int addFaceForRotation(
const osg::Quat& rotation,
const DtVector& point);
184 virtual int addPointsForFullExtrusion(
const DtVector& from,
188 virtual void updateStippling();
191 virtual void updateScribeLine();
194 virtual bool frontAndBackFaceRendered()
const;
197 virtual void updatePointsForLineStrip();
200 virtual void updatePointsForTriangleStrip();
203 virtual void updatePointsForExtrusion();
206 virtual void createFaces();
209 virtual void updateScribeForTriangleStrip();
212 virtual void updateScribeForExtrusion();
215 virtual void updatePointsWithArrows();
218 virtual void connectFaces(osg::DrawElementsUInt*,
int startFace,
int endFace)
const;
Diagonal crossing liens.
Definition: DtTacticalGraphicUtilities.h:93
A prism controlled by control points.
Definition: DtExtrudedLineModelSegmentInstance.h:38
std::vector< DtVector > PointVector
Definition: DtExtrudedLineModelSegmentInstance.h:221
DtVector myStartPoint
Definition: DtExtrudedLineModelSegmentInstance.h:248
bool myScribeColorSet
Definition: DtExtrudedLineModelSegmentInstance.h:274
Draws a line with extruded width.
Definition: DtExtrudedLineModelSegmentInstance.h:45
osg::ref_ptr< osg::Texture > myTexture
Definition: DtExtrudedLineModelSegmentInstance.h:231
bool myScribeWidthSet
Definition: DtExtrudedLineModelSegmentInstance.h:261
Create a series of cylinders that can be used as pickable on lines that only have osg width...
Definition: DtOsgSegmentPickable.h:23
float myDownExtent
Definition: DtExtrudedLineModelSegmentInstance.h:244
osg::ref_ptr< osg::Vec2Array > myTextureCoordinates
Definition: DtExtrudedLineModelSegmentInstance.h:232
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
voidpf uLong int origin
Definition: ioapi.h:42
osg::Vec4 myColor
Definition: DtExtrudedLineModelSegmentInstance.h:238
osg::ref_ptr< osg::Group > myMainTransform
Definition: DtExtrudedLineModelSegmentInstance.h:236
osg::ref_ptr< osg::Geometry > myScribeGeometry
Definition: DtExtrudedLineModelSegmentInstance.h:228
vrvTacticalGraphicUtilities::ArrowStyle myArrowStyle
Definition: DtExtrudedLineModelSegmentInstance.h:255
bool myIsLastSegment
Definition: DtExtrudedLineModelSegmentInstance.h:276
Definition: DtExtrudedLineModelSegmentInstance.h:43
PointVector myDrawPoints
Definition: DtExtrudedLineModelSegmentInstance.h:257
osg::ref_ptr< osg::Geode > myShapeGeode
Definition: DtExtrudedLineModelSegmentInstance.h:223
Draws a line without width or height.
Definition: DtExtrudedLineModelSegmentInstance.h:44
DtOsgSegmentPickable * myPickable
If drawing as line use this pointer to create the pickable segments of that line, else geometry will ...
Definition: DtExtrudedLineModelSegmentInstance.h:270
unsigned int myStipplePattern
Definition: DtExtrudedLineModelSegmentInstance.h:263
DtDe & myDe
Definition: DtExtrudedLineModelSegmentInstance.h:278
osg::ref_ptr< osg::Geode > myScribeGeode
Definition: DtExtrudedLineModelSegmentInstance.h:227
Contains makVrv::DtOsgModelInstance class.
osg::ref_ptr< osg::LineWidth > myScribeWidth
Definition: DtExtrudedLineModelSegmentInstance.h:235
osg::ref_ptr< osg::LineWidth > myLineWidth
Definition: DtExtrudedLineModelSegmentInstance.h:234
double myTextureHeight
Definition: DtExtrudedLineModelSegmentInstance.h:241
bool myScribed
Definition: DtExtrudedLineModelSegmentInstance.h:259
double myTextureWidth
Definition: DtExtrudedLineModelSegmentInstance.h:240
float myRightExtent
Definition: DtExtrudedLineModelSegmentInstance.h:246
ArrowStyle
Definition: DtTacticalGraphicUtilities.h:43
LineExtrusionMode
Definition: DtExtrudedLineModelSegmentInstance.h:41
double myArrowSize
Definition: DtExtrudedLineModelSegmentInstance.h:254
DtVector myOrigin
Definition: DtExtrudedLineModelSegmentInstance.h:250
bool myIsPickable
Definition: DtExtrudedLineModelSegmentInstance.h:271
Contains DLL export macros.
bool myEndArrow
Definition: DtExtrudedLineModelSegmentInstance.h:253
osg::ref_ptr< osg::Vec3Array > myScribePoints
Definition: DtExtrudedLineModelSegmentInstance.h:229
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
int myRepeatFactor
Definition: DtExtrudedLineModelSegmentInstance.h:264
float myLeftExtent
Definition: DtExtrudedLineModelSegmentInstance.h:245
osg::ref_ptr< osg::Vec3Array > myShapePoints
Definition: DtExtrudedLineModelSegmentInstance.h:225
osg::ref_ptr< osg::Geometry > myShapeGeometry
Definition: DtExtrudedLineModelSegmentInstance.h:224
bool mySolid
Definition: DtExtrudedLineModelSegmentInstance.h:260
float myUpExtent
Definition: DtExtrudedLineModelSegmentInstance.h:243
DtVector myEndPoint
Definition: DtExtrudedLineModelSegmentInstance.h:249
LineExtrusionMode myMode
Definition: DtExtrudedLineModelSegmentInstance.h:266
osg::Vec4 myScribeColor
Definition: DtExtrudedLineModelSegmentInstance.h:273
bool myStartArrow
Definition: DtExtrudedLineModelSegmentInstance.h:252