@esengine/ecs-framework-math 2.10.0 → 2.10.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +10175 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/dist/index.umd.js +2 -0
- package/dist/index.umd.js.map +1 -0
- package/package.json +21 -12
- package/bin/Animation/Easing.d.ts +0 -244
- package/bin/Animation/Easing.d.ts.map +0 -1
- package/bin/Animation/Easing.js +0 -407
- package/bin/Animation/Easing.js.map +0 -1
- package/bin/Animation/Interpolation.d.ts +0 -172
- package/bin/Animation/Interpolation.d.ts.map +0 -1
- package/bin/Animation/Interpolation.js +0 -327
- package/bin/Animation/Interpolation.js.map +0 -1
- package/bin/Animation/index.d.ts +0 -8
- package/bin/Animation/index.d.ts.map +0 -1
- package/bin/Animation/index.js +0 -8
- package/bin/Animation/index.js.map +0 -1
- package/bin/Circle.d.ts +0 -277
- package/bin/Circle.d.ts.map +0 -1
- package/bin/Circle.js +0 -496
- package/bin/Circle.js.map +0 -1
- package/bin/Collision/CollisionDetector.d.ts +0 -114
- package/bin/Collision/CollisionDetector.d.ts.map +0 -1
- package/bin/Collision/CollisionDetector.js +0 -353
- package/bin/Collision/CollisionDetector.js.map +0 -1
- package/bin/Collision/index.d.ts +0 -7
- package/bin/Collision/index.d.ts.map +0 -1
- package/bin/Collision/index.js +0 -7
- package/bin/Collision/index.js.map +0 -1
- package/bin/Color.d.ts +0 -277
- package/bin/Color.d.ts.map +0 -1
- package/bin/Color.js +0 -470
- package/bin/Color.js.map +0 -1
- package/bin/Fixed32.d.ts +0 -266
- package/bin/Fixed32.d.ts.map +0 -1
- package/bin/Fixed32.js +0 -381
- package/bin/Fixed32.js.map +0 -1
- package/bin/FixedMath.d.ts +0 -109
- package/bin/FixedMath.d.ts.map +0 -1
- package/bin/FixedMath.js +0 -264
- package/bin/FixedMath.js.map +0 -1
- package/bin/FixedVector2.d.ts +0 -293
- package/bin/FixedVector2.d.ts.map +0 -1
- package/bin/FixedVector2.js +0 -413
- package/bin/FixedVector2.js.map +0 -1
- package/bin/MathUtils.d.ts +0 -312
- package/bin/MathUtils.d.ts.map +0 -1
- package/bin/MathUtils.js +0 -500
- package/bin/MathUtils.js.map +0 -1
- package/bin/Matrix3.d.ts +0 -288
- package/bin/Matrix3.d.ts.map +0 -1
- package/bin/Matrix3.js +0 -542
- package/bin/Matrix3.js.map +0 -1
- package/bin/Rectangle.d.ts +0 -266
- package/bin/Rectangle.d.ts.map +0 -1
- package/bin/Rectangle.js +0 -437
- package/bin/Rectangle.js.map +0 -1
- package/bin/Vector2.d.ts +0 -333
- package/bin/Vector2.d.ts.map +0 -1
- package/bin/Vector2.js +0 -484
- package/bin/Vector2.js.map +0 -1
- package/bin/Vector3.d.ts +0 -257
- package/bin/Vector3.d.ts.map +0 -1
- package/bin/Vector3.js +0 -372
- package/bin/Vector3.js.map +0 -1
- package/bin/index.d.ts +0 -25
- package/bin/index.d.ts.map +0 -1
- package/bin/index.js +0 -32
- package/bin/index.js.map +0 -1
- package/bin/nodes/ColorNodes.d.ts +0 -70
- package/bin/nodes/ColorNodes.d.ts.map +0 -1
- package/bin/nodes/ColorNodes.js +0 -427
- package/bin/nodes/ColorNodes.js.map +0 -1
- package/bin/nodes/FixedNodes.d.ts +0 -98
- package/bin/nodes/FixedNodes.d.ts.map +0 -1
- package/bin/nodes/FixedNodes.js +0 -612
- package/bin/nodes/FixedNodes.js.map +0 -1
- package/bin/nodes/FixedVectorNodes.d.ts +0 -58
- package/bin/nodes/FixedVectorNodes.d.ts.map +0 -1
- package/bin/nodes/FixedVectorNodes.js +0 -330
- package/bin/nodes/FixedVectorNodes.js.map +0 -1
- package/bin/nodes/VectorNodes.d.ts +0 -62
- package/bin/nodes/VectorNodes.d.ts.map +0 -1
- package/bin/nodes/VectorNodes.js +0 -355
- package/bin/nodes/VectorNodes.js.map +0 -1
- package/bin/nodes/index.d.ts +0 -20
- package/bin/nodes/index.d.ts.map +0 -1
- package/bin/nodes/index.js +0 -27
- package/bin/nodes/index.js.map +0 -1
package/bin/Vector3.d.ts
DELETED
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 3D 向量数据接口
|
|
3
|
-
*
|
|
4
|
-
* 轻量级数据结构,用于组件属性和序列化。
|
|
5
|
-
* Lightweight data structure for component properties and serialization.
|
|
6
|
-
*/
|
|
7
|
-
export interface IVector3 {
|
|
8
|
-
x: number;
|
|
9
|
-
y: number;
|
|
10
|
-
z: number;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* 3D向量类
|
|
14
|
-
*
|
|
15
|
-
* 提供完整的3D向量运算功能,包括:
|
|
16
|
-
* - 基础运算(加减乘除)
|
|
17
|
-
* - 向量运算(点积、叉积、归一化)
|
|
18
|
-
* - 几何运算(距离、角度、投影)
|
|
19
|
-
* - 变换操作(旋转、反射、插值)
|
|
20
|
-
*/
|
|
21
|
-
export declare class Vector3 implements IVector3 {
|
|
22
|
-
/** X分量 */
|
|
23
|
-
x: number;
|
|
24
|
-
/** Y分量 */
|
|
25
|
-
y: number;
|
|
26
|
-
/** Z分量 */
|
|
27
|
-
z: number;
|
|
28
|
-
/**
|
|
29
|
-
* 创建3D向量
|
|
30
|
-
* @param x X分量,默认为0
|
|
31
|
-
* @param y Y分量,默认为0
|
|
32
|
-
* @param z Z分量,默认为0
|
|
33
|
-
*/
|
|
34
|
-
constructor(x?: number, y?: number, z?: number);
|
|
35
|
-
/** 零向量 (0, 0, 0) */
|
|
36
|
-
static readonly ZERO: Vector3;
|
|
37
|
-
/** 单位向量 (1, 1, 1) */
|
|
38
|
-
static readonly ONE: Vector3;
|
|
39
|
-
/** 右方向向量 (1, 0, 0) */
|
|
40
|
-
static readonly RIGHT: Vector3;
|
|
41
|
-
/** 左方向向量 (-1, 0, 0) */
|
|
42
|
-
static readonly LEFT: Vector3;
|
|
43
|
-
/** 上方向向量 (0, 1, 0) */
|
|
44
|
-
static readonly UP: Vector3;
|
|
45
|
-
/** 下方向向量 (0, -1, 0) */
|
|
46
|
-
static readonly DOWN: Vector3;
|
|
47
|
-
/** 前方向向量 (0, 0, 1) */
|
|
48
|
-
static readonly FORWARD: Vector3;
|
|
49
|
-
/** 后方向向量 (0, 0, -1) */
|
|
50
|
-
static readonly BACK: Vector3;
|
|
51
|
-
/**
|
|
52
|
-
* 获取向量长度(模)
|
|
53
|
-
*/
|
|
54
|
-
get length(): number;
|
|
55
|
-
/**
|
|
56
|
-
* 获取向量长度的平方
|
|
57
|
-
*/
|
|
58
|
-
get lengthSquared(): number;
|
|
59
|
-
/**
|
|
60
|
-
* 检查是否为零向量
|
|
61
|
-
*/
|
|
62
|
-
get isZero(): boolean;
|
|
63
|
-
/**
|
|
64
|
-
* 检查是否为单位向量
|
|
65
|
-
*/
|
|
66
|
-
get isUnit(): boolean;
|
|
67
|
-
/**
|
|
68
|
-
* 设置向量分量
|
|
69
|
-
* @param x X分量
|
|
70
|
-
* @param y Y分量
|
|
71
|
-
* @param z Z分量
|
|
72
|
-
* @returns 当前向量实例(链式调用)
|
|
73
|
-
*/
|
|
74
|
-
set(x: number, y: number, z: number): this;
|
|
75
|
-
/**
|
|
76
|
-
* 复制另一个向量的值
|
|
77
|
-
* @param other 源向量
|
|
78
|
-
* @returns 当前向量实例(链式调用)
|
|
79
|
-
*/
|
|
80
|
-
copy(other: Vector3): this;
|
|
81
|
-
/**
|
|
82
|
-
* 克隆当前向量
|
|
83
|
-
* @returns 新的向量实例
|
|
84
|
-
*/
|
|
85
|
-
clone(): Vector3;
|
|
86
|
-
/**
|
|
87
|
-
* 向量加法
|
|
88
|
-
* @param other 另一个向量
|
|
89
|
-
* @returns 当前向量实例(链式调用)
|
|
90
|
-
*/
|
|
91
|
-
add(other: Vector3): this;
|
|
92
|
-
/**
|
|
93
|
-
* 向量减法
|
|
94
|
-
* @param other 另一个向量
|
|
95
|
-
* @returns 当前向量实例(链式调用)
|
|
96
|
-
*/
|
|
97
|
-
subtract(other: Vector3): this;
|
|
98
|
-
/**
|
|
99
|
-
* 向量数乘
|
|
100
|
-
* @param scalar 标量
|
|
101
|
-
* @returns 当前向量实例(链式调用)
|
|
102
|
-
*/
|
|
103
|
-
multiply(scalar: number): this;
|
|
104
|
-
/**
|
|
105
|
-
* 向量数除
|
|
106
|
-
* @param scalar 标量
|
|
107
|
-
* @returns 当前向量实例(链式调用)
|
|
108
|
-
*/
|
|
109
|
-
divide(scalar: number): this;
|
|
110
|
-
/**
|
|
111
|
-
* 向量取反
|
|
112
|
-
* @returns 当前向量实例(链式调用)
|
|
113
|
-
*/
|
|
114
|
-
negate(): this;
|
|
115
|
-
/**
|
|
116
|
-
* 计算与另一个向量的点积
|
|
117
|
-
* @param other 另一个向量
|
|
118
|
-
* @returns 点积值
|
|
119
|
-
*/
|
|
120
|
-
dot(other: Vector3): number;
|
|
121
|
-
/**
|
|
122
|
-
* 计算与另一个向量的叉积
|
|
123
|
-
* @param other 另一个向量
|
|
124
|
-
* @returns 新的叉积向量
|
|
125
|
-
*/
|
|
126
|
-
cross(other: Vector3): Vector3;
|
|
127
|
-
/**
|
|
128
|
-
* 向量归一化(转换为单位向量)
|
|
129
|
-
* @returns 当前向量实例(链式调用)
|
|
130
|
-
*/
|
|
131
|
-
normalize(): this;
|
|
132
|
-
/**
|
|
133
|
-
* 获取归一化后的向量(不修改原向量)
|
|
134
|
-
* @returns 新的单位向量
|
|
135
|
-
*/
|
|
136
|
-
normalized(): Vector3;
|
|
137
|
-
/**
|
|
138
|
-
* 计算到另一个向量的距离
|
|
139
|
-
* @param other 另一个向量
|
|
140
|
-
* @returns 距离值
|
|
141
|
-
*/
|
|
142
|
-
distanceTo(other: Vector3): number;
|
|
143
|
-
/**
|
|
144
|
-
* 计算到另一个向量的距离平方
|
|
145
|
-
* @param other 另一个向量
|
|
146
|
-
* @returns 距离平方值
|
|
147
|
-
*/
|
|
148
|
-
distanceToSquared(other: Vector3): number;
|
|
149
|
-
/**
|
|
150
|
-
* 计算与另一个向量的夹角(弧度)
|
|
151
|
-
* @param other 另一个向量
|
|
152
|
-
* @returns 夹角(0到π)
|
|
153
|
-
*/
|
|
154
|
-
angleTo(other: Vector3): number;
|
|
155
|
-
/**
|
|
156
|
-
* 计算向量在另一个向量上的投影
|
|
157
|
-
* @param onto 投影目标向量
|
|
158
|
-
* @returns 新的投影向量
|
|
159
|
-
*/
|
|
160
|
-
projectOnto(onto: Vector3): Vector3;
|
|
161
|
-
/**
|
|
162
|
-
* 线性插值
|
|
163
|
-
* @param target 目标向量
|
|
164
|
-
* @param t 插值参数(0到1)
|
|
165
|
-
* @returns 当前向量实例(链式调用)
|
|
166
|
-
*/
|
|
167
|
-
lerp(target: Vector3, t: number): this;
|
|
168
|
-
/**
|
|
169
|
-
* 限制向量长度
|
|
170
|
-
* @param maxLength 最大长度
|
|
171
|
-
* @returns 当前向量实例(链式调用)
|
|
172
|
-
*/
|
|
173
|
-
clampLength(maxLength: number): this;
|
|
174
|
-
/**
|
|
175
|
-
* 检查两个向量是否相等
|
|
176
|
-
* @param other 另一个向量
|
|
177
|
-
* @param epsilon 容差,默认为Number.EPSILON
|
|
178
|
-
* @returns 是否相等
|
|
179
|
-
*/
|
|
180
|
-
equals(other: Vector3, epsilon?: number): boolean;
|
|
181
|
-
/**
|
|
182
|
-
* 检查两个向量是否完全相等
|
|
183
|
-
* @param other 另一个向量
|
|
184
|
-
* @returns 是否完全相等
|
|
185
|
-
*/
|
|
186
|
-
exactEquals(other: Vector3): boolean;
|
|
187
|
-
/**
|
|
188
|
-
* 向量加法(静态方法)
|
|
189
|
-
* @param a 向量a
|
|
190
|
-
* @param b 向量b
|
|
191
|
-
* @returns 新的结果向量
|
|
192
|
-
*/
|
|
193
|
-
static add(a: Vector3, b: Vector3): Vector3;
|
|
194
|
-
/**
|
|
195
|
-
* 向量减法(静态方法)
|
|
196
|
-
* @param a 向量a
|
|
197
|
-
* @param b 向量b
|
|
198
|
-
* @returns 新的结果向量
|
|
199
|
-
*/
|
|
200
|
-
static subtract(a: Vector3, b: Vector3): Vector3;
|
|
201
|
-
/**
|
|
202
|
-
* 向量数乘(静态方法)
|
|
203
|
-
* @param vector 向量
|
|
204
|
-
* @param scalar 标量
|
|
205
|
-
* @returns 新的结果向量
|
|
206
|
-
*/
|
|
207
|
-
static multiply(vector: Vector3, scalar: number): Vector3;
|
|
208
|
-
/**
|
|
209
|
-
* 向量点积(静态方法)
|
|
210
|
-
* @param a 向量a
|
|
211
|
-
* @param b 向量b
|
|
212
|
-
* @returns 点积值
|
|
213
|
-
*/
|
|
214
|
-
static dot(a: Vector3, b: Vector3): number;
|
|
215
|
-
/**
|
|
216
|
-
* 向量叉积(静态方法)
|
|
217
|
-
* @param a 向量a
|
|
218
|
-
* @param b 向量b
|
|
219
|
-
* @returns 新的叉积向量
|
|
220
|
-
*/
|
|
221
|
-
static cross(a: Vector3, b: Vector3): Vector3;
|
|
222
|
-
/**
|
|
223
|
-
* 计算两点间距离(静态方法)
|
|
224
|
-
* @param a 点a
|
|
225
|
-
* @param b 点b
|
|
226
|
-
* @returns 距离值
|
|
227
|
-
*/
|
|
228
|
-
static distance(a: Vector3, b: Vector3): number;
|
|
229
|
-
/**
|
|
230
|
-
* 线性插值(静态方法)
|
|
231
|
-
* @param a 起始向量
|
|
232
|
-
* @param b 目标向量
|
|
233
|
-
* @param t 插值参数(0到1)
|
|
234
|
-
* @returns 新的插值结果向量
|
|
235
|
-
*/
|
|
236
|
-
static lerp(a: Vector3, b: Vector3, t: number): Vector3;
|
|
237
|
-
/**
|
|
238
|
-
* 转换为字符串
|
|
239
|
-
* @returns 字符串表示
|
|
240
|
-
*/
|
|
241
|
-
toString(): string;
|
|
242
|
-
/**
|
|
243
|
-
* 转换为数组
|
|
244
|
-
* @returns [x, y, z] 数组
|
|
245
|
-
*/
|
|
246
|
-
toArray(): [number, number, number];
|
|
247
|
-
/**
|
|
248
|
-
* 转换为普通对象
|
|
249
|
-
* @returns {x, y, z} 对象
|
|
250
|
-
*/
|
|
251
|
-
toObject(): {
|
|
252
|
-
x: number;
|
|
253
|
-
y: number;
|
|
254
|
-
z: number;
|
|
255
|
-
};
|
|
256
|
-
}
|
|
257
|
-
//# sourceMappingURL=Vector3.d.ts.map
|
package/bin/Vector3.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Vector3.d.ts","sourceRoot":"","sources":["../src/Vector3.ts"],"names":[],"mappings":"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"}
|
package/bin/Vector3.js
DELETED
|
@@ -1,372 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 3D向量类
|
|
3
|
-
*
|
|
4
|
-
* 提供完整的3D向量运算功能,包括:
|
|
5
|
-
* - 基础运算(加减乘除)
|
|
6
|
-
* - 向量运算(点积、叉积、归一化)
|
|
7
|
-
* - 几何运算(距离、角度、投影)
|
|
8
|
-
* - 变换操作(旋转、反射、插值)
|
|
9
|
-
*/
|
|
10
|
-
export class Vector3 {
|
|
11
|
-
/**
|
|
12
|
-
* 创建3D向量
|
|
13
|
-
* @param x X分量,默认为0
|
|
14
|
-
* @param y Y分量,默认为0
|
|
15
|
-
* @param z Z分量,默认为0
|
|
16
|
-
*/
|
|
17
|
-
constructor(x = 0, y = 0, z = 0) {
|
|
18
|
-
this.x = x;
|
|
19
|
-
this.y = y;
|
|
20
|
-
this.z = z;
|
|
21
|
-
}
|
|
22
|
-
// 基础属性
|
|
23
|
-
/**
|
|
24
|
-
* 获取向量长度(模)
|
|
25
|
-
*/
|
|
26
|
-
get length() {
|
|
27
|
-
return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* 获取向量长度的平方
|
|
31
|
-
*/
|
|
32
|
-
get lengthSquared() {
|
|
33
|
-
return this.x * this.x + this.y * this.y + this.z * this.z;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* 检查是否为零向量
|
|
37
|
-
*/
|
|
38
|
-
get isZero() {
|
|
39
|
-
return this.x === 0 && this.y === 0 && this.z === 0;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* 检查是否为单位向量
|
|
43
|
-
*/
|
|
44
|
-
get isUnit() {
|
|
45
|
-
const lenSq = this.lengthSquared;
|
|
46
|
-
return Math.abs(lenSq - 1) < Number.EPSILON;
|
|
47
|
-
}
|
|
48
|
-
// 基础运算
|
|
49
|
-
/**
|
|
50
|
-
* 设置向量分量
|
|
51
|
-
* @param x X分量
|
|
52
|
-
* @param y Y分量
|
|
53
|
-
* @param z Z分量
|
|
54
|
-
* @returns 当前向量实例(链式调用)
|
|
55
|
-
*/
|
|
56
|
-
set(x, y, z) {
|
|
57
|
-
this.x = x;
|
|
58
|
-
this.y = y;
|
|
59
|
-
this.z = z;
|
|
60
|
-
return this;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* 复制另一个向量的值
|
|
64
|
-
* @param other 源向量
|
|
65
|
-
* @returns 当前向量实例(链式调用)
|
|
66
|
-
*/
|
|
67
|
-
copy(other) {
|
|
68
|
-
this.x = other.x;
|
|
69
|
-
this.y = other.y;
|
|
70
|
-
this.z = other.z;
|
|
71
|
-
return this;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* 克隆当前向量
|
|
75
|
-
* @returns 新的向量实例
|
|
76
|
-
*/
|
|
77
|
-
clone() {
|
|
78
|
-
return new Vector3(this.x, this.y, this.z);
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* 向量加法
|
|
82
|
-
* @param other 另一个向量
|
|
83
|
-
* @returns 当前向量实例(链式调用)
|
|
84
|
-
*/
|
|
85
|
-
add(other) {
|
|
86
|
-
this.x += other.x;
|
|
87
|
-
this.y += other.y;
|
|
88
|
-
this.z += other.z;
|
|
89
|
-
return this;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* 向量减法
|
|
93
|
-
* @param other 另一个向量
|
|
94
|
-
* @returns 当前向量实例(链式调用)
|
|
95
|
-
*/
|
|
96
|
-
subtract(other) {
|
|
97
|
-
this.x -= other.x;
|
|
98
|
-
this.y -= other.y;
|
|
99
|
-
this.z -= other.z;
|
|
100
|
-
return this;
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* 向量数乘
|
|
104
|
-
* @param scalar 标量
|
|
105
|
-
* @returns 当前向量实例(链式调用)
|
|
106
|
-
*/
|
|
107
|
-
multiply(scalar) {
|
|
108
|
-
this.x *= scalar;
|
|
109
|
-
this.y *= scalar;
|
|
110
|
-
this.z *= scalar;
|
|
111
|
-
return this;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* 向量数除
|
|
115
|
-
* @param scalar 标量
|
|
116
|
-
* @returns 当前向量实例(链式调用)
|
|
117
|
-
*/
|
|
118
|
-
divide(scalar) {
|
|
119
|
-
if (scalar === 0) {
|
|
120
|
-
throw new Error('不能除以零');
|
|
121
|
-
}
|
|
122
|
-
this.x /= scalar;
|
|
123
|
-
this.y /= scalar;
|
|
124
|
-
this.z /= scalar;
|
|
125
|
-
return this;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* 向量取反
|
|
129
|
-
* @returns 当前向量实例(链式调用)
|
|
130
|
-
*/
|
|
131
|
-
negate() {
|
|
132
|
-
this.x = -this.x;
|
|
133
|
-
this.y = -this.y;
|
|
134
|
-
this.z = -this.z;
|
|
135
|
-
return this;
|
|
136
|
-
}
|
|
137
|
-
// 向量运算
|
|
138
|
-
/**
|
|
139
|
-
* 计算与另一个向量的点积
|
|
140
|
-
* @param other 另一个向量
|
|
141
|
-
* @returns 点积值
|
|
142
|
-
*/
|
|
143
|
-
dot(other) {
|
|
144
|
-
return this.x * other.x + this.y * other.y + this.z * other.z;
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* 计算与另一个向量的叉积
|
|
148
|
-
* @param other 另一个向量
|
|
149
|
-
* @returns 新的叉积向量
|
|
150
|
-
*/
|
|
151
|
-
cross(other) {
|
|
152
|
-
return new Vector3(this.y * other.z - this.z * other.y, this.z * other.x - this.x * other.z, this.x * other.y - this.y * other.x);
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* 向量归一化(转换为单位向量)
|
|
156
|
-
* @returns 当前向量实例(链式调用)
|
|
157
|
-
*/
|
|
158
|
-
normalize() {
|
|
159
|
-
const len = this.length;
|
|
160
|
-
if (len === 0) {
|
|
161
|
-
return this;
|
|
162
|
-
}
|
|
163
|
-
return this.divide(len);
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* 获取归一化后的向量(不修改原向量)
|
|
167
|
-
* @returns 新的单位向量
|
|
168
|
-
*/
|
|
169
|
-
normalized() {
|
|
170
|
-
return this.clone().normalize();
|
|
171
|
-
}
|
|
172
|
-
// 几何运算
|
|
173
|
-
/**
|
|
174
|
-
* 计算到另一个向量的距离
|
|
175
|
-
* @param other 另一个向量
|
|
176
|
-
* @returns 距离值
|
|
177
|
-
*/
|
|
178
|
-
distanceTo(other) {
|
|
179
|
-
const dx = this.x - other.x;
|
|
180
|
-
const dy = this.y - other.y;
|
|
181
|
-
const dz = this.z - other.z;
|
|
182
|
-
return Math.sqrt(dx * dx + dy * dy + dz * dz);
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* 计算到另一个向量的距离平方
|
|
186
|
-
* @param other 另一个向量
|
|
187
|
-
* @returns 距离平方值
|
|
188
|
-
*/
|
|
189
|
-
distanceToSquared(other) {
|
|
190
|
-
const dx = this.x - other.x;
|
|
191
|
-
const dy = this.y - other.y;
|
|
192
|
-
const dz = this.z - other.z;
|
|
193
|
-
return dx * dx + dy * dy + dz * dz;
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* 计算与另一个向量的夹角(弧度)
|
|
197
|
-
* @param other 另一个向量
|
|
198
|
-
* @returns 夹角(0到π)
|
|
199
|
-
*/
|
|
200
|
-
angleTo(other) {
|
|
201
|
-
const dot = this.dot(other);
|
|
202
|
-
const lenProduct = this.length * other.length;
|
|
203
|
-
if (lenProduct === 0)
|
|
204
|
-
return 0;
|
|
205
|
-
return Math.acos(Math.max(-1, Math.min(1, dot / lenProduct)));
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* 计算向量在另一个向量上的投影
|
|
209
|
-
* @param onto 投影目标向量
|
|
210
|
-
* @returns 新的投影向量
|
|
211
|
-
*/
|
|
212
|
-
projectOnto(onto) {
|
|
213
|
-
const dot = this.dot(onto);
|
|
214
|
-
const lenSq = onto.lengthSquared;
|
|
215
|
-
if (lenSq === 0)
|
|
216
|
-
return new Vector3();
|
|
217
|
-
return onto.clone().multiply(dot / lenSq);
|
|
218
|
-
}
|
|
219
|
-
// 插值和限制
|
|
220
|
-
/**
|
|
221
|
-
* 线性插值
|
|
222
|
-
* @param target 目标向量
|
|
223
|
-
* @param t 插值参数(0到1)
|
|
224
|
-
* @returns 当前向量实例(链式调用)
|
|
225
|
-
*/
|
|
226
|
-
lerp(target, t) {
|
|
227
|
-
this.x += (target.x - this.x) * t;
|
|
228
|
-
this.y += (target.y - this.y) * t;
|
|
229
|
-
this.z += (target.z - this.z) * t;
|
|
230
|
-
return this;
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* 限制向量长度
|
|
234
|
-
* @param maxLength 最大长度
|
|
235
|
-
* @returns 当前向量实例(链式调用)
|
|
236
|
-
*/
|
|
237
|
-
clampLength(maxLength) {
|
|
238
|
-
const lenSq = this.lengthSquared;
|
|
239
|
-
if (lenSq > maxLength * maxLength) {
|
|
240
|
-
return this.normalize().multiply(maxLength);
|
|
241
|
-
}
|
|
242
|
-
return this;
|
|
243
|
-
}
|
|
244
|
-
// 比较操作
|
|
245
|
-
/**
|
|
246
|
-
* 检查两个向量是否相等
|
|
247
|
-
* @param other 另一个向量
|
|
248
|
-
* @param epsilon 容差,默认为Number.EPSILON
|
|
249
|
-
* @returns 是否相等
|
|
250
|
-
*/
|
|
251
|
-
equals(other, epsilon = Number.EPSILON) {
|
|
252
|
-
return Math.abs(this.x - other.x) < epsilon &&
|
|
253
|
-
Math.abs(this.y - other.y) < epsilon &&
|
|
254
|
-
Math.abs(this.z - other.z) < epsilon;
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* 检查两个向量是否完全相等
|
|
258
|
-
* @param other 另一个向量
|
|
259
|
-
* @returns 是否完全相等
|
|
260
|
-
*/
|
|
261
|
-
exactEquals(other) {
|
|
262
|
-
return this.x === other.x && this.y === other.y && this.z === other.z;
|
|
263
|
-
}
|
|
264
|
-
// 静态方法
|
|
265
|
-
/**
|
|
266
|
-
* 向量加法(静态方法)
|
|
267
|
-
* @param a 向量a
|
|
268
|
-
* @param b 向量b
|
|
269
|
-
* @returns 新的结果向量
|
|
270
|
-
*/
|
|
271
|
-
static add(a, b) {
|
|
272
|
-
return new Vector3(a.x + b.x, a.y + b.y, a.z + b.z);
|
|
273
|
-
}
|
|
274
|
-
/**
|
|
275
|
-
* 向量减法(静态方法)
|
|
276
|
-
* @param a 向量a
|
|
277
|
-
* @param b 向量b
|
|
278
|
-
* @returns 新的结果向量
|
|
279
|
-
*/
|
|
280
|
-
static subtract(a, b) {
|
|
281
|
-
return new Vector3(a.x - b.x, a.y - b.y, a.z - b.z);
|
|
282
|
-
}
|
|
283
|
-
/**
|
|
284
|
-
* 向量数乘(静态方法)
|
|
285
|
-
* @param vector 向量
|
|
286
|
-
* @param scalar 标量
|
|
287
|
-
* @returns 新的结果向量
|
|
288
|
-
*/
|
|
289
|
-
static multiply(vector, scalar) {
|
|
290
|
-
return new Vector3(vector.x * scalar, vector.y * scalar, vector.z * scalar);
|
|
291
|
-
}
|
|
292
|
-
/**
|
|
293
|
-
* 向量点积(静态方法)
|
|
294
|
-
* @param a 向量a
|
|
295
|
-
* @param b 向量b
|
|
296
|
-
* @returns 点积值
|
|
297
|
-
*/
|
|
298
|
-
static dot(a, b) {
|
|
299
|
-
return a.x * b.x + a.y * b.y + a.z * b.z;
|
|
300
|
-
}
|
|
301
|
-
/**
|
|
302
|
-
* 向量叉积(静态方法)
|
|
303
|
-
* @param a 向量a
|
|
304
|
-
* @param b 向量b
|
|
305
|
-
* @returns 新的叉积向量
|
|
306
|
-
*/
|
|
307
|
-
static cross(a, b) {
|
|
308
|
-
return new Vector3(a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x);
|
|
309
|
-
}
|
|
310
|
-
/**
|
|
311
|
-
* 计算两点间距离(静态方法)
|
|
312
|
-
* @param a 点a
|
|
313
|
-
* @param b 点b
|
|
314
|
-
* @returns 距离值
|
|
315
|
-
*/
|
|
316
|
-
static distance(a, b) {
|
|
317
|
-
const dx = a.x - b.x;
|
|
318
|
-
const dy = a.y - b.y;
|
|
319
|
-
const dz = a.z - b.z;
|
|
320
|
-
return Math.sqrt(dx * dx + dy * dy + dz * dz);
|
|
321
|
-
}
|
|
322
|
-
/**
|
|
323
|
-
* 线性插值(静态方法)
|
|
324
|
-
* @param a 起始向量
|
|
325
|
-
* @param b 目标向量
|
|
326
|
-
* @param t 插值参数(0到1)
|
|
327
|
-
* @returns 新的插值结果向量
|
|
328
|
-
*/
|
|
329
|
-
static lerp(a, b, t) {
|
|
330
|
-
return new Vector3(a.x + (b.x - a.x) * t, a.y + (b.y - a.y) * t, a.z + (b.z - a.z) * t);
|
|
331
|
-
}
|
|
332
|
-
// 字符串转换
|
|
333
|
-
/**
|
|
334
|
-
* 转换为字符串
|
|
335
|
-
* @returns 字符串表示
|
|
336
|
-
*/
|
|
337
|
-
toString() {
|
|
338
|
-
return `Vector3(${this.x.toFixed(3)}, ${this.y.toFixed(3)}, ${this.z.toFixed(3)})`;
|
|
339
|
-
}
|
|
340
|
-
/**
|
|
341
|
-
* 转换为数组
|
|
342
|
-
* @returns [x, y, z] 数组
|
|
343
|
-
*/
|
|
344
|
-
toArray() {
|
|
345
|
-
return [this.x, this.y, this.z];
|
|
346
|
-
}
|
|
347
|
-
/**
|
|
348
|
-
* 转换为普通对象
|
|
349
|
-
* @returns {x, y, z} 对象
|
|
350
|
-
*/
|
|
351
|
-
toObject() {
|
|
352
|
-
return { x: this.x, y: this.y, z: this.z };
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
// 静态常量
|
|
356
|
-
/** 零向量 (0, 0, 0) */
|
|
357
|
-
Vector3.ZERO = new Vector3(0, 0, 0);
|
|
358
|
-
/** 单位向量 (1, 1, 1) */
|
|
359
|
-
Vector3.ONE = new Vector3(1, 1, 1);
|
|
360
|
-
/** 右方向向量 (1, 0, 0) */
|
|
361
|
-
Vector3.RIGHT = new Vector3(1, 0, 0);
|
|
362
|
-
/** 左方向向量 (-1, 0, 0) */
|
|
363
|
-
Vector3.LEFT = new Vector3(-1, 0, 0);
|
|
364
|
-
/** 上方向向量 (0, 1, 0) */
|
|
365
|
-
Vector3.UP = new Vector3(0, 1, 0);
|
|
366
|
-
/** 下方向向量 (0, -1, 0) */
|
|
367
|
-
Vector3.DOWN = new Vector3(0, -1, 0);
|
|
368
|
-
/** 前方向向量 (0, 0, 1) */
|
|
369
|
-
Vector3.FORWARD = new Vector3(0, 0, 1);
|
|
370
|
-
/** 后方向向量 (0, 0, -1) */
|
|
371
|
-
Vector3.BACK = new Vector3(0, 0, -1);
|
|
372
|
-
//# sourceMappingURL=Vector3.js.map
|
package/bin/Vector3.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Vector3.js","sourceRoot":"","sources":["../src/Vector3.ts"],"names":[],"mappings":"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"}
|
package/bin/index.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ECS Framework Math Library
|
|
3
|
-
*
|
|
4
|
-
* 2D数学库,为游戏开发提供完整的数学工具
|
|
5
|
-
* - 基础数学类(向量、矩阵、几何形状)
|
|
6
|
-
* - 定点数数学(用于帧同步确定性计算)
|
|
7
|
-
* - 碰撞检测算法
|
|
8
|
-
* - 动画插值和缓动函数
|
|
9
|
-
* - 数学工具函数
|
|
10
|
-
* - 颜色工具类
|
|
11
|
-
*/
|
|
12
|
-
export { Vector2, type IVector2 } from './Vector2';
|
|
13
|
-
export { Vector3, type IVector3 } from './Vector3';
|
|
14
|
-
export { Matrix3 } from './Matrix3';
|
|
15
|
-
export { Rectangle } from './Rectangle';
|
|
16
|
-
export { Circle } from './Circle';
|
|
17
|
-
export { Fixed32, type IFixed32 } from './Fixed32';
|
|
18
|
-
export { FixedVector2, type IFixedVector2 } from './FixedVector2';
|
|
19
|
-
export { FixedMath } from './FixedMath';
|
|
20
|
-
export { MathUtils } from './MathUtils';
|
|
21
|
-
export { Color, type RGBA, type HSL } from './Color';
|
|
22
|
-
export * from './Collision';
|
|
23
|
-
export * from './Animation';
|
|
24
|
-
export * from './nodes';
|
|
25
|
-
//# sourceMappingURL=index.d.ts.map
|
package/bin/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,SAAS,CAAC;AAGrD,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC"}
|