org.jfree.ui

Class RectangleInsets

Implemented Interfaces:
Serializable

public class RectangleInsets
extends java.lang.Object
implements Serializable

Represents the insets for a rectangle, specified in absolute or relative terms. This class is immutable.
Author:
David Gilbert

Field Summary

static RectangleInsets
ZERO_INSETS
A useful constant representing zero insets.

Constructor Summary

RectangleInsets(double top, double left, double bottom, double right)
Creates a new instance with the specified insets (as 'absolute' units).
RectangleInsets(UnitType unitType, double top, double left, double bottom, double right)
Creates a new instance.

Method Summary

double
calculateBottomInset(double height)
Returns the bottom margin.
double
calculateBottomOutset(double height)
Returns the bottom margin.
double
calculateLeftInset(double width)
Returns the left margin.
double
calculateLeftOutset(double width)
Returns the left margin.
double
calculateRightInset(double width)
Returns the right margin.
double
calculateRightOutset(double width)
Returns the right margin.
double
calculateTopInset(double height)
Returns the top margin.
double
calculateTopOutset(double height)
Returns the top margin.
Rectangle2D
createAdjustedRectangle(Rectangle2D base, LengthAdjustmentType horizontal, LengthAdjustmentType vertical)
Creates an adjusted rectangle using the supplied rectangle, the insets specified by this instance, and the horizontal and vertical adjustment types.
Rectangle2D
createInsetRectangle(Rectangle2D base)
Creates an 'inset' rectangle.
Rectangle2D
createInsetRectangle(Rectangle2D base, boolean horizontal, boolean vertical)
Creates an 'inset' rectangle.
Rectangle2D
createOutsetRectangle(Rectangle2D base)
Creates an outset rectangle.
Rectangle2D
createOutsetRectangle(Rectangle2D base, boolean horizontal, boolean vertical)
Creates an outset rectangle.
boolean
equals(Object obj)
Tests this instance for equality with an arbitrary object.
double
extendHeight(double height)
Extends the given height to allow for the insets.
double
extendWidth(double width)
Extends the given width to allow for the insets.
double
getBottom()
Returns the bottom insets.
double
getLeft()
Returns the left insets.
double
getRight()
Returns the right insets.
double
getTop()
Returns the top insets.
UnitType
getUnitType()
Returns the unit type (absolute or relative).
int
hashCode()
Returns a hash code for the object.
String
toString()
Returns a textual representation of this instance, useful for debugging purposes.
void
trim(Rectangle2D area)
Shrinks the given rectangle by the amount of these insets.
double
trimHeight(double height)
Trims the given height to allow for the insets.
double
trimWidth(double width)
Trims the given width to allow for the insets.

Field Details

ZERO_INSETS

public static final RectangleInsets ZERO_INSETS
A useful constant representing zero insets.

Constructor Details

RectangleInsets

public RectangleInsets(double top,
                       double left,
                       double bottom,
                       double right)
Creates a new instance with the specified insets (as 'absolute' units).
Parameters:
top - the top insets.
left - the left insets.
bottom - the bottom insets.
right - the right insets.

RectangleInsets

public RectangleInsets(UnitType unitType,
                       double top,
                       double left,
                       double bottom,
                       double right)
Creates a new instance.
Parameters:
unitType - absolute or relative units (null not permitted).
top - the top insets.
left - the left insets.
bottom - the bottom insets.
right - the right insets.

Method Details

calculateBottomInset

public double calculateBottomInset(double height)
Returns the bottom margin.
Parameters:
height - the height of the base rectangle.
Returns:
The bottom margin (in Java2D units).

calculateBottomOutset

public double calculateBottomOutset(double height)
Returns the bottom margin.
Parameters:
height - the height of the base rectangle.
Returns:
The bottom margin (in Java2D units).

calculateLeftInset

public double calculateLeftInset(double width)
Returns the left margin.
Parameters:
width - the width of the base rectangle.
Returns:
The left margin (in Java2D units).

calculateLeftOutset

public double calculateLeftOutset(double width)
Returns the left margin.
Parameters:
width - the width of the base rectangle.
Returns:
The left margin (in Java2D units).

calculateRightInset

public double calculateRightInset(double width)
Returns the right margin.
Parameters:
width - the width of the base rectangle.
Returns:
The right margin (in Java2D units).

calculateRightOutset

public double calculateRightOutset(double width)
Returns the right margin.
Parameters:
width - the width of the base rectangle.
Returns:
The right margin (in Java2D units).

calculateTopInset

public double calculateTopInset(double height)
Returns the top margin.
Parameters:
height - the height of the base rectangle.
Returns:
The top margin (in Java2D units).

calculateTopOutset

public double calculateTopOutset(double height)
Returns the top margin.
Parameters:
height - the height of the base rectangle.
Returns:
The top margin (in Java2D units).

createAdjustedRectangle

public Rectangle2D createAdjustedRectangle(Rectangle2D base,
                                           LengthAdjustmentType horizontal,
                                           LengthAdjustmentType vertical)
Creates an adjusted rectangle using the supplied rectangle, the insets specified by this instance, and the horizontal and vertical adjustment types.
Parameters:
base - the base rectangle (null not permitted).
horizontal - the horizontal adjustment type (null not permitted).
vertical - the vertical adjustment type (null not permitted).
Returns:
The inset rectangle.

createInsetRectangle

public Rectangle2D createInsetRectangle(Rectangle2D base)
Creates an 'inset' rectangle.
Parameters:
base - the base rectangle (null not permitted).
Returns:
The inset rectangle.

createInsetRectangle

public Rectangle2D createInsetRectangle(Rectangle2D base,
                                        boolean horizontal,
                                        boolean vertical)
Creates an 'inset' rectangle.
Parameters:
base - the base rectangle (null not permitted).
horizontal - apply horizontal insets?
vertical - apply vertical insets?
Returns:
The inset rectangle.

createOutsetRectangle

public Rectangle2D createOutsetRectangle(Rectangle2D base)
Creates an outset rectangle.
Parameters:
base - the base rectangle (null not permitted).
Returns:
An outset rectangle.

createOutsetRectangle

public Rectangle2D createOutsetRectangle(Rectangle2D base,
                                         boolean horizontal,
                                         boolean vertical)
Creates an outset rectangle.
Parameters:
base - the base rectangle (null not permitted).
horizontal - apply horizontal insets?
vertical - apply vertical insets?
Returns:
An outset rectangle.

equals

public boolean equals(Object obj)
Tests this instance for equality with an arbitrary object.
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

extendHeight

public double extendHeight(double height)
Extends the given height to allow for the insets.
Parameters:
height - the height.
Returns:
The extended height.

extendWidth

public double extendWidth(double width)
Extends the given width to allow for the insets.
Parameters:
width - the width.
Returns:
The extended width.

getBottom

public double getBottom()
Returns the bottom insets.
Returns:
The bottom insets.

getLeft

public double getLeft()
Returns the left insets.
Returns:
The left insets.

getRight

public double getRight()
Returns the right insets.
Returns:
The right insets.

getTop

public double getTop()
Returns the top insets.
Returns:
The top insets.

getUnitType

public UnitType getUnitType()
Returns the unit type (absolute or relative). This specifies whether the insets are measured as Java2D units or percentages.
Returns:
The unit type (never null).

hashCode

public int hashCode()
Returns a hash code for the object.
Returns:
A hash code.

toString

public String toString()
Returns a textual representation of this instance, useful for debugging purposes.
Returns:
A string representing this instance.

trim

public void trim(Rectangle2D area)
Shrinks the given rectangle by the amount of these insets.
Parameters:
area - the area (null not permitted).

trimHeight

public double trimHeight(double height)
Trims the given height to allow for the insets.
Parameters:
height - the height.
Returns:
The trimmed height.

trimWidth

public double trimWidth(double width)
Trims the given width to allow for the insets.
Parameters:
width - the width.
Returns:
The trimmed width.