@esengine/ecs-framework 2.0.4 → 2.0.6
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/bin/Core.js +2 -4
- package/bin/Core.js.map +1 -1
- package/bin/ECS/Core/EventSystem.js +1 -1
- package/bin/ECS/Core/EventSystem.js.map +1 -1
- package/bin/ECS/Core/FluentAPI.d.ts +0 -21
- package/bin/ECS/Core/FluentAPI.d.ts.map +1 -1
- package/bin/ECS/Core/FluentAPI.js +0 -33
- package/bin/ECS/Core/FluentAPI.js.map +1 -1
- package/bin/ECS/Entity.d.ts +23 -70
- package/bin/ECS/Entity.d.ts.map +1 -1
- package/bin/ECS/Entity.js +19 -68
- package/bin/ECS/Entity.js.map +1 -1
- package/bin/ECS/Scene.js +5 -8
- package/bin/ECS/Scene.js.map +1 -1
- package/bin/ECS/index.d.ts +0 -1
- package/bin/ECS/index.d.ts.map +1 -1
- package/bin/ECS/index.js +1 -2
- package/bin/ECS/index.js.map +1 -1
- package/bin/Utils/AccelerationProvider.d.ts +192 -0
- package/bin/Utils/AccelerationProvider.d.ts.map +1 -0
- package/bin/Utils/AccelerationProvider.js +261 -0
- package/bin/Utils/AccelerationProvider.js.map +1 -0
- package/bin/Utils/Extensions/index.d.ts +0 -1
- package/bin/Utils/Extensions/index.d.ts.map +1 -1
- package/bin/Utils/Extensions/index.js +0 -1
- package/bin/Utils/Extensions/index.js.map +1 -1
- package/bin/Utils/PerformanceMonitor.js +2 -2
- package/bin/Utils/PerformanceMonitor.js.map +1 -1
- package/bin/Utils/WasmBridge.d.ts +152 -0
- package/bin/Utils/WasmBridge.d.ts.map +1 -0
- package/bin/Utils/WasmBridge.js +336 -0
- package/bin/Utils/WasmBridge.js.map +1 -0
- package/bin/Utils/index.d.ts +0 -1
- package/bin/Utils/index.d.ts.map +1 -1
- package/bin/Utils/index.js +0 -1
- package/bin/Utils/index.js.map +1 -1
- package/bin/index.d.ts +0 -2
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +0 -3
- package/bin/index.js.map +1 -1
- package/package.json +7 -1
- package/bin/ECS/Transform.d.ts +0 -178
- package/bin/ECS/Transform.d.ts.map +0 -1
- package/bin/ECS/Transform.js +0 -249
- package/bin/ECS/Transform.js.map +0 -1
- package/bin/Math/Edge.d.ts +0 -23
- package/bin/Math/Edge.d.ts.map +0 -1
- package/bin/Math/Edge.js +0 -24
- package/bin/Math/Edge.js.map +0 -1
- package/bin/Math/MathHelper.d.ts +0 -75
- package/bin/Math/MathHelper.d.ts.map +0 -1
- package/bin/Math/MathHelper.js +0 -91
- package/bin/Math/MathHelper.js.map +0 -1
- package/bin/Math/Rectangle.d.ts +0 -126
- package/bin/Math/Rectangle.d.ts.map +0 -1
- package/bin/Math/Rectangle.js +0 -181
- package/bin/Math/Rectangle.js.map +0 -1
- package/bin/Math/Vector2.d.ts +0 -229
- package/bin/Math/Vector2.d.ts.map +0 -1
- package/bin/Math/Vector2.js +0 -338
- package/bin/Math/Vector2.js.map +0 -1
- package/bin/Math/index.d.ts +0 -5
- package/bin/Math/index.d.ts.map +0 -1
- package/bin/Math/index.js +0 -6
- package/bin/Math/index.js.map +0 -1
- package/bin/Utils/Extensions/EdgeExt.d.ts +0 -26
- package/bin/Utils/Extensions/EdgeExt.d.ts.map +0 -1
- package/bin/Utils/Extensions/EdgeExt.js +0 -41
- package/bin/Utils/Extensions/EdgeExt.js.map +0 -1
- package/bin/Utils/Screen.d.ts +0 -12
- package/bin/Utils/Screen.d.ts.map +0 -1
- package/bin/Utils/Screen.js +0 -14
- package/bin/Utils/Screen.js.map +0 -1
package/bin/ECS/Transform.d.ts
DELETED
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
import { Vector2 } from '../Math/Vector2';
|
|
2
|
-
/**
|
|
3
|
-
* 变换组件类
|
|
4
|
-
*
|
|
5
|
-
* 管理游戏对象的空间变换信息,包括位置、旋转和缩放。
|
|
6
|
-
* 支持父子层级关系,可以构建复杂的变换层次结构。
|
|
7
|
-
*
|
|
8
|
-
* @example
|
|
9
|
-
* ```typescript
|
|
10
|
-
* const transform = new Transform();
|
|
11
|
-
* transform.setPosition(100, 200);
|
|
12
|
-
* transform.setRotationDegrees(45);
|
|
13
|
-
* transform.setScale(2, 2);
|
|
14
|
-
*
|
|
15
|
-
* // 设置父子关系
|
|
16
|
-
* childTransform.setParent(transform);
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export declare class Transform {
|
|
20
|
-
/**
|
|
21
|
-
* 本地位置坐标
|
|
22
|
-
*
|
|
23
|
-
* 相对于父变换的位置,如果没有父变换则为世界坐标。
|
|
24
|
-
*/
|
|
25
|
-
position: Vector2;
|
|
26
|
-
/**
|
|
27
|
-
* 本地旋转角度
|
|
28
|
-
*
|
|
29
|
-
* 以弧度为单位的旋转角度,相对于父变换的旋转。
|
|
30
|
-
*/
|
|
31
|
-
rotation: number;
|
|
32
|
-
/**
|
|
33
|
-
* 本地缩放比例
|
|
34
|
-
*
|
|
35
|
-
* 相对于父变换的缩放比例。
|
|
36
|
-
*/
|
|
37
|
-
scale: Vector2;
|
|
38
|
-
/**
|
|
39
|
-
* 父变换引用
|
|
40
|
-
*
|
|
41
|
-
* 指向父级变换,如果为null则表示这是根变换。
|
|
42
|
-
*/
|
|
43
|
-
parent: Transform | null;
|
|
44
|
-
/**
|
|
45
|
-
* 子变换集合
|
|
46
|
-
*
|
|
47
|
-
* 存储所有子级变换的数组。
|
|
48
|
-
*/
|
|
49
|
-
private _children;
|
|
50
|
-
/**
|
|
51
|
-
* 创建变换实例
|
|
52
|
-
*
|
|
53
|
-
* @param position - 初始位置,默认为零向量
|
|
54
|
-
* @param rotation - 初始旋转角度(弧度),默认为0
|
|
55
|
-
* @param scale - 初始缩放,默认为单位向量
|
|
56
|
-
*/
|
|
57
|
-
constructor(position?: Vector2, rotation?: number, scale?: Vector2);
|
|
58
|
-
/**
|
|
59
|
-
* 获取旋转角度(度数)
|
|
60
|
-
*
|
|
61
|
-
* @returns 以度数为单位的旋转角度
|
|
62
|
-
*/
|
|
63
|
-
get rotationDegrees(): number;
|
|
64
|
-
/**
|
|
65
|
-
* 设置旋转角度(度数)
|
|
66
|
-
*
|
|
67
|
-
* @param value - 以度数为单位的旋转角度
|
|
68
|
-
*/
|
|
69
|
-
set rotationDegrees(value: number);
|
|
70
|
-
/**
|
|
71
|
-
* 获取世界坐标位置
|
|
72
|
-
*
|
|
73
|
-
* 计算并返回在世界坐标系中的绝对位置。
|
|
74
|
-
*
|
|
75
|
-
* @returns 世界坐标位置
|
|
76
|
-
*/
|
|
77
|
-
get worldPosition(): Vector2;
|
|
78
|
-
/**
|
|
79
|
-
* 获取世界旋转角度
|
|
80
|
-
*
|
|
81
|
-
* 计算并返回在世界坐标系中的绝对旋转角度。
|
|
82
|
-
*
|
|
83
|
-
* @returns 世界旋转角度(弧度)
|
|
84
|
-
*/
|
|
85
|
-
get worldRotation(): number;
|
|
86
|
-
/**
|
|
87
|
-
* 获取世界缩放比例
|
|
88
|
-
*
|
|
89
|
-
* 计算并返回在世界坐标系中的绝对缩放比例。
|
|
90
|
-
*
|
|
91
|
-
* @returns 世界缩放比例
|
|
92
|
-
*/
|
|
93
|
-
get worldScale(): Vector2;
|
|
94
|
-
/**
|
|
95
|
-
* 获取子变换数量
|
|
96
|
-
*
|
|
97
|
-
* @returns 子变换的数量
|
|
98
|
-
*/
|
|
99
|
-
get childCount(): number;
|
|
100
|
-
/**
|
|
101
|
-
* 获取指定索引的子变换
|
|
102
|
-
*
|
|
103
|
-
* @param index - 子变换的索引
|
|
104
|
-
* @returns 子变换实例,如果索引无效则返回null
|
|
105
|
-
*/
|
|
106
|
-
getChild(index: number): Transform | null;
|
|
107
|
-
/**
|
|
108
|
-
* 设置父变换
|
|
109
|
-
*
|
|
110
|
-
* 建立或断开与父变换的层级关系。
|
|
111
|
-
*
|
|
112
|
-
* @param parent - 新的父变换,传入null表示断开父子关系
|
|
113
|
-
*/
|
|
114
|
-
setParent(parent: Transform | null): void;
|
|
115
|
-
/**
|
|
116
|
-
* 设置本地位置
|
|
117
|
-
*
|
|
118
|
-
* @param x - X坐标
|
|
119
|
-
* @param y - Y坐标
|
|
120
|
-
*/
|
|
121
|
-
setPosition(x: number, y: number): void;
|
|
122
|
-
/**
|
|
123
|
-
* 设置本地旋转角度(弧度)
|
|
124
|
-
*
|
|
125
|
-
* @param radians - 旋转角度(弧度)
|
|
126
|
-
*/
|
|
127
|
-
setRotation(radians: number): void;
|
|
128
|
-
/**
|
|
129
|
-
* 设置本地旋转角度(度数)
|
|
130
|
-
*
|
|
131
|
-
* @param degrees - 旋转角度(度数)
|
|
132
|
-
*/
|
|
133
|
-
setRotationDegrees(degrees: number): void;
|
|
134
|
-
/**
|
|
135
|
-
* 设置本地缩放比例
|
|
136
|
-
*
|
|
137
|
-
* @param scale - 缩放向量
|
|
138
|
-
*/
|
|
139
|
-
setScale(scale: Vector2): void;
|
|
140
|
-
/**
|
|
141
|
-
* 设置本地缩放比例
|
|
142
|
-
*
|
|
143
|
-
* @param x - X轴缩放比例
|
|
144
|
-
* @param y - Y轴缩放比例
|
|
145
|
-
*/
|
|
146
|
-
setScale(x: number, y: number): void;
|
|
147
|
-
/**
|
|
148
|
-
* 朝向指定位置
|
|
149
|
-
*
|
|
150
|
-
* 调整旋转角度使变换朝向目标位置。
|
|
151
|
-
*
|
|
152
|
-
* @param target - 目标位置
|
|
153
|
-
*/
|
|
154
|
-
lookAt(target: Vector2): void;
|
|
155
|
-
/**
|
|
156
|
-
* 平移变换
|
|
157
|
-
*
|
|
158
|
-
* 在当前位置基础上添加偏移量。
|
|
159
|
-
*
|
|
160
|
-
* @param offset - 位置偏移量
|
|
161
|
-
*/
|
|
162
|
-
translate(offset: Vector2): void;
|
|
163
|
-
/**
|
|
164
|
-
* 旋转
|
|
165
|
-
* @param radians 旋转角度(弧度)
|
|
166
|
-
*/
|
|
167
|
-
rotate(radians: number): void;
|
|
168
|
-
/**
|
|
169
|
-
* 复制另一个变换的值
|
|
170
|
-
* @param other 另一个变换
|
|
171
|
-
*/
|
|
172
|
-
copyFrom(other: Transform): void;
|
|
173
|
-
/**
|
|
174
|
-
* 克隆变换
|
|
175
|
-
*/
|
|
176
|
-
clone(): Transform;
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=Transform.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Transform.d.ts","sourceRoot":"","sources":["../../src/ECS/Transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1C;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,SAAS;IAClB;;;;OAIG;IACI,QAAQ,EAAE,OAAO,CAAgB;IAExC;;;;OAIG;IACI,QAAQ,EAAE,MAAM,CAAK;IAE5B;;;;OAIG;IACI,KAAK,EAAE,OAAO,CAAe;IAEpC;;;;OAIG;IACI,MAAM,EAAE,SAAS,GAAG,IAAI,CAAQ;IAEvC;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAmB;IAEpC;;;;;;OAMG;gBACS,QAAQ,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAE,MAAU,EAAE,KAAK,CAAC,EAAE,OAAO;IAMrE;;;;OAIG;IACH,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED;;;;OAIG;IACH,IAAW,eAAe,CAAC,KAAK,EAAE,MAAM,EAEvC;IAED;;;;;;OAMG;IACH,IAAW,aAAa,IAAI,OAAO,CAgBlC;IAED;;;;;;OAMG;IACH,IAAW,aAAa,IAAI,MAAM,CAKjC;IAED;;;;;;OAMG;IACH,IAAW,UAAU,IAAI,OAAO,CAK/B;IAED;;;;OAIG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;;;;OAKG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAOhD;;;;;;OAMG;IACI,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI;IAkBhD;;;;;OAKG;IACI,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAI9C;;;;OAIG;IACI,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIzC;;;;OAIG;IACI,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIhD;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IACrC;;;;;OAKG;IACI,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAS3C;;;;;;OAMG;IACI,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAKpC;;;;;;OAMG;IACI,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAIvC;;;OAGG;IACI,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIpC;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAMvC;;OAEG;IACI,KAAK,IAAI,SAAS;CAI5B"}
|
package/bin/ECS/Transform.js
DELETED
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
import { Vector2 } from '../Math/Vector2';
|
|
2
|
-
import { MathHelper } from '../Math/MathHelper';
|
|
3
|
-
/**
|
|
4
|
-
* 变换组件类
|
|
5
|
-
*
|
|
6
|
-
* 管理游戏对象的空间变换信息,包括位置、旋转和缩放。
|
|
7
|
-
* 支持父子层级关系,可以构建复杂的变换层次结构。
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* const transform = new Transform();
|
|
12
|
-
* transform.setPosition(100, 200);
|
|
13
|
-
* transform.setRotationDegrees(45);
|
|
14
|
-
* transform.setScale(2, 2);
|
|
15
|
-
*
|
|
16
|
-
* // 设置父子关系
|
|
17
|
-
* childTransform.setParent(transform);
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export class Transform {
|
|
21
|
-
/**
|
|
22
|
-
* 创建变换实例
|
|
23
|
-
*
|
|
24
|
-
* @param position - 初始位置,默认为零向量
|
|
25
|
-
* @param rotation - 初始旋转角度(弧度),默认为0
|
|
26
|
-
* @param scale - 初始缩放,默认为单位向量
|
|
27
|
-
*/
|
|
28
|
-
constructor(position, rotation = 0, scale) {
|
|
29
|
-
/**
|
|
30
|
-
* 本地位置坐标
|
|
31
|
-
*
|
|
32
|
-
* 相对于父变换的位置,如果没有父变换则为世界坐标。
|
|
33
|
-
*/
|
|
34
|
-
this.position = Vector2.zero;
|
|
35
|
-
/**
|
|
36
|
-
* 本地旋转角度
|
|
37
|
-
*
|
|
38
|
-
* 以弧度为单位的旋转角度,相对于父变换的旋转。
|
|
39
|
-
*/
|
|
40
|
-
this.rotation = 0;
|
|
41
|
-
/**
|
|
42
|
-
* 本地缩放比例
|
|
43
|
-
*
|
|
44
|
-
* 相对于父变换的缩放比例。
|
|
45
|
-
*/
|
|
46
|
-
this.scale = Vector2.one;
|
|
47
|
-
/**
|
|
48
|
-
* 父变换引用
|
|
49
|
-
*
|
|
50
|
-
* 指向父级变换,如果为null则表示这是根变换。
|
|
51
|
-
*/
|
|
52
|
-
this.parent = null;
|
|
53
|
-
/**
|
|
54
|
-
* 子变换集合
|
|
55
|
-
*
|
|
56
|
-
* 存储所有子级变换的数组。
|
|
57
|
-
*/
|
|
58
|
-
this._children = [];
|
|
59
|
-
if (position)
|
|
60
|
-
this.position = position.clone();
|
|
61
|
-
this.rotation = rotation;
|
|
62
|
-
if (scale)
|
|
63
|
-
this.scale = scale.clone();
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* 获取旋转角度(度数)
|
|
67
|
-
*
|
|
68
|
-
* @returns 以度数为单位的旋转角度
|
|
69
|
-
*/
|
|
70
|
-
get rotationDegrees() {
|
|
71
|
-
return MathHelper.toDegrees(this.rotation);
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* 设置旋转角度(度数)
|
|
75
|
-
*
|
|
76
|
-
* @param value - 以度数为单位的旋转角度
|
|
77
|
-
*/
|
|
78
|
-
set rotationDegrees(value) {
|
|
79
|
-
this.rotation = MathHelper.toRadians(value);
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* 获取世界坐标位置
|
|
83
|
-
*
|
|
84
|
-
* 计算并返回在世界坐标系中的绝对位置。
|
|
85
|
-
*
|
|
86
|
-
* @returns 世界坐标位置
|
|
87
|
-
*/
|
|
88
|
-
get worldPosition() {
|
|
89
|
-
if (!this.parent) {
|
|
90
|
-
return this.position.clone();
|
|
91
|
-
}
|
|
92
|
-
// 计算世界位置
|
|
93
|
-
const parentWorld = this.parent.worldPosition;
|
|
94
|
-
const cos = Math.cos(this.parent.worldRotation);
|
|
95
|
-
const sin = Math.sin(this.parent.worldRotation);
|
|
96
|
-
const parentScale = this.parent.worldScale;
|
|
97
|
-
const scaledPos = Vector2.multiply(this.position, parentScale);
|
|
98
|
-
const rotatedX = scaledPos.x * cos - scaledPos.y * sin;
|
|
99
|
-
const rotatedY = scaledPos.x * sin + scaledPos.y * cos;
|
|
100
|
-
return new Vector2(parentWorld.x + rotatedX, parentWorld.y + rotatedY);
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* 获取世界旋转角度
|
|
104
|
-
*
|
|
105
|
-
* 计算并返回在世界坐标系中的绝对旋转角度。
|
|
106
|
-
*
|
|
107
|
-
* @returns 世界旋转角度(弧度)
|
|
108
|
-
*/
|
|
109
|
-
get worldRotation() {
|
|
110
|
-
if (!this.parent) {
|
|
111
|
-
return this.rotation;
|
|
112
|
-
}
|
|
113
|
-
return this.parent.worldRotation + this.rotation;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* 获取世界缩放比例
|
|
117
|
-
*
|
|
118
|
-
* 计算并返回在世界坐标系中的绝对缩放比例。
|
|
119
|
-
*
|
|
120
|
-
* @returns 世界缩放比例
|
|
121
|
-
*/
|
|
122
|
-
get worldScale() {
|
|
123
|
-
if (!this.parent) {
|
|
124
|
-
return this.scale.clone();
|
|
125
|
-
}
|
|
126
|
-
return Vector2.multiply(this.parent.worldScale, this.scale);
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* 获取子变换数量
|
|
130
|
-
*
|
|
131
|
-
* @returns 子变换的数量
|
|
132
|
-
*/
|
|
133
|
-
get childCount() {
|
|
134
|
-
return this._children.length;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* 获取指定索引的子变换
|
|
138
|
-
*
|
|
139
|
-
* @param index - 子变换的索引
|
|
140
|
-
* @returns 子变换实例,如果索引无效则返回null
|
|
141
|
-
*/
|
|
142
|
-
getChild(index) {
|
|
143
|
-
if (index >= 0 && index < this._children.length) {
|
|
144
|
-
return this._children[index];
|
|
145
|
-
}
|
|
146
|
-
return null;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* 设置父变换
|
|
150
|
-
*
|
|
151
|
-
* 建立或断开与父变换的层级关系。
|
|
152
|
-
*
|
|
153
|
-
* @param parent - 新的父变换,传入null表示断开父子关系
|
|
154
|
-
*/
|
|
155
|
-
setParent(parent) {
|
|
156
|
-
if (this.parent === parent)
|
|
157
|
-
return;
|
|
158
|
-
// 从旧父级移除
|
|
159
|
-
if (this.parent) {
|
|
160
|
-
const index = this.parent._children.indexOf(this);
|
|
161
|
-
if (index >= 0) {
|
|
162
|
-
this.parent._children.splice(index, 1);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
// 设置新父级
|
|
166
|
-
this.parent = parent;
|
|
167
|
-
if (parent) {
|
|
168
|
-
parent._children.push(this);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* 设置本地位置
|
|
173
|
-
*
|
|
174
|
-
* @param x - X坐标
|
|
175
|
-
* @param y - Y坐标
|
|
176
|
-
*/
|
|
177
|
-
setPosition(x, y) {
|
|
178
|
-
this.position.set(x, y);
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* 设置本地旋转角度(弧度)
|
|
182
|
-
*
|
|
183
|
-
* @param radians - 旋转角度(弧度)
|
|
184
|
-
*/
|
|
185
|
-
setRotation(radians) {
|
|
186
|
-
this.rotation = radians;
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* 设置本地旋转角度(度数)
|
|
190
|
-
*
|
|
191
|
-
* @param degrees - 旋转角度(度数)
|
|
192
|
-
*/
|
|
193
|
-
setRotationDegrees(degrees) {
|
|
194
|
-
this.rotation = MathHelper.toRadians(degrees);
|
|
195
|
-
}
|
|
196
|
-
setScale(scaleOrX, y) {
|
|
197
|
-
if (typeof scaleOrX === 'number') {
|
|
198
|
-
this.scale.set(scaleOrX, y);
|
|
199
|
-
}
|
|
200
|
-
else {
|
|
201
|
-
this.scale.copyFrom(scaleOrX);
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* 朝向指定位置
|
|
206
|
-
*
|
|
207
|
-
* 调整旋转角度使变换朝向目标位置。
|
|
208
|
-
*
|
|
209
|
-
* @param target - 目标位置
|
|
210
|
-
*/
|
|
211
|
-
lookAt(target) {
|
|
212
|
-
const direction = target.subtract(this.worldPosition);
|
|
213
|
-
this.rotation = Math.atan2(direction.y, direction.x);
|
|
214
|
-
}
|
|
215
|
-
/**
|
|
216
|
-
* 平移变换
|
|
217
|
-
*
|
|
218
|
-
* 在当前位置基础上添加偏移量。
|
|
219
|
-
*
|
|
220
|
-
* @param offset - 位置偏移量
|
|
221
|
-
*/
|
|
222
|
-
translate(offset) {
|
|
223
|
-
this.position = this.position.add(offset);
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* 旋转
|
|
227
|
-
* @param radians 旋转角度(弧度)
|
|
228
|
-
*/
|
|
229
|
-
rotate(radians) {
|
|
230
|
-
this.rotation += radians;
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* 复制另一个变换的值
|
|
234
|
-
* @param other 另一个变换
|
|
235
|
-
*/
|
|
236
|
-
copyFrom(other) {
|
|
237
|
-
this.position.copyFrom(other.position);
|
|
238
|
-
this.rotation = other.rotation;
|
|
239
|
-
this.scale.copyFrom(other.scale);
|
|
240
|
-
}
|
|
241
|
-
/**
|
|
242
|
-
* 克隆变换
|
|
243
|
-
*/
|
|
244
|
-
clone() {
|
|
245
|
-
const transform = new Transform(this.position, this.rotation, this.scale);
|
|
246
|
-
return transform;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
//# sourceMappingURL=Transform.js.map
|
package/bin/ECS/Transform.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Transform.js","sourceRoot":"","sources":["../../src/ECS/Transform.ts"],"names":[],"mappings":"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"}
|
package/bin/Math/Edge.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 边缘枚举
|
|
3
|
-
* 表示矩形的四个边
|
|
4
|
-
*/
|
|
5
|
-
export declare enum Edge {
|
|
6
|
-
/**
|
|
7
|
-
* 顶边
|
|
8
|
-
*/
|
|
9
|
-
top = 0,
|
|
10
|
-
/**
|
|
11
|
-
* 底边
|
|
12
|
-
*/
|
|
13
|
-
bottom = 1,
|
|
14
|
-
/**
|
|
15
|
-
* 左边
|
|
16
|
-
*/
|
|
17
|
-
left = 2,
|
|
18
|
-
/**
|
|
19
|
-
* 右边
|
|
20
|
-
*/
|
|
21
|
-
right = 3
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=Edge.d.ts.map
|
package/bin/Math/Edge.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Edge.d.ts","sourceRoot":"","sources":["../../src/Math/Edge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,IAAI;IACZ;;OAEG;IACH,GAAG,IAAI;IAEP;;OAEG;IACH,MAAM,IAAI;IAEV;;OAEG;IACH,IAAI,IAAI;IAER;;OAEG;IACH,KAAK,IAAI;CACZ"}
|
package/bin/Math/Edge.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 边缘枚举
|
|
3
|
-
* 表示矩形的四个边
|
|
4
|
-
*/
|
|
5
|
-
export var Edge;
|
|
6
|
-
(function (Edge) {
|
|
7
|
-
/**
|
|
8
|
-
* 顶边
|
|
9
|
-
*/
|
|
10
|
-
Edge[Edge["top"] = 0] = "top";
|
|
11
|
-
/**
|
|
12
|
-
* 底边
|
|
13
|
-
*/
|
|
14
|
-
Edge[Edge["bottom"] = 1] = "bottom";
|
|
15
|
-
/**
|
|
16
|
-
* 左边
|
|
17
|
-
*/
|
|
18
|
-
Edge[Edge["left"] = 2] = "left";
|
|
19
|
-
/**
|
|
20
|
-
* 右边
|
|
21
|
-
*/
|
|
22
|
-
Edge[Edge["right"] = 3] = "right";
|
|
23
|
-
})(Edge || (Edge = {}));
|
|
24
|
-
//# sourceMappingURL=Edge.js.map
|
package/bin/Math/Edge.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Edge.js","sourceRoot":"","sources":["../../src/Math/Edge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,IAoBX;AApBD,WAAY,IAAI;IACZ;;OAEG;IACH,6BAAO,CAAA;IAEP;;OAEG;IACH,mCAAU,CAAA;IAEV;;OAEG;IACH,+BAAQ,CAAA;IAER;;OAEG;IACH,iCAAS,CAAA;AACb,CAAC,EApBW,IAAI,KAAJ,IAAI,QAoBf"}
|
package/bin/Math/MathHelper.d.ts
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 数学辅助工具类
|
|
3
|
-
* 提供常用的数学计算函数和常量
|
|
4
|
-
*/
|
|
5
|
-
export declare class MathHelper {
|
|
6
|
-
/**
|
|
7
|
-
* 角度转弧度的转换系数
|
|
8
|
-
*/
|
|
9
|
-
static readonly DEG_TO_RAD: number;
|
|
10
|
-
/**
|
|
11
|
-
* 弧度转角度的转换系数
|
|
12
|
-
*/
|
|
13
|
-
static readonly RAD_TO_DEG: number;
|
|
14
|
-
/**
|
|
15
|
-
* 浮点数比较的默认精度值
|
|
16
|
-
*/
|
|
17
|
-
static readonly EPSILON = 0.00001;
|
|
18
|
-
/**
|
|
19
|
-
* 将角度转换为弧度
|
|
20
|
-
* @param degrees 角度值
|
|
21
|
-
* @returns 对应的弧度值
|
|
22
|
-
*/
|
|
23
|
-
static toRadians(degrees: number): number;
|
|
24
|
-
/**
|
|
25
|
-
* 将弧度转换为角度
|
|
26
|
-
* @param radians 弧度值
|
|
27
|
-
* @returns 对应的角度值
|
|
28
|
-
*/
|
|
29
|
-
static toDegrees(radians: number): number;
|
|
30
|
-
/**
|
|
31
|
-
* 将数值限制在指定范围内
|
|
32
|
-
* @param value 要限制的值
|
|
33
|
-
* @param min 最小值
|
|
34
|
-
* @param max 最大值
|
|
35
|
-
* @returns 限制后的值
|
|
36
|
-
*/
|
|
37
|
-
static clamp(value: number, min: number, max: number): number;
|
|
38
|
-
/**
|
|
39
|
-
* 将数值限制在0到1之间
|
|
40
|
-
* @param value 要限制的值
|
|
41
|
-
* @returns 限制在[0,1]范围内的值
|
|
42
|
-
*/
|
|
43
|
-
static clamp01(value: number): number;
|
|
44
|
-
/**
|
|
45
|
-
* 在两个值之间进行线性插值
|
|
46
|
-
* @param a 起始值
|
|
47
|
-
* @param b 结束值
|
|
48
|
-
* @param t 插值参数,会被限制在[0,1]范围内
|
|
49
|
-
* @returns 插值结果
|
|
50
|
-
*/
|
|
51
|
-
static lerp(a: number, b: number, t: number): number;
|
|
52
|
-
/**
|
|
53
|
-
* 检查两个浮点数是否在指定精度内相等
|
|
54
|
-
* @param a 第一个数值
|
|
55
|
-
* @param b 第二个数值
|
|
56
|
-
* @param tolerance 容差值,默认为EPSILON
|
|
57
|
-
* @returns 如果两个数值在容差范围内相等返回true,否则返回false
|
|
58
|
-
*/
|
|
59
|
-
static approximately(a: number, b: number, tolerance?: number): boolean;
|
|
60
|
-
/**
|
|
61
|
-
* 生成指定范围内的随机数
|
|
62
|
-
* @param min 最小值,默认为0
|
|
63
|
-
* @param max 最大值,默认为1
|
|
64
|
-
* @returns 范围内的随机数
|
|
65
|
-
*/
|
|
66
|
-
static random(min?: number, max?: number): number;
|
|
67
|
-
/**
|
|
68
|
-
* 生成指定范围内的随机整数
|
|
69
|
-
* @param min 最小值(包含)
|
|
70
|
-
* @param max 最大值(包含)
|
|
71
|
-
* @returns 范围内的随机整数
|
|
72
|
-
*/
|
|
73
|
-
static randomInt(min: number, max: number): number;
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=MathHelper.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MathHelper.d.ts","sourceRoot":"","sources":["../../src/Math/MathHelper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,UAAU;IACnB;;OAEG;IACH,gBAAuB,UAAU,SAAiB;IAElD;;OAEG;IACH,gBAAuB,UAAU,SAAiB;IAElD;;OAEG;IACH,gBAAuB,OAAO,WAAW;IAEzC;;;;OAIG;WACW,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIhD;;;;OAIG;WACW,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIhD;;;;;;OAMG;WACW,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIpE;;;;OAIG;WACW,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI5C;;;;;;OAMG;WACW,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAI3D;;;;;;OAMG;WACW,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,MAA2B,GAAG,OAAO;IAIlG;;;;;OAKG;WACW,MAAM,CAAC,GAAG,GAAE,MAAU,EAAE,GAAG,GAAE,MAAU,GAAG,MAAM;IAI9D;;;;;OAKG;WACW,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;CAG5D"}
|
package/bin/Math/MathHelper.js
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 数学辅助工具类
|
|
3
|
-
* 提供常用的数学计算函数和常量
|
|
4
|
-
*/
|
|
5
|
-
export class MathHelper {
|
|
6
|
-
/**
|
|
7
|
-
* 将角度转换为弧度
|
|
8
|
-
* @param degrees 角度值
|
|
9
|
-
* @returns 对应的弧度值
|
|
10
|
-
*/
|
|
11
|
-
static toRadians(degrees) {
|
|
12
|
-
return degrees * MathHelper.DEG_TO_RAD;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* 将弧度转换为角度
|
|
16
|
-
* @param radians 弧度值
|
|
17
|
-
* @returns 对应的角度值
|
|
18
|
-
*/
|
|
19
|
-
static toDegrees(radians) {
|
|
20
|
-
return radians * MathHelper.RAD_TO_DEG;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* 将数值限制在指定范围内
|
|
24
|
-
* @param value 要限制的值
|
|
25
|
-
* @param min 最小值
|
|
26
|
-
* @param max 最大值
|
|
27
|
-
* @returns 限制后的值
|
|
28
|
-
*/
|
|
29
|
-
static clamp(value, min, max) {
|
|
30
|
-
return Math.max(min, Math.min(max, value));
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* 将数值限制在0到1之间
|
|
34
|
-
* @param value 要限制的值
|
|
35
|
-
* @returns 限制在[0,1]范围内的值
|
|
36
|
-
*/
|
|
37
|
-
static clamp01(value) {
|
|
38
|
-
return MathHelper.clamp(value, 0, 1);
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* 在两个值之间进行线性插值
|
|
42
|
-
* @param a 起始值
|
|
43
|
-
* @param b 结束值
|
|
44
|
-
* @param t 插值参数,会被限制在[0,1]范围内
|
|
45
|
-
* @returns 插值结果
|
|
46
|
-
*/
|
|
47
|
-
static lerp(a, b, t) {
|
|
48
|
-
return a + (b - a) * MathHelper.clamp01(t);
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* 检查两个浮点数是否在指定精度内相等
|
|
52
|
-
* @param a 第一个数值
|
|
53
|
-
* @param b 第二个数值
|
|
54
|
-
* @param tolerance 容差值,默认为EPSILON
|
|
55
|
-
* @returns 如果两个数值在容差范围内相等返回true,否则返回false
|
|
56
|
-
*/
|
|
57
|
-
static approximately(a, b, tolerance = MathHelper.EPSILON) {
|
|
58
|
-
return Math.abs(a - b) < tolerance;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* 生成指定范围内的随机数
|
|
62
|
-
* @param min 最小值,默认为0
|
|
63
|
-
* @param max 最大值,默认为1
|
|
64
|
-
* @returns 范围内的随机数
|
|
65
|
-
*/
|
|
66
|
-
static random(min = 0, max = 1) {
|
|
67
|
-
return Math.random() * (max - min) + min;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* 生成指定范围内的随机整数
|
|
71
|
-
* @param min 最小值(包含)
|
|
72
|
-
* @param max 最大值(包含)
|
|
73
|
-
* @returns 范围内的随机整数
|
|
74
|
-
*/
|
|
75
|
-
static randomInt(min, max) {
|
|
76
|
-
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* 角度转弧度的转换系数
|
|
81
|
-
*/
|
|
82
|
-
MathHelper.DEG_TO_RAD = Math.PI / 180;
|
|
83
|
-
/**
|
|
84
|
-
* 弧度转角度的转换系数
|
|
85
|
-
*/
|
|
86
|
-
MathHelper.RAD_TO_DEG = 180 / Math.PI;
|
|
87
|
-
/**
|
|
88
|
-
* 浮点数比较的默认精度值
|
|
89
|
-
*/
|
|
90
|
-
MathHelper.EPSILON = 0.00001;
|
|
91
|
-
//# sourceMappingURL=MathHelper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MathHelper.js","sourceRoot":"","sources":["../../src/Math/MathHelper.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,UAAU;IAgBnB;;;;OAIG;IACI,MAAM,CAAC,SAAS,CAAC,OAAe;QACnC,OAAO,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,SAAS,CAAC,OAAe;QACnC,OAAO,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;QACvD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,OAAO,CAAC,KAAa;QAC/B,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QAC9C,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,YAAoB,UAAU,CAAC,OAAO;QACpF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,MAAM,CAAC,MAAc,CAAC,EAAE,MAAc,CAAC;QACjD,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,SAAS,CAAC,GAAW,EAAE,GAAW;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAC7D,CAAC;;AA7FD;;GAEG;AACoB,qBAAU,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;AAElD;;GAEG;AACoB,qBAAU,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;AAElD;;GAEG;AACoB,kBAAO,GAAG,OAAO,CAAC"}
|