public class MutableRect(
public var left: Float,
public var top: Float,
public var right: Float,
public var bottom: Float,
)
An mutable, 2D, axis-aligned, floating-point rectangle whose coordinates are relative to a given origin.
Parameters
| left | The offset of the left edge of this rectangle from the x axis. |
| top | The offset of the top edge of this rectangle from the y axis. |
| right | The offset of the right edge of this rectangle from the x axis. |
| bottom | The offset of the bottom edge of this rectangle from the y axis. |
Properties
width
public inline val width: Float
The distance between the left and right edges of this rectangle.
height
public inline val height: Float
The distance between the top and bottom edges of this rectangle.
size
public val size: Size
The distance between the upper-left corner and the lower-right corner of this rectangle.
isInfinite
public val isInfinite: Boolean
Whether any of the coordinates of this rectangle are equal to positive infinity.
isFinite
public val isFinite: Boolean
Whether all coordinates of this rectangle are finite.
isEmpty
public val isEmpty: Boolean
Whether this rectangle encloses a non-zero area. Negative areas are considered empty.
minDimension
public val minDimension: Float
The lesser of the magnitudes of the width and the height of this rectangle.
maxDimension
public val maxDimension: Float
The greater of the magnitudes of the width and the height of this rectangle.
topLeft
public val topLeft: Offset
The offset to the intersection of the top and left edges of this rectangle.
topCenter
public val topCenter: Offset
The offset to the center of the top edge of this rectangle.
topRight
public val topRight: Offset
The offset to the intersection of the top and right edges of this rectangle.
centerLeft
public val centerLeft: Offset
The offset to the center of the left edge of this rectangle.
center
public val center: Offset
The offset to the point halfway between the left and right and the top and bottom edges of this rectangle.
See also Size.center.
centerRight
public val centerRight: Offset
The offset to the center of the right edge of this rectangle.
bottomLeft
public val bottomLeft: Offset
The offset to the intersection of the bottom and left edges of this rectangle.
bottomCenter
public val bottomCenter: Offset
The offset to the center of the bottom edge of this rectangle.
bottomRight
public val bottomRight: Offset
The offset to the intersection of the bottom and right edges of this rectangle.
Functions
translate
public fun translate(offset: Offset): Unit
Translates the rect by the provided Offset.
translate
public fun translate(translateX: Float, translateY: Float)
Updates this rectangle with translateX added to the x components and translateY added to the y components.
inflate
public fun inflate(delta: Float)
Moves edges outwards by the given delta.
deflate
public fun deflate(delta: Float): Unit
Moves edges inwards by the given delta.
intersect
public fun intersect(left: Float, top: Float, right: Float, bottom: Float)
Modifies this to be the intersection of this and the rect formed by left, top, right, and bottom.
overlaps
public fun overlaps(other: Rect): Boolean
Whether other has a nonzero area of overlap with this rectangle.
overlaps
public fun overlaps(other: MutableRect): Boolean
Whether other has a nonzero area of overlap with this rectangle.
contains
public operator fun contains(offset: Offset): Boolean
Whether the point specified by the given offset (which is assumed to be relative to the origin) lies between the left and right and the top and bottom edges of this rectangle.
Rectangles include their top and left edges but exclude their bottom and right edges.
set
public fun set(left: Float, top: Float, right: Float, bottom: Float)
Sets new bounds to (left, top, right, bottom)