Public Member Functions |
| | GlCubicBSplineInterpolation (const std::vector< Coord > &pointsToInterpolate, const Color &startColor, const Color &endColor, const float startSize, const float endSize, const unsigned int nbCurvePoints=100) |
| | 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 |
| void | setCurveVertexShaderRenderingSpecificParameters () |
| Coord | computeCurvePointOnCPU (const std::vector< Coord > &controlPoints, float t) |
| void | computeCurvePointsOnCPU (const std::vector< Coord > &controlPoints, std::vector< Coord > &curvePoints, unsigned int nbCurvePoints) |
| 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 a curve interpolating a set of points with C^2 continuity
This class allows to draw a cubic B-spline interpolating a set of points. The resulting curve is C^2 continous, so there is no discontinuities in curvature.