## 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
`static RectangleConstraint` `NONE` An instance representing no constraint.

Constructor Summary
`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
`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.