midio_ui/rect

Types

Rect[T] = object
  pos*: Vec2[T]
  size*: Vec2[T]

Procs

proc rect[T: Number](pos: Vec2[T]; size: Vec2[T]): Rect[T]
proc rect[T: Number](l: T; t: T; r: T; b: T): Rect[T]
proc rect[T: Number](val: T): Rect[T]
proc rectFromPoints[T: Number](p1: Vec2[T]; p2: Vec2[T]): Rect[T]
proc translate[T: Number](self: Rect[T]; trans: Vec2[T]): Rect[T]
proc x[T: Number](self: Rect[T]): Number
proc y[T: Number](self: Rect[T]): Number
proc width[T: Number](self: Rect[T]): T
proc height[T: Number](self: Rect[T]): T
proc left[T: Number](self: Rect[T]): T
proc top[T: Number](self: Rect[T]): T
proc right[T: Number](self: Rect[T]): T
proc bottom[T: Number](self: Rect[T]): T
proc center(self: Rect[float]): Vec2[float] {...}{.raises: [], tags: [].}
proc `[]`[T: Number](self: Rect[T]; i: range[0 .. 3]): T
proc subdivideVertical[T: Number](self: Rect[T]; atY: Number): SubdivisionV
proc subdivideHorizontal[T: Number](self: Rect[T]; atX: Number): SubdivisionH
proc inflate[T: Number](self: Rect[T]; thickness: Thickness): Rect
proc deflate[T: Number](self: Rect[T]; thickness: Thickness): Rect
proc withX[T: Number](self: Rect[T]; x: T): Rect[T]
proc withY[T: Number](self: Rect[T]; y: T): Rect[T]
proc withPos[T: Number](self: Rect[T]; pos: Vec2[T]): Rect[T]
proc withSize[T: Number](self: Rect[T]; size: Vec2[T]): Rect[T]
proc withWidth[T: Number](self: Rect[T]; w: Number): Rect[T]
proc withHeight[T: Number](self: Rect[T]; h: Number): Rect[T]
proc equals[T: Number](self: Rect[T]; other: Rect[T]): bool
proc intersects[T: Number](a: Rect[T]; b: Rect[T]): bool