Class GreatArcPath.Builder

java.lang.Object
org.apache.commons.geometry.spherical.twod.GreatArcPath.Builder
Enclosing class:
GreatArcPath

public static final class GreatArcPath.Builder extends Object
Class used to build arc paths.
  • Method Details

    • setPrecision

      public GreatArcPath.Builder setPrecision(org.apache.commons.numbers.core.Precision.DoubleEquivalence builderPrecision)
      Set the precision context. This context is used only when creating arcs from appended or prepended points. It is not used when adding existing GreatArc instances since those contain their own precision contexts.
      Parameters:
      builderPrecision - precision context to use when creating arcs from points
      Returns:
      this instance
    • getStartArc

      Get the arc at the start of the path or null if it does not exist.
      Returns:
      the arc at the start of the path
    • getEndArc

      public GreatArc getEndArc()
      Get the arc at the end of the path or null if it does not exist.
      Returns:
      the arc at the end of the path
    • append

      Append an arc to the end of the path.
      Parameters:
      arc - arc to append to the path
      Returns:
      the current builder instance
      Throws:
      IllegalStateException - if the path contains a previous arc and the end point of the previous arc is not equivalent to the start point of the given arc
    • append

      Add a vertex to the end of this path. If the path already has an end vertex, then an arc is added between the previous end vertex and this vertex, using the configured precision context.
      Parameters:
      vertex - the vertex to add
      Returns:
      this instance
      See Also:
    • appendVertices

      Convenience method for appending a collection of vertices to the path in a single method call.
      Parameters:
      vertices - the vertices to append
      Returns:
      this instance
      See Also:
    • appendVertices

      Convenience method for appending multiple vertices to the path at once.
      Parameters:
      vertices - the points to append
      Returns:
      this instance
      See Also:
    • prepend

      Prepend an arc to the beginning of the path.
      Parameters:
      arc - arc to prepend to the path
      Returns:
      the current builder instance
      Throws:
      IllegalStateException - if the path contains a start arc and the end point of the given arc is not equivalent to the start point of the start arc
    • prepend

      Add a vertex to the front of this path. If the path already has a start vertex, then an arc is added between this vertex and the previous start vertex, using the configured precision context.
      Parameters:
      vertex - the vertex to add
      Returns:
      this instance
      See Also:
    • prependPoints

      Convenience method for prepending a collection of vertices to the path in a single method call. The vertices are logically prepended as a single group, meaning that the first vertex in the given collection appears as the first vertex in the path after this method call. Internally, this means that the vertices are actually passed to the prepend(Point2S) method in reverse order.
      Parameters:
      vertices - the points to prepend
      Returns:
      this instance
      See Also:
    • prependPoints

      Convenience method for prepending multiple vertices to the path in a single method call. The vertices are logically prepended as a single group, meaning that the first vertex in the given collection appears as the first vertex in the path after this method call. Internally, this means that the vertices are actually passed to the prepend(Point2S) method in reverse order.
      Parameters:
      vertices - the vertices to prepend
      Returns:
      this instance
      See Also:
    • close

      public GreatArcPath close()
      Close the current path and build a new GreatArcPath instance. This method is equivalent to builder.build(true).
      Returns:
      new closed path instance
    • build

      public GreatArcPath build()
      Build a GreatArcPath instance from the configured path. This method is equivalent to builder.build(false).
      Returns:
      new path instance
    • build

      public GreatArcPath build(boolean close)
      Build a GreatArcPath instance from the configured path.
      Parameters:
      close - if true, the path will be closed by adding an end point equivalent to the start point
      Returns:
      new path instance