Class Arc


  • public class Arc
    extends Object
    This class represents an arc on a circle.
    See Also:
    ArcsSet
    • Constructor Detail

      • Arc

        public Arc​(double lower,
                   double upper,
                   double tolerance)
            throws MathIllegalArgumentException
        Simple constructor.

        If either lower is equals to upper or the interval exceeds \( 2 \pi \), the arc is considered to be the full circle and its initial defining boundaries will be forgotten. lower is not allowed to be greater than upper (an exception is thrown in this case). lower will be canonicalized between 0 and \( 2 \pi \), and upper shifted accordingly, so the getInf() and getSup() may not return the value used at instance construction.

        Parameters:
        lower - lower angular bound of the arc
        upper - upper angular bound of the arc
        tolerance - tolerance below which angles are considered identical
        Throws:
        MathIllegalArgumentException - if lower is greater than upper or tolerance is smaller than Sphere1D.SMALLEST_TOLERANCE
    • Method Detail

      • getInf

        public double getInf()
        Get the lower angular bound of the arc.
        Returns:
        lower angular bound of the arc, always between 0 and \( 2 \pi \)
      • getSup

        public double getSup()
        Get the upper angular bound of the arc.
        Returns:
        upper angular bound of the arc, always between getInf() and getInf() \( + 2 \pi \)
      • getSize

        public double getSize()
        Get the angular size of the arc.
        Returns:
        angular size of the arc
      • getBarycenter

        public double getBarycenter()
        Get the barycenter of the arc.
        Returns:
        barycenter of the arc
      • getTolerance

        public double getTolerance()
        Get the tolerance below which angles are considered identical.
        Returns:
        tolerance below which angles are considered identical
      • getOffset

        public double getOffset​(double point)
        Get the distance (arc length) from a point to the edge of the arc.

        This method does not use getTolerance().

        Parameters:
        point - to test.
        Returns:
        offset, negative if the point is inside the arc, positive if it is outside the arc, or zero if point is getInf() or getSup().
      • getOffset

        public double getOffset​(S1Point point)
        Get the distance (arc length) from a point to the edge of the arc.

        This method does not use getTolerance().

        Parameters:
        point - to test.
        Returns:
        offset, negative if the point is inside the arc, positive if it is outside the arc, or zero if point is getInf() or getSup().