Class b2Shape

A shape is used for collision detection. Shapes are created in b2Body. You can use shape for collision detection before they are attached to the world. Warning: you cannot reuse shapes.

Hierarchy

Index

Constructor methods

Properties

Methods

Constructor methods

constructor(): b2Shape

Creates a new b2Shape.

Returns

b2Shape

Properties

public static e_circleShape: number

public static e_edgeShape: number

public static e_hitCollide: number

Return value for TestSegment indicating a hit.

public static e_missCollide: number

Return value for TestSegment indicating a miss.

public static e_polygonShape: number

public static e_shapeTypeCount: number

public static e_unknownShape: number

public static startsInsideCollide: number

Return value for TestSegment indicating that the segment starting point, p1, is already inside the shape.

Methods

public ComputeAABB(aabb: b2AABB, xf: b2Transform)

Given a transform, compute the associated axis aligned bounding box for this shape.

Parameters

  • aabb: b2AABB

    Calculated AABB, this argument is out.

  • xf: b2Transform

    Transform to calculate the AABB.

public ComputeMass(massData: b2MassData, density: number)

Compute the mass properties of this shape using its dimensions and density. The inertia tensor is computed about the local origin, not the centroid.

Parameters

  • massData: b2MassData

    Calculate the mass, this argument is out.

  • density: number

    Density.

public ComputeSubmergedArea(normal: b2Vec2, offset: number, xf: b2Transform, c: b2Vec2): number

Compute the volume and centroid of this shape intersected with a half plane

Parameters

  • normal: b2Vec2

    The surface normal.

  • offset: number

    The surface offset along the normal.

  • xf: b2Transform

    The shape transform.

  • c: b2Vec2

    The centroid, this argument is out.

Returns

number

public Copy(): b2Shape

Clone the shape.

Returns

b2Shape

public GetType(): number

Get the type of this shape. You can use this to down cast to the concrete shape.

Returns

number

public RayCast(output: b2RayCastOutput, input: b2RayCastInput, transform: b2Transform): boolean

Cast a ray against this shape.

Parameters

Returns

boolean

public Set(other: b2Shape)

Set the shape values from another shape.

Parameters

  • other: b2Shape

    The other shape to copy values from.

public static TestOverlap(shape1: b2Shape, transform1: b2Transform, shape2: b2Shape, transform2: b2Transform): boolean

Test if two shapes overlap with the applied transforms.

Parameters

  • shape1: b2Shape

    shape to test for overlap with shape2.

  • transform1: b2Transform

    shape1 transform to apply.

  • shape2: b2Shape

    shape to test for overlap with shape1.

  • transform2: b2Transform

    shape2 transform to apply.

Returns

boolean

True if shape1 and shape2 overlap, otherwise false.

public TestPoint(xf: b2Transform, p: b2Vec2): boolean

Test a point for containment in this shape. This only works for convex shapes.

Parameters

  • xf: b2Transform

    Shape world transform.

  • p: b2Vec2

    Point to test against, in world coordinates.

Returns

boolean

True if the point is in this shape, otherwise false.