Class GeodesicSectorParameters

    • Constructor Detail

      • GeodesicSectorParameters

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

        public GeodesicSectorParameters​(double axisDirection,
                                        AngularUnit angularUnit,
                                        Point center,
                                        LinearUnit linearUnit,
                                        long maxPointCount,
                                        double maxSegmentLength,
                                        GeometryType geometryType,
                                        double sectorAngle,
                                        double semiAxis1Length,
                                        double semiAxis2Length,
                                        double startDirection)
        Creates an instance of GeodesicSectorParameters 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 - unit for the linear values. If null, defaults to meters.
        maxPointCount - maximum number of vertices in the ellipse
        maxSegmentLength - maximum segment length of the result approximation, in units of linearUnit
        geometryType - type of output geometry
        sectorAngle - sweep angle of the the sector, in units of angularUnit. The sector angle is measured clockwise from the startDirection.
        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
        startDirection - direction of starting radius of the sector as an angle in units of angularUnit
        Throws:
        IllegalArgumentException - if center or geometryType is null
        Since:
        100.0.0
      • GeodesicSectorParameters

        public GeodesicSectorParameters​(Point center,
                                        double semiAxis1Length,
                                        double semiAxis2Length,
                                        double sectorAngle,
                                        double startDirection)
        Creates an instance of GeodesicSectorParameters with the given values.

        The geodesic sector 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 - center 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
        sectorAngle - the sweep angle of the sector in degrees
        startDirection - the direction of starting radius of the sector as an angle in degrees
        Throws:
        IllegalArgumentException - if center is null
        Since:
        100.3.0
    • Method Detail

      • 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
      • getCenter

        public Point getCenter()
        Gets the center of the ellipse.
        Returns:
        the center
        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 of the result, in units of getLinearUnit().
        Returns:
        the maximum segment length of the result, 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
      • getSectorAngle

        public double getSectorAngle()
        Gets the sweep angle of the sector. It is measured clockwise from the getStartDirection().
        Returns:
        sweep angle of the sector, in units of angularUnit
        Since:
        100.0.0
      • getStartDirection

        public double getStartDirection()
        Gets the direction of starting radius of the sector as an angle, in units of getAngularUnit()
        Returns:
        the direction of starting radius of the sector as an angle
        Since:
        100.0.0
      • setAxisDirection

        public void setAxisDirection​(double direction)
        Sets the direction of the major axis of the sector as an angle, in units of getAngularUnit().
        Parameters:
        direction - the direction of the major axis of the sector as an angle, in units of getAngularUnit()
        Since:
        100.0.0
      • 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 result, in units of getLinearUnit().
        Parameters:
        maxSegmentLength - the maximum segment length of the result, 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
      • setSectorAngle

        public void setSectorAngle​(double sectorAngle)
        Sets the sweep angle of the sector in units of getAngularUnit(). The sector angle is measured clockwise from the startDirection.
        Parameters:
        sectorAngle - angle
        Since:
        100.0.0
      • setStartDirection

        public void setStartDirection​(double direction)
        Sets the direction of starting radius of the sector as an angle, in units of getAngularUnit().
        Parameters:
        direction - the direction of starting radius of the sector as an angle
        Since:
        100.0.0