API Docs for: 0.6.1
Show:

SAPBroadphase Class

Sweep and prune broadphase along one axis.

Constructor

SAPBroadphase

(
  • [world]
)

Parameters:

Methods

aabbQuery

(
  • world
  • aabb
  • result
)
Array

Inherited from Broadphase but overwritten in src/collision/SAPBroadphase.js:287

Returns all the bodies within an AABB.

Parameters:

  • world World
  • aabb AABB
  • result Array

    An array to store resulting bodies in.

Returns:

Array:

autoDetectAxis

()

Computes the variance of the body positions and estimates the best axis to use. Will automatically set property .axisIndex.

boundingSphereCheck

(
  • bodyA
  • bodyB
)
Boolean

Check if the bounding spheres of two bodies overlap.

Parameters:

Returns:

Boolean:

checkBounds

(
  • bi
  • bj
  • axisIndex
)
Boolean static

Check if the bounds of two bodies overlap, along the given SAP axis.

Parameters:

Returns:

Boolean:

collisionPairs

(
  • world
  • p1
  • p2
)

Inherited from Broadphase but overwritten in src/collision/SAPBroadphase.js:143

Collect all collision pairs

Parameters:

  • world World
  • p1 Array
  • p2 Array

doBoundingBoxBroadphase

(
  • bodyA
  • bodyB
  • pairs1
  • pairs2
)

Check if the bounding boxes of two bodies are intersecting.

Parameters:

  • bodyA Body
  • bodyB Body
  • pairs1 Array
  • pairs2 Array

doBoundingSphereBroadphase

(
  • bodyA
  • bodyB
  • pairs1
  • pairs2
)

Check if the bounding spheres of two bodies are intersecting.

Parameters:

  • bodyA Body
  • bodyB Body
  • pairs1 Array

    bodyA is appended to this array if intersection

  • pairs2 Array

    bodyB is appended to this array if intersection

insertionSortX

(
  • a
)
Array static

Parameters:

  • a Array

Returns:

Array:

insertionSortY

(
  • a
)
Array static

Parameters:

  • a Array

Returns:

Array:

insertionSortZ

(
  • a
)
Array static

Parameters:

  • a Array

Returns:

Array:

intersectionTest

(
  • bodyA
  • bodyB
  • pairs1
  • pairs2
)

Check if the bounding volumes of two bodies intersect.

Parameters:

  • bodyA Body
  • bodyB Body
  • pairs1 Array
  • pairs2 Array

makePairsUnique

(
  • pairs1
  • pairs2
)

Removes duplicate pairs from the pair arrays.

Parameters:

  • pairs1 Array
  • pairs2 Array

needBroadphaseCollision

(
  • bodyA
  • bodyB
)
Bool

Check if a body pair needs to be intersection tested at all.

Parameters:

Returns:

Bool:

setWorld

(
  • world
)

Inherited from Broadphase but overwritten in src/collision/SAPBroadphase.js:57

Change the world

Parameters:

Properties

axisIndex

Number

Axis to sort the bodies along. Set to 0 for x axis, and 1 for y axis. For best performance, choose an axis that the bodies are spread out more on.

axisList

Array

List of bodies currently in the broadphase.

dirty

Boolean

Set to true if the objects in the world moved.

useBoundingBoxes

Boolean

If set to true, the broadphase uses bounding boxes for intersection test, else it uses bounding spheres.

world

World

Inherited from Broadphase but overwritten in src/collision/SAPBroadphase.js:24

The world to search in.