Navigation
These archived docs are for Phaser 2.6.1 Phaser 3 docs can be found on newdocs.phaser.io.
Phaser CE docs can be found on the Phaser CE Documentation site.

Constructor

Phaser. Polygon

new Polygon(points)

Creates a new Polygon.

The points can be set from a variety of formats:

  • An array of Point objects: [new Phaser.Point(x1, y1), ...]
  • An array of objects with public x/y properties: [obj1, obj2, ...]
  • An array of paired numbers that represent point coordinates: [x1,y1, x2,y2, ...]
  • As separate Point arguments: setTo(new Phaser.Point(x1, y1), ...)
  • As separate objects with public x/y properties arguments: setTo(obj1, obj2, ...)
  • As separate arguments representing point coordinates: setTo(x1,y1, x2,y2, ...)
Parameters
Name Type Description
points Array.<Phaser.Point> | Array.<number> | Phaser.Point | number

The points to set.

Source code: geom/Polygon.js (Line 24)

Public Properties

area : number

The area of this Polygon.

Source code: geom/Polygon.js (Line 29)

closed : boolean

Is the Polygon closed or not?

Source code: geom/Polygon.js (Line 45)

flattened : boolean

Has this Polygon been flattened by a call to Polygon.flatten ?

Source code: geom/Polygon.js (Line 50)

points : Array.<Phaser.Point>

This method is deprecated and should not be used. It may be removed in the future.

Sets and modifies the points of this polygon.

See setTo for the different kinds of arrays formats that can be assigned. The array of vertex points.

Type
Deprecated:
  • Use `setTo`.
Source code: geom/Polygon.js (Line 294)

type : number

The base object type.

Source code: geom/Polygon.js (Line 55)

Public Methods

clone(output) → {Phaser.Polygon}

Creates a copy of the given Polygon. This is a deep clone, the resulting copy contains new Phaser.Point objects

Parameters
Name Type Argument Default Description
output Phaser.Polygon <optional>
(new Polygon)

The polygon to update. If not specified a new polygon will be created.

Returns

The cloned (output) polygon object.

Source code: geom/Polygon.js (Line 109)

contains(x, y) → {boolean}

Checks whether the x and y coordinates are contained within this polygon.

Parameters
Name Type Description
x number

The X value of the coordinate to test.

y number

The Y value of the coordinate to test.

Returns
boolean -

True if the coordinates are within this polygon, otherwise false.

Source code: geom/Polygon.js (Line 134)

flatten() → {Phaser.Polygon}

Flattens this Polygon so the points are a sequence of numbers. Any Point objects found are removed and replaced with two numbers. Also sets the Polygon.flattened property to true.

Returns

This Polygon object

Source code: geom/Polygon.js (Line 91)

setTo(points) → {Phaser.Polygon}

Sets this Polygon to the given points.

The points can be set from a variety of formats:

  • An array of Point objects: [new Phaser.Point(x1, y1), ...]
  • An array of objects with public x/y properties: [obj1, obj2, ...]
  • An array of paired numbers that represent point coordinates: [x1,y1, x2,y2, ...]
  • An array of arrays with two elements representing x/y coordinates: [[x1, y1], [x2, y2], ...]
  • As separate Point arguments: setTo(new Phaser.Point(x1, y1), ...)
  • As separate objects with public x/y properties arguments: setTo(obj1, obj2, ...)
  • As separate arguments representing point coordinates: setTo(x1,y1, x2,y2, ...)

setTo may also be called without any arguments to remove all points.

Parameters
Name Type Description
points Array.<Phaser.Point> | Array.<number> | Phaser.Point | number

The points to set.

Returns

This Polygon object

Source code: geom/Polygon.js (Line 186)

toNumberArray(output) → {array}

Export the points as an array of flat numbers, following the sequence [ x,y, x,y, x,y ]

Parameters
Name Type Argument Description
output array <optional>

The array to append the points to. If not specified a new array will be created.

Returns
array -

The flattened array.

Source code: geom/Polygon.js (Line 61)