21 #ifndef GLABSTRACTPOLYGON_H 22 #define GLABSTRACTPOLYGON_H 26 #include <tulip/Color.h> 27 #include <tulip/Coord.h> 28 #include <tulip/Size.h> 29 #include <tulip/GlSimpleEntity.h> 31 #include <tulip/OpenGlIncludes.h> 54 enum PolygonMode {POLYGON = 0, QUAD_STRIP = 1};
59 PolygonMode getPolygonMode();
64 void setPolygonMode(PolygonMode mode);
74 void setFillMode(
const bool);
79 bool getOutlineMode();
84 void setOutlineMode(
const bool);
89 bool getLightingMode();
94 void setLightingMode(
const bool);
99 Color getFillColor(
unsigned int i);
104 void setFillColor(
unsigned int i,
const Color &color);
111 void setFillColor(
const Color &color);
118 Color getOutlineColor(
unsigned int i);
123 void setOutlineColor(
unsigned int i,
const Color &color);
130 void setOutlineColor(
const Color &color);
135 std::string getTextureName();
140 void setTextureName(
const std::string &name);
145 float getOutlineSize();
150 void setOutlineSize(
float size);
157 float getHideOutlineLod();
162 void setHideOutlineLod(
float lod);
167 void setInvertYTexture(
bool invertYTexture);
172 virtual void draw(
float lod,
Camera *camera);
177 virtual void translate(
const Coord& mouvement);
182 virtual void scale(
const tlp::Size& factor);
187 virtual void getXML(std::string &outString);
192 virtual void getXMLOnlyData(std::string &outString);
197 virtual void setWithXML(
const std::string &outString,
unsigned int ¤tPosition);
208 virtual void setPoints(
const std::vector<Coord> &points);
213 virtual void setPoint(
unsigned int index,
const Coord &point);
218 virtual void setFillColors(
const std::vector<Color> &colors);
223 virtual void setOutlineColors(
const std::vector<Color> &colors);
228 virtual void recomputeBoundingBox();
233 virtual void clearGenerated();
237 PolygonMode polygonMode;
238 std::vector<Coord> points;
239 std::vector<Color> fillColors;
240 std::vector<Color> outlineColors;
245 std::string textureName;
247 float hideOutlineLod;
249 std::vector<Coord> normalArray;
Base class for all Tulip OpenGL entities.
Tulip OpenGL camera object.
class to create a abstract polygon