Class: QgsQuadrilateral¶
-
class
qgis.core.
QgsQuadrilateral
¶ Bases:
sip.wrapper
QgsQuadrilateral(p1:
QgsPoint
, p2:QgsPoint
, p3:QgsPoint
, p4:QgsPoint
) Construct aQgsQuadrilateral
from fourQgsPoint
.- Parameters
p1 – first point
p2 – second point
p3 – third point
p4 – fourth point
See also
QgsQuadrilateral(p1:
QgsPointXY
, p2:QgsPointXY
, p3:QgsPointXY
, p4:QgsPointXY
) Construct aQgsQuadrilateral
from fourQgsPointXY
.- Parameters
p1 – first point
p2 – second point
p3 – third point
p4 – fourth point
See also
QgsQuadrilateral(
QgsQuadrilateral
)Quadrilateral geometry type. A quadrilateral is a polygon with four edges (or sides) and four vertices or corners. This class allows the creation of simple quadrilateral (which does not self-intersect).
Methods
Returns the area of the quadrilateral, or 0 if the quadrilateral is empty.
Compares two
QgsQuadrilateral
, allowing specification of the maximum allowable difference between points.Construct a
QgsQuadrilateral
as a rectangle from aQgsRectangle
.Convenient method to determine if a
QgsQuadrilateral
is valid.Returns the perimeter of the quadrilateral, or 0 if the quadrilateral is empty.
Returns a list including the vertices of the quadrilateral.
Construct a
QgsQuadrilateral
as a Rectangle from 3 points.Construct a
QgsQuadrilateral
as a rectangle from center pointcenter
and another pointpoint
.Construct a
QgsQuadrilateral
as a rectangle from an extent, defined by two opposite corner points.Sets the point
newPoint
at theindex
.Set all points Returns
False
if theQgsQuadrilateral
is not valid:Construct a
QgsQuadrilateral
as a square from a diagonal.Returns the quadrilateral as a new linestring.
Returns the quadrilateral as a new polygon.
Returns a string representation of the quadrilateral.
Attributes
-
class
ConstructionOption
¶ Bases:
int
-
Distance
= 0¶
-
class
Point
¶ Bases:
int
-
Point1
= 0¶
-
Point2
= 1¶
-
Point3
= 2¶
-
Point4
= 3¶
-
Projected
= 1¶
-
area
(self) → float¶ Returns the area of the quadrilateral, or 0 if the quadrilateral is empty.
- Return type
float
-
equals
(self, other: QgsQuadrilateral, epsilon: float = 4 * DBL_EPSILON) → bool¶ Compares two
QgsQuadrilateral
, allowing specification of the maximum allowable difference between points.- Parameters
other (QgsQuadrilateral) – the
QgsQuadrilateral
to compareepsilon (float = 4*DBL_EPSILON) – the maximum difference allowed / tolerance
- Return type
bool
-
fromRectangle
(rectangle: QgsRectangle) → QgsQuadrilateral¶ Construct a
QgsQuadrilateral
as a rectangle from aQgsRectangle
.- Parameters
rectangle (QgsRectangle) – rectangle
- Return type
-
isValid
(self) → bool¶ Convenient method to determine if a
QgsQuadrilateral
is valid. AQgsQuadrilateral
must be simple (not self-intersecting) and cannot have collinear points.- Return type
bool
-
perimeter
(self) → float¶ Returns the perimeter of the quadrilateral, or 0 if the quadrilateral is empty.
- Return type
float
-
points
(self) → List[QgsPoint]¶ Returns a list including the vertices of the quadrilateral.
- Return type
List[QgsPoint]
-
rectangleFrom3Points
(p1: QgsPoint, p2: QgsPoint, p3: QgsPoint, mode: QgsQuadrilateral.ConstructionOption) → QgsQuadrilateral¶ Construct a
QgsQuadrilateral
as a Rectangle from 3 points. In the case where one of the points is of type PointZ. The other points will also be of type Z, even if they are of type Point. In addition, the z used will be the one of the first point with a Z. This ensures consistency in point types and the ability to export to a Polygon or LineString.- Parameters
p1 (QgsPoint) – first point
p2 (QgsPoint) – second point
p3 (QgsPoint) – third point
mode (QgsQuadrilateral.ConstructionOption) – Construction mode to construct the rectangle from 3 points
See also
ConstructionOption
- Return type
-
rectangleFromCenterPoint
(center: QgsPoint, point: QgsPoint) → QgsQuadrilateral¶ Construct a
QgsQuadrilateral
as a rectangle from center pointcenter
and another pointpoint
. Z is taken fromcenter
point.- Parameters
- Return type
-
rectangleFromExtent
(p1: QgsPoint, p2: QgsPoint) → QgsQuadrilateral¶ Construct a
QgsQuadrilateral
as a rectangle from an extent, defined by two opposite corner points. Z is taken from pointp1
.- Parameters
- Return type
-
setPoint
(self, newPoint: QgsPoint, index: QgsQuadrilateral.Point) → bool¶ Sets the point
newPoint
at theindex
. ReturnsFalse
if theQgsQuadrilateral
is not valid.See also
Point
- Parameters
newPoint (QgsPoint) –
index (QgsQuadrilateral.Point) –
- Return type
bool
-
setPoints
(self, p1: QgsPoint, p2: QgsPoint, p3: QgsPoint, p4: QgsPoint) → bool¶ Set all points Returns
False
if theQgsQuadrilateral
is not valid:The points do not have the same type
The quadrilateral would have auto intersections
The quadrilateral has double points
The quadrilateral has collinear points
-
squareFromDiagonal
(p1: QgsPoint, p2: QgsPoint) → QgsQuadrilateral¶ Construct a
QgsQuadrilateral
as a square from a diagonal. Z is taken from pointp1
.- Parameters
- Return type
-
toLineString
(self, force2D: bool = False) → QgsLineString¶ Returns the quadrilateral as a new linestring. Ownership is transferred to the caller.
- Parameters
force2D (bool = False) –
- Return type
-
toPolygon
(self, force2D: bool = False) → QgsPolygon¶ Returns the quadrilateral as a new polygon. Ownership is transferred to the caller.
- Parameters
force2D (bool = False) –
- Return type
-
toString
(self, pointPrecision: int = 17) → str¶ Returns a string representation of the quadrilateral. Members will be truncated to the specified precision.
- Parameters
pointPrecision (int = 17) –
- Return type
str