Spec-Zone.ru › Phaser

Класс: Phaser.Physics.P2.Body

Конструктор

new Body(game, sprite, x, y, mass)

Физическое тело, как правило, привязано к одному спрайту и определяет свойства, которые влияют на симуляцию физического тела.
Эти свойства влияют на то, как тело реагирует на силы, какие силы оно генерирует на себя (для имитации трения) и как реагирует на столкновения в сцене.
В большинстве случаев, свойства используются для моделирования физических эффектов. Каждое тело также имеет свои собственные значения свойств, которые определяют, как оно реагирует на силы и столкновения в сцене.
По умолчанию к телу добавляется одна прямоугольная форма, соответствующая размерам родительского спрайта. Используйте addShape, removeShape, clearShapes для добавления дополнительных форм вокруг тела.
Примечание: для предотвращения мерцания на мобильных устройствах при привязке к спрайту настоятельно рекомендуется использовать размеры спрайта, которые являются чётными по обеим осям, например, 128x128, а не 127x127.
Примечание: когда объекту игры присваивается физическое тело P2, его якорь x/y устанавливается в 0.5, что центрирует его.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
game Phaser.Game

Ссылка на текущую игру.

sprite Phaser.Sprite <optional>

Объект Sprite, к которому принадлежит это физическое тело.

x number <optional>
0

Координата x этого тела.

y number <optional>
0

Координата y этого тела.

mass number <optional>
1

Масса этого тела по умолчанию (0 = статическое).

Исходный код: physics/p2/Body.js (Строка 23)

Общедоступные свойства

<static> DYNAMIC : number

Динамическое тело. Динамические тела могут двигаться и реагировать на столкновения и силы.

Source code: physics/p2/Body.js (Line 1498)

<static> KINEMATIC : number

Кинематическое тело. Кинематические тела движутся только в соответствии со своей .velocity и не реагируют на столкновения или силу.

Source code: physics/p2/Body.js (Line 1514)

<static> STATIC : number

Статическое тело. Статические тела не двигаются и не реагируют на силы или столкновения.

Source code: physics/p2/Body.js (Line 1506)

allowSleep : boolean

-

Source code: physics/p2/Body.js (Line 1603)

angle : number

Угол тела в градусах от его исходной ориентации. Значения от 0 до 180 представляют вращение по часовой стрелке; значения от 0 до -180 представляют вращение против часовой стрелки.
Значения за пределами этого диапазона добавляются или вычитаются из 360 для получения значения в пределах диапазона. Например, оператор Body.angle = 450 эквивалентен Body.angle = 90.
Если вы хотите работать в радианах вместо градусов, используйте свойство Body.rotation. Работа в радианах быстрее, так как не нужно преобразовывать значения. Угол этого тела в градусах.

Source code: physics/p2/Body.js (Line 1626)

angularDamping : number

Затухание указывается как значение от 0 до 1, которое представляет собой долю скорости, теряемой в секунду. Угловое затухание, действующее на тело.

Source code: physics/p2/Body.js (Line 1650)

angularForce : number

Угловая сила, действующая на тело.

Source code: physics/p2/Body.js (Line 1671)

angularVelocity : number

Угловая скорость тела.

Source code: physics/p2/Body.js (Line 1691)

collidesWith :array

Массив CollisionGroups, с которыми сталкиваются фигуры этого тела.

Source code: physics/p2/Body.js (Line 112)

collideWorldBounds : boolean

Тело может быть настроено на автоматическое столкновение с границами мира, если это значение установлено в true. В противном случае оно покинет мир.
Обратите внимание, что это применимо только в том случае, если ваш мир имеет границы! Реакция на столкновение должна управляться с помощью CollisionMaterials.
Обратите также внимание, что при установке этого параметра он будет влиять только на уже существующие фигуры тела. Если вы затем добавите другие фигуры в свое тело
после установки этого параметра, оно не будет настраивать их на столкновение с границами. Должно ли тело сталкиваться с границами мира?

Source code: physics/p2/Body.js (Line 1949)

damping : number

Затухание указывается как значение от 0 до 1, которое представляет собой долю скорости, теряемой в секунду. Линейное затухание, действующее на тело в направлении скорости.

Source code: physics/p2/Body.js (Line 1711)

<internal> data : p2.Body

Данные тела p2.

Internal:
  • Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
Source code: physics/p2/Body.js (Line 59)

debug : boolean

Включить или отключить отладку отрисовки этого тела

Source code: physics/p2/Body.js (Line 1920)

debugBody : Phaser.Physics.P2.BodyDebug

Ссылка на отладочное тело.

Source code: physics/p2/Body.js (Line 122)

dirty : boolean

Внутренне используется Sprite.x/y

Source code: physics/p2/Body.js (Line 127)

dynamic : boolean

Возвращает true, если тело является динамическим. Установка Body.dynamic в 'false' сделает его статическим.

Source code: physics/p2/Body.js (Line 1545)

fixedRotation : boolean

-

Source code: physics/p2/Body.js (Line 1732)

force : Phaser.Physics.P2.InversePointProxy

Сила, приложенная к телу.

Source code: physics/p2/Body.js (Line 71)

game : Phaser.Game

Локальная ссылка на игру.

Source code: physics/p2/Body.js (Line 33)

gravity : Phaser.Point

Локально приложенная сила гравитации к телу. Применяется непосредственно перед шагом мира. ПРИМЕЧАНИЕ: в настоящее время не реализовано.

Source code: physics/p2/Body.js (Line 76)

[readonly] id : number

Идентификатор тела. Каждое тело, добавленное в мир, имеет уникальный идентификатор.

Source code: physics/p2/Body.js (Line 1905)

inertia : number

Момент инерции тела вокруг оси Z..

Source code: physics/p2/Body.js (Line 1755)

kinematic : boolean

Возвращает true, если тело Body является кинематическим. Установка Body.kinematic в 'false' сделает его статическим.

Source code: physics/p2/Body.js (Line 1574)

mass : number

Масса тела.

Source code: physics/p2/Body.js (Line 1775)

motionState : number

Тип движения этого тела. Должен быть одним из следующих: Body.STATIC (тело неподвижно), Body.DYNAMIC (тело может двигаться и реагировать на столкновения) и Body.KINEMATIC (движется только в соответствии со своей .velocity).

Source code: physics/p2/Body.js (Line 1799)

offset : Phaser.Point

Смещение физического тела от позиции Sprite по оси x/y.

Source code: physics/p2/Body.js (Line 53)

onBeginContact : Phaser.Signal

Вызывается при создании первого контакта между фигурами в двух телах.
Этот событие срабатывает во время шага, поэтому столкновение уже произошло.

Событие будет отправлено с 5 аргументами в таком порядке:

Phaser.Physics.P2.Body, с которым он находится в контакте. Может быть null, если Body был создан непосредственно в p2 world.
p2.Body, с которым это Body находится в контакте.
Фигура из этого тела, которая вызвала контакт.
Фигура из тела контакта.
Массив данных Contact Equation.

Source code: physics/p2/Body.js (Line 92)

onEndContact : Phaser.Signal

Вызывается при завершении контакта между фигурами в двух телах.
Это событие срабатывает во время шага, поэтому столкновение уже произошло.

Событие будет отправлено с 4 аргументами в таком порядке:

Phaser.Physics.P2.Body, с которым он находится в контакте. Может быть null, если Body был создан непосредственно в p2 world.
p2.Body, с которым это Body прекратил контакт.
Фигура из этого тела, которая вызвала исходный контакт.
Фигура из тела контакта.

Source code: physics/p2/Body.js (Line 107)

removeNextStep : boolean

Чтобы избежать удаления этого тела во время физического шага и возникновения проблем, установите removeNextStep в true, чтобы удалить его в следующем preUpdate.

Source code: physics/p2/Body.js (Line 117)

rotation : number

Угол тела в радианах.
Если вы хотите работать в градусах вместо радиан, используйте свойство Body.angle. Работа в радианах быстрее, так как не требуется конвертация значений. Угол этого тела в радианах.

Source code: physics/p2/Body.js (Line 1822)

sleepSpeedLimit : number

.

Source code: physics/p2/Body.js (Line 1845)

sprite : Phaser.Sprite

Ссылка на родительский Sprite.

Source code: physics/p2/Body.js (Line 43)

static : boolean

Возвращает true, если тело Body статическое. Установка Body.static в 'false' сделает его динамическим.

Source code: physics/p2/Body.js (Line 1516)

type : number

Тип физической системы, к которой принадлежит это тело.

Source code: physics/p2/Body.js (Line 48)

velocity : Phaser.Physics.P2.InversePointProxy

Скорость тела. Установка velocity.x в отрицательное значение переместит его влево, в положительное - вправо. velocity.y отрицательные значения перемещают вверх, положительные - вниз.

Source code: physics/p2/Body.js (Line 66)

world : Phaser.Physics.P2

Локальная ссылка на P2 World.

Source code: physics/p2/Body.js (Line 38)

x : number

Координата x этого тела.

Source code: physics/p2/Body.js (Line 1865)

y : number

Координата y этого тела.

Source code: physics/p2/Body.js (Line 1885)

Публичные методы

addCapsule(length, radius, offsetX, offsetY, rotation) → {p2.Capsule}

Добавляет фигуру Capsule в этот объект Body.
Вы можете контролировать смещение от центра тела и вращение.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
length number

Расстояние между конечными точками в пикселях.

radius number

Радиус капсулы в пикселях.

offsetX number <optional>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation number <optional>
0

Локальное вращение фигуры относительно центра масс тела, указанное в радианах.

Возвращаемое значение
p2.Capsule -

Фигура Capsule, которая была добавлена к объекту Body.

Исходный код: physics/p2/Body.js (Строка 1108)

addCircle(radius, offsetX, offsetY, rotation) → {p2.Circle}

Добавляет круглую фигуру Circle в этот объект Body. Вы можете контролировать смещение от центра тела и вращение.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
radius number

Радиус круга (в пикселях)

offsetX number <optional>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation number <optional>
0

Локальное вращение фигуры относительно центра масс тела, заданное в радианах.

Возвращаемое значение
p2.Circle -

Фигура Circle, которая была добавлена к объекту Body.

Исходный код: physics/p2/Body.js (Строка 1017)

addFixture(fixtureData) → {array}

Добавляет полигональную фигуру. Используется во время #loadPolygon.

Параметры
Имя Тип Описание
fixtureData string

Данные для фигуры. Содержит: isSensor, фильтр (коллизия) и фактические полигональные фигуры.

Возвращаемое значение
array -

Массив, содержащий сгенерированные фигуры для заданного многоугольника.

Исходный код: physics/p2/Body.js (Строка 1350)

addLine(length, offsetX, offsetY, rotation) → {p2.Line}

Добавляет линию Line в этот объект Body.
Фигура линии расположена вдоль оси x и простирается от [-length/2, 0] до [length/2,0].
Вы можете контролировать смещение от центра тела и вращение.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
length number

Длина этой линии (в пикселях)

offsetX number <optional>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation number <optional>
0

Локальное вращение фигуры относительно центра масс тела, заданное в радианах.

Возвращаемое значение
p2.Line -

Фигура Line, которая была добавлена к объекту Body.

Исходный код: physics/p2/Body.js (Строка 1088)

addParticle(offsetX, offsetY, rotation) → {p2.Particle}

Добавляет частицу Particle в этот объект Body. Вы можете контролировать смещение от центра тела и вращение.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
offsetX number <optional>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation number <optional>
0

Локальное вращение фигуры относительно центра масс тела, заданное в радианах.

Возвращаемое значение
p2.Particle -

Частица Particle, которая была добавлена к объекту Body.

Исходный код: physics/p2/Body.js (Строка 1071)

addPhaserPolygon(key, object) → {Array}

Считывает данные формы из файла физических данных, хранящегося в кэше игры, и добавляет его как многоугольник в этот объект Body.
Формат данных формы основан на выводе
пользовательского экспортера phaser для
PhysicsEditor

Параметры
Имя Тип Описание
key string

Ключ файла Physics Data, хранящегося в кэше игры.

object string

Ключ объекта внутри файла физических данных, из которого вы хотите загрузить данные формы.

Возвращаемое значение
Array -

Список созданных фикстур для использования с Phaser.Physics.P2.FixtureList

Source code: physics/p2/Body.js (Line 1310)

addPlane(offsetX, offsetY, rotation) → {p2.Plane}

Добавляет форму плоскости к этому телу. Плоскость направлена по оси Y. Вы можете контролировать смещение относительно центра тела и поворот.

Parameters
Name Type Argument Default Description
offsetX number <optional>
0

Локальное горизонтальное смещение формы относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение формы относительно центра масс тела.

rotation number <optional>
0

Локальное вращение формы относительно центра масс тела, заданное в радианах.

Returns
p2.Plane -

Форма плоскости, которая была добавлена к телу.

Source code: physics/p2/Body.js (Line 1054)

addPolygon(options, points) → {boolean}

Считывает путь многоугольной формы, собирает выпуклые фигуры из него и размещает их в правильных точках смещения. Фигура должна быть простой и без дыр.
Эта функция ожидает, что значения x.y будут заданы в пикселях. Если вы хотите предоставить их в масштабе мира p2, то вызовите Body.data.fromPolygon напрямую.

Parameters
Name Type Description
options object

Объект, содержащий параметры построения:

Properties
Name Type Argument Default Description
optimalDecomp boolean <optional>
false

Установите в значение true, если вам нужна оптимальная декомпозиция. Предупреждение: очень медленно для многоугольников более чем с 10 вершинами.

skipSimpleCheck boolean <optional>
false

Установите в значение true, если вы уже знаете, что путь не пересекается сам с собой.

removeCollinearPoints boolean | number <optional>
false

Установите число (значение порога угла) для удаления коллинеарных точек или false, чтобы сохранить все точки.

points Array.<number> | number

Массив 2d векторов, образующих выпуклый или вогнутый многоугольник.
Либо [[0,0], [0,1],...] или плоский массив чисел, которые будут интерпретированы как [x,y, x,y, ...],
или аргументы могут быть плоскими значениями x,y, например setPolygon(options, x,y, x,y, x,y, ...) где x и y являются числами.

Returns
boolean -

True при успехе, иначе false.

Source code: physics/p2/Body.js (Line 1128)

addRectangle(width, height, offsetX, offsetY, rotation) → {p2.Box}

Добавляет форму прямоугольника к этому телу. Вы можете контролировать смещение относительно центра тела и поворот.

Parameters
Name Type Argument Default Description
width number

Ширина прямоугольника в пикселях.

height number

Высота прямоугольника в пикселях.

offsetX number <optional>
0

Локальное горизонтальное смещение формы относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение формы относительно центра масс тела.

rotation number <optional>
0

Локальное вращение формы относительно центра масс тела, заданное в радианах.

Returns
p2.Box -

Форма, которая была добавлена к телу.

Source code: physics/p2/Body.js (Line 1035)

addShape(shape, offsetX, offsetY, rotation) → {p2.Shape}

Добавляет форму к телу. Вы можете передать локальную трансформацию при добавлении формы, чтобы форма получила смещение и угол относительно центра масс тела.
Автоматически обновит свойства массы и радиус ограничивающей области.
Если у этого тела был ранее заданный Collision Group, вам нужно будет повторно применить его к новой форме, которую это создает.

Parameters
Name Type Argument Default Description
shape p2.Shape

Форма для добавления к телу.

offsetX number <optional>
0

Локальное горизонтальное смещение формы относительно центра масс тела.

offsetY number <optional>
0

Локальное вертикальное смещение формы относительно центра масс тела.

rotation number <optional>
0

Локальное вращение формы относительно центра масс тела, заданное в радианах.

Returns
p2.Shape -

Форма, которая была добавлена к телу.

Source code: physics/p2/Body.js (Line 992)

addToWorld()

Добавляет это физическое тело в мир.

Source code: physics/p2/Body.js (Line 904)

adjustCenterOfMass()

Перемещает смещения формы так, чтобы их центр масс стал центром масс тела.

Source code: physics/p2/Body.js (Line 490)

applyDamping(dt)

Применить затухание, см. http://code.google.com/p/bullet/issues/detail?id=74 для получения подробной информации.

Параметры
Имя Тип Описание
dt число

Текущий шаг по времени.

Исходный код: physics/p2/Body.js (Строка 516)

applyForce(force, worldX, worldY)

Применить силу к мировой точке.

Это может быть, например, точка на поверхности RigidBody. Применение силы
таким образом добавит Body.force и Body.angularForce.

Параметры
Имя Тип Описание
force Float32Array | Массив

Вектор силы для добавления.

worldX число

Мировая точка x для применения силы.

worldY число

Мировая точка y для применения силы.

Исходный код: physics/p2/Body.js (Строка 561)

applyImpulse(impulse, worldX, worldY)

Применить импульс к точке, относительно тела.
Это может быть, например, точка на поверхности тела. Импульс — это сила, добавленная к телу в течение короткого
периода времени (импульс = сила * время). Импульсы будут добавлены к Body.velocity и Body.angularVelocity.

Параметры
Имя Тип Описание
impulse Float32Array | Массив

Вектор импульса для добавления, ориентированный в пространстве мира.

worldX число

Точка, относящаяся к телу в мировом пространстве. Если не указана, она устанавливается в ноль, и весь импульс будет приложен к центру масс.

worldY число

Точка, относящаяся к телу в мировом пространстве. Если не указана, она устанавливается в ноль, и весь импульс будет приложен к центру масс.

Исходный код: physics/p2/Body.js (Строка 528)

applyImpulseLocal(impulse, localX, localY)

Применить импульс к точке, локальной для тела.

Это может быть, например, точка на поверхности тела. Импульс — это сила, добавленная к телу в течение короткого
периода времени (импульс = сила * время). Импульсы будут добавлены к Body.velocity и Body.angularVelocity.

Параметры
Имя Тип Описание
impulse Float32Array | Массив

Вектор импульса для добавления, ориентированный в локальном пространстве.

localX число

Локальная точка на теле.

localY число

Локальная точка на теле.

Исходный код: physics/p2/Body.js (Строка 544)

clearCollision(clearGroup, clearMask, shape)

Очищает данные столкновения из фигур в этом теле. Дополнительно очищает группу и/или маску.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
clearGroup логическое <необязательно>
true

Очистить значение collisionGroup из фигуры/фигур?

clearMask логическое <необязательно>
true

Очистить значение collisionMask из фигуры/фигур?

shape p2.Shape <необязательно>

Необязательная фигура. Если не указана, данные столкновения будут очищены из всех фигур в этом теле.

Исходный код: physics/p2/Body.js (Строка 323)

clearShapes()

Удаляет все фигуры из этого тела.

Исходный код: physics/p2/Body.js (Строка 974)

collides(group, callback, callbackContext, shape)

Добавляет указанную группу столкновений или массив групп столкновений в список групп, с которыми это тело будет сталкиваться, и обновляет маски столкновений.

Параметры
Имя Тип Аргумент Описание
group Phaser.Physics.CollisionGroup | массив

Группа столкновений или массив групп столкновений, с которыми фигуры этого тела будут сталкиваться.

callback функция <необязательно>

Необязательный обработчик, который будет вызван, когда это тело столкнется с заданной группой.

callbackContext объект <необязательно>

Контекст, в котором будет вызван обработчик.

shape p2.Shape <необязательно>

Необязательная фигура. Если не указана, маска столкновения будет добавлена ко всем фигурам в этом теле.

Исходный код: physics/p2/Body.js (Строка 435)

createBodyCallback(object, callback, callbackContext)

Устанавливает обработчик, который будет вызываться всякий раз, когда фигура в этом теле сталкивается с фигурой в заданном теле. Тест на столкновение выполняется по значениям body.id.
Обработчику будут отправлены 4 параметра: это тело, тело, с которым произошло столкновение, фигура в этом теле и фигура в сталкивающемся теле.
Обратите внимание, что событие столкновения происходит после разрешения столкновения, поэтому оно не может быть использовано для предотвращения столкновения.
Это также происходит в середине шага. Поэтому не уничтожайте тело во время этого обработчика, вместо этого установите safeDestroy в true, чтобы оно было уничтожено на следующем преобновлении.

Параметры
Имя Тип Описание
object Phaser.Sprite | Phaser.TileSprite | Phaser.Physics.P2.Body | p2.Body

Объект, для которого будут отправляться события столкновения.

callback функция

Обработчик, вызываемый при столкновении. Установите в null, чтобы очистить ранее установленный обработчик.

callbackContext объект

Контекст, в котором будет происходить вызов обработчика.

Исходный код: physics/p2/Body.js (Строка 180)

createGroupCallback(group, callback, callbackContext)

Устанавливает обратный вызов, который будет срабатывать всякий раз, когда этот Body сталкивается с заданной группой. Тест на столкновение выполняется по значениям shape.collisionGroup.
Обратный вызов получит 4 параметра: этот body, body, с которым произошло столкновение, Shape в этом body и Shape в body, вызвавшем столкновение.
Этот обратный вызов будет срабатывать только в том случае, если этому Body была назначена группа столкновений.
Обратите внимание, что событие столкновения происходит после разрешения коллизии, поэтому с его помощью нельзя предотвратить столкновение.
Это также происходит в середине шага. Поэтому не уничтожайте Body во время этого обратного вызова, вместо этого установите safeDestroy в true, чтобы он был уничтожен на следующем preUpdate.

Параметры
Имя Тип Описание
group Phaser.Physics.CollisionGroup

Группа, для которой будут отправляться события столкновения.

callback function

Обратный вызов, который будет срабатывать при столкновении. Установите в null, чтобы очистить ранее установленный обратный вызов.

callbackContext object

Контекст, в котором будет срабатывать обратный вызов.

Исходный код: physics/p2/Body.js (Строка 220)

destroy()

Уничтожает этот Body и все ссылки, которые он хранит на другие объекты.

Исходный код: physics/p2/Body.js (Строка 943)

getCollisionMask() → {number}

Получает битовую маску столкновений из групп, с которыми сталкивается этот body.

Возвращает
number -

Битовая маска.

Исходный код: physics/p2/Body.js (Строка 247)

getVelocityAtPoint(result, relativePoint) → {Array}

Получает скорость точки в теле.

Параметры
Имя Тип Описание
result Array

Вектор для хранения результата.

relativePoint Array

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

Возвращает
Array -

Вектор результата.

Исходный код: physics/p2/Body.js (Строка 502)

loadPolygon(key, object) → {boolean}

Считывает данные формы из файла данных физики, хранящегося в Game.Cache, и добавляет его в качестве многоугольника в этот Body.

Помимо считывания данных из кэша, вы также можете передать null в качестве первого аргумента и объект данных физики во второй. При этом вы должны заранее убедиться, что структура объекта правильная.

Для получения дополнительной информации см. формат экспорта Lime / Corona Physics Editor.

Параметры
Имя Тип Описание
key string

Ключ файла данных физики, как он хранится в Game.Cache. В качестве альтернативы, установите значение в null и передайте данные в качестве второго аргумента.

object string | object

Ключ объекта в файле данных физики, из которого необходимо загрузить данные формы, или, если ключ равен null, передать сам объект данных физики в качестве этого параметра.

Возвращает
boolean -

True при успехе, иначе false.

Исходный код: physics/p2/Body.js (Строка 1422)

moveBackward(speed)

Перемещает Body назад на основе его текущего угла и заданной скорости.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed number

Скорость обратного движения.

Исходный код: physics/p2/Body.js (Строка 691)

moveDown(speed)

Если этот Body динамический, то он будет перемещен вниз, установив его скорость по оси y на заданную величину.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed number

Скорость движения вниз в пикселях в секунду.

Исходный код: physics/p2/Body.js (Строка 815)

moveForward(speed)

Перемещает Body вперёд на основе его текущего угла и заданной скорости.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed number

Скорость движения вперёд.

Исходный код: physics/p2/Body.js (Строка 674)

moveLeft(speed)

Если этот Body динамический, то он будет перемещен влево, установив его скорость по оси x на заданную величину.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed number

Скорость движения влево в пикселях в секунду.

Исходный код: physics/p2/Body.js (Строка 776)

moveRight(speed)

Если этот Body динамический, то он будет перемещен вправо, установив его скорость по оси x на заданную величину.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed number

Скорость движения вправо в пикселях в секунду.

Исходный код: physics/p2/Body.js (Строка 789)

moveUp(speed)

Если этот Body динамический, то он будет перемещен вверх, установив его скорость по оси y на заданную величину.
Скорость выражается в пикселях в секунду. Значение 100 перемещает 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен подниматься, в пикселях в секунду.

Исходный код: physics/p2/Body.js (Строка 802)

<внутренний> postUpdate()

Внутренний метод. Вызывается непосредственно перед тем, как спрайты отправляются в рендер, и после завершения функции обновления.

Внутренний:
  • Этот член является внутренним (защищенным) и может быть изменён или удалён в будущем.
Исходный код: physics/p2/Body.js (Строка 846)

<внутренний> preUpdate()

Внутренний метод. Вызывается непосредственно перед тем, как спрайты отправляются в рендер, и после завершения функции обновления.

Внутренний:
  • Этот член является внутренним (защищенным) и может быть изменён или удалён в будущем.
Исходный код: physics/p2/Body.js (Строка 828)

removeCollisionGroup(group, clearCallback, shape)

Удаляет заданную группу столкновений или массив групп столкновений из списка групп, с которыми этот объект будет сталкиваться, и обновляет маски столкновений.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
group Phaser.Physics.CollisionGroup | массив

Группа столкновений или массив групп столкновений, с которыми формы этого тела больше не должны сталкиваться.

clearCallback логическое <необязательно>
true

Очистить обратный вызов, который будет срабатывать, когда это тело столкнётся с данной группой?

shape p2.Shape <необязательно>

Необязательная форма. Если не указано, обновлённая маска столкновений будет добавлена ко всем формам в этом теле.

Исходный код: physics/p2/Body.js (Строка 371)

removeFromWorld()

Удаляет это физическое тело из мира.

Исходный код: physics/p2/Body.js (Строка 929)

removeShape(shape) → {логическое}

Удаляет форму из тела. Автоматически обновит свойства массы и радиус ограничивающего прямоугольника.

Параметры
Имя Тип Описание
shape p2.Circle | p2.Rectangle | p2.Plane | p2.Line | p2.Particle

Форма для удаления из тела.

Возвращает
логическое -

True, если форма была найдена и удалена, иначе false.

Исходный код: physics/p2/Body.js (Строка 1194)

reset(x, y, resetDamping, resetMass)

Сбрасывает силу, скорость (линейную и угловую) и вращение тела. Необязательно сбрасывает затухание и массу.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
x число

Новая позиция x тела.

y число

Новая позиция y тела.

resetDamping логическое <необязательно>
false

Сбрасывает линейное и угловое затухание.

resetMass логическое <необязательно>
false

Устанавливает массу тела обратно в 1.

Исходный код: physics/p2/Body.js (Строка 871)

reverse(speed)

Применяет силу к телу, которая заставляет его «толкаться» назад (в обратном направлении), исходя из его текущего угла и заданной скорости.
Скорость представлена в пикселях в секунду. Таким образом, значение 100 означало бы перемещение на 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен двигаться назад.

Исходный код: physics/p2/Body.js (Строка 759)

rotateLeft(speed)

Это повернёт тело на заданную скорость влево (против часовой стрелки).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен вращаться.

Исходный код: physics/p2/Body.js (Строка 650)

rotateRight(speed)

Это повернёт тело на заданную скорость вправо (по часовой стрелке).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен вращаться.

Исходный код: physics/p2/Body.js (Строка 662)

setCircle(radius, offsetX, offsetY, rotation)

Очищает все ранее установленные фигуры. Затем создаёт новую круглую фигуру и добавляет её к этому телу.
Если у этого тела была ранее установленная группа столкновений, вам нужно будет повторно применить её к новой форме, которую это создаёт.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
radius число

Радиус этого круга (в пикселях)

offsetX число <необязательно>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY число <необязательно>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation число <необязательно>
0

Локальное вращение фигуры относительно центра масс тела, заданное в радианах.

Исходный код: physics/p2/Body.js (Строка 1210)

setCollisionGroup(group, shape)

Устанавливает заданную группу столкновений как группу столкновений для всех фигур в этом теле, если фигура не указана.
Это также сбрасывает collisionMask.

Параметры
Имя Тип Аргумент Описание
group Phaser.Physics.CollisionGroup

Группа столкновений, которую будут использовать фигуры этого тела.

shape p2.Shape <необязательно>

Необязательная фигура. Если она не указана, группа столкновений будет добавлена ко всем фигурам в этом теле.

Исходный код: physics/p2/Body.js (Строка 295)

setMaterial(material, shape)

Добавляет заданный материал ко всем фигурам, принадлежащим этому телу.
Если вы хотите применить его только к определенной фигуре в этом теле, укажите ее в качестве второго параметра.

Параметры
Имя Тип Аргумент Описание
material Phaser.Physics.P2.Material

Материал, который будет применен.

shape p2.Shape <необязательно>

Необязательная фигура. Если она не указана, материал будет добавлен ко всем фигурам в этом теле.

Исходный код: physics/p2/Body.js (Строка 1272)

setRectangle(width, height, offsetX, offsetY, rotation) → {p2.Rectangle}

Очищает все ранее заданные фигуры. Создает новую прямоугольную фигуру заданного размера и смещения и добавляет ее в это тело.
Если вы хотите создать прямоугольник, соответствующий размеру Sprite или Image, см. Body.setRectangleFromSprite.
Если в этом теле была ранее установлена группа столкновений, вам необходимо повторно применить ее к новой фигуре, созданной этим методом.

Параметры
Имя Тип Аргумент Значение по умолчанию Описание
width число <необязательно>
16

Ширина прямоугольника в пикселях.

height число <необязательно>
16

Высота прямоугольника в пикселях.

offsetX число <необязательно>
0

Локальное горизонтальное смещение фигуры относительно центра масс тела.

offsetY число <необязательно>
0

Локальное вертикальное смещение фигуры относительно центра масс тела.

rotation число <необязательно>
0

Локальное вращение фигуры относительно центра масс тела, заданное в радианах.

Возвращает
p2.Rectangle -

Прямоугольная фигура, добавленная в тело.

Исходный код: physics/p2/Body.js (Строка 1228)

setRectangleFromSprite(sprite) → {p2.Rectangle}

Очищает все ранее заданные фигуры.
Затем создаёт прямоугольную фигуру, размеры и ориентацию которой соответствуют размеру и ориентации заданного Sprite.
Если Sprite не указан, используется родитель этого тела по умолчанию.
Если в этом теле была ранее установлена группа столкновений, вам необходимо повторно применить ее к новой фигуре, созданной этим методом.

Параметры
Имя Тип Аргумент Описание
sprite Phaser.Sprite | Phaser.Image <необязательно>

Sprite, размеры и ориентация которого будут использованы для прямоугольника.

Возвращает
p2.Rectangle -

Прямоугольная фигура, добавленная в тело.

Исходный код: physics/p2/Body.js (Строка 1252)

setZeroDamping()

Устанавливает затухание тела и угловое затухание в ноль.

Исходный код: physics/p2/Body.js (Строка 612)

setZeroForce()

Устанавливает силу на тело в ноль.

Исходный код: physics/p2/Body.js (Строка 578)

setZeroRotation()

Если это динамическое тело, то это обнулит его угловую скорость.

Исходный код: physics/p2/Body.js (Строка 589)

setZeroVelocity()

Если это динамическое тело, то это обнулит его скорость по обеим осям.

Исходный код: physics/p2/Body.js (Строка 600)

shapeChanged()

Обновляет вывод отладки, если изменяются какие-либо фигуры тела.

Исходный код: physics/p2/Body.js (Строка 1296)

thrust(speed)

Применяет силу к телу, которая заставляет его «толкаться» вперед, исходя из его текущего угла и заданной скорости.
Скорость представлена в пикселях в секунду. Значение 100 означало бы перемещение на 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed число

Скорость, с которой должен происходить толчок.

Исходный код: physics/p2/Body.js (Строка 708)

thrustLeft(speed)

Применяет силу к объекту Body, заставляя его «толкаться» влево, основываясь на текущем угле и заданной скорости.
Скорость представлена в пикселях в секунду. Значение 100 соответствует перемещению на 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен двигаться влево.

Исходный код: physics/p2/Body.js (Строка 725)

thrustRight(speed)

Применяет силу к объекту Body, заставляя его «толкаться» вправо, основываясь на текущем угле и заданной скорости.
Скорость представлена в пикселях в секунду. Значение 100 соответствует перемещению на 100 пикселей за 1 секунду (1000 мс).

Параметры
Имя Тип Описание
speed число

Скорость, с которой он должен двигаться вправо.

Исходный код: physics/p2/Body.js (Строка 742)

toLocalFrame(out, worldPoint)

Преобразование мировой точки в локальную систему координат объекта.

Параметры
Имя Тип Описание
out Float32Array | Массив

Вектор для хранения результата.

worldPoint Float32Array | Массив

Вводной мировой вектор.

Исходный код: physics/p2/Body.js (Строка 624)

toWorldFrame(out, localPoint)

Преобразование локальной точки в мировую систему координат.

Параметры
Имя Тип Описание
out Массив

Вектор для хранения результата.

localPoint Массив

Входной локальный вектор.

Исходный код: physics/p2/Body.js (Строка 637)

updateCollisionMask(shape)

Обновляет маску столкновений.

Параметры
Имя Тип Аргумент Описание
shape p2.Shape <необязательно>

Необязательный Shape. Если не указан, группа столкновений будет добавлена ко всем Shape в этом Body.

Исходный код: physics/p2/Body.js (Строка 271)

© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Physics.P2.Body.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API