Quantum GIS API Documentation  1.8
Public Member Functions
Bezier3D Class Reference

Class Bezier3D represents a bezier curve, represented by control points. More...

#include <Bezier3D.h>

Inheritance diagram for Bezier3D:
Inheritance graph
[legend]
Collaboration diagram for Bezier3D:
Collaboration graph
[legend]

List of all members.

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 Point3DgetControlPoint (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 ParametricLinegetParent () const
 Returns the parent.
virtual void setParent (ParametricLine *par)
 Sets the parent.
virtual void setControlPoly (QVector< Point3D * > *cp)
 Sets the control polygon.

Detailed Description

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.


Constructor & Destructor Documentation

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.


Member Function Documentation

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.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines