Quantum GIS API Documentation
1.8
|
Class Bezier3D represents a bezier curve, represented by control points. More...
#include <Bezier3D.h>
Public Member Functions | |
Bezier3D () | |
Default constructor. | |
Bezier3D (ParametricLine *par, QVector< Point3D * > *controlpoly) | |
Constructor, par is a pointer to the parent, controlpoly a controlpolygon. | |
virtual | ~Bezier3D () |
Destructor. | |
virtual void | add (ParametricLine *pl) |
Do not use this method, since a Bezier curve does not consist of other curves. | |
virtual void | calcFirstDer (float t, Vector3D *v) |
Calculates the first derivative and assigns it to v. | |
virtual void | calcSecDer (float t, Vector3D *v) |
Calculates the second derivative and assigns it to v. | |
virtual void | calcPoint (float t, Point3D *p) |
Calculates the point on the curve and assigns it to p. | |
virtual void | changeDirection () |
changes the order of control points | |
virtual void | remove (int i) |
Do not use this method, since a Bezier curve does not consist of other curves. | |
virtual const Point3D * | getControlPoint (int number) const |
Returns a control point. | |
virtual const QVector< Point3D * > * | getControlPoly () const |
Returns a pointer to the control polygon. | |
virtual int | getDegree () const |
Returns the degree of the curve. | |
virtual ParametricLine * | getParent () const |
Returns the parent. | |
virtual void | setParent (ParametricLine *par) |
Sets the parent. | |
virtual void | setControlPoly (QVector< Point3D * > *cp) |
Sets the control polygon. |
Class Bezier3D represents a bezier curve, represented by control points.
Parameter t is running from 0 to 1. The class is capable to calculate the curve point and the first two derivatives belonging to t.
Definition at line 26 of file Bezier3D.h.
Bezier3D::Bezier3D | ( | ) | [inline] |
Default constructor.
Definition at line 69 of file Bezier3D.h.
Bezier3D::Bezier3D | ( | ParametricLine * | par, |
QVector< Point3D * > * | controlpoly | ||
) | [inline] |
Constructor, par is a pointer to the parent, controlpoly a controlpolygon.
Definition at line 74 of file Bezier3D.h.
References ParametricLine::mControlPoly, and ParametricLine::mDegree.
Bezier3D::~Bezier3D | ( | ) | [inline, virtual] |
Destructor.
Definition at line 79 of file Bezier3D.h.
void Bezier3D::add | ( | ParametricLine * | pl | ) | [inline, virtual] |
Do not use this method, since a Bezier curve does not consist of other curves.
Implements ParametricLine.
Definition at line 86 of file Bezier3D.h.
References QgsDebugMsg.
virtual void Bezier3D::calcFirstDer | ( | float | t, |
Vector3D * | v | ||
) | [virtual] |
Calculates the first derivative and assigns it to v.
Implements ParametricLine.
virtual void Bezier3D::calcPoint | ( | float | t, |
Point3D * | p | ||
) | [virtual] |
Calculates the point on the curve and assigns it to p.
Implements ParametricLine.
virtual void Bezier3D::calcSecDer | ( | float | t, |
Vector3D * | v | ||
) | [virtual] |
Calculates the second derivative and assigns it to v.
Implements ParametricLine.
virtual void Bezier3D::changeDirection | ( | ) | [virtual] |
changes the order of control points
Implements ParametricLine.
const Point3D * Bezier3D::getControlPoint | ( | int | number | ) | const [inline, virtual] |
Returns a control point.
Implements ParametricLine.
Definition at line 100 of file Bezier3D.h.
References ParametricLine::mControlPoly.
const QVector< Point3D * > * Bezier3D::getControlPoly | ( | ) | const [inline, virtual] |
Returns a pointer to the control polygon.
Implements ParametricLine.
Definition at line 105 of file Bezier3D.h.
References ParametricLine::mControlPoly.
int Bezier3D::getDegree | ( | ) | const [inline, virtual] |
Returns the degree of the curve.
Implements ParametricLine.
Definition at line 110 of file Bezier3D.h.
References ParametricLine::mDegree.
ParametricLine * Bezier3D::getParent | ( | ) | const [inline, virtual] |
Returns the parent.
Implements ParametricLine.
Definition at line 115 of file Bezier3D.h.
References ParametricLine::mParent.
void Bezier3D::remove | ( | int | i | ) | [inline, virtual] |
Do not use this method, since a Bezier curve does not consist of other curves.
Implements ParametricLine.
Definition at line 92 of file Bezier3D.h.
References QgsDebugMsg.
void Bezier3D::setControlPoly | ( | QVector< Point3D * > * | cp | ) | [inline, virtual] |
Sets the control polygon.
Implements ParametricLine.
Definition at line 125 of file Bezier3D.h.
References ParametricLine::mControlPoly, and ParametricLine::mDegree.
void Bezier3D::setParent | ( | ParametricLine * | par | ) | [inline, virtual] |
Sets the parent.
Implements ParametricLine.
Definition at line 120 of file Bezier3D.h.
References ParametricLine::mParent.