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
Returns the area of the set of vertices.
Parameters
-
vertices
Vertices -
signed
Bool
Returns
The area
Matter.Vertices.centre
Returns the centre (centroid) of the set of vertices.
Parameters
-
vertices
Vertices
Returns
The centre point
Matter.Vertices.chamfer
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.
Matter.Vertices.clockwiseSort
Sorts the input vertices into clockwise order in place.
Parameters
-
vertices
Vertices
Returns
vertices
Matter.Vertices.contains
Returns true
if the point
is inside the set of vertices
.
Returns
True if the vertices contains point, otherwise false
Matter.Vertices.create
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.
Matter.Vertices.fromPath
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
.
Returns
vertices
Matter.Vertices.hull
Returns the convex hull of the input vertices as a new array of points.
Parameters
-
vertices
Vertices
Returns
[vertex] vertices
Matter.Vertices.inertia
Returns the moment of inertia (second moment of area) of the set of vertices given the total mass.
Returns
The polygon's moment of inertia
Matter.Vertices.isConvex
Returns true if the vertices form a convex shape (vertices must be in clockwise order).
Parameters
-
vertices
Vertices
Returns
true
if the vertices
are convex, false
if not (or null
if not computable).
Matter.Vertices.mean
Returns the average (mean) of the set of vertices.
Parameters
-
vertices
Vertices
Returns
The average point
Matter.Vertices.rotate
Rotates the set of vertices in-place.
Matter.Vertices.scale
Scales the vertices from a point (default is centre) in-place.