20 #include <osg/Texture>
25 class DtChannelManager;
58 virtual void setModelSet(
int);
61 virtual void setPosition(
int vtx,
const DtVector& position );
64 virtual void setRotation(
const osg::Quat& quat);
67 virtual void setOrigin(
const DtVector&);
76 virtual void removePoint(
int index);
79 virtual void set2dOffset(
int index,
float x,
float y);
83 virtual void set3dDirection2dLength(
int index,
float x,
float y,
float z,
87 virtual void setColor(
float r,
float g,
float b,
float a);
94 virtual void setTexturePath(
const std::string& texturePath);
97 virtual void setOutlineTexture(
const std::string& texturePath);
103 virtual void setSolidFillCenter(
bool);
106 virtual void setNumTextureTiles(
double numTiles);
109 virtual void setStipplePattern(
unsigned int stipplePattern);
112 virtual void setWidth(
float width);
115 virtual void setEventWidth(
float width);
118 virtual void setVisible(
bool isVisible);
121 virtual void setLockUpdates(
bool lock);
124 bool updatesLocked()
const;
127 virtual void setPickable(
bool enabled);
130 virtual void setEventsEnabled(
bool,
unsigned long long userData);
133 bool eventsEnabled()
const;
136 virtual void setFill(
bool);
139 virtual void setInsideColor(
float r,
float g,
float b,
float a );
142 virtual void setOutsideColor(
float r,
float g,
float b,
float a );
145 virtual int pointCount()
const;
151 virtual void setFillPattern(
const std::vector<unsigned int> pattern);
154 virtual void setOutline(
bool);
159 virtual void setChannelInstance(
DtChannel*,
int modelSet);
165 virtual void setVertexList(
const VertexList&);
169 virtual void createPolygonIfNecessary();
172 virtual void updateGeometry();
175 virtual void updateColors();
178 virtual void translateAndUpdateVertex(
unsigned int index,
const VertexData& vert,
DtPolygon* polygon);
184 virtual std::vector<DtVector> topographicVertices()
const;
189 virtual bool triangulate(
const std::vector<DtVector>& input, std::vector<int>& output)
const;
190 virtual bool snipTriangle(
const std::vector<DtVector> &contour,
int u,
int v,
int w,
int n,
int *V)
const;
191 virtual bool insideTriangle(
float Ax,
float Ay,
192 float Bx,
float By,
float Cx,
float Cy,
float Px,
float Py)
const;
193 virtual float triangulateAreaSize(
const std::vector<DtVector> &contour)
const;