17 #ifndef TRIDECORATOR_H
18 #define TRIDECORATOR_H
29 virtual void addLine(
Line3D* line,
bool breakline )
override;
44 virtual double getXMax()
const override;
45 virtual double getXMin()
const override;
46 virtual double getYMax()
const override;
47 virtual double getYMin()
const override;
49 virtual void setEdgeColor(
int r,
int g,
int b )
override;
55 virtual bool pointInside(
double x,
double y )
override;
56 virtual bool swapEdge(
double x,
double y )
override;
virtual void addTriangulation(Triangulation *t)
Adds an association to a triangulation.
virtual bool pointInside(double x, double y) override
Returns true, if the point with coordinates x and y is inside the convex hull and false otherwise...
Triangulation * mTIN
Association with a Triangulation object.
virtual void eliminateHorizontalTriangles() override
Eliminates the horizontal triangles by swapping.
virtual int getNumberOfPoints() const override
Returns the number of points.
virtual double getYMin() const override
Returns the smallest x-coordinate value of the bounding box.
virtual void ruppertRefinement() override
Adds points to make the triangles better shaped (algorithm of ruppert)
virtual QList< int > * getSurroundingTriangles(int pointno) override
Returns a pointer to a value list with the information of the triangles surrounding (counterclockwise...
This class represents a line.
virtual void addLine(Line3D *line, bool breakline) override
Adds a line (e.g.
forcedCrossBehaviour
Enumeration describing the behaviour, if two forced lines cross.
virtual void setTriangleInterpolator(TriangleInterpolator *interpolator) override
Sets an interpolator object.
Point3D is a class to represent a three dimensional point.
virtual void setEdgeColor(int r, int g, int b) override
Sets the color of the normal edges.
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.
virtual double getYMax() const override
Returns the largest y-coordinate value of the bounding box.
virtual double getXMin() const override
Returns the smallest x-coordinate value of the bounding box.
virtual void performConsistencyTest() override
Performs a consistency check, remove this later.
virtual QList< int > * getPointsAroundEdge(double x, double y) override
Returns a value list with the numbers of the four points, which would be affected by an edge swap...
Interface for Triangulation classes.
virtual void setForcedCrossBehaviour(Triangulation::forcedCrossBehaviour b) override
Draws the points, edges and the forced lines.
virtual double getXMax() const override
Returns the largest x-coordinate value of the bounding box.
Decorator class for Triangulations (s.
virtual Point3D * getPoint(unsigned int i) const override
Returns a pointer to the point with number i.
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'.
virtual void setForcedEdgeColor(int r, int g, int b) override
Sets the color of the forced edges.
virtual int getOppositePoint(int p1, int p2) override
Returns the number of the point opposite to the triangle points p1, p2 (which have to be on a halfedg...
bool getTriangle(double x, double y, Point3D *p1, int *n1, Point3D *p2, int *n2, Point3D *p3, int *n3) override
virtual bool swapEdge(double x, double y) override
Reads the content of a taff-file.
virtual void setBreakEdgeColor(int r, int g, int b) override
Sets the color of the breaklines.
virtual bool calcNormal(double x, double y, Vector3D *result) override
Calculates the normal at a point on the surface and assigns it to 'result'.