Overview     Modules     Class Hierarchy     Classes     Members  

#include <AbstractGlCurve.h>

Inheritance diagram for tlp::AbstractGlCurve:
Collaboration diagram for tlp::AbstractGlCurve:

List of all members.

Public Member Functions

Protected Member Functions

Static Protected Member Functions

Protected Attributes

Static Protected Attributes


Constructor & Destructor Documentation

tlp::AbstractGlCurve::AbstractGlCurve ( const std::string &  shaderProgramName,
const std::string &  curveSpecificShaderCode 
)
tlp::AbstractGlCurve::AbstractGlCurve ( const std::string &  shaderProgramName,
const std::string &  curveSpecificShaderCode,
const std::vector< Coord > &  controlPoints,
const Color &  startColor,
const Color &  endColor,
const float  startSize,
const float  endSize,
const unsigned int  nbCurvePoints 
)
virtual tlp::AbstractGlCurve::~AbstractGlCurve ( ) [virtual]

Member Function Documentation

static void tlp::AbstractGlCurve::buildCurveVertexBuffers ( const unsigned int  nbCurvePoints,
bool  vboOk 
) [static, protected]
virtual void tlp::AbstractGlCurve::cleanupAfterCurveVertexShaderRendering ( ) [inline, protected, virtual]

Reimplemented in tlp::GlBezierCurve.

virtual Coord tlp::AbstractGlCurve::computeCurvePointOnCPU ( const std::vector< Coord > &  controlPoints,
float  t 
) [protected, pure virtual]
virtual void tlp::AbstractGlCurve::computeCurvePointsOnCPU ( const std::vector< Coord > &  controlPoints,
std::vector< Coord > &  curvePoints,
unsigned int  nbCurvePoints 
) [protected, pure virtual]
void tlp::AbstractGlCurve::draw ( float  lod,
Camera camera 
) [virtual]

Draw function

Implements tlp::GlSimpleEntity.

virtual void tlp::AbstractGlCurve::drawCurve ( std::vector< Coord > &  controlPoints,
const Color &  startColor,
const Color &  endColor,
const float  startSize,
const float  endSize,
const unsigned int  nbCurvePoints = 100 
) [virtual]
void tlp::AbstractGlCurve::getXML ( xmlNodePtr  rootNode) [virtual]

Save the entity in Xml

Implements tlp::GlSimpleEntity.

void tlp::AbstractGlCurve::initShader ( const std::string &  shaderProgramName,
const std::string &  curveSpecificShaderCode 
) [protected]
virtual void tlp::AbstractGlCurve::setBillboardCurve ( const bool  billboardCurve) [inline, virtual]
void tlp::AbstractGlCurve::setCurveLineWidth ( const float  curveLineWidth) [inline]
void tlp::AbstractGlCurve::setCurveQuadBordersWidth ( const float  curveQuadBorderWidth) [inline]
virtual void tlp::AbstractGlCurve::setCurveVertexShaderRenderingSpecificParameters ( ) [inline, protected, virtual]
void tlp::AbstractGlCurve::setLineCurve ( const bool  lineCurve) [inline]

If set to true, the curve is drawn as a line and not as a thick quad

virtual void tlp::AbstractGlCurve::setLookDir ( const Coord &  lookDir) [inline, virtual]
virtual void tlp::AbstractGlCurve::setOutlineColor ( const Color &  outlineColor) [inline, virtual]
virtual void tlp::AbstractGlCurve::setOutlineColorInterpolation ( const bool  outlineColorInterpolation) [inline, virtual]

If set to true, the curve quad outlines will have the same colors than the curve quad

virtual void tlp::AbstractGlCurve::setOutlined ( const bool  outlined) [inline, virtual]
virtual void tlp::AbstractGlCurve::setTexture ( const std::string &  texture) [inline, virtual]
void tlp::AbstractGlCurve::setWithXML ( xmlNodePtr  rootNode) [virtual]

Load entity with Xml

Implements tlp::GlSimpleEntity.

void tlp::AbstractGlCurve::translate ( const Coord &  ) [virtual]

virtual fucntion : Translate entity of vector translation

Reimplemented from tlp::GlSimpleEntity.


Member Data Documentation

std::vector<Coord> tlp::AbstractGlCurve::controlPoints [protected]
std::map<std::string, std::pair<GlShaderProgram *, GlShaderProgram *> > tlp::AbstractGlCurve::curvesBillboardGeometryShadersMap [static, protected]
std::map<std::string, GlShaderProgram *> tlp::AbstractGlCurve::curvesBillboardShadersMap [static, protected]
std::map<std::string, std::pair<GlShaderProgram *, GlShaderProgram *> > tlp::AbstractGlCurve::curvesGeometryShadersMap [static, protected]
std::map<std::string, GlShaderProgram *> tlp::AbstractGlCurve::curvesShadersMap [static, protected]
std::map<unsigned int, GLfloat *> tlp::AbstractGlCurve::curveVertexBuffersData [static, protected]
std::map<unsigned int, std::vector<GLushort *> > tlp::AbstractGlCurve::curveVertexBuffersIndices [static, protected]
std::map<unsigned int, GLuint* > tlp::AbstractGlCurve::curveVertexBuffersObject [static, protected]
Color tlp::AbstractGlCurve::endColor [protected]
float tlp::AbstractGlCurve::endSize [protected]
Coord tlp::AbstractGlCurve::lookDir [protected]
unsigned int tlp::AbstractGlCurve::nbCurvePoints [protected]
std::string tlp::AbstractGlCurve::shaderProgramName [protected]
std::string tlp::AbstractGlCurve::texture [protected]


Tulip Software by LaBRI Visualization Team    2001 - 2012