25 mTIN->addLine( points, lineType );
37 const unsigned int number =
mTIN->addPoint( p );
51 mTIN->performConsistencyTest();
63 const bool b =
mTIN->calcNormal( x, y, result );
77 const bool b =
mTIN->calcPoint( x, y, result );
105 const bool b =
mTIN->triangleVertices( x, y, p1, n1, p2, n2, p3, n3 );
119 const bool b =
mTIN->triangleVertices( x, y, p1, p2, p3 );
133 return (
mTIN->pointsCount() );
146 const int i =
mTIN->oppositePoint( p1, p2 );
160 return mTIN->surroundingTriangles( pointno );
172 const double d =
mTIN->xMax();
186 const double d =
mTIN->xMin();
199 const double d =
mTIN->yMax();
213 const double d =
mTIN->yMin();
227 mTIN->setForcedCrossBehavior( b );
239 mTIN->setTriangleInterpolator( interpolator );
251 mTIN->eliminateHorizontalTriangles();
263 mTIN->ruppertRefinement();
275 const bool b =
mTIN->pointInside( x, y );
289 const bool b =
mTIN->swapEdge( x, y );
303 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)