Class Segment3D

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private double end
      End abscissa for the segment.
      private double start
      Start abscissa for the segment.
    • Constructor Summary

      Constructors 
      Constructor Description
      Segment3D​(Line3D line, double start, double end)
      Construct a new instance from a line and two abscissa locations on the line.
      Segment3D​(Line3D line, Vector3D startPoint, Vector3D endPoint)
      Construct a new instance from a line and two points on the line.
    • Field Detail

      • start

        private final double start
        Start abscissa for the segment.
      • end

        private final double end
        End abscissa for the segment.
    • Constructor Detail

      • Segment3D

        Segment3D​(Line3D line,
                  Vector3D startPoint,
                  Vector3D endPoint)
        Construct a new instance from a line and two points on the line. The points are projected onto the line and must be in order of increasing abscissa. No validation is performed.
        Parameters:
        line - line for the segment
        startPoint - segment start point
        endPoint - segment end point
      • Segment3D

        Segment3D​(Line3D line,
                  double start,
                  double end)
        Construct a new instance from a line and two abscissa locations on the line. The abscissa locations must be in increasing order. No validation is performed.
        Parameters:
        line - line for the segment
        start - abscissa start location
        end - abscissa end location
    • Method Detail

      • isInfinite

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

        This method always returns false.

        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 true.

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

        public Vector3D getStartPoint()
        Get the start point for the line subset.
        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.
        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.
        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.
        Specified by:
        getSubspaceEnd in class LineConvexSubset3D
        Returns:
        the 1D end location of the line subset or Double.POSITIVE_INFINITY if no end location exists
      • getSize

        public double getSize()
        Get the size of the instance.
        Returns:
        the size of the instance
      • getCentroid

        public Vector3D getCentroid()
        Get the centroid, or geometric center, of the line subset or null if the subset is empty or infinite.
        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.
        Specified by:
        getBounds in class LineSubset3D
        Returns:
        the 3D bounding box the line subset or null if the subset is empty or infinite
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.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