17 #ifndef TRIANGULATION_H 18 #define TRIANGULATION_H 43 virtual void addLine(
Line3D* line,
bool breakline ) = 0;
49 virtual int addPoint(
Point3D* p ) = 0;
55 virtual bool calcNormal(
double x,
double y,
Vector3D* result ) = 0;
58 virtual void performConsistencyTest() = 0;
64 virtual bool calcPoint(
double x,
double y,
Point3D* result ) = 0;
67 virtual Point3D* getPoint(
unsigned int i )
const = 0;
72 virtual bool getTriangle(
double x,
double y,
Point3D* p1,
int* n1,
Point3D* p2,
int* n2,
Point3D* p3,
int* n3 ) = 0;
78 virtual int getOppositePoint(
int p1,
int p2 ) = 0;
81 virtual double getXMax()
const = 0;
84 virtual double getXMin()
const = 0;
87 virtual double getYMax()
const = 0;
90 virtual double getYMin()
const = 0;
93 virtual int getNumberOfPoints()
const = 0;
102 virtual QList<int>* getSurroundingTriangles(
int pointno ) = 0;
109 virtual QList<int>* getPointsAroundEdge(
double x,
double y ) = 0;
118 virtual void setEdgeColor(
int r,
int g,
int b ) = 0;
121 virtual void setForcedEdgeColor(
int r,
int g,
int b ) = 0;
124 virtual void setBreakEdgeColor(
int r,
int g,
int b ) = 0;
130 virtual void eliminateHorizontalTriangles() = 0;
133 virtual void ruppertRefinement() = 0;
136 virtual bool pointInside(
double x,
double y ) = 0;
145 virtual bool swapEdge(
double x,
double y ) = 0;
151 virtual bool saveAsShapefile(
const QString& fileName )
const = 0;
the status of the first inserted forced line is reset to that of a normal edge (so that the second in...
This class represents a line.
forcedCrossBehaviour
Enumeration describing the behaviour, if two forced lines cross.
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.
the second inserted forced line is snapped to the closest vertice of the first inserted forced line...