Interface MAABB3d

  • All Superinterfaces:
    AABB3d

    public interface MAABB3d
    extends AABB3d
    Interface that represents a mutable axis-aligned bounding box in 3-dimensional space.
    Since:
    9.10.2
    • Method Detail

      • create

        static MAABB3d create​(AABB3d boundingBox)
        Returns a new instance of a bounding box with the same bounds as in the given bounding box.
        Parameters:
        boundingBox - the bounding box whose bounds are set to the returned box
        Returns:
        a new bounding box with the same bounds as in the given bounding box
        Throws:
        IllegalArgumentException - if given bounding box is not valid, meaning that lowerBound is greater than upperBound in any dimension
        Since:
        9.10.2
      • create

        static MAABB3d create​(Collection<Vector3d> points)
        Returns the minimum volume axis-aligned bounding box for the given collection of points.
        Parameters:
        points - the points for which the minimum volume axis-aligned bounding box is computed
        Returns:
        the minimum volume axis-aligned bounding box for the given collection of points
        Since:
        9.10.2
      • create

        static MAABB3d create​(Vector3d lowerBound,
                              Vector3d upperBound)
        Returns a bounding box with the given bounds. If lowerBound is greater than upperBound in any dimension, IllegalArgumentException is thrown. To construct bounding box from any set of opposing corners, create(Collection) should be used instead.
        Parameters:
        lowerBound - the lower bound for the bounding box
        upperBound - the upper bound for the bounding box
        Returns:
        a bounding box with the given bounds
        Throws:
        IllegalArgumentException - if lowerBound is greater than upperBound in any dimension
        Since:
        9.10.2
      • extend

        void extend​(Vector3d point)
        Extends this axis-aligned bounding box to contain the given point. If the point is already inside this box, then this method has no effect.
        Parameters:
        point - the point that this box is extended to include
        Since:
        9.10.2
      • extend

        void extend​(Collection<Vector3d> points)
        Extends this axis-aligned bounding box to contain the given points. If all of the points are already inside this box, then this method has no effect.
        Parameters:
        points - the points that this box is extended to include
        Since:
        9.10.2
      • resize

        void resize​(double resizeValue)
        Resizes this bounding box by the given value. If the value is positive, then both bounds of the box are extended by that amount in all dimensions. If the value is negative, then the bounds are decreased by that amount.
        Parameters:
        resizeValue - the value by which this bounding box is resized
        Since:
        9.10.2
      • set

        void set​(Vector3d lowerBound,
                 Vector3d upperBound)
        Sets the given bounds to this bounding box.
        Parameters:
        lowerBound - the lower bound that is set to this box
        upperBound - the upper bound that is set to this box
        Since:
        9.10.2
      • setUpperBound

        void setUpperBound​(Vector3d upperBound)
        Sets the upper bound of this bounding box to the given value.
        Parameters:
        upperBound - the upper bound that is set to this bounding box
        Since:
        9.10.2
      • setLowerBound

        void setLowerBound​(Vector3d lowerBound)
        Sets the lower bound of this bounding box to the given value.
        Parameters:
        lowerBound - the lower bound that is set to this bounding box
        Since:
        9.10.2
      • translate

        void translate​(Vector3d translator)
        Translates this bounding box by the given vector.
        Parameters:
        translator - the vector by which this bounding box is translated
        Since:
        9.10.2