Class GeodesicEllipseParameters

java.lang.Object
com.esri.arcgisruntime.geometry.GeodesicEllipseParameters

public final class GeodesicEllipseParameters extends Object
Defines parameters used to create a geodesic ellipse.
Since:
100.0.0
See Also:
  • Constructor Details

    • GeodesicEllipseParameters

      public GeodesicEllipseParameters()
      Creates an instance of GeodesicEllipseParameters.
      Since:
      100.0.0
    • GeodesicEllipseParameters

      public GeodesicEllipseParameters(double axisDirection, AngularUnit angularUnit, Point center, LinearUnit linearUnit, int maxPointCount, double maxSegmentLength, GeometryType geometryType, double semiAxis1Length, double semiAxis2Length)
      Creates an instance of GeodesicEllipseParameters with provided values.
      Parameters:
      axisDirection - the direction of the major axis of the ellipse as an angle in units of angularUnit
      angularUnit - unit for axisDirection. If null, defaults to degrees
      center - center of the ellipse. It must have a spatial reference.
      linearUnit - units for the linear values. If null, defaults to meters
      maxPointCount - maximum number of vertices in the ellipse
      maxSegmentLength - maximum segment length of the ellipse, in units of linearUnit
      geometryType - type of output geometry
      semiAxis1Length - length of the semi-major or semi-minor axis of the ellipse, in units of linearUnit
      semiAxis2Length - length of the semi-major or semi-minor axis of the ellipse, in units of linearUnit
      Throws:
      IllegalArgumentException - if center or geometryType is null
      Since:
      100.0.0
    • GeodesicEllipseParameters

      public GeodesicEllipseParameters(Point center, double semiAxis1Length, double semiAxis2Length)
      Creates an instance of GeodesicEllipseParameters with the given center point and axis lengths.

      The geodesic ellipse parameter set returned contains the following default values:

      Property Value
      linearUnit meter
      angularUnit degree
      axisDirection 0
      geometryType polygon
      maxSegmentLength 2 * pi * a / 360
      maxPointCount 65536
      (where a is the semi major axis length)
      Parameters:
      center - the center point of the ellipse
      semiAxis1Length - the length of the semi-major or semi-minor axis of the ellipse in meters
      semiAxis2Length - the length of the semi-major or semi-minor axis of the ellipse in meters
      Throws:
      IllegalArgumentException - if center is null
      Since:
      100.3.0
  • Method Details

    • getAxisDirection

      public double getAxisDirection()
      Gets the direction of the major axis of the ellipse as an angle, in units of getAngularUnit().
      Returns:
      the axis direction
      Since:
      100.0.0
      See Also:
    • getAngularUnit

      public AngularUnit getAngularUnit()
      Gets the unit of measurement for getAxisDirection(). Default is of AngularUnitId.DEGREES type.
      Returns:
      the unit for getAxisDirection()
      Since:
      100.0.0
    • getCenter

      public Point getCenter()
      Gets the center of the ellipse.
      Returns:
      the center of the ellipse
      Since:
      100.0.0
    • getGeometryType

      public GeometryType getGeometryType()
      Gets the type of output geometry. Default is GeometryType.POLYGON.
      Returns:
      the type of output geometry
      Since:
      100.0.0
    • getMaxPointCount

      public long getMaxPointCount()
      Gets the maximum number of vertices in the ellipse.
      Returns:
      the maximum number of vertices in the ellipse
      Since:
      100.0.0
    • getMaxSegmentLength

      public double getMaxSegmentLength()
      Gets the maximum segment length in the ellipse, in units of getLinearUnit().
      Returns:
      the maximum segment length in the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • getSemiAxis1Length

      public double getSemiAxis1Length()
      Gets the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit().
      Returns:
      the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • getSemiAxis2Length

      public double getSemiAxis2Length()
      Gets the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit().
      Returns:
      the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • getLinearUnit

      public LinearUnit getLinearUnit()
      Gets the unit of measurement for linear values. Default is of LinearUnitId.METERS type.
      Returns:
      the unit of measurement for linear values
      Since:
      100.0.0
      See Also:
    • setAxisDirection

      public void setAxisDirection(double direction)
      Sets the direction of the major axis of the ellipse as an angle, in units of getAngularUnit().
      Parameters:
      direction - the direction of the major axis of the ellipse as an angle, in units of getAngularUnit()
      Since:
      100.0.0
    • setAngularUnit

      public void setAngularUnit(AngularUnit angularUnit)
      Sets the unit of measurement for axis direction.
      Parameters:
      angularUnit - the unit of measurement for axis direction
      Throws:
      IllegalArgumentException - if angularUnit is null
      Since:
      100.0.0
      See Also:
    • setCenter

      public void setCenter(Point center)
      Sets the center of the ellipse.
      Parameters:
      center - center of the ellipse
      Throws:
      IllegalArgumentException - if center is null
      Since:
      100.0.0
    • setGeometryType

      public void setGeometryType(GeometryType geometryType)
      Sets the type of output geometry.
      Parameters:
      geometryType - the type of output geometry
      Throws:
      IllegalArgumentException - if geometryType is null
      Since:
      100.0.0
    • setMaxPointCount

      public void setMaxPointCount(int maxPointCount)
      Sets the maximum number of vertices in the ellipse.
      Parameters:
      maxPointCount - the maximum number of vertices in the ellipse
      Since:
      100.0.0
    • setMaxSegmentLength

      public void setMaxSegmentLength(double maxSegmentLength)
      Sets the maximum segment length of the ellipse, in units of getLinearUnit().
      Parameters:
      maxSegmentLength - the maximum segment length of the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • setSemiAxis1Length

      public void setSemiAxis1Length(double length)
      Sets the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit().
      Parameters:
      length - the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • setSemiAxis2Length

      public void setSemiAxis2Length(double length)
      Sets the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit().
      Parameters:
      length - the length of the semi-major or semi-minor axis of the ellipse, in units of getLinearUnit()
      Since:
      100.0.0
    • setLinearUnit

      public void setLinearUnit(LinearUnit linearUnit)
      Sets the unit of measurement for linear values.
      Parameters:
      linearUnit - the unit of measurement for linear values
      Throws:
      IllegalArgumentException - if angularUnit is null
      Since:
      100.0.0
      See Also: