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
파일 보기 프로젝트 열기: gerich-home/box2dnet 1 사용 예제들

공개 메소드들

메소드 설명
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