org.jfree.layouting.util.geom
Class StrictBounds
java.lang.Object
org.jfree.layouting.util.geom.StrictBounds
- Cloneable, Serializable
public class StrictBounds
extends java.lang.Object
implements Serializable, Cloneable
The StrictBounds class is a replacement for the Rectangle2D classes.
This class uses integer mathematics instead of floating point values
to achive a higher degree of stability.
StrictBounds() - DefaultConstructor.
|
StrictBounds(long x, long y, long width, long height) - Creates a StrictBounds object with the given coordinates, width
and height.
|
void | add(StrictBounds bounds) - Adds the given bounds to this bounds instance.
|
Object | clone() - Returns a copy of this bounds object.
|
boolean | contains(long x, long y) - Checks, whether this rectangle contains the given point.
|
static boolean | contains(StrictBounds rect1, StrictBounds rect2) - Checks, whether the given rectangle1 fully contains rectangle 2 (even if rectangle 2
has a height or width of zero!).
|
StrictBounds | createIntersection(StrictBounds bounds) - Intersects this rectangle with the given bounds.
|
StrictBounds | createUnion(StrictBounds bg) - Creates a union from this and the given rectangle.
|
boolean | equals(Object o) - Checks, whether the given object is a StrictBounds instance convering the
same area as these bounds.
|
long | getHeight() - Returns the height of the framing rectangle in micro points.
|
StrictBounds | getLockedInstance() - Returns a copy of this bounds object which cannot be modified anymore.
|
StrictBounds | getUnlockedInstance() - Returns a copy of this bounds object which can be modified later.
|
long | getWidth() - Returns the width of the framing rectangle in micro points.
|
long | getX() - Returns the X coordinate of the upper left corner of the framing
rectangle in micro points.
|
long | getY() - Returns the Y coordinate of the upper left corner of the framing
rectangle in micro points.
|
int | hashCode() - Computes the hashcode for this rectangle.
|
static boolean | intersects(StrictBounds rect1, StrictBounds rect2) - Checks, whether the given rectangle1 fully contains rectangle 2 (even if rectangle 2
has a height or width of zero!).
|
boolean | isEmpty() - Determines whether the
RectangularShape is empty.
|
boolean | isLocked() - Checks, whether this bounds object is locked.
|
void | setRect(long x, long y, long w, long h) - Sets the location and size of this
StrictBounds to the specified double
values.
|
String | toString() - Returns a string representation of these bounds.
|
StrictBounds
public StrictBounds()
DefaultConstructor.
StrictBounds
public StrictBounds(long x,
long y,
long width,
long height)
Creates a StrictBounds object with the given coordinates, width
and height.
x
- the x-coordinatey
- the y-coordinatewidth
- the width of the rectangleheight
- the height of the rectangle
add
public void add(StrictBounds bounds)
Adds the given bounds to this bounds instance. The resulting rectangle
will fully contain both rectangles.
bounds
- the rectangle that should be added.
clone
public Object clone()
Returns a copy of this bounds object. This method will never throw a
'CloneNotSupportedException'.
contains
public boolean contains(long x,
long y)
Checks, whether this rectangle contains the given point.
x
- the x-coordinate of the point.y
- the y-coordinate of the point.
- true, if the point is inside or directly on the border of this
rectangle, false otherwise.
contains
public static boolean contains(StrictBounds rect1,
StrictBounds rect2)
Checks, whether the given rectangle1 fully contains rectangle 2 (even if rectangle 2
has a height or width of zero!).
rect1
- the first rectangle.rect2
- the second rectangle.
createIntersection
public StrictBounds createIntersection(StrictBounds bounds)
Intersects this rectangle with the given bounds. The resulting rectangle
will cover the space, that is occupied by both rectangles at the same time.
bounds
- the other rectangle.
- the resulting intersection.
createUnion
public StrictBounds createUnion(StrictBounds bg)
Creates a union from this and the given rectangle. This is similiar to
calling 'add'. Calling this method does not modify the original and there
are no guarantees, that the resulting rectangle has a positive width or
height.
bg
- the other rectangle.
- the resulting union rectangle.
equals
public boolean equals(Object o)
Checks, whether the given object is a StrictBounds instance convering the
same area as these bounds.
- true, if the other object is equal to this object, false otherwise.
getHeight
public long getHeight()
Returns the height of the framing rectangle in micro points.
- the height of the framing rectangle.
getLockedInstance
public StrictBounds getLockedInstance()
Returns a copy of this bounds object which cannot be modified anymore.
getUnlockedInstance
public StrictBounds getUnlockedInstance()
Returns a copy of this bounds object which can be modified later.
getWidth
public long getWidth()
Returns the width of the framing rectangle in micro points.
- the width of the framing rectangle.
getX
public long getX()
Returns the X coordinate of the upper left corner of the framing
rectangle in micro points.
- the x coordinate of the upper left corner of the framing rectangle.
getY
public long getY()
Returns the Y coordinate of the upper left corner of the framing
rectangle in micro points.
- the y coordinate of the upper left corner of the framing rectangle.
hashCode
public int hashCode()
Computes the hashcode for this rectangle.
intersects
public static boolean intersects(StrictBounds rect1,
StrictBounds rect2)
Checks, whether the given rectangle1 fully contains rectangle 2 (even if rectangle 2
has a height or width of zero!).
rect1
- the first rectangle.rect2
- the second rectangle.
- true, if the rectangles intersect each other, false otherwise.
isEmpty
public boolean isEmpty()
Determines whether the RectangularShape
is empty. When the
RectangularShape
is empty, it encloses no area.
true
if the RectangularShape
is empty;
false
otherwise.
isLocked
public boolean isLocked()
Checks, whether this bounds object is locked.
- true, if the bounds are locked and therefore immutable, false otherwise.
setRect
public void setRect(long x,
long y,
long w,
long h)
Sets the location and size of this StrictBounds
to the specified double
values.
x
- the coordinates to which to set the location of the upper left corner of
this StrictBounds
y
- the coordinates to which to set the location of the upper left corner of
this StrictBounds
w
- the value to use to set the width of this StrictBounds
h
- the value to use to set the height of this StrictBounds
toString
public String toString()
Returns a string representation of these bounds.
- the string representing this object.