Line

.Geom. Line

定义线段,即两个端点之间的线段.

Constructor

new Line(x1opt, y1opt, x2opt, y2opt)

Since:
  • 3.0.0
Parameters:
Name Type Attributes Default Description
x1 number <optional>
0 线条起点的x坐标.
y1 number <optional>
0 线条起点的y坐标.
x2 number <optional>
0 线条终点的x坐标.
y2 number <optional>
0 线条终点的y坐标.

Members

bottom :number

Since:
  • 3.0.0
线条的底部位置.
Type:
  • number

left :number

Since:
  • 3.0.0
线条的左边位置.
Type:
  • number
Since:
  • 3.0.0
线的正确位置.
Type:
  • number

top :number

Since:
  • 3.0.0
线条的顶部位置.
Type:
  • number

(readonly) type :number

Since:
  • 3.19.0
此对象的几何常量类型: `GEOM_CONST.LINE` . 用于快速类型比较.
Type:
  • number

x1 :number

Since:
  • 3.0.0
线条起点的x坐标.
Type:
  • number

x2 :number

Since:
  • 3.0.0
线条终点的x坐标.
Type:
  • number

y1 :number

Since:
  • 3.0.0
线条起点的y坐标.
Type:
  • number

y2 :number

Since:
  • 3.0.0
线条终点的y坐标.
Type:
  • number

Methods

(static) Angle(line) → {number}

Since:
  • 3.0.0
以弧度计算直线的角度.
Parameters:
Name Type Description
line Phaser.Geom.Line 计算角度的线.
Returns:
线条的角度,以弧度为单位.
Type
number

(static) BresenhamPoints(line, stepRateopt, resultsopt) → {Array.<Phaser.Types.Math.Vector2Like>}

Since:
  • 3.0.0
使用布雷森汉姆的直线算法,这将返回该直线上所有坐标的数组. 由于算法对整数进行运算,因此在运行之前会对 `start` 和 `end` 点进行舍入.
Parameters:
Name Type Attributes Default Description
line Phaser.Geom.Line 线.
stepRate number <optional>
1 线上点的可选步进率.
results Array.<Phaser.Types.Math.Vector2Like> <optional>
将结果坐标推入的可选数组.
Returns:
线上的坐标数组.
Type
Array.<Phaser.Types.Math.Vector2Like>

(static) CenterOn(line, x, y) → {Phaser.Geom.Line}

Since:
  • 3.0.0
在给定的坐标上居中一条线.
Parameters:
Name Type Description
line Phaser.Geom.Line 中心线.
x number 将直线居中的水平坐标.
y number 使直线居中的垂直坐标.
Returns:
中心线.
Type
Phaser.Geom.Line

(static) Clone(source) → {Phaser.Geom.Line}

Since:
  • 3.0.0
克隆给定的行.
Parameters:
Name Type Description
source Phaser.Geom.Line 要克隆的源行.
Returns:
克隆的线.
Type
Phaser.Geom.Line

(static) CopyFrom(source, dest) → {Phaser.Geom.Line}

Since:
  • 3.0.0
将一行的值复制到目标行.
Parameters:
Name Type Description
source Phaser.Geom.Line 要从中复制值的源行.
dest Phaser.Geom.Line 要将值复制到的目标行.
Returns:
目的地线路.
Type
Phaser.Geom.Line

(static) Equals(line, toCompare) → {boolean}

Since:
  • 3.0.0
比较两条线是否严格相等.
Parameters:
Name Type Description
line Phaser.Geom.Line 要比较的第一行.
toCompare Phaser.Geom.Line 要比较的第二行.
Returns:
两条线是否相等.
Type
boolean

(static) Extend(line, left, rightopt) → {Phaser.Geom.Line}

Since:
  • 3.16.0
将直线的起点和终点延伸给定的量. 金额可以是正数,也可以是负数.正值会增加线条的长度, 而负面的会降低它. 如果没有提供 `right` 值,它将在两个方向上相等地延长线的长度. 传递零值以保持起点或终点不变.
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 要扩展的行实例.
left number 将行首延长的量.
right number <optional>
将行尾延长的量.如果没有给定,它将被设置为 `left` 值.
Returns:
已修改的行实例.
Type
Phaser.Geom.Line

(static) GetEasedPoints(line, ease, quantity, collinearThresholdopt, easeParamsopt) → {Array.<Phaser.Geom.Point>}

Since:
  • 3.23.0
返回一个数组,其中每个点都取自给定的直线, 根据指定的放松功能隔开. ```javascript const line = new Phaser.Geom.Line(100, 300, 700, 300); const points = Phaser.Geom.Line.GetEasedPoints(line, 'sine.out', 32) ``` 在上面的例子中, `points` 数组将包含32个分散的点 `line` 的长度,其中每个点的位置由 `Sine.out` 决定 放松功能. 您可以选择提供共线阈值.在这种情况下,结果点 并且如果它们相距 `< collinearThreshold` 距离, 他们被排除在结果之外.这有助于避免在 像Quartic这样包装紧密的箱子.保留值集 归零以跳过该检查. 请注意,如果提供共线阈值,则生成的阵列可能不总是 包含 `quantity` 点.
Parameters:
Name Type Attributes Default Description
line Phaser.Geom.Line 线条对象.
ease string | function 易用性.这可以是来自EaseMap的字符串,也可以是自定义函数.
quantity number 要返回的点数.请注意,如果您提供一个 `collinearThreshold` ,结果数组可能不总是包含此数量的点.
collinearThreshold number <optional>
0 可选阈值.最后的阵列被缩小,使得每个点间隔至少这个距离.这有助于减少噪音情况下的聚类.
easeParams Array.<number> <optional>
一组可选的轻松参数.
Returns:
一组几何图形.包含线上各点坐标的点.
Type
Array.<Phaser.Geom.Point>

(static) GetMidPoint(line, outopt) → {Phaser.Geom.Point|object}

Since:
  • 3.0.0
得到给定直线的中点.
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 要获取中点的线.
out Phaser.Geom.Point | object <optional>
存储中点的可选点对象.
Returns:
线的中点.
Type
Phaser.Geom.Point | object

(static) GetNearestPoint(line, point, outopt) → {Phaser.Geom.Point|object}

Since:
  • 3.16.0
在垂直于给定点的直线上获取最近的点.
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 获取最近点的直线.
point Phaser.Geom.Point | object 要获取最近点的点.
out Phaser.Geom.Point | object <optional>
一个可选点或点状对象,用于存储线上最近点的坐标.
Returns:
线上最近的点.
Type
Phaser.Geom.Point | object

(static) GetNormal(line, outopt) → {Phaser.Geom.Point|object}

Since:
  • 3.0.0
计算给定直线的法线. 线的法线是一个垂直于它的向量.
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 要计算的法线.
out Phaser.Geom.Point | object <optional>
存储法线的可选点对象.
Returns:
线的法线.
Type
Phaser.Geom.Point | object

(static) GetPoint(line, position, outopt) → {Phaser.Geom.Point|object}

Since:
  • 3.0.0
在一条直线上取一个点,这个点沿其长度有一个给定的百分比.
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 线.
position number 介于0和1之间的值,其中0是起点,0.5是中间,1是线的终点.
out Phaser.Geom.Point | object <optional>
一个可选点或点状对象,用于存储线上该点的坐标.
Returns:
线上的点.
Type
Phaser.Geom.Point | object

(static) GetPoints(line, quantity, stepRateopt, outopt) → {array|Array.<Phaser.Geom.Point>}

Since:
  • 3.0.0
沿着一条线的长度得到一些点. 提供一个 `quantity` 来获得沿线的准确点数. 提供一个 `stepRate` ,以确保线路上每个点之间的特定距离.在以下情况下,将 `quantity` 设置为 `0` 提供一个 `stepRate` .
Parameters:
Name Type Attributes Description
line Phaser.Geom.Line 线.
quantity number 线上要放置的点数.设置为 `0` 改为使用 `stepRate` .
stepRate number <optional>
线上各点之间的距离.设置时,暗示 `quantity` ,应设置为 `0` .
out array | Array.<Phaser.Geom.Point> <optional>
点或点状对象的可选数组,用于存储线上点的坐标.
Returns:
An array of Points, or point-like objects, containing the coordinates of the points on the line.
Type
array | Array.<Phaser.Geom.Point>

(static) GetShortestDistance(line, point) → {number}

Since:
  • 3.16.0
获取从直线到给定点的最短距离.
Parameters:
Name Type Description
line Phaser.Geom.Line 要获取距离的直线.
point Phaser.Geom.Point | object 到达最短距离的点.
Returns:
从直线到点的最短距离.
Type
number

(static) Height(line) → {number}

Since:
  • 3.0.0
计算给定线条的高度.
Parameters: