Point
Class: Phaser.Point
Constructor
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 code: geom/Point.js (Line 18)
Public Properties
- Source code: geom/Point.js (Line 37)
- Source code: geom/Point.js (Line 26)
- Source code: geom/Point.js (Line 31)
[readonly] type : number
The const type of this object.
x : number
The x value of the point.
y : number
The y value of the point.
Public Methods
- Source code: geom/Point.js (Line 491)
- Source code: geom/Point.js (Line 585)
- Source code: geom/Point.js (Line 832)
- Source code: geom/Point.js (Line 684)
- Source code: geom/Point.js (Line 551)
- Source code: geom/Point.js (Line 571)
- Source code: geom/Point.js (Line 634)
- Source code: geom/Point.js (Line 531)
- Source code: geom/Point.js (Line 616)
- Source code: geom/Point.js (Line 600)
- Source code: geom/Point.js (Line 764)
- Source code: geom/Point.js (Line 748)
- Source code: geom/Point.js (Line 873)
- Source code: geom/Point.js (Line 652)
- Source code: geom/Point.js (Line 700)
- Source code: geom/Point.js (Line 724)
- Source code: geom/Point.js (Line 787)
- Source code: geom/Point.js (Line 668)
- Source code: geom/Point.js (Line 511)
- Source code: geom/Point.js (Line 106)
- Source code: geom/Point.js (Line 281)
- Source code: geom/Point.js (Line 463)
- Source code: geom/Point.js (Line 200)
- Source code: geom/Point.js (Line 170)
- Source code: geom/Point.js (Line 185)
- Source code: geom/Point.js (Line 216)
- Source code: geom/Point.js (Line 43)
- Source code: geom/Point.js (Line 238)
- Source code: geom/Point.js (Line 402)
- Source code: geom/Point.js (Line 254)
- Source code: geom/Point.js (Line 154)
- Source code: geom/Point.js (Line 389)
- Source code: geom/Point.js (Line 268)
- Source code: geom/Point.js (Line 451)
- Source code: geom/Point.js (Line 321)
- Source code: geom/Point.js (Line 333)
- Source code: geom/Point.js (Line 56)
- Source code: geom/Point.js (Line 377)
- Source code: geom/Point.js (Line 138)
- Source code: geom/Point.js (Line 358)
- Source code: geom/Point.js (Line 439)
- Source code: geom/Point.js (Line 415)
- Source code: geom/Point.js (Line 304)
- Source code: geom/Point.js (Line 427)
- Source code: geom/Point.js (Line 87)
- Source code: geom/Point.js (Line 345)
- Source code: geom/Point.js (Line 68)
- Source code: geom/Point.js (Line 122)
- Source code: geom/Point.js (Line 475)
<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
The new Point object.
<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
The angle between the two Points.
<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
The new Point object.
<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
The distance between this Point object and the destination Point object.
<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
The new Point object.
<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
A value of true if the Points are equal, otherwise false.
<static> interpolate(a, b, f, out) → {Phaser.Point}
Interpolates the two given Points, based on the f
value (between 0 and 1) 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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The new Point object.
<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
The modified point object.
<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
The new Point object.
<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
The new Point object.
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
This Point object. Useful for chaining method calls.
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
The angle between the two objects.
ceil() → {Phaser.Point}
Math.ceil() both the x and y properties of this Point.
Returns
This Point object.
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
This Point object.
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
This Point object.
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
This Point object.
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
The new Point object.
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
This Point object.
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
The dest object.
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
The result.
distance(dest, round) → {number}
Returns the distance of this Point object to the given object (can be a Circle, 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
The distance between this Point object and the destination Point object.
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
This Point object. Useful for chaining method calls.
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
The result.
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
A value of true if the x and y points are equal, otherwise false.
floor() → {Phaser.Point}
Math.floor() both the x and y properties of this Point.
Returns
This Point object.
getMagnitude() → {number}
Calculates the length of the Point object.
Returns
The length of the Point.
getMagnitudeSq() → {number}
Calculates the length squared of the Point object.
Returns
The length ^ 2 of the Point.
invert() → {Phaser.Point}
Inverts the x and y values of this Point
Returns
This Point object.
isZero() → {boolean}
Determine if this point is at 0,0.
Returns
True if this Point is 0,0, otherwise false.
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
This Point object. Useful for chaining method calls.
normalize() → {Phaser.Point}
Alters the Point object so that its length is 1, but it retains the same direction.
Returns
This Point object.
normalRightHand() → {Phaser.Point}
Right-hand normalize (make unit length) this Point.
Returns
This Point object.
perp() → {Phaser.Point}
Make this Point perpendicular (90 degrees rotation)
Returns
This Point object.
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
The modified point object.
rperp() → {Phaser.Point}
Make this Point perpendicular (-90 degrees rotation)
Returns
This Point object.
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)
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
This Point object. Useful for chaining method calls.
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
This Point object.
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)
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
This Point object. Useful for chaining method calls.
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
This Point object. Useful for chaining method calls.
toString() → {string}
Returns a string representation of this object.
Returns
A string representation of the instance.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Point.html