Класс: Phaser.Physics.Ninja.AABB
Конструктор
new AABB(body, x, y, width, height)
Конструктор AABB Ninja Physics.
Примечание: Этот класс можно значительно оптимизировать и уменьшить по размеру. Я оставляю эту задачу вам.
Параметры
| Имя | Тип | Описание |
|---|---|---|
body | Phaser.Physics.Ninja.Body | Тело, которому принадлежит эта форма. |
x | number | Координата x, по которой будет создана эта форма. |
y | number | Координата y, по которой будет создана эта форма. |
width | number | Ширина этого AABB. |
height | number | Высота этого AABB. |
- Исходный код: physics/ninja/AABB.js (Строка 20)
Свойства
- Исходный код: physics/ninja/AABB.js (Строка 86)
- Исходный код: physics/ninja/AABB.js (Строка 25)
- Исходный код: physics/ninja/AABB.js (Строка 64)
- Исходный код: physics/ninja/AABB.js (Строка 40)
- Исходный код: physics/ninja/AABB.js (Строка 35)
- Исходный код: physics/ninja/AABB.js (Строка 30)
- Исходный код: physics/ninja/AABB.js (Строка 81)
- Исходный код: physics/ninja/AABB.js (Строка 58)
- Исходный код: physics/ninja/AABB.js (Строка 46)
- Исходный код: physics/ninja/AABB.js (Строка 52)
aabbTileProjections : Object
Все обработчики отклика на столкновения.
body
Свойства:
| Имя | Тип | Описание |
|---|---|---|
system | Phaser.Physics.Ninja.Body | Ссылка на тело, которому принадлежит эта форма. |
[только для чтения] height : number
Высота.
oldpos : Phaser.Point
Положение этого объекта в предыдущем обновлении.
pos : Phaser.Point
Положение этого объекта.
system : Phaser.Physics.Ninja
Ссылка на физическую систему.
velocity : Phaser.Point
Скорость этого объекта.
[только для чтения] width : number
Ширина.
[только для чтения] xw : number
Половина ширины.
[только для чтения] yw
Свойства:
| Имя | Тип | Описание |
|---|---|---|
xw | number | Половина высоты. |
Публичные методы
- Source code: physics/ninja/AABB.js (Line 336)
- Source code: physics/ninja/AABB.js (Line 408)
- Source code: physics/ninja/AABB.js (Line 295)
- Source code: physics/ninja/AABB.js (Line 993)
- Source code: physics/ninja/AABB.js (Line 108)
- Source code: physics/ninja/AABB.js (Line 702)
- Source code: physics/ninja/AABB.js (Line 622)
- Source code: physics/ninja/AABB.js (Line 569)
- Source code: physics/ninja/AABB.js (Line 834)
collideAABBVsAABB(aabb)
Проверяет столкновение этого AABB с AABB.
Parameters
| Name | Type | Description |
|---|---|---|
aabb | Phaser.Physics.Ninja.AABB | AABB для проверки столкновения. |
collideAABBVsTile(tile)
Проверяет столкновение этого AABB с тайлом.
Parameters
| Name | Type | Description |
|---|---|---|
tile | Phaser.Physics.Ninja.Tile | Тайл для проверки столкновения. |
collideWorldBounds()
Проверяет столкновение этого AABB с границами мира.
destroy()
Уничтожает ссылку этого AABB на Body и System
integrate()
Обновляет позицию этого AABB.
projAABB_22DegB(x, y, obj, t) → {number}
Разрешает столкновение тайла под углом 22 градуса.
Parameters
| Name | Type | Description |
|---|---|---|
x | number | Глубина проникновения по оси x. |
y | number | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Returns
Результат столкновения.
projAABB_22DegS(x, y, obj, t) → {number}
Разрешает столкновение тайла под углом 22 градуса.
Parameters
| Name | Type | Description |
|---|---|---|
x | number | Глубина проникновения по оси x. |
y | number | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Returns
Результат столкновения.
projAABB_45Deg(x, y, obj, t) → {number}
Разрешает столкновение тайла под углом 45 градусов.
Parameters
| Name | Type | Description |
|---|---|---|
x | number | Глубина проникновения по оси x. |
y | number | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Returns
Результат столкновения.
projAABB_67DegB(x, y, obj, t) → {number}
Разрешает столкновение тайла под углом 67 градусов.
Parameters
| Name | Type | Description |
|---|---|---|
x | number | Глубина проникновения по оси x. |
y | number | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Returns
Результат столкновения.
projAABB_67DegS(x, y, obj, t) → {number}
Разрешает столкновение тайла под углом 67 градусов.
Parameters
| Name | Type | Description |
|---|---|---|
x | number | Глубина проникновения по оси x. |
y | number | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Returns
Результат столкновения.
- Исходный код: physics/ninja/AABB.js (Строка 755)
- Исходный код: physics/ninja/AABB.js (Строка 935)
- Исходный код: physics/ninja/AABB.js (Строка 885)
- Исходный код: physics/ninja/AABB.js (Строка 491)
- Исходный код: physics/ninja/AABB.js (Строка 510)
- Исходный код: physics/ninja/AABB.js (Строка 1003)
- Исходный код: physics/ninja/AABB.js (Строка 128)
projAABB_Concave(x, y, obj, t) → {число}
Обрабатывает столкновение с вогнутой плиткой.
Параметры
| Имя | Тип | Описание |
|---|---|---|
x | число | Глубина проникновения по оси x. |
y | число | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | Прямоугольник AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Плитка, участвующая в столкновении. |
Возвращает
Результат столкновения.
projAABB_Convex(x, y, obj, t) → {число}
Обрабатывает столкновение с выпуклой плиткой.
Параметры
| Имя | Тип | Описание |
|---|---|---|
x | число | Глубина проникновения по оси x. |
y | число | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | Прямоугольник AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Плитка, участвующая в столкновении. |
Возвращает
Результат столкновения.
projAABB_Full(x, y, obj, t) → {число}
Обрабатывает столкновение с полной плиткой.
Параметры
| Имя | Тип | Описание |
|---|---|---|
x | число | Глубина проникновения по оси x. |
y | число | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | Прямоугольник AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Плитка, участвующая в столкновении. |
Возвращает
Результат столкновения.
projAABB_Half(x, y, obj, t) → {число}
Обрабатывает столкновение с половинной плиткой.
Параметры
| Имя | Тип | Описание |
|---|---|---|
x | число | Глубина проникновения по оси x. |
y | число | Глубина проникновения по оси y. |
obj | Phaser.Physics.Ninja.AABB | Прямоугольник AABB, участвующий в столкновении. |
t | Phaser.Physics.Ninja.Tile | Плитка, участвующая в столкновении. |
Возвращает
Результат столкновения.
render(context, xOffset, yOffset, color, filled)
Отображает AABB для отладки.
Параметры
| Имя | Тип | Описание |
|---|---|---|
context | объект | Контекст для отображения. |
xOffset | число | Смещение по оси x от позиции AABB для отображения. |
yOffset | число | Смещение по оси y от позиции AABB для отображения. |
color | строка | Цвет отладочной формы (формат — строка CSS). |
filled | логическое | Отображать форму сплошной (true) или пустой (false). |
reportCollision(px, py, dx, dy)
Обрабатывает столкновение, не зависящее от партнеров, и применяет полученные силы.
Параметры
| Имя | Тип | Описание |
|---|---|---|
px | число | Скорость по касательной. |
py | число | Скорость по касательной. |
dx | число | Нормаль к столкновению. |
dy | число | Нормаль к столкновению. |
reportCollisionVsBody(px, py, dx, dy, obj)
Обрабатывает столкновение с телом и применяет полученные силы. Функция всё еще находится в стадии разработки и не работает полностью. Пожалуйста, исправьте, если можете!
Параметры
- Исходный код: physics/ninja/AABB.js (Строка 248)
- Исходный код: physics/ninja/AABB.js (Строка 202)
- Исходный код: physics/ninja/AABB.js (Строка 467)
- Исходный код: physics/ninja/AABB.js (Строка 216)
| Имя | Тип | Описание |
|---|---|---|
px | число | Касательная скорость |
py | число | Касательная скорость |
dx | число | Нормаль к столкновению |
dy | число | Нормаль к столкновению |
obj | число | Объект AABB, с которым столкнулись |
reportCollisionVsWorld(px, py, dx, dy)
Обработка столкновения со средой и применение полученных сил.
Параметры
| Имя | Тип | Описание |
|---|---|---|
px | число | Касательная скорость |
py | число | Касательная скорость |
dx | число | Нормаль к столкновению |
dy | число | Нормаль к столкновению |
resolveTile(x, y, body, tile) → {boolean}
Обработка столкновения с тайлом.
Параметры
| Имя | Тип | Описание |
|---|---|---|
x | число | Глубина проникновения по оси x. |
y | число | Глубина проникновения по оси y. |
body | Phaser.Physics.Ninja.AABB | AABB, участвующая в столкновении. |
tile | Phaser.Physics.Ninja.Tile | Тайл, участвующий в столкновении. |
Возвращаемое значение
True, если столкновение обработано, иначе false.
reverse()
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Physics.Ninja.AABB.html