C# Класс Project290.Physics.Dynamics.Body

Наследование: IDisposable
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
ControllerFilter ControllerFilter
PhysicsLogicFilter PhysicsLogicFilter

Открытые методы

Метод Описание
ApplyAngularImpulse ( float impulse ) : void

Apply an angular impulse.

ApplyForce ( Vector2 &force ) : void

Applies a force at the center of mass.

ApplyForce ( Vector2 force, Vector2 point ) : void

Apply a force at a world point. If the force is not applied at the center of mass, it will generate a torque and affect the angular velocity. This wakes up the body.

ApplyLinearImpulse ( Vector2 impulse ) : void

Apply an impulse at a point. This immediately modifies the velocity. This wakes up the body.

ApplyLinearImpulse ( Vector2 impulse, Vector2 point ) : void

Apply an impulse at a point. This immediately modifies the velocity. It also modifies the angular velocity if the point of application is not at the center of mass. This wakes up the body.

ApplyTorque ( float torque ) : void

Apply a torque. This affects the angular velocity without affecting the linear velocity of the center of mass. This wakes up the body.

Body ( World world ) : System
Body ( World world, Object userData ) : System
CreateFixture ( Shape shape ) : Fixture

Creates a fixture and attach it to this body. If the density is non-zero, this function automatically updates the mass of the body. Contacts are not created until the next time step. Warning: This function is locked during callbacks.

CreateFixture ( Shape shape, Object userData ) : Fixture

Creates a fixture and attach it to this body. If the density is non-zero, this function automatically updates the mass of the body. Contacts are not created until the next time step. Warning: This function is locked during callbacks.

DestroyFixture ( Fixture fixture ) : void

Destroy a fixture. This removes the fixture from the broad-phase and destroys all contacts associated with this fixture. This will automatically adjust the mass of the body if the body is dynamic and the fixture has positive density. All fixtures attached to a body are implicitly destroyed when the body is destroyed. Warning: This function is locked during callbacks.

Dispose ( ) : void
GetLinearVelocityFromLocalPoint ( Vector2 localPoint ) : Vector2

Get the world velocity of a local point.

GetLinearVelocityFromWorldPoint ( Vector2 worldPoint ) : Vector2

Get the world linear velocity of a world point attached to this body.

GetLocalPoint ( Vector2 &worldPoint ) : Vector2

Gets a local point relative to the body's origin given a world point. Note that the vector only takes the rotation into account, not the position.

GetLocalVector ( Vector2 &worldVector ) : Vector2

Gets a local vector given a world vector. Note that the vector only takes the rotation into account, not the position.

GetTransform ( Transform &transform ) : void

Get the body transform for the body's origin.

GetWorldPoint ( Vector2 &localPoint ) : Vector2

Get the world coordinates of a point given the local coordinates.

GetWorldVector ( Vector2 &localVector ) : Vector2

Get the world coordinates of a vector given the local coordinates. Note that the vector only takes the rotation into account, not the position.

ResetDynamics ( ) : void

Resets the dynamics of this body. Sets torque, force and linear/angular velocity to 0

ResetMassData ( ) : void

This resets the mass properties to the sum of the mass properties of the fixtures. This normally does not need to be called unless you called SetMassData to override the mass and you later want to reset the mass.

SetTransform ( Vector2 &position, float rotation ) : void

Set the position of the body's origin and rotation. This breaks any contacts and wakes the other bodies. Manipulating a body's transform may cause non-physical behavior.

SetTransformIgnoreContacts ( Vector2 &position, float angle ) : void

For teleporting a body without considering new contacts immediately.

Приватные методы

Метод Описание
Advance ( float alpha ) : void
ShouldCollide ( Body other ) : bool

This is used to prevent connected bodies from colliding. It may lie, depending on the collideConnected flag.

SynchronizeFixtures ( ) : void
SynchronizeTransform ( ) : void

Описание методов

ApplyAngularImpulse() публичный Метод

Apply an angular impulse.
public ApplyAngularImpulse ( float impulse ) : void
impulse float The angular impulse in units of kg*m*m/s.
Результат void

ApplyForce() публичный Метод

Applies a force at the center of mass.
public ApplyForce ( Vector2 &force ) : void
force Vector2 The force.
Результат void

ApplyForce() публичный Метод

Apply a force at a world point. If the force is not applied at the center of mass, it will generate a torque and affect the angular velocity. This wakes up the body.
public ApplyForce ( Vector2 force, Vector2 point ) : void
force Vector2 The world force vector, usually in Newtons (N).
point Vector2 The world position of the point of application.
Результат void

ApplyLinearImpulse() публичный Метод

Apply an impulse at a point. This immediately modifies the velocity. This wakes up the body.
public ApplyLinearImpulse ( Vector2 impulse ) : void
impulse Vector2 The world impulse vector, usually in N-seconds or kg-m/s.
Результат void

ApplyLinearImpulse() публичный Метод

Apply an impulse at a point. This immediately modifies the velocity. It also modifies the angular velocity if the point of application is not at the center of mass. This wakes up the body.
public ApplyLinearImpulse ( Vector2 impulse, Vector2 point ) : void
impulse Vector2 The world impulse vector, usually in N-seconds or kg-m/s.
point Vector2 The world position of the point of application.
Результат void

ApplyTorque() публичный Метод

Apply a torque. This affects the angular velocity without affecting the linear velocity of the center of mass. This wakes up the body.
public ApplyTorque ( float torque ) : void
torque float The torque about the z-axis (out of the screen), usually in N-m.
Результат void

Body() публичный Метод

public Body ( World world ) : System
world World
Результат System

Body() публичный Метод

public Body ( World world, Object userData ) : System
world World
userData Object
Результат System

CreateFixture() публичный Метод

Creates a fixture and attach it to this body. If the density is non-zero, this function automatically updates the mass of the body. Contacts are not created until the next time step. Warning: This function is locked during callbacks.
public CreateFixture ( Shape shape ) : Fixture
shape Shape The shape.
Результат Fixture

CreateFixture() публичный Метод

Creates a fixture and attach it to this body. If the density is non-zero, this function automatically updates the mass of the body. Contacts are not created until the next time step. Warning: This function is locked during callbacks.
public CreateFixture ( Shape shape, Object userData ) : Fixture
shape Shape The shape.
userData Object Application specific data
Результат Fixture

DestroyFixture() публичный Метод

Destroy a fixture. This removes the fixture from the broad-phase and destroys all contacts associated with this fixture. This will automatically adjust the mass of the body if the body is dynamic and the fixture has positive density. All fixtures attached to a body are implicitly destroyed when the body is destroyed. Warning: This function is locked during callbacks.
public DestroyFixture ( Fixture fixture ) : void
fixture Fixture The fixture to be removed.
Результат void

Dispose() публичный Метод

public Dispose ( ) : void
Результат void

GetLinearVelocityFromLocalPoint() публичный Метод

Get the world velocity of a local point.
public GetLinearVelocityFromLocalPoint ( Vector2 localPoint ) : Vector2
localPoint Vector2 A point in local coordinates.
Результат Vector2

GetLinearVelocityFromWorldPoint() публичный Метод

Get the world linear velocity of a world point attached to this body.
public GetLinearVelocityFromWorldPoint ( Vector2 worldPoint ) : Vector2
worldPoint Vector2 A point in world coordinates.
Результат Vector2

GetLocalPoint() публичный Метод

Gets a local point relative to the body's origin given a world point. Note that the vector only takes the rotation into account, not the position.
public GetLocalPoint ( Vector2 &worldPoint ) : Vector2
worldPoint Vector2 A point in world coordinates.
Результат Vector2

GetLocalVector() публичный Метод

Gets a local vector given a world vector. Note that the vector only takes the rotation into account, not the position.
public GetLocalVector ( Vector2 &worldVector ) : Vector2
worldVector Vector2 A vector in world coordinates.
Результат Vector2

GetTransform() публичный Метод

Get the body transform for the body's origin.
public GetTransform ( Transform &transform ) : void
transform Transform The transform of the body's origin.
Результат void

GetWorldPoint() публичный Метод

Get the world coordinates of a point given the local coordinates.
public GetWorldPoint ( Vector2 &localPoint ) : Vector2
localPoint Vector2 A point on the body measured relative the the body's origin.
Результат Vector2

GetWorldVector() публичный Метод

Get the world coordinates of a vector given the local coordinates. Note that the vector only takes the rotation into account, not the position.
public GetWorldVector ( Vector2 &localVector ) : Vector2
localVector Vector2 A vector fixed in the body.
Результат Vector2

ResetDynamics() публичный Метод

Resets the dynamics of this body. Sets torque, force and linear/angular velocity to 0
public ResetDynamics ( ) : void
Результат void

ResetMassData() публичный Метод

This resets the mass properties to the sum of the mass properties of the fixtures. This normally does not need to be called unless you called SetMassData to override the mass and you later want to reset the mass.
public ResetMassData ( ) : void
Результат void

SetTransform() публичный Метод

Set the position of the body's origin and rotation. This breaks any contacts and wakes the other bodies. Manipulating a body's transform may cause non-physical behavior.
public SetTransform ( Vector2 &position, float rotation ) : void
position Vector2 The world position of the body's local origin.
rotation float The world rotation in radians.
Результат void

SetTransformIgnoreContacts() публичный Метод

For teleporting a body without considering new contacts immediately.
public SetTransformIgnoreContacts ( Vector2 &position, float angle ) : void
position Vector2 The position.
angle float The angle.
Результат void

Описание свойств

ControllerFilter публичное свойство

public ControllerFilter ControllerFilter
Результат ControllerFilter

PhysicsLogicFilter публичное свойство

public PhysicsLogicFilter PhysicsLogicFilter
Результат PhysicsLogicFilter