Phaser.Point

new Point(x, y)

A Point object represents a location in a two-dimensional coordinate system, where x represents the horizontal axis and y represents the vertical axis. The following code creates a point at (0,0): var myPoint = new Phaser.Point(); You can also use them as 2D Vectors and you'll find different vector related methods in this class.

Parameters:

Name

Type

Argument

Default

Description

x

number

<optional>

0

The horizontal position of this Point.

y

number

<optional>

0

The vertical position of this Point.

Source - geom/Point.js, line 18

Members

<readonly> type:number

The const type of this object.

Source - geom/Point.js, line 37

x:number

The x value of the point.

Source - geom/Point.js, line 26

y:number

The y value of the point.

Source - geom/Point.js, line 31

<static> add(a, b, out)→ {Phaser.Point}

Adds the coordinates of two points together to create a new point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 525

<static>angle(a, b)→ {number}

Returns the angle between two Point objects.

Parameters:

Name

Type

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

Returns:

number-

The angle between the two Points.

Source - geom/Point.js, line 619

<static>centroid(points, out)→ {Phaser.Point}

Calculates centroid (or midpoint) from an array of points. If only one point is provided, that point is returned.

Parameters:

Name

Type

Argument

Description

points

Array.<Phaser.Point>

The array of one or more points.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 866

<static>distance(a, b, round)→ {number}

Returns the euclidian distance of this Point object to the given object (can be a Circle, Point or anything with x/y properties).

Parameters:

Name

Type

Argument

Default

Description

a

object

The target object. Must have visible x and y properties that represent the center of the object.

b

object

The target object. Must have visible x and y properties that represent the center of the object.

round

boolean

<optional>

false

Round the distance to the nearest integer.

Returns:

number-

The distance between this Point object and the destination Point object.

Source - geom/Point.js, line 718

<static>divide(a, b, out)→ {Phaser.Point}

Divides the coordinates of two points to create a new point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 585

<static>equals(a, b)→ {boolean}

Determines whether the two given Point objects are equal. They are considered equal if they have the same x and y values.

Parameters:

Name

Type

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

Returns:

boolean-

A value of true if the Points are equal, otherwise false.

Source - geom/Point.js, line 605

<static>interpolate(a, b, f, out)→ {Phaser.Point}

Interpolates the two given Points, based on the f value (between 0 and1) and returns a new Point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

f

number

The level of interpolation between the two points. Indicates where the new point will be, along the line between pt1 and pt2. If f=1, pt1 is returned; if f=0, pt2 is returned.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 668

<static>isPoint()→ {boolean}

Tests a Point or Point-like object.

Returns:

boolean-

  • True if the object has numeric x and y properties.

Source - geom/Point.js, line 939

<static>multiply(a, b, out)→ {Phaser.Point}

Multiplies the coordinates of two points to create a new point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 565

<static>multiplyAdd(a, b, s, out)→ {Phaser.Point}

Adds two 2D Points together and multiplies the result by the given scalar.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

s

number

The scaling value.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 650

<static>negative(a, out)→ {Phaser.Point}

Creates a negative Point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 634

<static>normalize(a, out)→ {Phaser.Point}

Normalize (make unit length) a Point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 798

<static>normalRightHand(a, out)→ {Phaser.Point}

Right-hand normalize (make unit length) a Point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 782

<static>parse(obj, xProp, yProp)→ {Phaser.Point}

Parses an object for x and/or y properties and returns a new Phaser.Point with matching values. If the object doesn't contain those properties a Point with x/y of zero will be returned.

Parameters:

Name

Type

Argument

Default

Description

obj

object

The object to parse.

xProp

string

<optional>

'x'

The property used to set the Point.x value.

yProp

string

<optional>

'y'

The property used to set the Point.y value.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 907

<static>perp(a, out)→ {Phaser.Point}

Return a perpendicular vector (90 degrees rotation)

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 686

<static>project(a, b, out)→ {Phaser.Point}

Project two Points onto another Point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 734

<static>projectUnit(a, b, out)→ {Phaser.Point}

Project two Points onto a Point of unit length.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 758

<static>rotate(a, x, y, angle, asDegrees, distance)→

{Phaser.Point}

Rotates a Point object, or any object with exposed x/y properties, around the given coordinates by the angle specified. If the angle between the point and coordinates was 45 deg and the angle argument is 45 deg then the resulting angle will be 90 deg, as the angle argument is added to the current angle.

The distance allows you to specify a distance constraint for the rotation between the point and the coordinates. If none is given the distance between the two is calculated and used.

Parameters:

Name

Type

Argument

Default

Description

a

Phaser.Point

The Point object to rotate.

x

number

The x coordinate of the anchor point

y

number

The y coordinate of the anchor point

angle

number

The angle in radians (unless asDegrees is true) to rotate the Point by.

asDegrees

boolean

<optional>

false

Is the given angle in radians (false) or degrees (true)?

distance

number

<optional>

An optional distance constraint between the Point and the anchor.

Returns:

Phaser.Point-

The modified point object.

Source - geom/Point.js, line 821

<static>rperp(a, out)→ {Phaser.Point}

Return a perpendicular vector (-90 degrees rotation)

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 702

<static>subtract(a, b, out)→ {Phaser.Point}

Subtracts the coordinates of two points to create a new point.

Parameters:

Name

Type

Argument

Description

a

Phaser.Point

The first Point object.

b

Phaser.Point

The second Point object.

out

Phaser.Point

<optional>

Optional Point to store the value in, if not supplied a new Point object will be created.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 545

add(x, y)→

{Phaser.Point}

Adds the given x and y values to this Point.

Parameters:

Name

Type

Description

x

number

The value to add to Point.x.

y

number

The value to add to Point.y.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 122

angle(a,asDegrees)→ {number}

Returns the angle between this Point object and another object with public x and y properties.

Parameters:

Name

Type

Argument

Default

Description

a

Phaser.Point | any

The object to get the angle from this Point to.

asDegrees

boolean

<optional>

false

Is the given angle in radians (false) or degrees (true)?

Returns:

number-

The angle between the two objects.

Source - geom/Point.js, line 297

ceil()→

{Phaser.Point}

Math.ceil() both the x and y properties of this Point.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 497

clamp(min,max)→ {Phaser.Point}

Clamps this Point object values to be between the given min and max.

Parameters:

Name

Type

Description

min

number

The minimum value to clamp this Point to.

max

number

The maximum value to clamp this Point to.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 216

clampX(min,max)→ {Phaser.Point}

Clamps the x value of this Point to be between the given min and max.

Parameters:

Name

Type

Description

min

number

The minimum value to clamp this Point to.

max

number

The maximum value to clamp this Point to.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 186

clampY(min,max)→ {Phaser.Point}

Clamps the y value of this Point to be between the given min and max

Parameters:

Name

Type

Description

min

number

The minimum value to clamp this Point to.

max

number

The maximum value to clamp this Point to.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 201

clone(output)→

{Phaser.Point}

Creates a copy of the given Point.

Parameters:

Name

Type

Argument

Description

output

Phaser.Point

<optional>

Optional Point object. If given the values will be set into this object, otherwise a brand new Point object will be created and returned.

Returns:

Phaser.Point-

The new Point object.

Source - geom/Point.js, line 232

copyFrom(source)→ {Phaser.Point}

Copies the x and y properties from any given object to this Point.

Parameters:

Name

Type

Description

source

any

The object to copy from.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 43

copyTo(dest)→

{object}

Copies the x and y properties from this Point to any given object.

Parameters:

Name

Type

Description

dest

any

The object to copy to.

Returns:

object-

The dest object.

Source - geom/Point.js, line 254

cross(a)→

{number}

The cross product of this and another Point object.

Parameters:

Name

Type

Description

a

Phaser.Point

The Point object to get the cross product combined with this Point.

Returns:

number-

The result.

Source - geom/Point.js, line 436

distance(dest,round)→ {number}

Returns the distance of this Point object to the given object (can be aCircle, Point or anything with x/y properties)

Parameters:

Name

Type

Argument

Description

dest

object

The target object. Must have visible x and y properties that represent the center of the object.

round

boolean

<optional>

Round the distance to the nearest integer (default false).

Returns:

number-

The distance between this Point object and the destination Point object.

Source - geom/Point.js, line 270

divide(x, y)→

{Phaser.Point}

Divides Point.x and Point.y by the given x and y values.

Parameters:

Name

Type

Description

x

number

The value to divide Point.x by.

y

number

The value to divide Point.x by.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 170

dot(a)→

{number}

The dot product of this and another Point object.

Parameters:

Name

Type

Description

a

Phaser.Point

The Point object to get the dot product combined with this Point.

Returns:

number-

The result.

Source - geom/Point.js, line 423

equals(a)→

{boolean}

Determines whether the given objects x/y values are equal to this Point object.

Parameters:

Name

Type

Description

a

Phaser.Point | any

The object to compare with this Point.

Returns:

boolean-

A value of true if the x and y points are equal, otherwise false.

Source - geom/Point.js, line 284

floor()→

{Phaser.Point}

Math.floor() both the x and y properties of this Point.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 485

getMagnitude()→ {number}

Calculates the length of the Point object.

Returns:

number-

The length of the Point.

Source - geom/Point.js, line 337

getMagnitudeSq()→ {number}

Calculates the length squared of the Point object.

Returns:

number-

The length ^ 2 of the Point.

Source - geom/Point.js, line 349

invert()→

{Phaser.Point}

Inverts the x and y values of this Point

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 56

isZero()→

{boolean}

Determine if this point is at 0,0.

Returns:

boolean-

True if this Point is 0,0, otherwise false.

Source - geom/Point.js, line 411

limit(max)→

{Phaser.Point}

Alters the Point object so it's magnitude is at most the max value.

Parameters:

Name

Type

Description

max

number

The maximum magnitude for the Point.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 393

multiply(x,y)→ {Phaser.Point}

Multiplies Point.x and Point.y by the given x and y values. Sometimes known as Scale.

Parameters:

Name

Type

Description

x

number

The value to multiply Point.x by.

y

number

The value to multiply Point.x by.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 154

normalize()→

{Phaser.Point}

Alters the Point object so that its length is 1, but it retains the same direction.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 374

normalRightHand()→ {Phaser.Point}

Right-hand normalize (make unit length) this Point.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 473

perp()→

{Phaser.Point}

Make this Point perpendicular (90 degrees rotation)

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 449

rotate(x, y,angle, asDegrees, distance)→ {Phaser.Point}

Rotates this Point around the x/y coordinates given to the desired angle.

Parameters:

Name

Type

Argument

Default

Description

x

number

The x coordinate of the anchor point.

y

number

The y coordinate of the anchor point.

angle

number

The angle in radians (unless asDegrees is true) to rotate the Point to.

asDegrees

boolean

<optional>

false

Is the given angle in radians (false) or degrees (true)?

distance

number

<optional>

An optional distance constraint between the Point and the anchor.

Returns:

Phaser.Point-

The modified point object.

Source - geom/Point.js, line 320

rperp()→

{Phaser.Point}

Make this Point perpendicular (-90 degrees rotation)

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 461

set(x, y)→

{Phaser.Point}

Sets the x and y values of this Point object to the given values. If you omit the y value then the x value will be applied to both, for example: Point.set(2) is the same as Point.set(2, 2)

Identical to setTo.

Parameters:

Name

Type

Argument

Description

x

number

The horizontal value of this point.

y

number

<optional>

The vertical value of this point. If not given the x value will be used in its place.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 86

set(obj, x, y)→

{object}

Sets the x and y values of an object and returns the object.

Parameters:

Name

Type

Argument

Description

obj

object

An object with numeric x and y properties.

x

number

The x value.

y

number

<optional>

The y value. If not given the x value will be used in its place.

Returns:

object-

The object. Useful for chaining method calls.

Source - geom/Point.js, line 952

setMagnitude(magnitude)→ {Phaser.Point}

Alters the length of the Point without changing the direction.

Parameters:

Name

Type

Description

magnitude

number

The desired magnitude of the resulting Point.

Returns:

Phaser.Point-

This Point object.

Source - geom/Point.js, line 361

setTo(x, y)→

{Phaser.Point}

Sets the x and y values of this Point object to the given values. If you omit the y value then the x value will be applied to both, for example: Point.setTo(2) is the same as Point.setTo(2, 2)

Identical to set.

Parameters:

Name

Type

Argument

Description

x

number

The horizontal value of this point.

y

number

<optional>

The vertical value of this point. If not given the x value will be used in its place.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 68

setToPolar(azimuth, radius, asDegrees)→

{Phaser.Point}

Sets the x and y values of this Point object from a given polar coordinate.

Parameters:

Name

Type

Argument

Default

Description

azimuth

number

The angular coordinate, in radians (unless asDegrees).

radius

number

<optional>

1

The radial coordinate (length).

asDegrees

boolean

<optional>

false

True if azimuth is in degrees.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 104

subtract(x,y)→ {Phaser.Point}

Subtracts the given x and y values from this Point.

Parameters:

Name

Type

Description

x

number

The value to subtract from Point.x.

y

number

The value to subtract from Point.y.

Returns:

Phaser.Point-

This Point object. Useful for chaining method calls.

Source - geom/Point.js, line 138

toString()→

{string}

Returns a string representation of this object.

Returns:

string-

A string representation of the instance.

Source - geom/Point.js, line 509