17 #ifndef TRIANGULATION_H 18 #define TRIANGULATION_H 24 #include "qgis_analysis.h" 61 virtual int addPoint(
const QgsPoint &point ) = 0;
67 virtual bool calcNormal(
double x,
double y,
Vector3D *result
SIP_OUT ) = 0;
70 virtual void performConsistencyTest() = 0;
76 virtual bool calcPoint(
double x,
double y,
QgsPoint &result
SIP_OUT ) = 0;
79 virtual QgsPoint *getPoint(
int i )
const = 0;
85 virtual bool getTriangle(
double x,
double y,
QgsPoint &p1
SIP_OUT,
int &n1 SIP_OUT,
QgsPoint &p2 SIP_OUT,
int &n2 SIP_OUT,
QgsPoint &p3 SIP_OUT,
int &n3 SIP_OUT ) = 0
SIP_PYNAME( getTriangleVertices );
96 virtual int getOppositePoint(
int p1,
int p2 ) = 0;
99 virtual double getXMax()
const = 0;
102 virtual double getXMin()
const = 0;
105 virtual double getYMax()
const = 0;
108 virtual double getYMin()
const = 0;
111 virtual int getNumberOfPoints()
const = 0;
119 virtual QList<int> getSurroundingTriangles(
int pointno ) = 0;
127 virtual QList<int> *getPointsAroundEdge(
double x,
double y ) = 0;
136 virtual void setEdgeColor(
int r,
int g,
int b ) = 0;
139 virtual void setForcedEdgeColor(
int r,
int g,
int b ) = 0;
142 virtual void setBreakEdgeColor(
int r,
int g,
int b ) = 0;
148 virtual void eliminateHorizontalTriangles() = 0;
151 virtual void ruppertRefinement() = 0;
154 virtual bool pointInside(
double x,
double y ) = 0;
163 virtual bool swapEdge(
double x,
double y ) = 0;
The status of the first inserted forced line is reset to that of a normal edge (so that the second in...
An interface for objects which accept features via addFeature(s) methods.
Container of fields for a vector layer.
SourceType
Describes the type of input data.
Base class for feedback objects to be used for cancellation of something running in a worker thread...
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.
Point geometry type, with support for z-dimension and m-values.
The second inserted forced line is snapped to the closest vertice of the first inserted forced line...
ForcedCrossBehavior
Enumeration describing the behavior, if two forced lines cross.