ht.Math.Vector2(x, y)

new Vector2(x, y)

创建一个二维向量

Parameters:
Name Type Attributes Description
x number | Object <optional>
y number <optional>

Members

height :number

y的别名

isVector2 :boolean

是否为 Vector2

Since:
  • 7.7.0
Default Value:
  • true

width :number

x的别名

x :number

y :number

Methods

add(Vector2) → {ht.Math.Vector2}

将传入的向量 Vector2 和当前向量相加

Parameters:
Name Type Description
Vector2 Point | ht.Math.Vector2
Returns:
ht.Math.Vector2

addScalar(scalar) → {ht.Math.Vector2}

将传入的标量 scalar 和当前向量的 x 、y 相加

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector2

addScaledVector(Vector2, scalar) → {ht.Math.Vector2}

将所传入的 Vector2 与 scalar 相乘所得的乘积和当前向量相加

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
scalar number
Returns:
ht.Math.Vector2

addVectors(a, b) → {ht.Math.Vector2}

将当前向量设置为 a + b

Parameters:
Name Type Description
a ht.Math.Vector2
b ht.Math.Vector2
Returns:
ht.Math.Vector2

angle() → {number}

计算该向量相对于 x 轴正方向的弧度角度

Returns:
number -

角度(弧度制)

clamp(min, max) → {ht.Math.Vector2}

如果该向量的 x 值或 y 值大于限制范围内最大 x 值或 y 值,则该值将会被所对应的值取代。如果该向量的 x 值或 y 值小于限制范围内最小 x 值或 y 值,则该值将会被所对应的值取代

Parameters:
Name Type Description
min ht.Math.Vector2

x和y的最小值

max ht.Math.Vector2

x和y的最大值

Returns:
ht.Math.Vector2

clampLength(min, max) → {ht.Math.Vector2}

如果向量长度大于最大值,则它将会被最大值所取代,如果向量长度小于最小值,则它将会被最小值所取代

Parameters:
Name Type Description
min number

长度最小值

max number

长度最大值

Returns:
ht.Math.Vector2

clampScalar(min, max) → {ht.Math.Vector2}

如果该向量的 x 值或 y 值大于最大值,则它们将被最大值所取代,如果该向量的 x 值或 y 值小于最小值,则它们将被最小值所取代

Parameters:
Name Type Description
min number

分量将被限制为的最小值

max number

分量将被限制为的最大值

Returns:
ht.Math.Vector2

clone() → {ht.Math.Vector2}

返回一个新的 Vector2 ,与当前向量相同的 x 、y 相同

Returns:
ht.Math.Vector2

copy(Vector2) → {ht.Math.Vector2}

将所传入 Vector2 的 x、y 属性复制到当前向量

Parameters:
Name Type Description
Vector2 Point | ht.Math.Vector2
Returns:
ht.Math.Vector2

distanceTo(Vector2) → {number}

计算当前向量到所传入的 Vector2 间的距离

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
number -

距离

distanceToSquared(Vector2) → {number}

计算当前向量到所传入的 Vector2 间的距离的平方

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
number -

距离的平方

divide(Vector2) → {ht.Math.Vector2}

将当前向量除以向量 Vector2

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
ht.Math.Vector2

divideScalar(scalar) → {ht.Math.Vector2}

将当前向量除以标量 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector2

dot(Vector2) → {number}

计算当前向量和所传入 Vector2 的点积

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
number -

点积

equals(Vector2) → {boolean}

当前向量和所传入 Vector2 是否相等

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
boolean

fromArray(Array, offset) → {ht.Math.Vector2}

设置向量中的 x 值为 Array[ offset + 0 ],y 值为 Array[ offset + 1 ]

Parameters:
Name Type Attributes Description
Array Array.<Object>
offset number <optional>

数组的偏移量,默认值为 0

Returns:
ht.Math.Vector2

length() → {number}

计算从 (0, 0) 到 (x, y) 的直线长度

Returns:
number -

长度

lengthSq() → {number}

计算从 (0, 0) 到 (x, y) 的直线长度平方

Returns:
number -

长度平方

lerp(Vector2, alpha) → {ht.Math.Vector2}

当前向量与传入的向量 Vector2 之间的线性插值,alpha 是沿着线的长度的百分比

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
alpha number
Returns:
ht.Math.Vector2

lerpVectors(a, b, alpha) → {ht.Math.Vector2}

将当前向量设置为在 向量 a 和 b 之间进行线性插值的向量

Parameters:
Name Type Description
a ht.Math.Vector2
b ht.Math.Vector2
alpha number
Returns:
ht.Math.Vector2

max(Vector2) → {ht.Math.Vector2}

如果当前向量的 x 值、y 值小于所传入 Vector2 的 x 值、y 值, 则将其替换为对应的最大值

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
ht.Math.Vector2

min(Vector2) → {ht.Math.Vector2}

如果当前向量的 x 值、y 值大于所传入 Vector2 的 x 值、y 值, 则将其替换为对应的最小值

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
ht.Math.Vector2

multiply(Vector2) → {ht.Math.Vector2}

将当前向量与所传入的向量 Vector2 相乘

Parameters:
Name Type Description
Vector2 ht.Math.Vector2
Returns:
ht.Math.Vector2

multiplyScalar(scalar) → {ht.Math.Vector2}

将当前向量与所传入的标量 scalar 相乘

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector2

normalize() → {ht.Math.Vector2}

将当前向量转换为单位向量

Returns:
ht.Math.Vector2

rotateAround(center, angle) → {ht.Math.Vector2}

将向量围绕着 center 旋转 angle 弧度

Parameters:
Name Type Description
center ht.Math.Vector2

被围绕旋转的点

angle number

旋转的角度(弧度制)

Returns:
ht.Math.Vector2

set(x, y) → {ht.Math.Vector2}

设置当前向量的x、y 分量

Parameters:
Name Type Description
x number
y number
Returns:
ht.Math.Vector2

setLength(length) → {ht.Math.Vector2}

将当前向量设置为方向相同,但是长度为 length 的向量

Parameters:
Name Type Description
length number
Returns:
ht.Math.Vector2

setScalar(scalar) → {ht.Math.Vector2}

将当前向量的 x、y 值同时设置为等于传入的 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector2

setX(x) → {ht.Math.Vector2}

将当前向量中的 x 值替换为 x

Parameters:
Name Type Description
x number
Returns:
ht.Math.Vector2

setY(y) → {ht.Math.Vector2}

将当前向量中的 y 值替换为 y

Parameters:
Name Type Description
y number
Returns:
ht.Math.Vector2

sub(Vector2) → {ht.Math.Vector2}

当前向量减去向量 Vector2

Parameters:
Name Type Description
Vector2 Point | ht.Math.Vector2
Returns:
ht.Math.Vector2

subScalar(scalar) → {ht.Math.Vector2}

当前向量的 x、y 减去标量 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector2

subVectors(a, b) → {ht.Math.Vector2}

将当前向量设置为 a - b

Parameters:
Name Type Description
a ht.Math.Vector2
b ht.Math.Vector2
Returns:
ht.Math.Vector2