@esengine/ecs-framework-math 1.0.3 → 2.8.0
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/LICENSE +21 -0
- package/bin/Animation/Easing.d.ts +150 -150
- package/bin/Animation/Easing.d.ts.map +1 -1
- package/bin/Animation/Easing.js +151 -151
- package/bin/Animation/Easing.js.map +1 -1
- package/bin/Animation/Interpolation.d.ts +102 -102
- package/bin/Animation/Interpolation.d.ts.map +1 -1
- package/bin/Animation/Interpolation.js +104 -104
- package/bin/Animation/Interpolation.js.map +1 -1
- package/bin/Animation/index.d.ts.map +1 -1
- package/bin/Animation/index.js.map +1 -1
- package/bin/Circle.d.ts +159 -159
- package/bin/Circle.d.ts.map +1 -1
- package/bin/Circle.js +159 -159
- package/bin/Circle.js.map +1 -1
- package/bin/Collision/CollisionDetector.d.ts +64 -64
- package/bin/Collision/CollisionDetector.d.ts.map +1 -1
- package/bin/Collision/CollisionDetector.js +66 -66
- package/bin/Collision/CollisionDetector.js.map +1 -1
- package/bin/Color.d.ts +277 -0
- package/bin/Color.d.ts.map +1 -0
- package/bin/Color.js +470 -0
- package/bin/Color.js.map +1 -0
- package/bin/Fixed32.d.ts +266 -0
- package/bin/Fixed32.d.ts.map +1 -0
- package/bin/Fixed32.js +381 -0
- package/bin/Fixed32.js.map +1 -0
- package/bin/FixedMath.d.ts +109 -0
- package/bin/FixedMath.d.ts.map +1 -0
- package/bin/FixedMath.js +264 -0
- package/bin/FixedMath.js.map +1 -0
- package/bin/FixedVector2.d.ts +293 -0
- package/bin/FixedVector2.d.ts.map +1 -0
- package/bin/FixedVector2.js +413 -0
- package/bin/FixedVector2.js.map +1 -0
- package/bin/MathUtils.d.ts +205 -205
- package/bin/MathUtils.d.ts.map +1 -1
- package/bin/MathUtils.js +206 -206
- package/bin/MathUtils.js.map +1 -1
- package/bin/Matrix3.d.ts +158 -139
- package/bin/Matrix3.d.ts.map +1 -1
- package/bin/Matrix3.js +179 -151
- package/bin/Matrix3.js.map +1 -1
- package/bin/Rectangle.d.ts +144 -144
- package/bin/Rectangle.d.ts.map +1 -1
- package/bin/Rectangle.js +144 -144
- package/bin/Rectangle.js.map +1 -1
- package/bin/Vector2.d.ts +202 -186
- package/bin/Vector2.d.ts.map +1 -1
- package/bin/Vector2.js +198 -188
- package/bin/Vector2.js.map +1 -1
- package/bin/Vector3.d.ts +257 -0
- package/bin/Vector3.d.ts.map +1 -0
- package/bin/Vector3.js +372 -0
- package/bin/Vector3.js.map +1 -0
- package/bin/index.d.ts +8 -1
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +9 -0
- package/bin/index.js.map +1 -1
- package/package.json +66 -67
|
@@ -22,20 +22,20 @@ export declare class CachedInterpolator<T> {
|
|
|
22
22
|
private cache;
|
|
23
23
|
constructor(interpolator: InterpolatorFunction<T>);
|
|
24
24
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
* 设置插值范围
|
|
26
|
+
* @param from 起始值
|
|
27
|
+
* @param to 目标值
|
|
28
|
+
*/
|
|
29
29
|
setRange(from: T, to: T): void;
|
|
30
30
|
/**
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
* 获取插值结果
|
|
32
|
+
* @param t 插值参数
|
|
33
|
+
* @returns 插值结果
|
|
34
|
+
*/
|
|
35
35
|
get(t: number): T;
|
|
36
36
|
/**
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
* 清空缓存
|
|
38
|
+
*/
|
|
39
39
|
clearCache(): void;
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
@@ -45,128 +45,128 @@ export declare class CachedInterpolator<T> {
|
|
|
45
45
|
*/
|
|
46
46
|
export declare class Interpolation {
|
|
47
47
|
/**
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
* 数值线性插值
|
|
49
|
+
* @param from 起始值
|
|
50
|
+
* @param to 目标值
|
|
51
|
+
* @param t 插值参数 (0-1)
|
|
52
|
+
* @returns 插值结果
|
|
53
|
+
*/
|
|
54
54
|
static number(from: number, to: number, t: number): number;
|
|
55
55
|
/**
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
56
|
+
* 向量线性插值
|
|
57
|
+
* @param from 起始向量
|
|
58
|
+
* @param to 目标向量
|
|
59
|
+
* @param t 插值参数 (0-1)
|
|
60
|
+
* @returns 插值结果向量
|
|
61
|
+
*/
|
|
62
62
|
static vector2(from: Vector2, to: Vector2, t: number): Vector2;
|
|
63
63
|
/**
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
* 角度插值(处理角度环绕)
|
|
65
|
+
* @param from 起始角度(弧度)
|
|
66
|
+
* @param to 目标角度(弧度)
|
|
67
|
+
* @param t 插值参数 (0-1)
|
|
68
|
+
* @returns 插值结果角度
|
|
69
|
+
*/
|
|
70
70
|
static angle(from: number, to: number, t: number): number;
|
|
71
71
|
/**
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
72
|
+
* 颜色插值(RGB)
|
|
73
|
+
* @param from 起始颜色 [r, g, b, a?]
|
|
74
|
+
* @param to 目标颜色 [r, g, b, a?]
|
|
75
|
+
* @param t 插值参数 (0-1)
|
|
76
|
+
* @returns 插值结果颜色
|
|
77
|
+
*/
|
|
78
78
|
static color(from: number[], to: number[], t: number): number[];
|
|
79
79
|
/**
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
80
|
+
* 三次样条插值
|
|
81
|
+
* @param p0 控制点0
|
|
82
|
+
* @param p1 控制点1(起点)
|
|
83
|
+
* @param p2 控制点2(终点)
|
|
84
|
+
* @param p3 控制点3
|
|
85
|
+
* @param t 插值参数 (0-1)
|
|
86
|
+
* @returns 插值结果
|
|
87
|
+
*/
|
|
88
88
|
static cubicSpline(p0: number, p1: number, p2: number, p3: number, t: number): number;
|
|
89
89
|
/**
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
90
|
+
* Hermite插值
|
|
91
|
+
* @param p0 起始点
|
|
92
|
+
* @param m0 起始切线
|
|
93
|
+
* @param p1 结束点
|
|
94
|
+
* @param m1 结束切线
|
|
95
|
+
* @param t 插值参数 (0-1)
|
|
96
|
+
* @returns 插值结果
|
|
97
|
+
*/
|
|
98
98
|
static hermite(p0: number, m0: number, p1: number, m1: number, t: number): number;
|
|
99
99
|
/**
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
100
|
+
* 球面线性插值(适用于方向向量)
|
|
101
|
+
* @param from 起始单位向量
|
|
102
|
+
* @param to 目标单位向量
|
|
103
|
+
* @param t 插值参数 (0-1)
|
|
104
|
+
* @returns 插值结果向量
|
|
105
|
+
*/
|
|
106
106
|
static slerp(from: Vector2, to: Vector2, t: number): Vector2;
|
|
107
107
|
/**
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
108
|
+
* 创建带缓存的插值器
|
|
109
|
+
* 用于需要重复插值相同起始和目标值的情况
|
|
110
|
+
* @param interpolator 插值函数
|
|
111
|
+
* @returns 缓存插值器实例
|
|
112
|
+
*/
|
|
113
113
|
static createCachedInterpolator<T>(interpolator: InterpolatorFunction<T>): CachedInterpolator<T>;
|
|
114
114
|
/**
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
115
|
+
* 样条曲线插值(通过多个控制点)
|
|
116
|
+
* @param points 控制点数组
|
|
117
|
+
* @param t 插值参数 (0-1)
|
|
118
|
+
* @returns 插值结果
|
|
119
|
+
*/
|
|
120
120
|
static spline(points: number[], t: number): number;
|
|
121
121
|
/**
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
122
|
+
* 向量样条曲线插值
|
|
123
|
+
* @param points 控制点数组
|
|
124
|
+
* @param t 插值参数 (0-1)
|
|
125
|
+
* @returns 插值结果向量
|
|
126
|
+
*/
|
|
127
127
|
static vectorSpline(points: Vector2[], t: number): Vector2;
|
|
128
128
|
/**
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
129
|
+
* 关键帧动画插值
|
|
130
|
+
* @param keyframes 关键帧数组(按时间排序)
|
|
131
|
+
* @param time 当前时间
|
|
132
|
+
* @param interpolator 插值函数
|
|
133
|
+
* @returns 插值结果
|
|
134
|
+
*/
|
|
135
135
|
static keyframe<T>(keyframes: Keyframe<T>[], time: number, interpolator: InterpolatorFunction<T>): T;
|
|
136
136
|
/**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
137
|
+
* 路径插值(沿着由点组成的路径)
|
|
138
|
+
* @param path 路径点数组
|
|
139
|
+
* @param t 插值参数 (0-1)
|
|
140
|
+
* @param closed 是否为闭合路径
|
|
141
|
+
* @returns 路径上的点
|
|
142
|
+
*/
|
|
143
143
|
static pathInterpolation(path: Vector2[], t: number, closed?: boolean): Vector2;
|
|
144
144
|
/**
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
145
|
+
* 计算路径总长度
|
|
146
|
+
* @param path 路径点数组
|
|
147
|
+
* @param closed 是否为闭合路径
|
|
148
|
+
* @returns 路径总长度
|
|
149
|
+
*/
|
|
150
150
|
static getPathLength(path: Vector2[], closed?: boolean): number;
|
|
151
151
|
/**
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
152
|
+
* 创建数值插值器
|
|
153
|
+
* @param from 起始值
|
|
154
|
+
* @param to 目标值
|
|
155
|
+
* @returns 插值器函数
|
|
156
|
+
*/
|
|
157
157
|
static createNumberInterpolator(from: number, to: number): (t: number) => number;
|
|
158
158
|
/**
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
159
|
+
* 创建向量插值器
|
|
160
|
+
* @param from 起始向量
|
|
161
|
+
* @param to 目标向量
|
|
162
|
+
* @returns 插值器函数
|
|
163
|
+
*/
|
|
164
164
|
static createVectorInterpolator(from: Vector2, to: Vector2): (t: number) => Vector2;
|
|
165
165
|
/**
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
166
|
+
* 创建组合插值器(插值多个值)
|
|
167
|
+
* @param interpolators 插值器数组
|
|
168
|
+
* @returns 组合插值器函数
|
|
169
|
+
*/
|
|
170
170
|
static createCompositeInterpolator<T>(interpolators: InterpolatorFunction<T>[]): (from: T[], to: T[], t: number) => T[];
|
|
171
171
|
}
|
|
172
172
|
//# sourceMappingURL=Interpolation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interpolation.d.ts","sourceRoot":"","sources":["../../src/Animation/Interpolation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,CAAC;IACT,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Interpolation.d.ts","sourceRoot":"","sources":["../../src/Animation/Interpolation.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,10 +10,10 @@ export class CachedInterpolator {
|
|
|
10
10
|
this.interpolator = interpolator;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
* 设置插值范围
|
|
14
|
+
* @param from 起始值
|
|
15
|
+
* @param to 目标值
|
|
16
|
+
*/
|
|
17
17
|
setRange(from, to) {
|
|
18
18
|
if (this.from !== from || this.to !== to) {
|
|
19
19
|
this.from = from;
|
|
@@ -22,10 +22,10 @@ export class CachedInterpolator {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
* 获取插值结果
|
|
26
|
+
* @param t 插值参数
|
|
27
|
+
* @returns 插值结果
|
|
28
|
+
*/
|
|
29
29
|
get(t) {
|
|
30
30
|
if (!this.from || !this.to) {
|
|
31
31
|
throw new Error('插值范围未设置');
|
|
@@ -37,8 +37,8 @@ export class CachedInterpolator {
|
|
|
37
37
|
return this.cache.get(t);
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
* 清空缓存
|
|
41
|
+
*/
|
|
42
42
|
clearCache() {
|
|
43
43
|
this.cache.clear();
|
|
44
44
|
}
|
|
@@ -51,42 +51,42 @@ export class CachedInterpolator {
|
|
|
51
51
|
export class Interpolation {
|
|
52
52
|
// 基础插值
|
|
53
53
|
/**
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
54
|
+
* 数值线性插值
|
|
55
|
+
* @param from 起始值
|
|
56
|
+
* @param to 目标值
|
|
57
|
+
* @param t 插值参数 (0-1)
|
|
58
|
+
* @returns 插值结果
|
|
59
|
+
*/
|
|
60
60
|
static number(from, to, t) {
|
|
61
61
|
return MathUtils.lerp(from, to, t);
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
* 向量线性插值
|
|
65
|
+
* @param from 起始向量
|
|
66
|
+
* @param to 目标向量
|
|
67
|
+
* @param t 插值参数 (0-1)
|
|
68
|
+
* @returns 插值结果向量
|
|
69
|
+
*/
|
|
70
70
|
static vector2(from, to, t) {
|
|
71
71
|
return Vector2.lerp(from, to, t);
|
|
72
72
|
}
|
|
73
73
|
/**
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
74
|
+
* 角度插值(处理角度环绕)
|
|
75
|
+
* @param from 起始角度(弧度)
|
|
76
|
+
* @param to 目标角度(弧度)
|
|
77
|
+
* @param t 插值参数 (0-1)
|
|
78
|
+
* @returns 插值结果角度
|
|
79
|
+
*/
|
|
80
80
|
static angle(from, to, t) {
|
|
81
81
|
return MathUtils.lerpAngle(from, to, t);
|
|
82
82
|
}
|
|
83
83
|
/**
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
* 颜色插值(RGB)
|
|
85
|
+
* @param from 起始颜色 [r, g, b, a?]
|
|
86
|
+
* @param to 目标颜色 [r, g, b, a?]
|
|
87
|
+
* @param t 插值参数 (0-1)
|
|
88
|
+
* @returns 插值结果颜色
|
|
89
|
+
*/
|
|
90
90
|
static color(from, to, t) {
|
|
91
91
|
const result = [];
|
|
92
92
|
const length = Math.max(from.length, to.length);
|
|
@@ -99,14 +99,14 @@ export class Interpolation {
|
|
|
99
99
|
}
|
|
100
100
|
// 高级插值
|
|
101
101
|
/**
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
102
|
+
* 三次样条插值
|
|
103
|
+
* @param p0 控制点0
|
|
104
|
+
* @param p1 控制点1(起点)
|
|
105
|
+
* @param p2 控制点2(终点)
|
|
106
|
+
* @param p3 控制点3
|
|
107
|
+
* @param t 插值参数 (0-1)
|
|
108
|
+
* @returns 插值结果
|
|
109
|
+
*/
|
|
110
110
|
static cubicSpline(p0, p1, p2, p3, t) {
|
|
111
111
|
const t2 = t * t;
|
|
112
112
|
const t3 = t2 * t;
|
|
@@ -116,14 +116,14 @@ export class Interpolation {
|
|
|
116
116
|
(-p0 + 3 * p1 - 3 * p2 + p3) * t3);
|
|
117
117
|
}
|
|
118
118
|
/**
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
119
|
+
* Hermite插值
|
|
120
|
+
* @param p0 起始点
|
|
121
|
+
* @param m0 起始切线
|
|
122
|
+
* @param p1 结束点
|
|
123
|
+
* @param m1 结束切线
|
|
124
|
+
* @param t 插值参数 (0-1)
|
|
125
|
+
* @returns 插值结果
|
|
126
|
+
*/
|
|
127
127
|
static hermite(p0, m0, p1, m1, t) {
|
|
128
128
|
const t2 = t * t;
|
|
129
129
|
const t3 = t2 * t;
|
|
@@ -134,12 +134,12 @@ export class Interpolation {
|
|
|
134
134
|
return h00 * p0 + h10 * m0 + h01 * p1 + h11 * m1;
|
|
135
135
|
}
|
|
136
136
|
/**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
137
|
+
* 球面线性插值(适用于方向向量)
|
|
138
|
+
* @param from 起始单位向量
|
|
139
|
+
* @param to 目标单位向量
|
|
140
|
+
* @param t 插值参数 (0-1)
|
|
141
|
+
* @returns 插值结果向量
|
|
142
|
+
*/
|
|
143
143
|
static slerp(from, to, t) {
|
|
144
144
|
let dot = Vector2.dot(from, to);
|
|
145
145
|
// 如果点积为负,取反一个向量确保走最短路径
|
|
@@ -161,21 +161,21 @@ export class Interpolation {
|
|
|
161
161
|
}
|
|
162
162
|
// 缓存插值
|
|
163
163
|
/**
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
164
|
+
* 创建带缓存的插值器
|
|
165
|
+
* 用于需要重复插值相同起始和目标值的情况
|
|
166
|
+
* @param interpolator 插值函数
|
|
167
|
+
* @returns 缓存插值器实例
|
|
168
|
+
*/
|
|
169
169
|
static createCachedInterpolator(interpolator) {
|
|
170
170
|
return new CachedInterpolator(interpolator);
|
|
171
171
|
}
|
|
172
172
|
// 多点插值
|
|
173
173
|
/**
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
174
|
+
* 样条曲线插值(通过多个控制点)
|
|
175
|
+
* @param points 控制点数组
|
|
176
|
+
* @param t 插值参数 (0-1)
|
|
177
|
+
* @returns 插值结果
|
|
178
|
+
*/
|
|
179
179
|
static spline(points, t) {
|
|
180
180
|
if (points.length === 0)
|
|
181
181
|
return 0;
|
|
@@ -195,11 +195,11 @@ export class Interpolation {
|
|
|
195
195
|
return Interpolation.cubicSpline(p0, p1, p2, p3, localT);
|
|
196
196
|
}
|
|
197
197
|
/**
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
198
|
+
* 向量样条曲线插值
|
|
199
|
+
* @param points 控制点数组
|
|
200
|
+
* @param t 插值参数 (0-1)
|
|
201
|
+
* @returns 插值结果向量
|
|
202
|
+
*/
|
|
203
203
|
static vectorSpline(points, t) {
|
|
204
204
|
if (points.length === 0)
|
|
205
205
|
return new Vector2();
|
|
@@ -207,18 +207,18 @@ export class Interpolation {
|
|
|
207
207
|
return points[0].clone();
|
|
208
208
|
if (points.length === 2)
|
|
209
209
|
return Vector2.lerp(points[0], points[1], t);
|
|
210
|
-
const xPoints = points.map(p => p.x);
|
|
211
|
-
const yPoints = points.map(p => p.y);
|
|
210
|
+
const xPoints = points.map((p) => p.x);
|
|
211
|
+
const yPoints = points.map((p) => p.y);
|
|
212
212
|
return new Vector2(Interpolation.spline(xPoints, t), Interpolation.spline(yPoints, t));
|
|
213
213
|
}
|
|
214
214
|
// 时间轴插值
|
|
215
215
|
/**
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
216
|
+
* 关键帧动画插值
|
|
217
|
+
* @param keyframes 关键帧数组(按时间排序)
|
|
218
|
+
* @param time 当前时间
|
|
219
|
+
* @param interpolator 插值函数
|
|
220
|
+
* @returns 插值结果
|
|
221
|
+
*/
|
|
222
222
|
static keyframe(keyframes, time, interpolator) {
|
|
223
223
|
if (keyframes.length === 0) {
|
|
224
224
|
throw new Error('至少需要一个关键帧');
|
|
@@ -245,12 +245,12 @@ export class Interpolation {
|
|
|
245
245
|
}
|
|
246
246
|
// 路径插值
|
|
247
247
|
/**
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
248
|
+
* 路径插值(沿着由点组成的路径)
|
|
249
|
+
* @param path 路径点数组
|
|
250
|
+
* @param t 插值参数 (0-1)
|
|
251
|
+
* @param closed 是否为闭合路径
|
|
252
|
+
* @returns 路径上的点
|
|
253
|
+
*/
|
|
254
254
|
static pathInterpolation(path, t, closed = false) {
|
|
255
255
|
if (path.length === 0)
|
|
256
256
|
return new Vector2();
|
|
@@ -273,11 +273,11 @@ export class Interpolation {
|
|
|
273
273
|
return path[path.length - 1].clone();
|
|
274
274
|
}
|
|
275
275
|
/**
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
276
|
+
* 计算路径总长度
|
|
277
|
+
* @param path 路径点数组
|
|
278
|
+
* @param closed 是否为闭合路径
|
|
279
|
+
* @returns 路径总长度
|
|
280
|
+
*/
|
|
281
281
|
static getPathLength(path, closed = false) {
|
|
282
282
|
if (path.length < 2)
|
|
283
283
|
return 0;
|
|
@@ -292,28 +292,28 @@ export class Interpolation {
|
|
|
292
292
|
}
|
|
293
293
|
// 实用工具
|
|
294
294
|
/**
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
295
|
+
* 创建数值插值器
|
|
296
|
+
* @param from 起始值
|
|
297
|
+
* @param to 目标值
|
|
298
|
+
* @returns 插值器函数
|
|
299
|
+
*/
|
|
300
300
|
static createNumberInterpolator(from, to) {
|
|
301
301
|
return (t) => Interpolation.number(from, to, t);
|
|
302
302
|
}
|
|
303
303
|
/**
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
304
|
+
* 创建向量插值器
|
|
305
|
+
* @param from 起始向量
|
|
306
|
+
* @param to 目标向量
|
|
307
|
+
* @returns 插值器函数
|
|
308
|
+
*/
|
|
309
309
|
static createVectorInterpolator(from, to) {
|
|
310
310
|
return (t) => Interpolation.vector2(from, to, t);
|
|
311
311
|
}
|
|
312
312
|
/**
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
313
|
+
* 创建组合插值器(插值多个值)
|
|
314
|
+
* @param interpolators 插值器数组
|
|
315
|
+
* @returns 组合插值器函数
|
|
316
|
+
*/
|
|
317
317
|
static createCompositeInterpolator(interpolators) {
|
|
318
318
|
return (from, to, t) => {
|
|
319
319
|
const result = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interpolation.js","sourceRoot":"","sources":["../../src/Animation/Interpolation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAgBzC;;;GAGG;AACH,MAAM,OAAO,kBAAkB;
|
|
1
|
+
{"version":3,"file":"Interpolation.js","sourceRoot":"","sources":["../../src/Animation/Interpolation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Animation/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Animation/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACH,aAAa,EACb,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,KAAK,QAAQ,EAChB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Animation/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Animation/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACH,aAAa,EACb,kBAAkB,EAGrB,MAAM,iBAAiB,CAAC"}
|