Overview     Modules     Class Hierarchy     Classes     Members  

tlp::GlComplexPolygon Class Reference

#include <GlComplexPolygon.h>

Inherits tlp::GlSimpleEntity.

Inheritance diagram for tlp::GlComplexPolygon:

Inheritance graph
[legend]
Collaboration diagram for tlp::GlComplexPolygon:

Collaboration graph
[legend]
List of all members.

Detailed Description

class to create a complex polygon (concave polygon or polygon with hole)

Public Member Functions

Protected Member Functions

Protected Attributes

Friends


Constructor & Destructor Documentation

tlp::GlComplexPolygon::GlComplexPolygon  )  [inline]
 

Default constructor

tlp::GlComplexPolygon::GlComplexPolygon const std::vector< Coord > &  coords,
Color  fcolor,
int  bezier = 0,
const std::string &  textureName = ""
 

Constructor with a vector of coords, a fill color, a number of decomposition in bezier mode (if bezier==0 the polygon is render without bezier mode) and a textureName if you want

tlp::GlComplexPolygon::GlComplexPolygon const std::vector< Coord > &  coords,
Color  fcolor,
Color  ocolor,
int  bezier = 0,
const std::string &  textureName = ""
 

Constructor with a vector of coords, a fill color, an outline color, a number of decomposition in bezier mode (if bezier==0 the polygon is render without bezier mode) and a textureName if you want

tlp::GlComplexPolygon::GlComplexPolygon const std::vector< std::vector< Coord > > &  coords,
Color  fcolor,
int  bezier = 0,
const std::string &  textureName = ""
 

Constructor with a vector of vector of coords (the first vector of coord is the polygon and others vectors are holes in polygon), a fill color, a number of decomposition in bezier mode (if bezier==0 the polygon is render without bezier mode) and a textureName if you want

tlp::GlComplexPolygon::GlComplexPolygon const std::vector< std::vector< Coord > > &  coords,
Color  fcolor,
Color  ocolor,
int  bezier = 0,
const std::string &  textureName = ""
 

Constructor with a vector of vector of coords (the first vector of coord is the polygon and others vectors are holes in polygon), a fill color, an outline color a number of decomposition in bezier mode (if bezier==0 the polygon is render without bezier mode) and a textureName if you want

virtual tlp::GlComplexPolygon::~GlComplexPolygon  )  [inline, virtual]
 


Member Function Documentation

virtual void tlp::GlComplexPolygon::addPoint const Coord &  point  )  [virtual]
 

Add a new point in polygon

void tlp::GlComplexPolygon::addVertex const Coord &  vertexCoord,
const Color &  vertexColor,
const Vec2f &  vertexTexCoord
[protected]
 

VERTEX* tlp::GlComplexPolygon::allocateNewVertex  )  [protected]
 

virtual void tlp::GlComplexPolygon::beginNewHole  )  [virtual]
 

Begin a new hole in the polygon

void tlp::GlComplexPolygon::createPolygon const std::vector< Coord > &  coords,
int  bezier
[protected]
 

virtual void tlp::GlComplexPolygon::draw float  lod,
Camera camera
[virtual]
 

Draw the complex polygon

Implements tlp::GlSimpleEntity.

void tlp::GlComplexPolygon::endPrimitive  )  [protected]
 

Color tlp::GlComplexPolygon::getFillColor  )  [inline]
 

Get fill color of GlComplexPolygon

Color tlp::GlComplexPolygon::getOutlineColor  )  [inline]
 

Get outline color of GlComplexPolygon

virtual void tlp::GlComplexPolygon::getXML xmlNodePtr  rootNode  )  [virtual]
 

Function to export data and type in XML

Implements tlp::GlSimpleEntity.

virtual void tlp::GlComplexPolygon::getXMLOnlyData xmlNodePtr  rootNode  )  [virtual]
 

Function to export data in XML

void tlp::GlComplexPolygon::runTesselation  )  [protected]
 

void tlp::GlComplexPolygon::setFillColor const Color &  color  )  [inline]
 

Set fill color of GlComplexPolygon

void tlp::GlComplexPolygon::setOutlineColor const Color &  color  )  [inline]
 

Set outline color of GlComplexPolygon

void tlp::GlComplexPolygon::setOutlineMode const   bool  ) 
 

Set if the polygon is outlined or not

void tlp::GlComplexPolygon::setOutlineSize double  size  ) 
 

Set size of outline

virtual void tlp::GlComplexPolygon::setWithXML xmlNodePtr  rootNode  )  [virtual]
 

Function to set data with XML

Implements tlp::GlSimpleEntity.

void tlp::GlComplexPolygon::startPrimitive GLenum  primitive  )  [protected]
 

virtual void tlp::GlComplexPolygon::translate const Coord &  mouvement  )  [virtual]
 

Translate entity

Reimplemented from tlp::GlSimpleEntity.


Friends And Related Function Documentation

void CALLBACK beginCallback GLenum  which,
GLvoid *  polygonData
[friend]
 

void CALLBACK combineCallback GLdouble  coords[3],
VERTEX d[4],
GLfloat  w[4],
VERTEX **  dataOut,
GLvoid *  polygonData
[friend]
 

void CALLBACK endCallback GLvoid *  polygonData  )  [friend]
 

void CALLBACK errorCallback GLenum  errorCode  )  [friend]
 

void CALLBACK vertexCallback GLvoid *  vertex,
GLvoid *  polygonData
[friend]
 


Member Data Documentation

std::vector<VERTEX *> tlp::GlComplexPolygon::allocatedVertices [protected]
 

std::map<GLenum, std::vector<Color> > tlp::GlComplexPolygon::colorsMap [protected]
 

GLenum tlp::GlComplexPolygon::currentPrimitive [protected]
 

int tlp::GlComplexPolygon::currentVector [protected]
 

Color tlp::GlComplexPolygon::fillColor [protected]
 

int tlp::GlComplexPolygon::nbPrimitiveVertices [protected]
 

Color tlp::GlComplexPolygon::outlineColor [protected]
 

bool tlp::GlComplexPolygon::outlined [protected]
 

double tlp::GlComplexPolygon::outlineSize [protected]
 

std::vector<std::vector<Coord> > tlp::GlComplexPolygon::points [protected]
 

std::set<GLenum> tlp::GlComplexPolygon::primitivesSet [protected]
 

std::map<GLenum, std::vector<int> > tlp::GlComplexPolygon::startIndicesMap [protected]
 

std::map<GLenum, std::vector<Vec2f> > tlp::GlComplexPolygon::texCoordsMap [protected]
 

std::string tlp::GlComplexPolygon::textureName [protected]
 

std::map<GLenum, std::vector<int> > tlp::GlComplexPolygon::verticesCountMap [protected]
 

std::map<GLenum, std::vector<Coord> > tlp::GlComplexPolygon::verticesMap [protected]
 



Tulip Software by LaBRI Visualization Team    2001 - 2010