47 if ( !mCoordinateSequence.
isEmpty() )
48 return mCoordinateSequence;
54 return mCoordinateSequence;
79 return pointAt(
id.vertex, vertex,
id.type );
97 if ( mBoundingBox.
isNull() )
A rectangle specified with double values.
Abstract base class for all geometries.
QgsCurveV2 * segmentize() const override
Returns a geometry without curves.
double z() const
Returns the point's z-coordinate.
double y() const
Returns the point's y-coordinate.
virtual bool isRing() const
Returns true if the curve is a ring.
bool qgsDoubleNear(double a, double b, double epsilon=4 *DBL_EPSILON)
virtual int numPoints() const =0
Returns the number of points in the curve.
void append(const T &value)
virtual bool isClosed() const
Returns true if the curve is closed.
Utility class for identifying a unique vertex within a geometry.
Point geometry type, with support for z-dimension and m-values.
double x() const
Returns the point's x-coordinate.
virtual bool nextVertex(QgsVertexId &id, QgsPointV2 &vertex) const override
Returns next vertex id and coordinates.
QList< QgsPointSequenceV2 > QgsRingSequenceV2
virtual bool pointAt(int node, QgsPointV2 &point, QgsVertexId::VertexType &type) const =0
Returns the point and vertex id of a point within the curve.
virtual QgsLineStringV2 * curveToLine() const =0
Returns a new line string geometry corresponding to a segmentized approximation of the curve...
virtual QgsPointV2 endPoint() const =0
Returns the end point of the curve.
bool isNull() const
test if the rectangle is null (all coordinates zero or after call to setMinimal()).
virtual QgsPointV2 startPoint() const =0
Returns the starting point of the curve.
virtual QgsPointV2 vertexAt(QgsVertexId id) const override
Returns the point corresponding to a specified vertex id.
virtual QgsCoordinateSequenceV2 coordinateSequence() const override
Retrieves the sequence of geometries, rings and nodes.
Abstract base class for curved geometry type.
virtual QgsRectangle calculateBoundingBox() const
Default calculator for the minimal bounding box for the geometry.
virtual void points(QgsPointSequenceV2 &pt) const =0
Returns a list of points within the curve.
virtual QgsRectangle boundingBox() const override
Returns the minimal bounding box for the geometry.
QList< QgsPointV2 > QgsPointSequenceV2