The required parameters for calling GeometryEngine::ellipseGeodesic(Esri::ArcGISRuntime::GeodesicEllipseParameters*). More...
Header: | #include <GeodesicEllipseParameters.h> |
Since: | Esri::ArcGISRuntime 100.0 |
Public Functions
GeodesicEllipseParameters() | |
GeodesicEllipseParameters(const Esri::ArcGISRuntime::Point ¢er, double semiAxis1Length, double semiAxis2Length) | |
GeodesicEllipseParameters(double axisDirection, const Esri::ArcGISRuntime::AngularUnit &angularUnit, const Esri::ArcGISRuntime::Point ¢er, const Esri::ArcGISRuntime::LinearUnit &linearUnit, unsigned int maxPointCount, double maxSegmentLength, Esri::ArcGISRuntime::GeometryType geometryType, double semiAxis1Length, double semiAxis2Length) | |
GeodesicEllipseParameters(const Esri::ArcGISRuntime::GeodesicEllipseParameters &other) | |
GeodesicEllipseParameters(Esri::ArcGISRuntime::GeodesicEllipseParameters &&other) | |
~GeodesicEllipseParameters() | |
Esri::ArcGISRuntime::AngularUnit | angularUnit() const |
double | axisDirection() const |
Esri::ArcGISRuntime::Point | center() const |
Esri::ArcGISRuntime::GeometryType | geometryType() const |
Esri::ArcGISRuntime::LinearUnit | linearUnit() const |
unsigned int | maxPointCount() const |
double | maxSegmentLength() const |
double | semiAxis1Length() const |
double | semiAxis2Length() const |
void | setAngularUnit(const Esri::ArcGISRuntime::AngularUnit &angularUnit) |
void | setAxisDirection(double direction) |
void | setCenter(const Esri::ArcGISRuntime::Point ¢er) |
void | setGeometryType(Esri::ArcGISRuntime::GeometryType type) |
void | setLinearUnit(const Esri::ArcGISRuntime::LinearUnit &linearUnit) |
void | setMaxPointCount(unsigned int count) |
void | setMaxSegmentLength(double length) |
void | setSemiAxis1Length(double length) |
void | setSemiAxis2Length(double length) |
Esri::ArcGISRuntime::GeodesicEllipseParameters & | operator=(const Esri::ArcGISRuntime::GeodesicEllipseParameters &other) |
Esri::ArcGISRuntime::GeodesicEllipseParameters & | operator=(Esri::ArcGISRuntime::GeodesicEllipseParameters &&other) |
Detailed Description
GeodesicEllipseParameters contains:
- The desired type of output geometry: Multipoint, Polygon or Polyline.
- The center point, which contains its spatial reference.
- The length of the semi-major and semi-minor axes.
- The linear unit used for lengths.
- The direction of the semi-major axis (in angularUnit). By default, the angular unit is degrees.
- The number of vertices in the ellipse.
When creating a polygon or a polyline, the result may have more than one path, depending on the size of the ellipse and its position relative to the horizon of the coordinate system. When creating a polygon, the interior of the polygon is the interior of the ellipse, however, the boundary of the polygon may contain segments from the spatial reference horizon, or from the GCS extent. For example, an ellipse that spans the 180-degree meridian of the WGS-84 coordinate system will have two parts.
The ellipse is generalized based on maxSegmentLength. The ellipse is created with a minimum of 10 vertices.
When specifying the lengths of the semi-major and semi-minor axes, the larger value is considered to be the semi-major axis length.
You can create a geodesic circle if the semiAxis1Length and semiAxis2Length are the same, or by setting semiAxis1Length to a valid length and setting semiAxis2Length to zero.
If you specify zero for the length of both axis, the return geometry is:
- For Multipoint: the center point.
- For Polyline or Polygon: an empty geometry.
Member Function Documentation
GeodesicEllipseParameters::GeodesicEllipseParameters ()
Default constructor.
[since Esri::ArcGISRuntime 100.3]
GeodesicEllipseParameters::GeodesicEllipseParameters (const Esri::ArcGISRuntime::Point ¢er, double semiAxis1Length , double semiAxis2Length )
Constructor that takes several arguments.
- center - The center point of the ellipse.
- semiAxis1Length - The length of either the semi-major or the semi-minor axis of the ellipse in meters.
- semiAxis2Length - The length of the other axis in meters.
When using this constructor, the created parameter set has the following default values:
Property | Value |
---|---|
linearUnit | meters |
angularUnit | degrees |
axisDirection | 0 |
geometryType | Esri::ArcGISRuntime::Polygon |
maxSegmentLength | 2 * pi * major_axis_length / 360 |
maxPointCount | 65526 |
This function was introduced in Esri::ArcGISRuntime 100.3.
GeodesicEllipseParameters::GeodesicEllipseParameters (double axisDirection , const Esri::ArcGISRuntime::AngularUnit &angularUnit , const Esri::ArcGISRuntime::Point ¢er, const Esri::ArcGISRuntime::LinearUnit &linearUnit , unsigned int maxPointCount , double maxSegmentLength , Esri::ArcGISRuntime::GeometryType geometryType , double semiAxis1Length , double semiAxis2Length )
Constructor that takes in several arguments.
- axisDirection - The direction of the semi-major axis of the ellipse as an angle in the given angular unit.
- angularUnit - The angular unit of the ellipse. By default, the angular unit is degrees.
- center - The center point of the ellipse.
- linearUnit - The linear units of the maxSegmentLength, semiAxis1Length, and semiAxis2Length.
- maxPointCount - The maximum number of points permitted in the constructed ellipse in the given linearUnit.
- maxSegmentLength - The maximum length between vertices used to construct the ellipse, in the given linearUnit.
- geometryType - The type of output geometry created.
- semiAxis1Length - The length of either the semi-major or the semi-minor axis of the ellipse.
- semiAxis2Length - The length of the other axis in the given linearUnit.
GeodesicEllipseParameters::GeodesicEllipseParameters (const Esri::ArcGISRuntime::GeodesicEllipseParameters &other)
Copy constructor from other GeodesicEllipseParameters.
GeodesicEllipseParameters::GeodesicEllipseParameters (Esri::ArcGISRuntime::GeodesicEllipseParameters &&other)
Move constructor from other GeodesicEllipseParameters.
GeodesicEllipseParameters::~GeodesicEllipseParameters ()
Destructor.
Esri::ArcGISRuntime::AngularUnit GeodesicEllipseParameters::angularUnit () const
Returns the angular unit used in this class.
See also setAngularUnit().
double GeodesicEllipseParameters::axisDirection () const
Returns the direction of the longest axis of the ellipse.
Value is expressed as an angle using angularUnit.
See also setAxisDirection().
Esri::ArcGISRuntime::Point GeodesicEllipseParameters::center() const
Returns the center Point of the ellipse.
See also setCenter().
Esri::ArcGISRuntime::GeometryType GeodesicEllipseParameters::geometryType () const
Returns the type of output geometry.
See also setGeometryType().
Esri::ArcGISRuntime::LinearUnit GeodesicEllipseParameters::linearUnit () const
Returns the linear unit used in this class.
See also setLinearUnit().
unsigned int GeodesicEllipseParameters::maxPointCount () const
Returns the maximum count of points permitted in the output ellipse.
See also setMaxPointCount().
double GeodesicEllipseParameters::maxSegmentLength () const
Returns the maximum length between vertices used to construct the ellipse.
See also setMaxSegmentLength().
double GeodesicEllipseParameters::semiAxis1Length () const
Returns the length of the first semi-axis.
See also setSemiAxis1Length().
double GeodesicEllipseParameters::semiAxis2Length () const
Returns the length of the second semi-axis.
See also setSemiAxis2Length().
void GeodesicEllipseParameters::setAngularUnit (const Esri::ArcGISRuntime::AngularUnit &angularUnit )
Sets the angular unit used in this class to angularUnit.
See also angularUnit().
void GeodesicEllipseParameters::setAxisDirection (double direction)
Sets the direction of the longest axis of the ellipse.
Value is expressed as an angle using angularUnit.
See also axisDirection().
void GeodesicEllipseParameters::setCenter (const Esri::ArcGISRuntime::Point ¢er)
Sets the center Point of the ellipse.
See also center().
void GeodesicEllipseParameters::setGeometryType (Esri::ArcGISRuntime::GeometryType type)
Sets the type of output geometry.
Acceptable types include Multipoint, Polyline and Polygon.
See also geometryType().
void GeodesicEllipseParameters::setLinearUnit (const Esri::ArcGISRuntime::LinearUnit &linearUnit )
Sets the linear unit used in this class to linearUnit.
See also linearUnit().
void GeodesicEllipseParameters::setMaxPointCount (unsigned int count)
Returns the maximum count of points permitted in the output ellipse.
See also maxPointCount().
void GeodesicEllipseParameters::setMaxSegmentLength (double length)
Sets the maximum length between vertices used to construct the ellipse.
See also maxSegmentLength().
void GeodesicEllipseParameters::setSemiAxis1Length (double length)
Sets the length of the first semi-axis.
See also semiAxis1Length().
void GeodesicEllipseParameters::setSemiAxis2Length (double length)
Sets the length of the second semi-axis.
See also semiAxis2Length().
Esri::ArcGISRuntime::GeodesicEllipseParameters &GeodesicEllipseParameters::operator=(const Esri::ArcGISRuntime::GeodesicEllipseParameters &other)
Assignment operator from other GeodesicEllipseParameters.
Esri::ArcGISRuntime::GeodesicEllipseParameters &GeodesicEllipseParameters::operator=(Esri::ArcGISRuntime::GeodesicEllipseParameters &&other)
Move operator from other GeodesicEllipseParameters.