phaser - v4.0.0-rc.4
    Preparing search index...

    A Path combines multiple Curves into one continuous compound curve. It does not matter how many Curves are in the Path or what type they are.

    A Curve in a Path does not have to start where the previous Curve ends - that is to say, a Path does not have to be an uninterrupted curve. Only the order of the Curves influences the actual points on the Path.

    Index

    Constructors

    Properties

    autoClose: boolean

    Automatically closes the path.

    cacheLengths: number[]

    The cached length of each Curve in the Path.

    Used internally by #getCurveLengths.

    curves: Curves.Curve[]

    The list of Curves which make up this Path.

    defaultDivisions: number

    The default number of divisions within a curve.

    name: string

    The name of this Path. Empty by default and never populated by Phaser, this is left for developers to use.

    startPoint: Math.Vector2

    The starting point of the Path.

    This is not necessarily equivalent to the starting point of the first Curve in the Path. In an empty Path, it's also treated as the ending point.

    Methods

    • Appends a Curve to the end of the Path.

      The Curve does not have to start where the Path ends or, for an empty Path, at its defined starting point.

      Parameters

      Returns this

    • Creates a circular Ellipse Curve positioned at the end of the Path.

      Parameters

      • radius: number

        The radius of the circle.

      • Optionalclockwise: boolean

        true to create a clockwise circle as opposed to a counter-clockwise circle. Default false.

      • Optionalrotation: number

        The rotation of the circle in degrees. Default 0.

      Returns this

    • Ensures that the Path is closed.

      A closed Path starts and ends at the same point. If the Path is not closed, a straight Line Curve will be created from the ending point directly to the starting point. During the check, the actual starting point of the Path, i.e. the starting point of the first Curve, will be used as opposed to the Path's defined startPoint, which could differ.

      Calling this method on an empty Path will result in an error.

      Returns this

    • Creates a cubic bezier curve starting at the previous end point and ending at p3, using p1 and p2 as control points.

      Parameters

      • x: number | Math.Vector2

        The x coordinate of the end point. Or, if a Vector2, the p1 value.

      • y: number | Math.Vector2

        The y coordinate of the end point. Or, if a Vector2, the p2 value.

      • control1X: number | Math.Vector2

        The x coordinate of the first control point. Or, if a Vector2, the p3 value.

      • Optionalcontrol1Y: number

        The y coordinate of the first control point. Not used if Vector2s are provided as the first 3 arguments.

      • Optionalcontrol2X: number

        The x coordinate of the second control point. Not used if Vector2s are provided as the first 3 arguments.

      • Optionalcontrol2Y: number

        The y coordinate of the second control point. Not used if Vector2s are provided as the first 3 arguments.

      Returns this

    • Disposes of this Path, clearing its internal references to objects so they can be garbage-collected.

      Returns void

    • Creates an ellipse curve positioned at the previous end point, using the given parameters.

      Parameters

      • OptionalxRadius: number

        The horizontal radius of ellipse. Default 0.

      • OptionalyRadius: number

        The vertical radius of ellipse. Default 0.

      • OptionalstartAngle: number

        The start angle of the ellipse, in degrees. Default 0.

      • OptionalendAngle: number

        The end angle of the ellipse, in degrees. Default 360.

      • Optionalclockwise: boolean

        Whether the ellipse angles are given as clockwise (true) or counter-clockwise (false). Default false.

      • Optionalrotation: number

        The rotation of the ellipse, in degrees. Default 0.

      Returns this

    • Returns a Rectangle with a position and size matching the bounds of this Path.

      Type Parameters

      Parameters

      • Optionalout: O

        The Rectangle to store the bounds in.

      • Optionalaccuracy: number

        The accuracy of the bounds calculations. Higher values are more accurate at the cost of calculation speed. Default 16.

      Returns O

    • Returns the Curve that forms the Path at the given normalized location (between 0 and 1).

      Parameters

      • t: number

        The normalized location on the Path, between 0 and 1.

      Returns Curves.Curve

    • Returns an array containing the length of the Path at the end of each Curve.

      The result of this method will be cached to avoid recalculating it in subsequent calls. The cache is only invalidated when the #curves array changes in length, leading to potential inaccuracies if a Curve in the Path is changed, or if a Curve is removed and another is added in its place.

      Returns number[]

    • Returns the ending point of the Path.

      A Path's ending point is equivalent to the ending point of the last Curve in the Path. For an empty Path, the ending point is at the Path's defined #startPoint.

      Type Parameters

      Parameters

      • Optionalout: O

        The object to store the point in.

      Returns O

    • Calculates the coordinates of the point at the given normalized location (between 0 and 1) on the Path.

      The location is relative to the entire Path, not to an individual Curve. A location of 0.5 is always in the middle of the Path and is thus an equal distance away from both its starting and ending points. In a Path with one Curve, it would be in the middle of the Curve; in a Path with two Curves, it could be anywhere on either one of them depending on their lengths.

      Type Parameters

      Parameters

      • t: number

        The location of the point to return, between 0 and 1.

      • Optionalout: O

        The object in which to store the calculated point.

      Returns O

    • Get a sequence of points on the path.

      Parameters

      • Optionaldivisions: number

        The number of divisions to make per resolution per curve.

      • OptionalstepRate: number

        The curve distance between points per curve, implying divisions.

      Returns Math.Vector2[]

    • Returns a randomly chosen point anywhere on the path. This follows the same rules as getPoint in that it may return a point on any Curve inside this path.

      When calling this method multiple times, the points are not guaranteed to be equally spaced spatially.

      Type Parameters

      Parameters

      • Optionalout: O

        Vector2 instance that should be used for storing the result. If undefined a new Vector2 will be created.

      Returns O

    • Divides this Path into a set of equally spaced points,

      The resulting points are equally spaced with respect to the points' position on the path, but not necessarily equally spaced spatially.

      Parameters

      • Optionaldivisions: number

        The amount of points to divide this Path into. Default 40.

      Returns Math.Vector2[]

    • Returns the starting point of the Path.

      Type Parameters

      Parameters

      • Optionalout: O

        Vector2 instance that should be used for storing the result. If undefined a new Vector2 will be created.

      Returns O

    • Gets a unit vector tangent at a relative position on the path.

      Type Parameters

      Parameters

      • t: number

        The relative position on the path, [0..1].

      • Optionalout: O

        A vector to store the result in.

      Returns O

    • Creates a line curve from the previous end point to x/y.

      Parameters

      • x: number | Math.Vector2 | Vector2Like

        The X coordinate of the line's end point, or a Vector2 / Vector2Like containing the entire end point.

      • Optionaly: number

        The Y coordinate of the line's end point, if a number was passed as the X parameter.

      Returns this

    • Creates a "gap" in this path from the path's current end point to the given coordinates.

      After calling this function, this Path's end point will be equal to the given coordinates

      Parameters

      • x: number | Math.Vector2 | Vector2Like

        The X coordinate of the position to move the path's end point to, or a Vector2 / Vector2Like containing the entire new end point.

      • Optionaly: number

        The Y coordinate of the position to move the path's end point to, if a number was passed as the X coordinate.

      Returns this

    • Creates a Quadratic Bezier Curve starting at the ending point of the Path.

      Parameters

      • x: number | Math.Vector2[]

        The X coordinate of the second control point or, if it's a Vector2, the first control point.

      • Optionaly: number

        The Y coordinate of the second control point or, if x is a Vector2, the second control point.

      • OptionalcontrolX: number

        If x is not a Vector2, the X coordinate of the first control point.

      • OptionalcontrolY: number

        If x is not a Vector2, the Y coordinate of the first control point.

      Returns this

    • Creates a spline curve starting at the previous end point, using the given points on the curve.

      Parameters

      • points: Math.Vector2[]

        The points the newly created spline curve should consist of.

      Returns this