org.jfree.chart.block

## Class RectangleConstraint

- java.lang.Object
- - org.jfree.chart.block.RectangleConstraint

    public class RectangleConstraint
    extends java.lang.Object

A description of a constraint for resizing a rectangle. Constraints are immutable.

### Field Summary

Fields
`static RectangleConstraint` `NONE` An instance representing no constraint.

### Constructor Summary

Constructors
Constructor and Description
`RectangleConstraint(double w, double h)` Creates a new "fixed width and height" instance.
`RectangleConstraint(double w, Range h)` Creates a new constraint with a fixed width and a range for the height.
`RectangleConstraint(double w, Range widthRange, LengthConstraintType widthConstraintType, double h, Range heightRange, LengthConstraintType heightConstraintType)` Creates a new constraint.
`RectangleConstraint(Range w, double h)` Creates a new constraint with a range for the width and a fixed height.
`RectangleConstraint(Range w, Range h)` Creates a new "range width and height" instance.

### Method Summary

Methods
`org.jfree.ui.Size2D` `calculateConstrainedSize(org.jfree.ui.Size2D base)` Returns the new size that reflects the constraints defined by this instance.
`double` `getHeight()` Returns the fixed height.
`LengthConstraintType` `getHeightConstraintType()` Returns the constraint type.
`Range` `getHeightRange()` Returns the width range.
`double` `getWidth()` Returns the fixed width.
`LengthConstraintType` `getWidthConstraintType()` Returns the constraint type.
`Range` `getWidthRange()` Returns the width range.
`RectangleConstraint` `toFixedHeight(double height)` Returns a constraint that matches this one on the width attributes, but has a fixed height constraint.
`RectangleConstraint` `toFixedWidth(double width)` Returns a constraint that matches this one on the height attributes, but has a fixed width constraint.
`RectangleConstraint` `toRangeHeight(Range range)` Returns a constraint that matches this one on the width attributes, but has a range height constraint.
`RectangleConstraint` `toRangeWidth(Range range)` Returns a constraint that matches this one on the height attributes, but has a range width constraint.
`java.lang.String` `toString()` Returns a string representation of this instance, mostly used for debugging purposes.
`RectangleConstraint` `toUnconstrainedHeight()` Returns a constraint that matches this one on the width attributes, but has no height constraint.
`RectangleConstraint` `toUnconstrainedWidth()` Returns a constraint that matches this one on the height attributes, but has no width constraint.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### NONE

    public static final RectangleConstraint NONE

An instance representing no constraint.

### Constructor Detail

#### RectangleConstraint

    public RectangleConstraint(double w,
                       double h)

Creates a new "fixed width and height" instance.

Parameters:
  `w` - the fixed width.
  `h` - the fixed height.

#### RectangleConstraint

    public RectangleConstraint(Range w,
                       Range h)

Creates a new "range width and height" instance.

Parameters:
  `w` - the width range.
  `h` - the height range.

#### RectangleConstraint

    public RectangleConstraint(Range w,
                       double h)

Creates a new constraint with a range for the width and a fixed height.

Parameters:
  `w` - the width range.
  `h` - the fixed height.

#### RectangleConstraint

    public RectangleConstraint(double w,
                       Range h)

Creates a new constraint with a fixed width and a range for the height.

Parameters:
  `w` - the fixed width.
  `h` - the height range.

#### RectangleConstraint

    public RectangleConstraint(double w,
                       Range widthRange,
                       LengthConstraintType widthConstraintType,
                       double h,
                       Range heightRange,
                       LengthConstraintType heightConstraintType)

Creates a new constraint.

Parameters:
  `w` - the fixed or maximum width.
  `widthRange` - the width range.
  `widthConstraintType` - the width type.
  `h` - the fixed or maximum height.
  `heightRange` - the height range.
  `heightConstraintType` - the height type.

### Method Detail

#### getWidth

    public double getWidth()

Returns the fixed width.

Returns:
  The width.

#### getWidthRange

    public Range getWidthRange()

Returns the width range.

Returns:
  The range (possibly `null`).

#### getWidthConstraintType

    public LengthConstraintType getWidthConstraintType()

Returns the constraint type.

Returns:
  The constraint type (never `null`).

#### getHeight

    public double getHeight()

Returns the fixed height.

Returns:
  The height.

#### getHeightRange

    public Range getHeightRange()

Returns the width range.

Returns:
  The range (possibly `null`).

#### getHeightConstraintType

    public LengthConstraintType getHeightConstraintType()

Returns the constraint type.

Returns:
  The constraint type (never `null`).

#### toUnconstrainedWidth

    public RectangleConstraint toUnconstrainedWidth()

Returns a constraint that matches this one on the height attributes, but has no width constraint.

Returns:
  A new constraint.

#### toUnconstrainedHeight

    public RectangleConstraint toUnconstrainedHeight()

Returns a constraint that matches this one on the width attributes, but has no height constraint.

Returns:
  A new constraint.

#### toFixedWidth

    public RectangleConstraint toFixedWidth(double width)

Returns a constraint that matches this one on the height attributes, but has a fixed width constraint.

Parameters:
  `width` - the fixed width.
Returns:
  A new constraint.

#### toFixedHeight

    public RectangleConstraint toFixedHeight(double height)

Returns a constraint that matches this one on the width attributes, but has a fixed height constraint.

Parameters:
  `height` - the fixed height.
Returns:
  A new constraint.

#### toRangeWidth

    public RectangleConstraint toRangeWidth(Range range)

Returns a constraint that matches this one on the height attributes, but has a range width constraint.

Parameters:
  `range` - the width range (`null` not permitted).
Returns:
  A new constraint.

#### toRangeHeight

    public RectangleConstraint toRangeHeight(Range range)

Returns a constraint that matches this one on the width attributes, but has a range height constraint.

Parameters:
  `range` - the height range (`null` not permitted).
Returns:
  A new constraint.

#### toString

    public java.lang.String toString()

Returns a string representation of this instance, mostly used for debugging purposes.

Overrides:
  `toString` in class `java.lang.Object`
Returns:
  A string.

#### calculateConstrainedSize

    public org.jfree.ui.Size2D calculateConstrainedSize(org.jfree.ui.Size2D base)

Returns the new size that reflects the constraints defined by this instance.

Parameters:
  `base` - the base size.
Returns:
  The constrained size.