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
|
|
|
*/
|
|
|
|
ParametricLine( ParametricLine* par /Transfer/, QVector<Point3D*>* controlpoly );
|
2015-07-29 11:52:14 +02:00
|
|
|
/** Destructor*/
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual ~ParametricLine();
|
|
|
|
virtual void add( ParametricLine* pl ) = 0;
|
|
|
|
virtual void calcFirstDer( float t, Vector3D* v ) = 0;
|
|
|
|
virtual void calcSecDer( float t, Vector3D* v ) = 0;
|
|
|
|
//virtual Point3D calcPoint(float t);
|
|
|
|
virtual void calcPoint( float t, Point3D* ) = 0;
|
|
|
|
virtual void changeDirection() = 0;
|
|
|
|
//virtual void draw(QPainter* p);
|
|
|
|
virtual const Point3D* getControlPoint( int number ) const = 0;
|
2015-11-09 21:29:24 +11:00
|
|
|
virtual const QVector<Point3D*>* getControlPoly() const = 0;
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual int getDegree() const = 0;
|
|
|
|
virtual ParametricLine* getParent() const = 0;
|
|
|
|
//virtual bool intersects(ParametricLine* pal);
|
|
|
|
virtual void remove( int i ) = 0;
|
2015-11-09 21:29:24 +11:00
|
|
|
virtual void setControlPoly( QVector<Point3D*>* cp ) = 0;
|
2012-09-24 02:28:15 +02:00
|
|
|
virtual void setParent( ParametricLine* paral ) = 0;
|
|
|
|
};
|