Show:
API

Matter.Vertices

The Matter.Vertices module contains methods for creating and manipulating sets of vertices. A set of vertices is an array of Matter.Vector with additional indexing properties inserted by Vertices.create. A Matter.Body maintains a set of vertices to represent the shape of the object (its convex hull).

See the included usage examples.

Methods

Matter.Vertices.area

(vertices, signed)
Number

Returns the area of the set of vertices.

Parameters

Returns

Number

The area

Matter.Vertices.centre

(vertices)
Vector

Returns the centre (centroid) of the set of vertices.

Parameters

Returns

Vector

The centre point

Matter.Vertices.chamfer

(vertices, radius, quality, qualityMin, qualityMax)

Chamfers a set of vertices by giving them rounded corners, returns a new set of vertices. The radius parameter is a single number or an array to specify the radius for each vertex.

Parameters

Matter.Vertices.clockwiseSort

(vertices)
Vertices

Sorts the input vertices into clockwise order in place.

Parameters

Returns

Vertices

vertices

Matter.Vertices.contains

(vertices, point)
Boolean

Returns true if the point is inside the set of vertices.

Parameters

Returns

Boolean

True if the vertices contains point, otherwise false

Matter.Vertices.create

(points, body)

Creates a new set of Matter.Body compatible vertices. The points argument accepts an array of Matter.Vector points orientated around the origin (0, 0), for example:

[{ x: 0, y: 0 }, { x: 25, y: 50 }, { x: 50, y: 0 }]
                                                    

The Vertices.create method returns a new array of vertices, which are similar to Matter.Vector objects, but with some additional references required for efficient collision detection routines.

Vertices must be specified in clockwise order.

Note that the body argument is not optional, a Matter.Body reference must be provided.

Parameters

Matter.Vertices.fromPath

(path, body)
Vertices

Parses a string containing ordered x y pairs separated by spaces (and optionally commas), into a Matter.Vertices object for the given Matter.Body. For parsing SVG paths, see Svg.pathToVertices.

Parameters

Returns

Vertices

vertices

Matter.Vertices.hull

(vertices)
Object

Returns the convex hull of the input vertices as a new array of points.

Parameters

Returns

[vertex] vertices

Matter.Vertices.inertia

(vertices, mass)
Number

Returns the moment of inertia (second moment of area) of the set of vertices given the total mass.

Parameters

Returns

Number

The polygon's moment of inertia

Matter.Vertices.isConvex

(vertices)
Bool

Returns true if the vertices form a convex shape (vertices must be in clockwise order).

Parameters

Returns

Bool

true if the vertices are convex, false if not (or null if not computable).

Matter.Vertices.mean

(vertices)
Vector

Returns the average (mean) of the set of vertices.

Parameters

Returns

Vector

The average point

Matter.Vertices.rotate

(vertices, angle, point)

Rotates the set of vertices in-place.

Parameters

Matter.Vertices.scale

(vertices, scaleX, scaleY, point)

Scales the vertices from a point (default is centre) in-place.

Parameters

Matter.Vertices.translate

(vertices, vector, scalar)

Translates the set of vertices in-place.

Parameters