Class LineSpanningSubset3D

All Implemented Interfaces:
Embedding<Vector3D,Vector1D>, RegionEmbedding<Vector3D,Vector1D>, Sized

final class LineSpanningSubset3D extends LineConvexSubset3D
Class representing the span of a line in 3D Euclidean space. This is the set of all points contained by the line.

Instances of this class are guaranteed to be immutable.

  • Constructor Details

    • LineSpanningSubset3D

      LineSpanningSubset3D(Line3D line)
      Construct a new instance for the given line.
      Parameters:
      line - line to construct the span for
  • Method Details

    • isInfinite

      public boolean isInfinite()
      Return true if the size of the instance is infinite.

      This method always returns true.

      Returns:
      true if the size of the instance is infinite
    • isFinite

      public boolean isFinite()
      Return true if the size of the instance is finite.

      This method always returns false.

      Returns:
      true if the size of the instance is finite
    • getSize

      public double getSize()
      Get the size of the instance.

      This method always returns Double.POSITIVE_INFINITY.

      Returns:
      the size of the instance
    • getStartPoint

      public Vector3D getStartPoint()
      Get the start point for the line subset.

      This method always returns null.

      Specified by:
      getStartPoint in class LineConvexSubset3D
      Returns:
      the start point for the line subset, or null if no start point exists
    • getSubspaceStart

      public double getSubspaceStart()
      Get the 1D start location of the line subset or Double.NEGATIVE_INFINITY if no start location exists.

      This method always returns Double.NEGATIVE_INFINITY.

      Specified by:
      getSubspaceStart in class LineConvexSubset3D
      Returns:
      the 1D start location of the line subset or Double.NEGATIVE_INFINITY if no start location exists.
    • getEndPoint

      public Vector3D getEndPoint()
      Get the end point for the line subset.

      This method always returns null.

      Specified by:
      getEndPoint in class LineConvexSubset3D
      Returns:
      the end point for the line subset, or null if no end point exists.
    • getSubspaceEnd

      public double getSubspaceEnd()
      Get the 1D end location of the line subset or Double.POSITIVE_INFINITY if no end location exists.

      This method always returns Double.POSITIVE_INFINITY.

      Specified by:
      getSubspaceEnd in class LineConvexSubset3D
      Returns:
      the 1D end location of the line subset or Double.POSITIVE_INFINITY if no end location exists
    • getCentroid

      public Vector3D getCentroid()
      Get the centroid, or geometric center, of the line subset or null if the subset is empty or infinite.

      This method always returns null.

      Specified by:
      getCentroid in class LineSubset3D
      Returns:
      the centroid of the line subset, or null if the subset is empty or infinite
    • getBounds

      public Bounds3D getBounds()
      Get the 3D bounding box of the line subset or null if the subset is empty or infinite.

      This method always returns null.

      Specified by:
      getBounds in class LineSubset3D
      Returns:
      the 3D bounding box the line subset or null if the subset is empty or infinite
    • transform

      public LineSpanningSubset3D transform(Transform<Vector3D> transform)
      Transform this instance.
      Specified by:
      transform in class LineConvexSubset3D
      Parameters:
      transform - the transform to apply
      Returns:
      a new, transformed instance
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • containsAbscissa

      boolean containsAbscissa(double abscissa)
      Return true if the given abscissa value is contained in the line subset (ie, in the subspace region or one of its 1D boundaries).
      Specified by:
      containsAbscissa in class LineConvexSubset3D
      Parameters:
      abscissa - abscissa to check
      Returns:
      true if abscissa lies on the inside or boundary of the subspace region