17 #ifndef NORMVECDECORATOR_H 18 #define NORMVECDECORATOR_H 41 bool calcNormalForPoint(
double x,
double y,
int point,
Vector3D* result );
47 bool estimateFirstDerivative(
int pointno );
57 bool getTriangle(
double x,
double y,
Point3D* p1,
int* ptn1,
Vector3D* v1,
pointState* state1,
Point3D* p2,
int* ptn2,
Vector3D* v2,
pointState* state2,
Point3D* p3,
int* ptn3,
Vector3D* v3,
pointState* state3 );
63 virtual bool swapEdge(
double x,
double y )
override;
71 const static unsigned int mDefaultStorageForNormals = 100000;
TriangleInterpolator * mInterpolator
Association with an interpolator object.
Decorator class which adds the functionality of estimating normals at the data points.
virtual void eliminateHorizontalTriangles() override
Eliminates the horizontal triangles by swapping.
virtual bool saveAsShapefile(const QString &fileName) const =0
Saves the triangulation as a (line) shapefile.
static const unsigned int mDefaultStorageForNormals
QVector< Vector3D * > * mNormVec
Vector that stores the normals for the points.
virtual void setTriangleInterpolator(TriangleInterpolator *interpolator) override
Sets an interpolator object.
QVector< pointState > * mPointState
Vector who stores, it a point is not on a breakline, if it is a normal point of the breakline or if i...
Point3D is a class to represent a three dimensional point.
Class Vector3D represents a 3D-Vector, capable to store x-,y- and z-coordinates in double values...
This is an interface for interpolator classes for triangulations.
Interface for Triangulation classes.
void setTriangleInterpolator(TriangleInterpolator *inter) override
Sets an interpolator.
pointState
Enumeration for the state of a point.
Decorator class for Triangulations (s.
bool alreadyestimated
Is true, if the normals already have been estimated.
const T & at(int i) const
virtual int addPoint(Point3D *p) override
Adds a point to the triangulation Ownership is transferred to this class.
virtual bool calcPoint(double x, double y, Point3D *result) override
Calculates x-, y and z-value of the point on the surface and assigns it to 'result'.
bool getTriangle(double x, double y, Point3D *p1, int *n1, Point3D *p2, int *n2, Point3D *p3, int *n3) override
Finds out in which triangle the point with coordinates x and y is and assigns the numbers of the vert...
virtual bool swapEdge(double x, double y) override
Reads the content of a taff-file.
virtual bool calcNormal(double x, double y, Vector3D *result) override
Calculates the normal at a point on the surface and assigns it to 'result'.
Vector3D * getNormal(int n) const
Returns a pointer to the normal vector for the point with the number n.