Box2

Представляет выровненную по оси ограничительную рамку (AABB) в двумерном пространстве («бокс»).

Конструктор

Box2(min : Vector2, max : Vector2)

Создает Box2, ограниченное min и max.

Свойства

.min : Vector2

Vector2 представляет собой нижнюю (x, y) границу куба. По умолчанию (+Infinity, +Infinity).

.max : Vector2

Vector2 представляет собой нижнюю верхнюю (x, y) границу куба. По умолчанию (-Infinity, -Infinity).

Методы

.clampPoint(point : Vector2, target : Vector2) → Vector2

Clamps точка point в границах этого поля.

.clone() → Box2

Возвращает новый Box2 с теми же min и max, что и данный.

.containsBox(box : Box2) → Boolean

box - Box2 для проверки на включение.

Возвращает true, если это поле включает в себя все поле box. Если это и box идентичны, эта функция также возвращает true.

.containsPoint(point : Vector2) → Boolean

point - Vector2 для проверки на включение.

Возвращает true, если указанная точка point лежит внутри или на границах данного поля.

.copy(box : Box2) → Box2

Копирует значения min и max из box в текущий бокс.

.distanceToPoint(point : Vector2) → Float

point - Vector2 для измерения расстояния.

Возвращает расстояние от любого края этого поля до указанной точки. Если точка point лежит внутри этой области, расстояние будет равно 0.

.equals(box : Box2) → Boolean

box — бокс для сравнения с текущим.

Возвращает true, если у этого поля и box одинаковые нижняя и верхняя границы.

.expandByPoint(point : Vector2) → Box2

point - Vector2, которые должны быть включены в поле.

Расширяет границы этой области, включая point.

.expandByScalar(scalar : Float) → Box2

scalar — расстояние, на которое нужно увеличить box.

Расширяет каждое измерение поля на scalar. При отрицательном значении размеры ячейки сужаются.

.expandByVector(vector : Vector2) → Box2

vector - Vector2 для расширения поля.

Равностороннее расширение этого поля на vector. Ширина этого поля будет увеличена на x-компонент vector в обоих направлениях. Высота этого поля будет увеличена на y-компонент vector в обоих направлениях.

.getCenter(target : Vector2) → Vector2

target — результат будет скопирован в этот Vector2.

Возвращает центральную точку поля в виде Vector2.

.getParameter(point : Vector2, target : Vector2) → Vector2

Возвращает точку как пропорцию ширины и высоты данного поля.

.getSize(target : Vector2) → Vector2

target — результат будет скопирован в этот Vector2.

Возвращает ширину и высоту этого поля.

.intersect(box : Box2) → Box2

box — бокс для проверки пересечения.

Возвращает пересечение этого и box, устанавливая верхнюю границу этого бокса на меньшую из верхних границ двух боксов, а нижнюю границу этого бокса на большую из нижних границ двух боксов.

.intersectsBox(box : Box2) → Boolean

box — бокс для проверки пересечения.

Определяет, пересекает ли данный бокс box.

.isEmpty() → Boolean

Возвращает true, если бокс включает нулевые точки в своих границах. Обратите внимание, что квадрат с равными нижней и верхней границами все еще включает одну точку, общую для обеих границ.

.makeEmpty() → Box2

Делает текущий бокс пустым.

.set(min : Vector2, max : Vector2) → Box2

Устанавливает нижнюю и верхнюю (x, y) границы данного бокса. Обратите внимание, что этот метод только копирует значения из заданных объектов.

.setFromCenterAndSize(center : Vector2, size : Vector2) → Box2

Центрирует текущий бокс по center и устанавливает ширину и высоту этого бокса равными значениям, указанным в size.

.setFromPoints(points : Array) → Box2

points — массив Vector2s, который будет содержать итоговый бокс.

Устанавливает верхнюю и нижнюю границы этого бокса, чтобы включить все точки из points.

.translate(offset : Vector2) → Box2

offset — направление и расстояние смещения.

Добавляет offset к верхней и нижней границам этого бокса, эффективно перемещая текущий бокс на offset единиц в 2Д-пространстве.

.union(box : Box2) → Box2

box — бокс, который будет объединен с текущим боксом.

Объединяет текущий бокс с box, устанавливая верхнюю границу этого бокса на большую из верхних границ двух боксов, а нижнюю границу этого бокса на меньшую из нижних границ двух боксов.

Исходный файл

О том как получить исходный код этого модуля читайте тут.