Package com.solibri.geometry.primitive2d
Interface MAABB2d
- All Superinterfaces:
AABB2d
Interface that represents a mutable axis-aligned bounding box in the
XY-plane.
- Since:
- 9.10.2
-
Method Summary
Modifier and TypeMethodDescriptionstatic MAABB2d
Returns a bounding box with the given bounds.static MAABB2d
Returns a bounding box with the same bounds as in the given bounding box.static MAABB2d
create
(Collection<Vector2d> points) Returns the minimum area axis-aligned bounding box for the given collection of points.void
Extends this axis-aligned bounding box to contain the given point.void
extend
(Collection<Vector2d> points) Extends this axis-aligned bounding box to contain the given points.void
resize
(double resizeValue) Resizes this bounding box by the given value.void
Sets the given bounds to this bounding box.void
setLowerBound
(Vector2d lowerBound) Sets the lower bound of this bounding box to the given value.void
setUpperBound
(Vector2d upperBound) Sets the upper bound of this bounding box to the given value.void
Translates this bounding box by the given vector.Methods inherited from interface com.solibri.geometry.primitive2d.AABB2d
contains, contains, getArea, getCentroid, getEdges, getLowerBound, getSizeX, getSizeY, getUpperBound, getVertices, intersects, isDegenerate
-
Method Details
-
create
Returns 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
Returns the minimum area axis-aligned bounding box for the given collection of points.- Parameters:
points
- the points for which the minimum area axis-aligned bounding box is computed- Returns:
- the minimum area axis-aligned bounding box for the given collection of points
- Since:
- 9.10.2
-
create
Returns a bounding box with the given bounds. If lowerBound is greater than upperBound in either dimension, IllegalArgumentException is thrown.- Parameters:
lowerBound
- the lower bound for the bounding boxupperBound
- the upper bound for the bounding box- Returns:
- a bounding box with the given bounds
- Throws:
IllegalArgumentException
- if lowerBound is greater than upperBound in either dimension- Since:
- 9.10.2
-
extend
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
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 both 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
Sets the given bounds to this bounding box.- Parameters:
lowerBound
- the lower bound that is set to this boxupperBound
- the upper bound that is set to this box- Since:
- 9.10.2
-
setUpperBound
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
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
Translates this bounding box by the given vector.- Parameters:
translator
- the vector by which this bounding box is translated- Since:
- 9.10.2
-