Class: QgsEllipse

class qgis.core.QgsEllipse

Bases: sip.wrapper

Constructor for QgsEllipse.

QgsEllipse(center: QgsPoint, semiMajorAxis: float, semiMinorAxis: float, azimuth: float = 90) Constructs an ellipse by defining all the members.

Parameters
  • center – The center of the ellipse.

  • semiMajorAxis – Semi-major axis of the ellipse.

  • semiMinorAxis – Semi-minor axis of the ellipse.

  • azimuth – Angle in degrees started from the North to the first quadrant.

QgsEllipse(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.

New in version 3.0:

Methods

area

The area of the ellipse.

azimuth

Returns the azimuth.

boundingBox

Returns the minimal bounding box for the ellipse.

center

Returns the center point.

eccentricity

The eccentricity of the ellipse.

foci

Two foci of the ellipse.

focusDistance

The distance between the center and each foci.

fromCenter2Points

Constructs an ellipse by a central point and two other points.

fromCenterPoint

Constructs an ellipse by a center point and a another point.

fromExtent

Constructs an ellipse by an extent (aka bounding box / QgsRectangle).

fromFoci

Constructs an ellipse by foci (pt1 and pt2) and a point pt3.

isEmpty

An ellipse is empty if axes are equal to 0

orientedBoundingBox

Returns the oriented minimal bounding box for the ellipse.

perimeter

The circumference of the ellipse using first approximation of Ramanujan.

points

Returns a list of points with segmentation from segments.

quadrant

The four quadrants of the ellipse.

semiMajorAxis

Returns the semi-major axis.

semiMinorAxis

Returns the semi-minor axis.

setAzimuth

Sets the azimuth (orientation).

setCenter

Sets the center point.

setSemiMajorAxis

Sets the semi-major axis.

setSemiMinorAxis

Sets the semi-minor axis.

toLineString

Returns a segmented linestring.

toPolygon

Returns a segmented polygon.

toString

returns a string representation of the ellipse.

area(self) float

The area of the ellipse.

Return type

float

azimuth(self) float

Returns the azimuth.

See also

setAzimuth()

Return type

float

boundingBox(self) QgsRectangle

Returns the minimal bounding box for the ellipse.

Return type

QgsRectangle

center(self) QgsPoint

Returns the center point.

See also

setCenter()

See also

rcenter()

Return type

QgsPoint

eccentricity(self) float

The eccentricity of the ellipse. nan is returned if the ellipse is empty.

Return type

float

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

fromFoci()

See also

focusDistance()

Return type

List[QgsPoint]

Returns

the two foci.

focusDistance(self) float

The distance between the center and each foci.

See also

fromFoci()

See also

foci()

Return type

float

Returns

The distance between the center and each foci.

fromCenter2Points(ptc: QgsPoint, pt1: QgsPoint, pt2: QgsPoint) QgsEllipse

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 amongst ptc, pt1 and pt2. Axes are calculated from the 2D distance between ptc and pt1 and pt2. The azimuth is the angle between ptc and pt1.

Parameters
Return type

QgsEllipse

fromCenterPoint(ptc: QgsPoint, pt1: QgsPoint) QgsEllipse

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 amongst ptc and pt1. Axes are calculated from the 2D distance between ptc and pt1. The azimuth always takes the default value.

Parameters
Return type

QgsEllipse

fromExtent(pt1: QgsPoint, pt2: QgsPoint) QgsEllipse

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 between pt1 and pt2. Z dimension is also supported and is retrieved from the first 3D point amongst pt1 and pt2. Axes are calculated from the 2D distance between pt1 and pt2. The azimuth always takes the default value.

Parameters
Return type

QgsEllipse

fromFoci(pt1: QgsPoint, pt2: QgsPoint, pt3: QgsPoint) QgsEllipse

Constructs an ellipse by foci (pt1 and pt2) and a point pt3. The center point can have m value which is the result from the midpoint operation between pt1 and pt2. Z dimension is also supported and is retrieved from the first 3D point amongst pt1 and pt2. Axes are calculated from the 2D distance with the third point pt3. The azimuth is the angle between pt1 and pt2.

Parameters
Return type

QgsEllipse

isEmpty(self) bool

An ellipse is empty if axes are equal to 0

Return type

bool

orientedBoundingBox(self) QgsPolygon

Returns the oriented minimal bounding box for the ellipse.

Return type

QgsPolygon

perimeter(self) float

The circumference of the ellipse using first approximation of Ramanujan.

Return type

float

points(self, segments: int = 36) List[QgsPoint]

Returns a list of points with segmentation from segments.

Parameters

segments (int = 36) – Number of segments used to segment geometry.

Return type

List[QgsPoint]

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.

semiMajorAxis(self) float

Returns the semi-major axis.

Return type

float

semiMinorAxis(self) float

Returns the semi-minor axis.

Return type

float

setAzimuth(self, azimuth: float)

Sets the azimuth (orientation).

See also

azimuth()

Parameters

azimuth (float) –

setCenter(self, center: QgsPoint)

Sets the center point.

See also

center()

See also

rcenter()

Parameters

center (QgsPoint) –

setSemiMajorAxis(self, semiMajorAxis: float)

Sets the semi-major axis.

See also

semiMajorAxis()

Parameters

semiMajorAxis (float) –

setSemiMinorAxis(self, semiMinorAxis: float)

Sets the semi-minor axis.

See also

semiMinorAxis()

Parameters

semiMinorAxis (float) –

toLineString(self, segments: int = 36) QgsLineString

Returns a segmented linestring.

Parameters

segments (int = 36) – Number of segments used to segment geometry.

Return type

QgsLineString

toPolygon(self, segments: int = 36) QgsPolygon

Returns a segmented polygon.

Parameters

segments (int = 36) – Number of segments used to segment geometry.

Return type

QgsPolygon

toString(self, pointPrecision: int = 17, axisPrecision: int = 17, azimuthPrecision: int = 2) str

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