GeodesicEllipseParameters Class

  • GeodesicEllipseParameters
  • class Esri::ArcGISRuntime::GeodesicEllipseParameters

    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 &center, double semiAxis1Length, double semiAxis2Length)
    GeodesicEllipseParameters(double axisDirection, const Esri::ArcGISRuntime::AngularUnit &angularUnit, const Esri::ArcGISRuntime::Point &center, 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 &center)
    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 &center, 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:

    PropertyValue
    linearUnitmeters
    angularUnitdegrees
    axisDirection0
    geometryTypeEsri::ArcGISRuntime::Polygon
    maxSegmentLength2 * pi * major_axis_length / 360
    maxPointCount65526

    This function was introduced in Esri::ArcGISRuntime 100.3.

    GeodesicEllipseParameters::GeodesicEllipseParameters(double axisDirection, const Esri::ArcGISRuntime::AngularUnit &angularUnit, const Esri::ArcGISRuntime::Point &center, 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 &center)

    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.

    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.