22#include "qgis_analysis.h"
57 void remove(
int i )
override;
87 QgsDebugError( QStringLiteral(
"Error!!!!! A Bezier-curve can not be parent of a ParametricLine." ) );
93 QgsDebugError( QStringLiteral(
"Error!!!!! A Bezier-curve has no children to remove." ) );
Class Bezier3D represents a bezier curve, represented by control points.
void remove(int i) override
Do not use this method, since a Bezier curve does not consist of other curves.
void add(ParametricLine *pl) override
Do not use this method, since a Bezier curve does not consist of other curves.
const QgsPoint * getControlPoint(int number) const override
Returns a control point.
const QVector< QgsPoint * > * getControlPoly() const override
Returns a pointer to the control polygon.
ParametricLine * getParent() const override
Returns the parent.
void setParent(ParametricLine *par) override
Sets the parent.
int getDegree() const override
Returns the degree of the curve.
void setControlPoly(QVector< QgsPoint * > *cp) override
Sets the control polygon.
ParametricLine is an Interface for parametric lines.
virtual const QVector< QgsPoint * > * getControlPoly() const =0
virtual void setParent(ParametricLine *paral)=0
virtual void remove(int i)=0
int mDegree
Degree of the parametric Line.
virtual void changeDirection()=0
virtual int getDegree() const =0
virtual void calcSecDer(float t, Vector3D *v)=0
virtual void add(ParametricLine *pl)=0
virtual const QgsPoint * getControlPoint(int number) const =0
ParametricLine * mParent
Pointer to the parent object. If there isn't one, mParent is 0.
virtual void calcFirstDer(float t, Vector3D *v)=0
virtual void setControlPoly(QVector< QgsPoint * > *cp)=0
QVector< QgsPoint * > * mControlPoly
MControlPoly stores the points of the control polygon.
virtual ParametricLine * getParent() const =0
virtual void calcPoint(float t, QgsPoint *p)=0
Point geometry type, with support for z-dimension and m-values.
Class Vector3D represents a 3D-Vector, capable to store x-,y- and z-coordinates in double values.
#define QgsDebugError(str)