C# Класс Box2D.Collision.Broadphase.BroadPhase

The broad-phase is used for computing pairs and performing volume queries and ray casts. This broad-phase does not persist pairs. Instead, this reports potentially new pairs. It is up to the client to consume the new pairs and to track subsequent overlap.
Наследование: TreeCallback
Показать файл Открыть проект Примеры использования класса

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

Метод Описание
BroadPhase ( ) : System
CreateProxy ( AABB aabb, object userData ) : int

Create a proxy with an initial AABB. Pairs are not reported until updatePairs is called.

DestroyProxy ( int proxyId ) : void

Destroy a proxy. It is up to the client to remove any pairs.

DrawTree ( DebugDraw argDraw ) : void
GetFatAABB ( int proxyId ) : AABB
GetUserData ( int proxyId ) : object
MoveProxy ( int proxyId, AABB aabb, Vec2 displacement ) : void

Call MoveProxy as many times as you like, then when you are done call UpdatePairs to finalized the proxy pairs (for your time step).

Query ( ITreeCallback callback, AABB aabb ) : void

Query an AABB for overlapping proxies. The callback class is called for each proxy that overlaps the supplied AABB.

Raycast ( ITreeRayCastCallback callback, RayCastInput input ) : void

Ray-cast against the proxies in the tree. This relies on the callback to perform a exact ray-cast in the case were the proxy contains a shape. The callback also performs the any collision filtering. This has performance roughly equal to k * log(n), where k is the number of collisions and n is the number of proxies in the tree.

TestOverlap ( int proxyIdA, int proxyIdB ) : bool
TouchProxy ( int proxyId ) : void
TreeCallback ( int proxyId ) : bool

This is called from DynamicTree::query when we are gathering pairs.

UpdatePairs ( IPairCallback callback ) : void

Update the pairs. This results in pair callbacks. This can only add pairs.

Защищенные методы

Метод Описание
BufferMove ( int proxyId ) : void
UnbufferMove ( int proxyId ) : void

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

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

public BroadPhase ( ) : System
Результат System

BufferMove() защищенный Метод

protected BufferMove ( int proxyId ) : void
proxyId int
Результат void

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

Create a proxy with an initial AABB. Pairs are not reported until updatePairs is called.
public CreateProxy ( AABB aabb, object userData ) : int
aabb AABB
userData object
Результат int

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

Destroy a proxy. It is up to the client to remove any pairs.
public DestroyProxy ( int proxyId ) : void
proxyId int
Результат void

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

public DrawTree ( DebugDraw argDraw ) : void
argDraw Box2D.Callbacks.DebugDraw
Результат void

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

public GetFatAABB ( int proxyId ) : AABB
proxyId int
Результат AABB

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

public GetUserData ( int proxyId ) : object
proxyId int
Результат object

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

Call MoveProxy as many times as you like, then when you are done call UpdatePairs to finalized the proxy pairs (for your time step).
public MoveProxy ( int proxyId, AABB aabb, Vec2 displacement ) : void
proxyId int
aabb AABB
displacement Box2D.Common.Vec2
Результат void

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

Query an AABB for overlapping proxies. The callback class is called for each proxy that overlaps the supplied AABB.
public Query ( ITreeCallback callback, AABB aabb ) : void
callback ITreeCallback
aabb AABB
Результат void

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

Ray-cast against the proxies in the tree. This relies on the callback to perform a exact ray-cast in the case were the proxy contains a shape. The callback also performs the any collision filtering. This has performance roughly equal to k * log(n), where k is the number of collisions and n is the number of proxies in the tree.
public Raycast ( ITreeRayCastCallback callback, RayCastInput input ) : void
callback ITreeRayCastCallback a callback class that is called for each proxy that is hit by the ray.
input RayCastInput the ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
Результат void

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

public TestOverlap ( int proxyIdA, int proxyIdB ) : bool
proxyIdA int
proxyIdB int
Результат bool

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

public TouchProxy ( int proxyId ) : void
proxyId int
Результат void

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

This is called from DynamicTree::query when we are gathering pairs.
public TreeCallback ( int proxyId ) : bool
proxyId int
Результат bool

UnbufferMove() защищенный Метод

protected UnbufferMove ( int proxyId ) : void
proxyId int
Результат void

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

Update the pairs. This results in pair callbacks. This can only add pairs.
public UpdatePairs ( IPairCallback callback ) : void
callback IPairCallback
Результат void