23using namespace Qt::StringLiterals;
29 mTIN->addLine( points, lineType );
41 const unsigned int number =
mTIN->addPoint( p );
55 mTIN->performConsistencyTest();
67 const bool b =
mTIN->calcNormal( x, y, result );
81 const bool b =
mTIN->calcPoint( x, y, result );
109 const bool b =
mTIN->triangleVertices( x, y, p1, n1, p2, n2, p3, n3 );
123 const bool b =
mTIN->triangleVertices( x, y, p1, p2, p3 );
137 return (
mTIN->pointsCount() );
150 const int i =
mTIN->oppositePoint( p1, p2 );
164 return mTIN->surroundingTriangles( pointno );
176 const double d =
mTIN->xMax();
190 const double d =
mTIN->xMin();
203 const double d =
mTIN->yMax();
217 const double d =
mTIN->yMin();
231 mTIN->setForcedCrossBehavior( b );
243 mTIN->setTriangleInterpolator( interpolator );
255 mTIN->eliminateHorizontalTriangles();
267 mTIN->ruppertRefinement();
279 const bool b =
mTIN->pointInside( x, y );
293 const bool b =
mTIN->swapEdge( x, y );
307 return mTIN->pointsAroundEdge( x, y );
SourceType
Describes the type of input data.
Point geometry type, with support for z-dimension and m-values.
ForcedCrossBehavior
Enumeration describing the behavior, if two forced lines cross.
bool swapEdge(double x, double y) override
Reads the content of a taff-file.
QgsPoint * point(int i) const override
Returns a pointer to the point with number i.
int oppositePoint(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...
void setTriangleInterpolator(TriangleInterpolator *interpolator) override
Sets an interpolator object.
void ruppertRefinement() override
Adds points to make the triangles better shaped (algorithm of ruppert).
double yMin() const override
Returns the smallest x-coordinate value of the bounding box.
void performConsistencyTest() override
Performs a consistency check, remove this later.
double xMax() const override
Returns the largest x-coordinate value of the bounding box.
void eliminateHorizontalTriangles() override
Eliminates the horizontal triangles by swapping.
double yMax() const override
Returns the largest y-coordinate value of the bounding box.
int addPoint(const QgsPoint &p) override
Adds a point to the triangulation.
QgsTriangulation * mTIN
Association with a Triangulation object.
void addLine(const QVector< QgsPoint > &points, QgsInterpolator::SourceType lineType) override
Adds a line (e.g.
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.
bool calcPoint(double x, double y, QgsPoint &result) override
Calculates x-, y and z-value of the point on the surface and assigns it to 'result'.
QList< int > pointsAroundEdge(double x, double y) override
Returns a value list with the numbers of the four points, which would be affected by an edge swap.
QList< int > surroundingTriangles(int pointno) override
Returns a value list with the information of the triangles surrounding (counterclockwise) a point.
int pointsCount() const override
Returns the number of points.
bool triangleVertices(double x, double y, QgsPoint &p1, int &n1, QgsPoint &p2, int &n2, QgsPoint &p3, int &n3) override
Finds out in which triangle the point with coordinates x and y is and assigns the numbers of the vert...
bool calcNormal(double x, double y, QgsPoint &result) override
Calculates the normal at a point on the surface and assigns it to 'result'.
void setForcedCrossBehavior(QgsTriangulation::ForcedCrossBehavior b) override
Draws the points, edges and the forced lines.
double xMin() const override
Returns the smallest x-coordinate value of the bounding box.
An interface for interpolator classes for triangulations.
#define QgsDebugError(str)