## Uses of Class
com.io7m.jregions.core.parameterized.areas.PAreaBD

- Packages that use PAreaBD
  Package | Description
  --- | ---
  com.io7m.jregions.core.conversions | Functions to convert between parameterized and unparameterized types.
  com.io7m.jregions.core.parameterized.areas | Area types.
  com.io7m.jregions.generators | Quickcheck generators.

- - ### Uses of PAreaBD in com.io7m.jregions.core.conversions

    Methods in com.io7m.jregions.core.conversions that return PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `static <S> PAreaBD<S>` | AreaConversions.`toPAreaBD(AreaBD a)` Convert an area.

    Methods in com.io7m.jregions.core.conversions with parameters of type PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `static <S> AreaBD` | AreaConversions.`toAreaBD(PAreaBD<S> a)` Convert an area.

  - ### Uses of PAreaBD in com.io7m.jregions.core.parameterized.areas

    Methods in com.io7m.jregions.core.parameterized.areas that return PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `static <S> PAreaBD<S>` | PAreasBD.`alignCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` such that the center of the area is equal to the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMaxX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMinX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the X axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the Y axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside maximum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside minimum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMaxY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMinY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `PAreaBD<S>` | PAreaBD.Builder.`build()` Builds a new `PAreaBD`.
    `static <S,T> PAreaBD<T>` | PAreasBD.`cast(PAreaBD<S> area)` Brand a given area as belonging to a different coordinate space.
    `static <S> PAreaBD<S>` | PAreasBD.`containing(PAreaBD<S> a, PAreaBD<S> b)` Construct a area that will contain both `a` and `b`.
    `static <S> PAreaBD<S>` | PAreasBD.`create(BigDecimal x, BigDecimal y, BigDecimal size_x, BigDecimal size_y)` Create an area of size `size_x` on the X axis and size `size_y` on the Y axis, placing the minimum corner at `(x, y)`.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenHorizontal(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnX(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnX(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, horizontally.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnY(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, vertically.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenVertical(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnY(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`hollowOut(PAreaBD<S> outer, BigDecimal min_x_offset, BigDecimal max_x_offset, BigDecimal min_y_offset, BigDecimal max_y_offset)` Construct a new area that fits inside `outer` based on the given offsets from each edge.
    `static <S> PAreaBD<S>` | PAreasBD.`hollowOutEvenly(PAreaBD<S> outer, BigDecimal offset)` Equivalent to calling `PAreasBD.hollowOut(PAreaBD, java.math.BigDecimal, java.math.BigDecimal, java.math.BigDecimal, java.math.BigDecimal)` with `offset` for all offset parameters.
    `static <S> PAreaBD<S>` | PAreasBD.`moveAbsolute(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Move the given area to `(x, y)`.
    `static <S> PAreaBD<S>` | PAreasBD.`moveRelative(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Move the given area by `(x, y)`.
    `static <S> PAreaBD<S>` | PAreasBD.`moveToOrigin(PAreaBD<S> area)` Move the given area to `(0, 0)`.
    `static <S> PAreaBD<S>` | PAreaBD.`of(BigDecimal minimumX, BigDecimal maximumX, BigDecimal minimumY, BigDecimal maximumY)` Construct a new immutable `PAreaBD` instance.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromCenter(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMaxYMaxX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMaxYMinX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMinYMaxX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMinYMinX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromCenter(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMaxYMaxX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMaxYMinX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMinYMaxX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMinYMinX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.

    Methods in com.io7m.jregions.core.parameterized.areas that return types with arguments of type PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `static <S> PAreaXSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongParallelToX(PAreaBD<S> area, BigDecimal y)` Split `area` along a line parallel to the X axis placed at `y` units from its own minimum-y edge.
    `static <S> PAreaYSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongParallelToY(PAreaBD<S> area, BigDecimal x)` Split `area` along a line parallel to the Y axis placed at `x` units from its own minimum-x edge.
    `static <S> PAreaXYSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongXY(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Split `area` along a two axis-aligned perpendicular lines that intercept at `(x, y)`.

    Methods in com.io7m.jregions.core.parameterized.areas with parameters of type PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `static <S> PAreaBD<S>` | PAreasBD.`alignCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` such that the center of the area is equal to the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` such that the center of the area is equal to the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMaxX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMaxX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMinX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnXMinX(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignHorizontallyMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMaxYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMaxYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignMinYMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal, java.math.BigDecimal)` with zero offsets.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignMinYMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset_x, BigDecimal offset_y)` Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the X axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the X axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMaxXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMaxXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside maximum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinX(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnXMinXOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnXMinXOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the X axis against the inside minimum-x edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the Y axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Align the area `inner` along the Y axis in the center of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside maximum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside maximum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Equivalent to calling `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)` with a zero offset.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside minimum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignOnYMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Align the area `inner` along the Y axis against the inside minimum-y edge of `outer`.
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyCenter(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYCenter(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMaxY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMaxY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMaxYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMaxYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMinY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinY(PAreaBD<S> outer, PAreaBD<S> inner)` Deprecated. Use `PAreasBD.alignOnYMinY(PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S> PAreaBD<S>` | PAreasBD.`alignVerticallyMinYOffset(PAreaBD<S> outer, PAreaBD<S> inner, BigDecimal offset)` Deprecated. Use `PAreasBD.alignOnYMinYOffset(PAreaBD, PAreaBD, java.math.BigDecimal)`
    `static <S,T> PAreaBD<T>` | PAreasBD.`cast(PAreaBD<S> area)` Brand a given area as belonging to a different coordinate space.
    `static <S> PAreaBD<S>` | PAreasBD.`containing(PAreaBD<S> a, PAreaBD<S> b)` Construct a area that will contain both `a` and `b`.
    `static <S> PAreaBD<S>` | PAreasBD.`containing(PAreaBD<S> a, PAreaBD<S> b)` Construct a area that will contain both `a` and `b`.
    `static <S> boolean` | PAreasBD.`contains(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not one area contains another.
    `static <S> boolean` | PAreasBD.`contains(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not one area contains another.
    `static <S> boolean` | PAreasBD.`containsPoint(PAreaBD<S> a, BigDecimal x, BigDecimal y)` Determine whether or not a area contains a given point.
    `static <S> boolean` | PAreasBD.`couldFitInside(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not one area could fit inside another.
    `static <S> boolean` | PAreasBD.`couldFitInside(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not one area could fit inside another.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenHorizontal(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnX(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenHorizontal(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnX(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenHorizontal(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnX(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnX(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, horizontally.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnX(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, horizontally.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnX(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, horizontally.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnY(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, vertically.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnY(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, vertically.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenOnY(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Attempt to fit `fit` between `a` and `b`, vertically.
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenVertical(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnY(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenVertical(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnY(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`fitBetweenVertical(PAreaBD<S> fit, PAreaBD<S> a, PAreaBD<S> b)` Deprecated. Use `PAreasBD.fitBetweenOnY(PAreaBD, PAreaBD, PAreaBD)`
    `static <S> PAreaBD<S>` | PAreasBD.`hollowOut(PAreaBD<S> outer, BigDecimal min_x_offset, BigDecimal max_x_offset, BigDecimal min_y_offset, BigDecimal max_y_offset)` Construct a new area that fits inside `outer` based on the given offsets from each edge.
    `static <S> PAreaBD<S>` | PAreasBD.`hollowOutEvenly(PAreaBD<S> outer, BigDecimal offset)` Equivalent to calling `PAreasBD.hollowOut(PAreaBD, java.math.BigDecimal, java.math.BigDecimal, java.math.BigDecimal, java.math.BigDecimal)` with `offset` for all offset parameters.
    `static <S> PAreaBD<S>` | PAreasBD.`moveAbsolute(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Move the given area to `(x, y)`.
    `static <S> PAreaBD<S>` | PAreasBD.`moveRelative(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Move the given area by `(x, y)`.
    `static <S> PAreaBD<S>` | PAreasBD.`moveToOrigin(PAreaBD<S> area)` Move the given area to `(0, 0)`.
    `static <S> boolean` | PAreasBD.`overlaps(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not two areas overlap.
    `static <S> boolean` | PAreasBD.`overlaps(PAreaBD<S> a, PAreaBD<S> b)` Determine whether or not two areas overlap.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromCenter(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMaxYMaxX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMaxYMinX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMinYMaxX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`scaleFromMinYMinX(PAreaBD<S> area, BigDecimal x_diff, BigDecimal y_diff)` Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromCenter(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMaxYMaxX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMaxYMinX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMinYMaxX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> PAreaBD<S>` | PAreasBD.`setSizeFromMinYMinX(PAreaBD<S> area, BigDecimal sizeX, BigDecimal sizeY)` Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static <S> String` | PAreasBD.`show(PAreaBD<S> area)`
    `static <S> String` | PAreasBD.`showToBuilder(PAreaBD<S> area, StringBuilder sb)`
    `static <S> PAreaSizeBD<S>` | PAreasBD.`size(PAreaBD<S> area)`
    `static <S> PAreaXSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongParallelToX(PAreaBD<S> area, BigDecimal y)` Split `area` along a line parallel to the X axis placed at `y` units from its own minimum-y edge.
    `static <S> PAreaYSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongParallelToY(PAreaBD<S> area, BigDecimal x)` Split `area` along a line parallel to the Y axis placed at `x` units from its own minimum-x edge.
    `static <S> PAreaXYSplitBD<S,PAreaBD<S>>` | PAreasBD.`splitAlongXY(PAreaBD<S> area, BigDecimal x, BigDecimal y)` Split `area` along a two axis-aligned perpendicular lines that intercept at `(x, y)`.

  - ### Uses of PAreaBD in com.io7m.jregions.generators

    Methods in com.io7m.jregions.generators that return PAreaBD
    Modifier and Type | Method and Description
    --- | ---
    `PAreaBD<S>` | PAreaBDGenerator.`next()`

Copyright © 2017 <code@io7m.com> http://io7m.com