15 #include <matrix/vlVector.h>
17 #include <osg/PrimitiveSet>
18 #include <osg/Geometry>
31 class DtOsgSegmentPickable;
53 virtual void addPoint(
const DtVector&,
int index = -1);
56 virtual void removePoint(
int index);
59 virtual void setPosition(
int index,
const DtVector&);
62 virtual void clearPoints();
75 virtual void setStipplePattern(
unsigned int);
78 virtual void setColor(
float r,
float g,
float b,
float a);
81 virtual void setTextureHeight(
double height);
84 virtual void setTextureWidth(
double width);
90 virtual void setUpExtent(
float height);
93 virtual void setDownExtent(
float height);
96 virtual void setLeftExtent(
float height);
99 virtual void setRightExtent(
float heigh);
102 virtual void setWidth(
float);
106 virtual void setHeight(
float);
109 virtual void setDimensions(
float width,
float height);
113 virtual void setLineWidth(
float width);
116 virtual void setScribed(
bool b);
120 virtual void setScribeColor(
float r,
float g,
float b,
float a);
123 virtual void setScribeOccluded(
bool b);
129 int pointCount()
const;
138 virtual void setLockUpdates(
bool);
141 bool updatesLocked()
const;
144 virtual void setPickable(
bool);
147 bool pickable()
const;
149 void setOrigin(
const DtVector& origin);
152 virtual void updatePoints();
155 virtual void setSolid(
bool);
160 virtual void updateMode();
163 virtual void updateGeometry();
166 virtual void updateTextureCoordinates();
169 virtual void addPointsForExtentExtrusion(
const DtVector&
point);
172 virtual void addFaceForRotation(
const osg::Quat& rotation,
const DtVector&
point);
175 virtual void addPointsForFullExtrusion(
const DtVector& from,
179 virtual void updateStippling();
182 virtual void updateScribeLine();
185 virtual void updateColors();
188 virtual bool frontAndBackFaceRendered()
const;
191 virtual void updatePointsForLineStrip();
194 virtual void updatePointsForTriangleStrip();
197 virtual void updatePointsForExtrusion();
200 virtual void createFaces();
203 virtual void updateScribeForTriangleStrip();
206 virtual void updateScribeForExtrusion(osg::Vec3Array*);