Class: QgsEllipse¶
Ellipse geometry type.
An ellipse is defined by a center point with a semi-major axis, a semi-minor axis and an azimuth. The azimuth is the north angle to the first quadrant (always oriented on the semi-major axis), in degrees. By default, the semi-major axis is oriented to the east (90 degrees). The semi-minor axis is always smaller than the semi-major axis. If it is set larger, it will be swapped and the azimuth will increase by 90 degrees.
Class Hierarchy¶
Subclasses¶
Circle geometry type. |
Methods
Returns the azimuth. |
|
Returns the center point. |
|
Returns the semi-major axis. |
|
Returns the semi-minor axis. |
|
Sets the azimuth (orientation). |
|
Sets the center point. |
Virtual Methods
In PyQGIS, only methods marked as virtual
can be safely overridden in a Python subclass of QgsEllipse. See the FAQ for more details.
The area of the ellipse. |
|
Returns the minimal bounding box for the ellipse. |
|
The eccentricity of the ellipse. |
|
Two foci of the ellipse. |
|
The distance between the center and each foci. |
|
An ellipse is empty if axes are equal to 0 |
|
Returns the oriented minimal bounding box for the ellipse. |
|
The circumference of the ellipse using first approximation of Ramanujan. |
|
Returns a list of points with segmentation from segments. |
|
The four quadrants of the ellipse. |
|
Sets the semi-major axis. |
|
Sets the semi-minor axis. |
|
Returns a segmented linestring. |
|
Returns a segmented polygon. |
|
returns a string representation of the ellipse. |
Static Methods
Constructs an ellipse by a central point and two other points. |
|
Constructs an ellipse by a center point and a another point. |
|
Constructs an ellipse by an extent (aka bounding box / |
|
Constructs an ellipse by foci (pt1 and pt2) and a point pt3. |
- class qgis.core.QgsEllipse[source]¶
Bases:
object
- __init__()
Constructor for QgsEllipse.
- __init__(center: QgsPoint, semiMajorAxis: float, semiMinorAxis: float, azimuth: float = 90)
Constructs an ellipse by defining all the members.
- Parameters:
center (QgsPoint) – The center of the ellipse.
semiMajorAxis (float) – Semi-major axis of the ellipse.
semiMinorAxis (float) – Semi-minor axis of the ellipse.
azimuth (float = 90) – Angle in degrees started from the North to the first quadrant.
- __init__(a0: QgsEllipse)
- Parameters:
a0 (QgsEllipse)
- virtual boundingBox(self) QgsRectangle [source]¶
Returns the minimal bounding box for the ellipse.
- Return type:
- virtual eccentricity(self) float [source]¶
The eccentricity of the ellipse. nan is returned if the ellipse is empty.
- Return type:
float
- virtual foci(self) List[QgsPoint] ¶
Two foci of the ellipse. The axes are oriented by the azimuth and are on the semi-major axis.
See also
See also
- Return type:
List[QgsPoint]
- Returns:
the two foci.
- virtual focusDistance(self) float [source]¶
The distance between the center and each foci.
See also
See also
- Return type:
float
- Returns:
The distance between the center and each foci.
- static fromCenter2Points(ptc: QgsPoint, pt1: QgsPoint, pt2: QgsPoint) QgsEllipse [source]¶
Constructs an ellipse by a central point and two other points. The center point keeps m value from
ptc
. Z dimension is also supported and is retrieved from the first 3D point amongstptc
,pt1
andpt2
. Axes are calculated from the 2D distance betweenptc
andpt1
andpt2
. The azimuth is the angle betweenptc
andpt1
.- Parameters:
- Return type:
- static fromCenterPoint(ptc: QgsPoint, pt1: QgsPoint) QgsEllipse [source]¶
Constructs an ellipse by a center point and a another point. The center point keeps m value from
ptc
. Z dimension is also supported and is retrieved from the first 3D point amongstptc
andpt1
. Axes are calculated from the 2D distance betweenptc
andpt1
. The azimuth always takes the default value.- Parameters:
- Return type:
- static fromExtent(pt1: QgsPoint, pt2: QgsPoint) QgsEllipse [source]¶
Constructs an ellipse by an extent (aka bounding box /
QgsRectangle
). The center point can have m value which is the result from the midpoint operation betweenpt1
andpt2
. Z dimension is also supported and is retrieved from the first 3D point amongstpt1
andpt2
. Axes are calculated from the 2D distance betweenpt1
andpt2
. The azimuth always takes the default value.- Parameters:
- Return type:
- static fromFoci(pt1: QgsPoint, pt2: QgsPoint, pt3: QgsPoint) QgsEllipse [source]¶
Constructs an ellipse by foci (
pt1
andpt2
) and a pointpt3
. The center point can have m value which is the result from the midpoint operation betweenpt1
andpt2
. Z dimension is also supported and is retrieved from the first 3D point amongstpt1
andpt2
. Axes are calculated from the 2D distance with the third pointpt3
. The azimuth is the angle betweenpt1
andpt2
.- Parameters:
- Return type:
- virtual orientedBoundingBox(self) QgsPolygon | None [source]¶
Returns the oriented minimal bounding box for the ellipse.
- Return type:
Optional[QgsPolygon]
- virtual perimeter(self) float [source]¶
The circumference of the ellipse using first approximation of Ramanujan.
- Return type:
float
- virtual points(self, segments: int = 36) List[QgsPoint] [source]¶
Returns a list of points with segmentation from
segments
.- Parameters:
segments (int = 36) – Number of segments used to segment geometry.
- Return type:
List[QgsPoint]
- virtual quadrant(self) List[QgsPoint] ¶
The four quadrants of the ellipse. They are oriented and started always from semi-major axis.
- Return type:
List[QgsPoint]
- Returns:
quadrants defined by four points.
- setAzimuth(self, azimuth: float)[source]¶
Sets the azimuth (orientation).
See also
- Parameters:
azimuth (float)
- setCenter(self, center: QgsPoint)[source]¶
Sets the center point.
See also
See also
rcenter()
- Parameters:
center (QgsPoint)
- virtual setSemiMajorAxis(self, semiMajorAxis: float)[source]¶
Sets the semi-major axis.
See also
- Parameters:
semiMajorAxis (float)
- virtual setSemiMinorAxis(self, semiMinorAxis: float)[source]¶
Sets the semi-minor axis.
See also
- Parameters:
semiMinorAxis (float)
- virtual toLineString(self, segments: int = 36) QgsLineString | None [source]¶
Returns a segmented linestring.
- Parameters:
segments (int = 36) – Number of segments used to segment geometry.
- Return type:
Optional[QgsLineString]
- virtual toPolygon(self, segments: int = 36) QgsPolygon | None [source]¶
Returns a segmented polygon.
- Parameters:
segments (int = 36) – Number of segments used to segment geometry.
- Return type:
Optional[QgsPolygon]
- virtual toString(self, pointPrecision: int = 17, axisPrecision: int = 17, azimuthPrecision: int = 2) str [source]¶
returns a string representation of the ellipse. Members will be truncated to the specified precision.
- Parameters:
pointPrecision (int = 17)
axisPrecision (int = 17)
azimuthPrecision (int = 2)
- Return type:
str