![]()  | 
  
    Tulip
    6.0.0
    
   Large graphs analysis and drawing 
   | 
 
#include <GlCatmullRomCurve.h>
Inherits AbstractGlCurve.
Public Member Functions | |
| GlCatmullRomCurve (const std::vector< Coord > &controlPoints, const Color &startColor, const Color &endColor, const float startSize, const float endSize, const bool closedCurve=false, const unsigned int nbCurvePoints=200, const ParameterizationType paramType=CENTRIPETAL) | |
| void | drawCurve (std::vector< Coord > &controlPoints, const Color &startColor, const Color &endColor, const float startSize, const float endSize, const unsigned int nbCurvePoints=200) override | 
| void | setClosedCurve (const bool closedCurve) | 
| void | setParameterizationType (const ParameterizationType paramType) | 
A class to draw a Catmull-Rom curve.
This class allow to draw a Catmull-Rom curve, a smooth curve which passes through all its control points. Catmull-Rom splines are a family of cubic interpolating splines formulated such that the tangent at each control point is calculated using the previous and next control point point of the spline. Catmull-Rom splines have C^1 continuity, local control, and interpolation, but do not lie within the convex hull of their control points.
Definition at line 42 of file GlCatmullRomCurve.h.
| tlp::GlCatmullRomCurve::GlCatmullRomCurve | ( | const std::vector< Coord > & | controlPoints, | 
| const Color & | startColor, | ||
| const Color & | endColor, | ||
| const float | startSize, | ||
| const float | endSize, | ||
| const bool | closedCurve = false,  | 
        ||
| const unsigned int | nbCurvePoints = 200,  | 
        ||
| const ParameterizationType | paramType = CENTRIPETAL  | 
        ||
| ) | 
GlCatmullRomCurve constructor.
| controlPoints | a vector of control points (size must be greater or equal to 4) | 
| startColor | the color at the start of the curve | 
| endColor | the color at the end of the curve | 
| startSize | the width at the start of the curve | 
| endSize | the width at the end of the curve | 
| closedCurve | if true, the curve will be closed and a bezier segment will be drawn between the last and first control point | 
| paramType | curve parameterization type (GlCatmullRomCurve::UNIFORM | GlCatmullRomCurve::CENTRIPETAL | GlCatmullRomCurve::CHORD_LENGTH (default)) | 
| nbCurvePoints | the number of curve points to generate |