Capsule Class
Capsule shape class.
Constructor
Capsule
-
[options]
Parameters:
-
[options]
Object optional(Note that this options object will be passed on to the Shape constructor.)
-
[length=1]
Number optionalThe distance between the end points
-
[radius=1]
Number optionalRadius of the capsule
-
Example:
var capsuleShape = new Capsule({
length: 1,
radius: 2
});
body.addShape(capsuleShape);
Item Index
Methods
Methods
computeAABB
-
out
-
position
-
angle
Parameters:
-
out
AABBThe resulting AABB.
-
position
Array -
angle
Number
computeMomentOfInertia
-
mass
Should return the moment of inertia around the Z axis of the body given the total mass. See Wikipedia's list of moments of inertia.
Parameters:
-
mass
Number
Returns:
If the inertia is infinity or if the object simply isn't possible to rotate, return 0.
conputeMomentOfInertia
-
mass
Compute the mass moment of inertia of the Capsule.
Parameters:
-
mass
Number
Returns:
raycast
-
result
-
ray
-
position
-
angle
Parameters:
-
result
RaycastResult -
ray
Ray -
position
Array -
angle
Number
updateArea
()
updateBoundingRadius
()
Properties
angle
Number
Body-local angle of the shape.
area
Number
Area of this shape.
boundingRadius
Number
Bounding circle radius of this shape
collisionGroup
Number
Collision group that this shape belongs to (bit mask). See this tutorial.
Example:
// Setup bits for each available group
var PLAYER = Math.pow(2,0),
ENEMY = Math.pow(2,1),
GROUND = Math.pow(2,2)
// Put shapes into their groups
player1Shape.collisionGroup = PLAYER;
player2Shape.collisionGroup = PLAYER;
enemyShape .collisionGroup = ENEMY;
groundShape .collisionGroup = GROUND;
// Assign groups that each shape collide with.
// Note that the players can collide with ground and enemies, but not with other players.
player1Shape.collisionMask = ENEMY | GROUND;
player2Shape.collisionMask = ENEMY | GROUND;
enemyShape .collisionMask = PLAYER | GROUND;
groundShape .collisionMask = PLAYER | ENEMY;
// How collision check is done
if(shapeA.collisionGroup & shapeB.collisionMask)!=0 && (shapeB.collisionGroup & shapeA.collisionMask)!=0){
// The shapes will collide
}
collisionMask
Number
Collision mask of this shape. See .collisionGroup.
collisionResponse
Boolean
Whether to produce contact forces when in contact with other bodies. Note that contacts will be generated, but they will be disabled. That means that this shape will move through other body shapes, but it will still trigger contact events, etc.
id
Number
Shape object identifier.
length
Number
The distance between the end points.
material
Material
Material to use in collisions for this Shape. If this is set to null, the world will use default material properties instead.
position
Array
Body-local position of the shape.
radius
Number
The radius of the capsule.
sensor
Boolean
Set to true if you want this shape to be a sensor. A sensor does not generate contacts, but it still reports contact events. This is good if you want to know if a shape is overlapping another shape, without them generating contacts.
type
Number
The type of the shape. One of: