Namespace: Esri::GameEngine::Geometry
Class: Esri/GameEngine/Geometry/ArcGISEllipticArcSegment
Since: 1.0.0
Inheritance: ArcGISSegment->ArcGISEllipticArcSegment
Summary
An elliptic arc segment for use in a multipart geometry.
Constructors
ArcGISEllipticArcSegment(const ArcGISPoint&, double, double, double, double, double, const ArcGISSpatialReference&)
Creates an elliptic arc based on parameters that define an ellipse and the portion of that ellipse that defines the arc.
Since 1.0.0
Arguments
Name | Type | Const | Summary |
---|---|---|---|
center | Yes | The center point of the embedded ellipse. | |
rotation | No | The angle in radians by which the major axis of the embedded ellipse is rotated from the x-axis. A positive value corresponds to a counterclockwise rotation from the x-axis. The value is taken in the form of the modulo of 2 * PI (360 degrees). For example, an input rotation angle of 7.5 radians (430 degrees) would return a segment with a rotation angle of 1.22 radians (70 degrees). | |
semi | No | The length of the semi-major axis of the embedded ellipse in the units of the spatial reference. | |
minor | No | The ratio of the length of the semi-minor axis to the length of the semi-major axis of the embedded ellipse. | |
start | No | The parametric angle in radians of the start of the arc relative to the major axis of the embedded ellipse. A positive value corresponds to a counterclockwise rotation from the major axis. The value is taken in the form of the modulo of 2 * PI (360 degrees). For example, an input rotation angle of 7.5 radians (430 degrees) would return a segment with a rotation angle of 1.22 radians (70 degrees). | |
central | No | The parametric angle in radians measuring the span of the arc from ArcGISEllipticArcSegment::StartAngle to ArcGISEllipticArcSegment::EndAngle. A positive value corresponds to a counterclockwise arc sweep. Values larger than 2 * PI (360 degrees) return a segment with a central angle of exactly 2 * PI (360 degrees), resulting in a full ellipse where the start and end points are identical. | |
spatial | Yes | A spatial reference to use for the segment if the center point parameter does not have a spatial reference set. |
ArcGISEllipticArcSegment(const ArcGISPoint&, const ArcGISPoint&, double, bool, bool, double, double, const ArcGISSpatialReference&)
Creates an elliptic arc segment from the given start and end points, and other parameters that define an ellipse.
Since 1.0.0
Arguments
Name | Type | Const | Summary |
---|---|---|---|
start | Yes | The start point of the segment. | |
end | Yes | The end point of the segment. | |
rotation | No | The angle in radians by which the major axis of the embedded ellipse is rotated from the x-axis. A positive value corresponds to a counterclockwise rotation from the x-axis. | |
is | No | True if ArcGISEllipticArcSegment::CentralAngle of the segment is less than PI. | |
is | No | True if the direction of the segment, from start point to end point, proceeds in a counterclockwise direction, otherwise false. | |
semi | No | The length of the semi-major axis of the embedded ellipse in the units of the spatial reference. | |
minor | No | The ratio of the length of the semi-minor axis to the length of the semi-major axis of the embedded ellipse. | |
spatial | Yes | A spatial reference to use for the segment if the points do not have spatial references set. |
Properties
Property | Type | Nullable | Readonly | Summary |
---|---|---|---|---|
No | Yes | The center point of the ellipse that this segment is defined upon. | ||
No | Yes | The parametric angle in radians measuring the span of the arc from ArcGISEllipticArcSegment::StartAngle to ArcGISEllipticArcSegment::EndAngle. | ||
No | Yes | The parametric angle in radians of the end of the arc relative to the major axis of the embedded ellipse. | ||
No | Yes | Indicates if this arc is a portion of the boundary of a 2D circle. | ||
No | Yes | Indicates if the direction of the segment, from start point to end point, proceeds in a counterclockwise direction. | ||
No | Yes | The ratio of the length of the semi-minor axis to the semi-major axis. | ||
No | Yes | The angle in radians by which the major axis of the ellipse this segment is based upon is rotated from the x-axis. | ||
No | Yes | The length of the longer of the two axes of the ellipse upon which this arc is based. | ||
No | Yes | The length of the shorter of the two axes of the ellipse upon which this arc is based. | ||
No | Yes | The parametric angle in radians of the start of the arc relative to the major axis of the embedded ellipse. |
CenterPoint
ArcGISPoint GetCenterPoint() const
The center point of the ellipse that this segment is defined upon.
CentralAngle
double GetCentralAngle() const
The parametric angle in radians measuring the span of the arc from ArcGISEllipticArcSegment::StartAngle to ArcGISEllipticArcSegment::EndAngle.
A positive value corresponds to a counterclockwise arc sweep.
This value is always between -2PI and 2PI, these limits indicating this arc forms a complete ellipse in either clockwise or counterclockwise direction.
EndAngle
double GetEndAngle() const
The parametric angle in radians of the end of the arc relative to the major axis of the embedded ellipse.
A positive value corresponds to a counterclockwise rotation from the major axis.
IsCircular
bool GetIsCircular() const
Indicates if this arc is a portion of the boundary of a 2D circle.
An elliptic arc is circular if the ellipse upon which it is based is a circle, meaning the lengths of its major and minor axes are equal.
Use ArcGISEllipticArcSegment::CreateCircularEllipticArc and ArcGISEllipticArcSegment::CreateCircularEllipticArc to create circular arcs.
IsCounterClockwise
bool GetIsCounterClockwise() const
Indicates if the direction of the segment, from start point to end point, proceeds in a counterclockwise direction.
MinorMajorRatio
double GetMinorMajorRatio() const
The ratio of the length of the semi-minor axis to the semi-major axis.
RotationAngle
double GetRotationAngle() const
The angle in radians by which the major axis of the ellipse this segment is based upon is rotated from the x-axis.
SemiMajorAxis
double GetSemiMajorAxis() const
The length of the longer of the two axes of the ellipse upon which this arc is based.
The semi-major axis always lies on the line between 0 and PI radians.
The length is in the units of the spatial reference.
SemiMinorAxis
double GetSemiMinorAxis() const
The length of the shorter of the two axes of the ellipse upon which this arc is based.
The semi-minor axis always lies on the line between PI/2 and 3*PI/2 radians.
The length is in the units of the spatial reference.
StartAngle
double GetStartAngle() const
The parametric angle in radians of the start of the arc relative to the major axis of the embedded ellipse.
A positive value corresponds to a counterclockwise rotation from the major axis.
Methods
Signature | Return Type | Summary |
---|---|---|
CreateCircularEllipticArc(const ArcGISPoint&, double, double, double, const ArcGISSpatialReference&) | Creates an ArcGISEllipticArcSegment that is a partial circle shape from the center point and radius of the embedded circle, and the start and central angle around that circle. | |
CreateCircularEllipticArc(const ArcGISPoint&, const ArcGISPoint&, const ArcGISPoint&, const ArcGISSpatialReference&) | Creates an ArcGISEllipticArcSegment from start, end, and interior points that is a partial circle shape. |
CreateCircularEllipticArc
static ArcGISEllipticArcSegment CreateCircularEllipticArc(const ArcGISPoint& centerPoint, double radius, double startAngle, double centralAngle, const ArcGISSpatialReference& spatialReference)
Creates an ArcGISEllipticArcSegment that is a partial circle shape from the center point and radius of the embedded circle, and the start and central angle around that circle.
Since 1.0.0
Arguments
Name | Type | Const | Summary |
---|---|---|---|
center | Yes | The center point of the embedded circle. | |
radius | No | The distance from the center of the embedded circle to its perimeter. | |
start | No | The parametric angle in radians of the start of the arc relative to the major axis of the embedded ellipse. A positive value corresponds to a counterclockwise rotation from the major axis. | |
central | No | The parametric angle in radians measuring the span of the arc from ArcGISEllipticArcSegment::StartAngle to ArcGISEllipticArcSegment::EndAngle. A positive value corresponds to a counterclockwise arc sweep. | |
spatial | Yes | The spatial reference of the new segment. |
Returns ArcGISEllipticArcSegment
A new ArcGISEllipticArcSegment with the given center point, radius, start and central angles, and spatial reference, where ArcGISEllipticArcSegment::IsCircular is true.
CreateCircularEllipticArc
static ArcGISEllipticArcSegment CreateCircularEllipticArc(const ArcGISPoint& startPoint, const ArcGISPoint& endPoint, const ArcGISPoint& interiorPoint, const ArcGISSpatialReference& spatialReference)
Creates an ArcGISEllipticArcSegment from start, end, and interior points that is a partial circle shape.
Since 1.0.0
Arguments
Name | Type | Const | Summary |
---|---|---|---|
start | Yes | The start point of the segment. | |
end | Yes | The end point of the segment. | |
interior | Yes | A point along the circular arc, between the start and end points. | |
spatial | Yes | The spatial reference of the new segment. |
Returns ArcGISEllipticArcSegment
A new ArcGISEllipticArcSegment with the given start, through and end point, and spatial reference, where ArcGISEllipticArcSegment::IsCircular is true.