Class: Line

Phaser. Line

Phaser.Line

new Line(x1, y1, x2, y2)

Creates a new Line object with a start and an end point.

Parameters:
Name Type Argument Default Description
x1 number <optional>
0

The x coordinate of the start of the line.

y1 number <optional>
0

The y coordinate of the start of the line.

x2 number <optional>
0

The x coordinate of the end of the line.

y2 number <optional>
0

The y coordinate of the end of the line.

Source:

Members

<readonly> angle

Properties:
Name Type Description
angle number

Gets the angle of the line.

Source:

<readonly> bottom

Properties:
Name Type Description
bottom number

Gets the bottom-most point of this line.

Source:

end

Properties:
Name Type Description
end Phaser.Point

The end point of the line.

Source:

<readonly> height

Properties:
Name Type Description
height number

Gets the height of this bounds of this line.

Source:

<readonly> left

Properties:
Name Type Description
left number

Gets the left-most point of this line.

Source:

<readonly> length

Properties:
Name Type Description
length number

Gets the length of the line segment.

Source:

<readonly> perpSlope

Properties:
Name Type Description
perpSlope number

Gets the perpendicular slope of the line (x/y).

Source:
Properties:
Name Type Description
right number

Gets the right-most point of this line.

Source:

<readonly> slope

Properties:
Name Type Description
slope number

Gets the slope of the line (y/x).

Source:

start

Properties:
Name Type Description
start Phaser.Point

The start point of the line.

Source:

<readonly> top

Properties:
Name Type Description
top number

Gets the top-most point of this line.

Source:

<readonly> width

Properties:
Name Type Description
width number

Gets the width of this bounds of this line.

Source:

<readonly> x

Properties:
Name Type Description
x number

Gets the x coordinate of the top left of the bounds around this line.

Source:

<readonly> y

Properties:
Name Type Description
y number

Gets the y coordinate of the top left of the bounds around this line.

Source:

Methods

<static> intersects(a, b, asSegment, result) → {Phaser.Point}

Checks for intersection between two lines. If asSegment is true it will check for segment intersection. If asSegment is false it will check for line intersection. Returns the intersection segment of AB and EF as a Point, or null if there is no intersection. Adapted from code by Keith Hair

Parameters:
Name Type Argument Default Description
a Phaser.Line

The first Line to be checked.

b Phaser.Line

The second Line to be checked.

asSegment boolean <optional>
true

If true it will check for segment intersection, otherwise full line intersection.

result Phaser.Point <optional>

A Point object to store the result in, if not given a new one will be created.

Source:
Returns:

The intersection segment of the two lines as a Point, or null if there is no intersection.

Type
Phaser.Point

<static> intersectsPoints(a, b, e, f, asSegment, result) → {Phaser.Point}

Checks for intersection between two lines as defined by the given start and end points. If asSegment is true it will check for line segment intersection. If asSegment is false it will check for line intersection. Returns the intersection segment of AB and EF as a Point, or null if there is no intersection. Adapted from code by Keith Hair

Parameters:
Name Type Argument Default Description
a Phaser.Point

The start of the first Line to be checked.

b Phaser.Point

The end of the first line to be checked.

e Phaser.Point

The start of the second Line to be checked.

f Phaser.Point

The end of the second line to be checked.

asSegment boolean <optional>
true

If true it will check for segment intersection, otherwise full line intersection.

result Phaser.Point <optional>

A Point object to store the result in, if not given a new one will be created.

Source:
Returns:

The intersection segment of the two lines as a Point, or null if there is no intersection.

Type
Phaser.Point

clone(output) → {Phaser.Line}

Returns a new Line object with the same values for the start and end properties as this Line object.

Parameters:
Name Type Description
output Phaser.Line

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

Source:
Returns:

The cloned Line object.

Type
Phaser.Line

coordinatesOnLine(stepRate, results) → {array}

Using Bresenham's line algorithm this will return an array of all coordinates on this line. The start and end points are rounded before this runs as the algorithm works on integers.

Parameters:
Name Type Argument Default Description
stepRate number <optional>
1

How many steps will we return? 1 = every coordinate on the line, 2 = every other coordinate, etc.

results array <optional>

The array to store the results in. If not provided a new one will be generated.

Source:
Returns:

An array of coordinates.

Type
array

fromSprite(startSprite, endSprite, useCenter) → {Phaser.Line}

Sets the line to match the x/y coordinates of the two given sprites. Can optionally be calculated from their center coordinates.

Parameters:
Name Type Argument Default Description
startSprite Phaser.Sprite

The coordinates of this Sprite will be set to the Line.start point.

endSprite Phaser.Sprite

The coordinates of this Sprite will be set to the Line.start point.

useCenter boolean <optional>
false

If true it will use startSprite.center.x, if false startSprite.x. Note that Sprites don't have a center property by default, so only enable if you've over-ridden your Sprite with a custom class.

Source:
Returns:

This line object

Type
Phaser.Line

intersects(line, asSegment, result) → {Phaser.Point}

Checks for intersection between this line and another Line. If asSegment is true it will check for segment intersection. If asSegment is false it will check for line intersection. Returns the intersection segment of AB and EF as a Point, or null if there is no intersection.

Parameters:
Name Type Argument Default Description
line Phaser.Line

The line to check against this one.

asSegment boolean <optional>
true

If true it will check for segment intersection, otherwise full line intersection.

result Phaser.Point <optional>

A Point object to store the result in, if not given a new one will be created.

Source:
Returns:

The intersection segment of the two lines as a Point, or null if there is no intersection.

Type
Phaser.Point

pointOnLine(x, y) → {boolean}

Tests if the given coordinates fall on this line. See pointOnSegment to test against just the line segment.

Parameters:
Name Type Description
x number

The line to check against this one.

y number

The line to check against this one.

Source:
Returns:

True if the point is on the line, false if not.

Type
boolean

pointOnSegment(x, y) → {boolean}

Tests if the given coordinates fall on this line and within the segment. See pointOnLine to test against just the line.

Parameters:
Name Type Description
x number

The line to check against this one.

y number

The line to check against this one.

Source:
Returns:

True if the point is on the line and segment, false if not.

Type
boolean

setTo(x1, y1, x2, y2) → {Phaser.Line}

Sets the components of the Line to the specified values.

Parameters:
Name Type Argument Default Description
x1 number <optional>
0

The x coordinate of the start of the line.

y1 number <optional>
0

The y coordinate of the start of the line.

x2 number <optional>
0

The x coordinate of the end of the line.

y2 number <optional>
0

The y coordinate of the end of the line.

Source:
Returns:

This line object

Type
Phaser.Line
Phaser Copyright © 2012-2014 Photon Storm Ltd.
Documentation generated by JSDoc 3.3.0-dev on Wed Oct 22 2014 21:45:56 GMT+0100 (BST) using the DocStrap template.