17 #ifndef NORMVECDECORATOR_H
18 #define NORMVECDECORATOR_H
24 class QProgressDialog;
40 bool calcNormalForPoint(
double x,
double y,
int point,
Vector3D* result );
46 bool estimateFirstDerivative(
int pointno );
48 bool estimateFirstDerivatives( QProgressDialog* d = 0 );
54 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 );
57 pointState getState(
int pointno )
const;
61 virtual bool swapEdge(
double x,
double y );
69 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.
Vector3D * getNormal(int n) const
Returns a pointer to the normal vector for the point with the number n.
virtual bool swapEdge(double x, double y)
Reads the content of a taff-file.
virtual bool saveAsShapefile(const QString &fileName) const =0
Saves the triangulation as a (line) shapefile.
virtual void eliminateHorizontalTriangles()
Eliminates the horizontal triangles by swapping.
QVector< Vector3D * > * mNormVec
Vector that stores the normals for the points.
void setTriangleInterpolator(TriangleInterpolator *inter)
Sets an interpolator.
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...
virtual bool calcPoint(double x, double y, Point3D *result)
Calculates x-, y and z-value of the point on the surface and assigns it to 'result'.
Point3D is a class to represent a three dimensional point.
virtual bool calcNormal(double x, double y, Vector3D *result)
Calculates the normal at a point on the surface and assigns it to 'result'.
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.
bool getTriangle(double x, double y, Point3D *p1, int *n1, Point3D *p2, int *n2, Point3D *p3, int *n3)
Interface for Triangulation classes.
pointState
Enumeration for the state of a point.
Decorator class for Triangulations (s.
virtual void setTriangleInterpolator(TriangleInterpolator *interpolator)
Sets an interpolator object.
bool alreadyestimated
Is true, if the normals already have been estimated.
virtual int addPoint(Point3D *p)
Adds a point to the triangulation.