search.cpan.org is shutting down
For details read Perl NOC. After June 25th this page will redirect to MetaCPAN.org
Tobias Leich > Box2D > Box2D::b2Manifold

# NAME

Box2D::b2Manifold - Manifold for two touching convex shapes.

# SYNOPSIS

```  my \$manifold = \$contact->GetManifold();
my \$normal = \$manifold->localNormal();
my \$point = \$manifold->localPoint();```

# DESCRIPTION

A manifold for two touching convex shapes.

`Box2D` supports multiple types of contact:

• clip point versus plane with radius
• point versus point with radius (circles)

The local point usage depends on the manifold type:

• `e_circles`: the local center of circleA
• `e_faceA`: the center of faceA
• `e_faceB`: the center of faceB

Similarly the local normal usage:

• `e_circles`: not used
• `e_faceA`: the normal on polygonA
• `e_faceB`: the normal on polygonB

We store contacts in this way so that position correction can account for movement, which is critical for continuous physics. All contact scenarios must be expressed in one of these types. This structure is stored across time steps, so we keep it small.

# METHODS

## new()

Default constructor.

## localNormal( \$localNormal )

not use for Type::e_points

Parameters:

• `Box2D::b2Vec2` `\$localNormal` (optional)

Returns a `Box2D::b2Vec2`

## localPoint( \$localPoint )

usage depends on manifold type

Parameters:

• `Box2D::b2Vec2` `\$localPoint` (optional)

Returns a `Box2D::b2Vec2`

## pointCount( \$pointCount )

the number of manifold points

Parameters:

• `int32` `\$pointCount` (optional)

Returns a `int32`

# COPYRIGHT & LICENSE

syntax highlighting: