com.ijchart.xychart.ui
Class RectangleInsets

java.lang.Object
  extended by com.ijchart.xychart.ui.RectangleInsets
All Implemented Interfaces:
java.io.Serializable

public class RectangleInsets
extends java.lang.Object
implements java.io.Serializable

Title: IJChart

Description: a chart library for the Java(tm) platform.

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

Copyright: Copyright (c) 2013

Company:

Version:
1.0
Author:
zhang feng min,shanghai china. Contract me by email.
See Also:
Serialized Form

Field Summary
static RectangleInsets INSETS_ONE
           A useful constant representing one insets.
static RectangleInsets INSETS_THREE
           A useful constant representing three insets.
static RectangleInsets INSETS_TWO
           A useful constant representing two insets.
static RectangleInsets INSETS_ZERO
           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.
 java.awt.geom.Rectangle2D createAdjustedRectangle(java.awt.geom.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.
 java.awt.geom.Rectangle2D createInsetRectangle(java.awt.geom.Rectangle2D base)
           Creates an 'inset' rectangle.
 java.awt.geom.Rectangle2D createInsetRectangle(java.awt.geom.Rectangle2D base, boolean horizontal, boolean vertical)
           Creates an 'inset' rectangle.
 java.awt.geom.Rectangle2D createOutsetRectangle(java.awt.geom.Rectangle2D base)
           Creates an 'outset' rectangle.
 java.awt.geom.Rectangle2D createOutsetRectangle(java.awt.geom.Rectangle2D base, boolean horizontal, boolean vertical)
           Creates an 'outset' rectangle.
 RectangleInsets ensureAtLeast(double len)
           Expansion edge if the edge of this object is least than len.
 boolean equals(java.lang.Object obj)
           Tests this instance for equality with an arbitrary object.
 void expandRect(java.awt.geom.Rectangle2D rect)
           Rectangular extension of the width and height.
 void expandRectHeight(java.awt.geom.Rectangle2D rect)
           Expansion rectangle height.
 void expandRectWidth(java.awt.geom.Rectangle2D rect)
           Expansion rectangle width.
 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.
 java.awt.geom.Rectangle2D getTrimArea(java.awt.geom.Rectangle2D area)
           Shrinks the given rectangle by the amount of these insets.
 UnitType getUnitType()
           Returns the unit type (absolute or relative).This specifies whether the insets are measured as Java2D units or percentages.
 int hashCode()
           Returns a hash code for the object.
 java.lang.String toString()
           Returns a textual representation of this instance, useful for debugging purposes.
 void trim(java.awt.geom.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.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

INSETS_ZERO

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


INSETS_ONE

public static final RectangleInsets INSETS_ONE
A useful constant representing one insets.


INSETS_TWO

public static final RectangleInsets INSETS_TWO
A useful constant representing two insets.


INSETS_THREE

public static final RectangleInsets INSETS_THREE
A useful constant representing three insets.

Constructor Detail

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 Detail

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

getTop

public double getTop()
Returns the top insets.

Returns:
The top insets.

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.

createAdjustedRectangle

public java.awt.geom.Rectangle2D createAdjustedRectangle(java.awt.geom.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 java.awt.geom.Rectangle2D createInsetRectangle(java.awt.geom.Rectangle2D base)
Creates an 'inset' rectangle.

Parameters:
base - The base rectangle (null not permitted).
Returns:
The inset rectangle.

createInsetRectangle

public java.awt.geom.Rectangle2D createInsetRectangle(java.awt.geom.Rectangle2D base,
                                                      boolean horizontal,
                                                      boolean vertical)
Creates an 'inset' rectangle.

Parameters:
base - The base rectangle (null not permitted).
horizontal - Whether or not apply horizontal insets.
vertical - Whether or not apply vertical insets.
Returns:
The inset rectangle.

createOutsetRectangle

public java.awt.geom.Rectangle2D createOutsetRectangle(java.awt.geom.Rectangle2D base)
Creates an 'outset' rectangle.

Parameters:
base - The base rectangle (null not permitted).
Returns:
The inset rectangle.

createOutsetRectangle

public java.awt.geom.Rectangle2D createOutsetRectangle(java.awt.geom.Rectangle2D base,
                                                       boolean horizontal,
                                                       boolean vertical)
Creates an 'outset' rectangle.

Parameters:
base - The base rectangle (null not permitted).
horizontal - Whether or not apply horizontal insets.
vertical - Whether or not apply vertical insets.
Returns:
The inset rectangle.

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

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

trimWidth

public double trimWidth(double width)
Trims the given width to allow for the insets.

Parameters:
width - the width.
Returns:
The trimmed width.

extendWidth

public double extendWidth(double width)
Extends the given width to allow for the insets.

Parameters:
width - the width.
Returns:
The extended width.

trimHeight

public double trimHeight(double height)
Trims the given height to allow for the insets.

Parameters:
height - the height.
Returns:
The trimmed height.

extendHeight

public double extendHeight(double height)
Extends the given height to allow for the insets.

Parameters:
height - the height.
Returns:
The extended height.

expandRectHeight

public void expandRectHeight(java.awt.geom.Rectangle2D rect)
Expansion rectangle height.

Parameters:
rect - Rectangle2D The rectangle (null not permitted).

expandRectWidth

public void expandRectWidth(java.awt.geom.Rectangle2D rect)
Expansion rectangle width.

Parameters:
rect - Rectangle2D The rectangle (null not permitted).

expandRect

public void expandRect(java.awt.geom.Rectangle2D rect)
Rectangular extension of the width and height.

Parameters:
rect - Rectangle2D The rectangle (null not permitted).

trim

public void trim(java.awt.geom.Rectangle2D area)
Shrinks the given rectangle by the amount of these insets.

Parameters:
area - Rectangle2D The area (null not permitted).

getTrimArea

public java.awt.geom.Rectangle2D getTrimArea(java.awt.geom.Rectangle2D area)
Shrinks the given rectangle by the amount of these insets.

Parameters:
area - Rectangle2D The area (null not permitted).
Returns:
Rectangle2D

ensureAtLeast

public RectangleInsets ensureAtLeast(double len)
Expansion edge if the edge of this object is least than len.

Parameters:
len - double The length (must greater or equal than len).
Returns:
RectangleInsets The new RectangleInsets object.

equals

public boolean equals(java.lang.Object obj)
Tests this instance for equality with an arbitrary object.

Overrides:
equals in class java.lang.Object
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

hashCode

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

Overrides:
hashCode in class java.lang.Object
Returns:
A hash code.

toString

public java.lang.String toString()
Returns a textual representation of this instance, useful for debugging purposes.

Overrides:
toString in class java.lang.Object
Returns:
A string representing this instance.