Public Member Functions |
| GlOpenUniformCubicBSpline () |
| GlOpenUniformCubicBSpline (const std::vector< Coord > &controlPoints, const Color &startColor, const Color &endColor, const float startSize, const float endSize, const unsigned int nbCurvePoints=200) |
| ~GlOpenUniformCubicBSpline () |
void | drawCurve (std::vector< Coord > &controlPoints, const Color &startColor, const Color &endColor, const float startSize, const float endSize, const unsigned int nbCurvePoints=200) |
| AbstractGlCurve (const std::string &shaderProgramName, const std::string &curveSpecificShaderCode) |
| 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 | ~AbstractGlCurve () |
void | draw (float lod, Camera *camera) |
void | translate (const Coord &move) |
virtual void | setTexture (const std::string &texture) |
virtual void | setOutlined (const bool outlined) |
virtual void | setOutlineColor (const Color &outlineColor) |
virtual void | setOutlineColorInterpolation (const bool outlineColorInterpolation) |
void | setLineCurve (const bool lineCurve) |
void | setCurveLineWidth (const float curveLineWidth) |
void | setCurveQuadBordersWidth (const float curveQuadBorderWidth) |
virtual void | setBillboardCurve (const bool billboardCurve) |
virtual void | setLookDir (const Coord &lookDir) |
void | getXML (xmlNodePtr rootNode) |
void | setWithXML (xmlNodePtr rootNode) |
| GlSimpleEntity () |
virtual | ~GlSimpleEntity () |
virtual void | acceptVisitor (GlSceneVisitor *visitor) |
virtual void | setVisible (bool visible) |
bool | isVisible () |
virtual void | setStencil (int stencil) |
int | getStencil () |
void | setCheckByBoundingBoxVisitor (bool check) |
bool | isCheckByBoundingBoxVisitor () |
virtual BoundingBox | getBoundingBox () |
virtual void | addLayerParent (GlLayer *) |
virtual void | removeLayerParent (GlLayer *) |
void | addParent (GlComposite *composite) |
void | removeParent (GlComposite *composite) |
virtual | ~GlEntity () |
Additional Inherited Members |
static void | buildCurveVertexBuffers (const unsigned int nbCurvePoints, bool vboOk) |
std::string | shaderProgramName |
GlShaderProgram * | curveShaderProgramNormal |
GlShaderProgram * | curveShaderProgramBillboard |
GlShaderProgram * | curveShaderProgram |
std::vector< Coord > | controlPoints |
Color | startColor |
Color | endColor |
float | startSize |
float | endSize |
unsigned int | nbCurvePoints |
bool | outlined |
Color | outlineColor |
std::string | texture |
float | texCoordFactor |
bool | billboardCurve |
Coord | lookDir |
bool | lineCurve |
float | curveLineWidth |
float | curveQuadBordersWidth |
bool | outlineColorInterpolation |
static std::map< unsigned int,
GLfloat * > | curveVertexBuffersData |
static std::map< unsigned int,
std::vector< GLushort * > > | curveVertexBuffersIndices |
static std::map< unsigned int,
GLuint * > | curveVertexBuffersObject |
static std::map< std::string,
GlShaderProgram * > | curvesShadersMap |
static std::map< std::string,
GlShaderProgram * > | curvesBillboardShadersMap |
static GlShader * | curveVertexShaderNormalMain |
static GlShader * | curveVertexShaderBillboardMain |
static GlShader * | fisheyeDistortionVertexShader |
static bool | canUseGeometryShader |
static std::map< std::string,
std::pair< GlShaderProgram
*, GlShaderProgram * > > | curvesGeometryShadersMap |
static GlShader * | curveVertexGeometryShaderNormalMain |
static std::map< std::string,
std::pair< GlShaderProgram
*, GlShaderProgram * > > | curvesBillboardGeometryShadersMap |
A class to draw open uniform cubic B-splines.
A B-spline is a convenient form for representing complicated, smooth curves. A cubic uniform B-spline is a piecewise collection of cubic Bézier curves, connected end to end. A cubic B-spline is C^2 continuous, meaning there is no discontinuities in curvature. B-splines have local control : parameters of a B-spline only affect a small part of the entire spline. A B-spline is qualified as open when it passes through its first and last control points.