Skip to content

Vec

本文档由 src/stdlib/vec.mcrs 自动生成,请勿手动编辑。

API 列表


dot2d v1.0.0

两个二维整数向量的点积

redscript
fn dot2d(ax: int, ay: int, bx: int, by: int) -> int

参数

参数说明
ax向量 A 的 X 分量
ay向量 A 的 Y 分量
bx向量 B 的 X 分量
by向量 B 的 Y 分量

返回: axbx + ayby

示例

redscript
let d = dot2d(3, 4, 3, 4)  // result: 25

length2d_fixed v1.0.0

二维向量的欧几里得长度,结果 ×1000 定点数

redscript
fn length2d_fixed(x: int, y: int) -> int

参数

参数说明
xX 分量(保持
yY 分量

返回: sqrt(x²+y²) × 1000

示例

redscript
let l = length2d_fixed(3, 4)  // result: 5000

dot3d v1.0.0

两个三维整数向量的点积

redscript
fn dot3d(ax: int, ay: int, az: int, bx: int, by: int, bz: int) -> int

参数

参数说明
ax向量 A 的 X 分量
ay向量 A 的 Y 分量
az向量 A 的 Z 分量
bx向量 B 的 X 分量
by向量 B 的 Y 分量
bz向量 B 的 Z 分量

返回: axbx + ayby + az*bz

示例

redscript
let d = dot3d(1, 0, 0, 1, 0, 0)  // result: 1

cross3d_x v1.0.0

叉积 A×B 的 X 分量(aybz - azby)

redscript
fn cross3d_x(ax: int, ay: int, az: int, bx: int, by: int, bz: int) -> int

参数

参数说明
axA 的 X 分量
bxB 的 X 分量

返回: aybz - azby


cross3d_y v1.0.0

叉积 A×B 的 Y 分量(azbx - axbz)

redscript
fn cross3d_y(ax: int, ay: int, az: int, bx: int, by: int, bz: int) -> int

参数

参数说明
axA 的 X 分量
bxB 的 X 分量

返回: azbx - axbz


cross3d_z v1.0.0

叉积 A×B 的 Z 分量(axby - aybx)

redscript
fn cross3d_z(ax: int, ay: int, az: int, bx: int, by: int, bz: int) -> int

参数

参数说明
axA 的 X 分量
bxB 的 X 分量

返回: axby - aybx

示例

redscript
let z = cross3d_z(1, 0, 0, 0, 1, 0)  // result: 1

Released under the MIT License.