2012-09-24 02:28:15 +02:00
|
|
|
class ParametricLine
|
|
|
|
{
|
|
|
|
%TypeHeaderCode
|
|
|
|
#include <ParametricLine.h>
|
|
|
|
%End
|
|
|
|
public:
|
2015-07-29 11:52:14 +02:00
|
|
|
/** Default constructor*/
|
2012-09-24 02:28:15 +02:00
|
|
|
ParametricLine();
|
2015-07-29 11:52:14 +02:00
|
|
|
/** Constructor, par is a pointer to the parent object, controlpoly the controlpolygon
|
2015-11-09 21:29:24 +11:00
|
|
|
*/
|
2017-06-02 20:52:57 +02:00
|
|
|
ParametricLine( ParametricLine *par /Transfer/, QVector<QgsPoint*> *controlpoly );
|
2015-07-29 11:52:14 +02:00
|
|
|
/** Destructor*/
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual ~ParametricLine();
|
2017-05-01 18:13:15 +02:00
|
|
|
virtual void add( ParametricLine *pl ) = 0;
|
|
|
|
virtual void calcFirstDer( float t, Vector3D *v ) = 0;
|
|
|
|
virtual void calcSecDer( float t, Vector3D *v ) = 0;
|
2017-06-02 20:52:57 +02:00
|
|
|
//virtual QgsPoint calcPoint(float t);
|
|
|
|
virtual void calcPoint( float t, QgsPoint* ) = 0;
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual void changeDirection() = 0;
|
2017-05-01 18:13:15 +02:00
|
|
|
//virtual void draw(QPainter *p);
|
2017-06-02 20:52:57 +02:00
|
|
|
virtual const QgsPoint *getControlPoint( int number ) const = 0;
|
|
|
|
virtual const QVector<QgsPoint*> *getControlPoly() const = 0;
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual int getDegree() const = 0;
|
2017-05-01 18:13:15 +02:00
|
|
|
virtual ParametricLine *getParent() const = 0;
|
|
|
|
//virtual bool intersects(ParametricLine *pal);
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual void remove( int i ) = 0;
|
2017-06-02 20:52:57 +02:00
|
|
|
virtual void setControlPoly( QVector<QgsPoint*> *cp ) = 0;
|
2017-05-01 18:13:15 +02:00
|
|
|
virtual void setParent( ParametricLine *paral ) = 0;
|
2012-09-24 02:28:15 +02:00
|
|
|
};
|