@sarmal/core 0.14.0 → 0.15.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/dist/auto-init.cjs +239 -115
- package/dist/auto-init.cjs.map +1 -1
- package/dist/auto-init.d.cts +1 -2
- package/dist/auto-init.d.ts +1 -2
- package/dist/auto-init.js +238 -114
- package/dist/auto-init.js.map +1 -1
- package/dist/curves/artemis2.cjs +10 -7
- package/dist/curves/artemis2.d.cts +1 -1
- package/dist/curves/artemis2.d.ts +1 -1
- package/dist/curves/artemis2.js +9 -6
- package/dist/curves/astroid.cjs +4 -4
- package/dist/curves/astroid.d.cts +1 -1
- package/dist/curves/astroid.d.ts +1 -1
- package/dist/curves/astroid.js +3 -3
- package/dist/curves/deltoid.cjs +4 -4
- package/dist/curves/deltoid.d.cts +1 -1
- package/dist/curves/deltoid.d.ts +1 -1
- package/dist/curves/deltoid.js +3 -3
- package/dist/curves/epicycloid3.cjs +4 -4
- package/dist/curves/epicycloid3.d.cts +1 -1
- package/dist/curves/epicycloid3.d.ts +1 -1
- package/dist/curves/epicycloid3.js +3 -3
- package/dist/curves/epitrochoid7.cjs +5 -5
- package/dist/curves/epitrochoid7.d.cts +1 -1
- package/dist/curves/epitrochoid7.d.ts +1 -1
- package/dist/curves/epitrochoid7.js +4 -4
- package/dist/curves/index.cjs +32 -28
- package/dist/curves/index.d.cts +21 -21
- package/dist/curves/index.d.ts +21 -21
- package/dist/curves/index.js +44 -28
- package/dist/curves/lame.cjs +6 -5
- package/dist/curves/lame.d.cts +1 -1
- package/dist/curves/lame.d.ts +1 -1
- package/dist/curves/lame.js +5 -4
- package/dist/curves/lissajous32.cjs +4 -4
- package/dist/curves/lissajous32.d.cts +1 -1
- package/dist/curves/lissajous32.d.ts +1 -1
- package/dist/curves/lissajous32.js +3 -3
- package/dist/curves/lissajous43.cjs +4 -4
- package/dist/curves/lissajous43.d.cts +1 -1
- package/dist/curves/lissajous43.d.ts +1 -1
- package/dist/curves/lissajous43.js +3 -3
- package/dist/curves/rose3.cjs +4 -4
- package/dist/curves/rose3.d.cts +1 -1
- package/dist/curves/rose3.d.ts +1 -1
- package/dist/curves/rose3.js +3 -3
- package/dist/curves/rose5.cjs +4 -4
- package/dist/curves/rose5.d.cts +1 -1
- package/dist/curves/rose5.d.ts +1 -1
- package/dist/curves/rose5.js +3 -3
- package/dist/index.cjs +303 -123
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +73 -23
- package/dist/index.d.ts +73 -23
- package/dist/index.js +320 -123
- package/dist/index.js.map +1 -1
- package/dist/types-BL9HhEmk.d.cts +312 -0
- package/dist/types-BL9HhEmk.d.ts +312 -0
- package/package.json +1 -1
- package/dist/types-BQosOzlf.d.cts +0 -276
- package/dist/types-BQosOzlf.d.ts +0 -276
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
3
|
// src/curves/epicycloid3.ts
|
|
4
4
|
var TWO_PI = Math.PI * 2;
|
|
5
5
|
function epicycloid3Fn(t, _time, _params) {
|
|
6
6
|
return {
|
|
7
7
|
x: 4 * Math.cos(t) - Math.cos(4 * t),
|
|
8
|
-
y: 4 * Math.sin(t) - Math.sin(4 * t)
|
|
8
|
+
y: 4 * Math.sin(t) - Math.sin(4 * t),
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
11
|
var epicycloid3 = {
|
|
12
12
|
name: "Epicycloid (n=3)",
|
|
13
13
|
fn: epicycloid3Fn,
|
|
14
14
|
period: TWO_PI,
|
|
15
|
-
speed: 0.75
|
|
15
|
+
speed: 0.75,
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
exports.epicycloid3 = epicycloid3;
|
|
19
19
|
//# sourceMappingURL=epicycloid3.cjs.map
|
|
20
|
-
//# sourceMappingURL=epicycloid3.cjs.map
|
|
20
|
+
//# sourceMappingURL=epicycloid3.cjs.map
|
|
@@ -3,16 +3,16 @@ var TWO_PI = Math.PI * 2;
|
|
|
3
3
|
function epicycloid3Fn(t, _time, _params) {
|
|
4
4
|
return {
|
|
5
5
|
x: 4 * Math.cos(t) - Math.cos(4 * t),
|
|
6
|
-
y: 4 * Math.sin(t) - Math.sin(4 * t)
|
|
6
|
+
y: 4 * Math.sin(t) - Math.sin(4 * t),
|
|
7
7
|
};
|
|
8
8
|
}
|
|
9
9
|
var epicycloid3 = {
|
|
10
10
|
name: "Epicycloid (n=3)",
|
|
11
11
|
fn: epicycloid3Fn,
|
|
12
12
|
period: TWO_PI,
|
|
13
|
-
speed: 0.75
|
|
13
|
+
speed: 0.75,
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
export { epicycloid3 };
|
|
17
17
|
//# sourceMappingURL=epicycloid3.js.map
|
|
18
|
-
//# sourceMappingURL=epicycloid3.js.map
|
|
18
|
+
//# sourceMappingURL=epicycloid3.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
3
|
// src/curves/epitrochoid7.ts
|
|
4
4
|
var TWO_PI = Math.PI * 2;
|
|
@@ -6,14 +6,14 @@ function epitrochoid7Fn(t, _time, _params) {
|
|
|
6
6
|
const d = 1 + 0.55 * Math.sin(t * 0.5);
|
|
7
7
|
return {
|
|
8
8
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
9
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
9
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
12
|
function epitrochoid7SkeletonFn(t) {
|
|
13
13
|
const d = 1.275;
|
|
14
14
|
return {
|
|
15
15
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
16
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
16
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
var epitrochoid7 = {
|
|
@@ -21,9 +21,9 @@ var epitrochoid7 = {
|
|
|
21
21
|
fn: epitrochoid7Fn,
|
|
22
22
|
period: TWO_PI,
|
|
23
23
|
speed: 1.4,
|
|
24
|
-
skeletonFn: epitrochoid7SkeletonFn
|
|
24
|
+
skeletonFn: epitrochoid7SkeletonFn,
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
exports.epitrochoid7 = epitrochoid7;
|
|
28
28
|
//# sourceMappingURL=epitrochoid7.cjs.map
|
|
29
|
-
//# sourceMappingURL=epitrochoid7.cjs.map
|
|
29
|
+
//# sourceMappingURL=epitrochoid7.cjs.map
|
|
@@ -4,14 +4,14 @@ function epitrochoid7Fn(t, _time, _params) {
|
|
|
4
4
|
const d = 1 + 0.55 * Math.sin(t * 0.5);
|
|
5
5
|
return {
|
|
6
6
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
7
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
7
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
10
|
function epitrochoid7SkeletonFn(t) {
|
|
11
11
|
const d = 1.275;
|
|
12
12
|
return {
|
|
13
13
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
14
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
14
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
var epitrochoid7 = {
|
|
@@ -19,9 +19,9 @@ var epitrochoid7 = {
|
|
|
19
19
|
fn: epitrochoid7Fn,
|
|
20
20
|
period: TWO_PI,
|
|
21
21
|
speed: 1.4,
|
|
22
|
-
skeletonFn: epitrochoid7SkeletonFn
|
|
22
|
+
skeletonFn: epitrochoid7SkeletonFn,
|
|
23
23
|
};
|
|
24
24
|
|
|
25
25
|
export { epitrochoid7 };
|
|
26
26
|
//# sourceMappingURL=epitrochoid7.js.map
|
|
27
|
-
//# sourceMappingURL=epitrochoid7.js.map
|
|
27
|
+
//# sourceMappingURL=epitrochoid7.js.map
|
package/dist/curves/index.cjs
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
3
|
// src/curves/artemis2.ts
|
|
4
4
|
var TWO_PI = Math.PI * 2;
|
|
5
5
|
function artemis2Fn(t, _time, _params) {
|
|
6
|
-
const a = 0.35,
|
|
7
|
-
|
|
6
|
+
const a = 0.35,
|
|
7
|
+
b = 0.15,
|
|
8
|
+
ox = 0.175;
|
|
9
|
+
const s = Math.sin(t),
|
|
10
|
+
c = Math.cos(t);
|
|
8
11
|
const denom = 1 + s * s;
|
|
9
12
|
return {
|
|
10
|
-
x: c * (1 + a * c) / denom - ox,
|
|
11
|
-
y: s * c * (1 + b * c) / denom
|
|
13
|
+
x: (c * (1 + a * c)) / denom - ox,
|
|
14
|
+
y: (s * c * (1 + b * c)) / denom,
|
|
12
15
|
};
|
|
13
16
|
}
|
|
14
17
|
var artemis2 = {
|
|
15
18
|
name: "Artemis II",
|
|
16
19
|
fn: artemis2Fn,
|
|
17
20
|
period: TWO_PI,
|
|
18
|
-
speed: 0.7
|
|
21
|
+
speed: 0.7,
|
|
19
22
|
};
|
|
20
23
|
|
|
21
24
|
// src/curves/astroid.ts
|
|
@@ -25,14 +28,14 @@ function astroidFn(t, _time, _params) {
|
|
|
25
28
|
const s = Math.sin(t);
|
|
26
29
|
return {
|
|
27
30
|
x: c * c * c,
|
|
28
|
-
y: s * s * s
|
|
31
|
+
y: s * s * s,
|
|
29
32
|
};
|
|
30
33
|
}
|
|
31
34
|
var astroid = {
|
|
32
35
|
name: "Astroid",
|
|
33
36
|
fn: astroidFn,
|
|
34
37
|
period: TWO_PI2,
|
|
35
|
-
speed: 1.1
|
|
38
|
+
speed: 1.1,
|
|
36
39
|
};
|
|
37
40
|
|
|
38
41
|
// src/curves/deltoid.ts
|
|
@@ -40,14 +43,14 @@ var TWO_PI3 = Math.PI * 2;
|
|
|
40
43
|
function deltoidFn(t, _time, _params) {
|
|
41
44
|
return {
|
|
42
45
|
x: 2 * Math.cos(t) + Math.cos(2 * t),
|
|
43
|
-
y: 2 * Math.sin(t) - Math.sin(2 * t)
|
|
46
|
+
y: 2 * Math.sin(t) - Math.sin(2 * t),
|
|
44
47
|
};
|
|
45
48
|
}
|
|
46
49
|
var deltoid = {
|
|
47
50
|
name: "Deltoid",
|
|
48
51
|
fn: deltoidFn,
|
|
49
52
|
period: TWO_PI3,
|
|
50
|
-
speed: 0.9
|
|
53
|
+
speed: 0.9,
|
|
51
54
|
};
|
|
52
55
|
|
|
53
56
|
// src/curves/epicycloid3.ts
|
|
@@ -55,14 +58,14 @@ var TWO_PI4 = Math.PI * 2;
|
|
|
55
58
|
function epicycloid3Fn(t, _time, _params) {
|
|
56
59
|
return {
|
|
57
60
|
x: 4 * Math.cos(t) - Math.cos(4 * t),
|
|
58
|
-
y: 4 * Math.sin(t) - Math.sin(4 * t)
|
|
61
|
+
y: 4 * Math.sin(t) - Math.sin(4 * t),
|
|
59
62
|
};
|
|
60
63
|
}
|
|
61
64
|
var epicycloid3 = {
|
|
62
65
|
name: "Epicycloid (n=3)",
|
|
63
66
|
fn: epicycloid3Fn,
|
|
64
67
|
period: TWO_PI4,
|
|
65
|
-
speed: 0.75
|
|
68
|
+
speed: 0.75,
|
|
66
69
|
};
|
|
67
70
|
|
|
68
71
|
// src/curves/epitrochoid7.ts
|
|
@@ -71,14 +74,14 @@ function epitrochoid7Fn(t, _time, _params) {
|
|
|
71
74
|
const d = 1 + 0.55 * Math.sin(t * 0.5);
|
|
72
75
|
return {
|
|
73
76
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
74
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
77
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
75
78
|
};
|
|
76
79
|
}
|
|
77
80
|
function epitrochoid7SkeletonFn(t) {
|
|
78
81
|
const d = 1.275;
|
|
79
82
|
return {
|
|
80
83
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
81
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
84
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
82
85
|
};
|
|
83
86
|
}
|
|
84
87
|
var epitrochoid7 = {
|
|
@@ -86,7 +89,7 @@ var epitrochoid7 = {
|
|
|
86
89
|
fn: epitrochoid7Fn,
|
|
87
90
|
period: TWO_PI5,
|
|
88
91
|
speed: 1.4,
|
|
89
|
-
skeletonFn: epitrochoid7SkeletonFn
|
|
92
|
+
skeletonFn: epitrochoid7SkeletonFn,
|
|
90
93
|
};
|
|
91
94
|
|
|
92
95
|
// src/curves/lissajous32.ts
|
|
@@ -95,7 +98,7 @@ function lissajous32Fn(t, time, _params) {
|
|
|
95
98
|
const phi = time * 0.45;
|
|
96
99
|
return {
|
|
97
100
|
x: Math.sin(3 * t + phi),
|
|
98
|
-
y: Math.sin(2 * t)
|
|
101
|
+
y: Math.sin(2 * t),
|
|
99
102
|
};
|
|
100
103
|
}
|
|
101
104
|
var lissajous32 = {
|
|
@@ -103,7 +106,7 @@ var lissajous32 = {
|
|
|
103
106
|
fn: lissajous32Fn,
|
|
104
107
|
period: TWO_PI6,
|
|
105
108
|
speed: 2,
|
|
106
|
-
skeleton: "live"
|
|
109
|
+
skeleton: "live",
|
|
107
110
|
};
|
|
108
111
|
|
|
109
112
|
// src/curves/lissajous43.ts
|
|
@@ -112,7 +115,7 @@ function lissajous43Fn(t, time, _params) {
|
|
|
112
115
|
const phi = time * 0.38;
|
|
113
116
|
return {
|
|
114
117
|
x: Math.sin(4 * t + phi),
|
|
115
|
-
y: Math.sin(3 * t)
|
|
118
|
+
y: Math.sin(3 * t),
|
|
116
119
|
};
|
|
117
120
|
}
|
|
118
121
|
var lissajous43 = {
|
|
@@ -120,17 +123,18 @@ var lissajous43 = {
|
|
|
120
123
|
fn: lissajous43Fn,
|
|
121
124
|
period: TWO_PI7,
|
|
122
125
|
speed: 1.8,
|
|
123
|
-
skeleton: "live"
|
|
126
|
+
skeleton: "live",
|
|
124
127
|
};
|
|
125
128
|
|
|
126
129
|
// src/curves/lame.ts
|
|
127
130
|
var TWO_PI8 = Math.PI * 2;
|
|
128
131
|
function lameFn(t, time, _params) {
|
|
129
132
|
const p = 1.75 + 1.25 * Math.sin(time * 0.48);
|
|
130
|
-
const c = Math.cos(t),
|
|
133
|
+
const c = Math.cos(t),
|
|
134
|
+
s = Math.sin(t);
|
|
131
135
|
return {
|
|
132
136
|
x: Math.sign(c) * Math.pow(Math.abs(c), p),
|
|
133
|
-
y: Math.sign(s) * Math.pow(Math.abs(s), p)
|
|
137
|
+
y: Math.sign(s) * Math.pow(Math.abs(s), p),
|
|
134
138
|
};
|
|
135
139
|
}
|
|
136
140
|
var lame = {
|
|
@@ -138,7 +142,7 @@ var lame = {
|
|
|
138
142
|
fn: lameFn,
|
|
139
143
|
period: TWO_PI8,
|
|
140
144
|
speed: 1,
|
|
141
|
-
skeleton: "live"
|
|
145
|
+
skeleton: "live",
|
|
142
146
|
};
|
|
143
147
|
|
|
144
148
|
// src/curves/rose3.ts
|
|
@@ -147,14 +151,14 @@ function rose3Fn(t, _time, _params) {
|
|
|
147
151
|
const r = Math.cos(3 * t);
|
|
148
152
|
return {
|
|
149
153
|
x: r * Math.cos(t),
|
|
150
|
-
y: r * Math.sin(t)
|
|
154
|
+
y: r * Math.sin(t),
|
|
151
155
|
};
|
|
152
156
|
}
|
|
153
157
|
var rose3 = {
|
|
154
158
|
name: "Rose (n=3)",
|
|
155
159
|
fn: rose3Fn,
|
|
156
160
|
period: TWO_PI9,
|
|
157
|
-
speed: 1.15
|
|
161
|
+
speed: 1.15,
|
|
158
162
|
};
|
|
159
163
|
|
|
160
164
|
// src/curves/rose5.ts
|
|
@@ -163,14 +167,14 @@ function rose5Fn(t, _time, _params) {
|
|
|
163
167
|
const r = Math.cos(5 * t);
|
|
164
168
|
return {
|
|
165
169
|
x: r * Math.cos(t),
|
|
166
|
-
y: r * Math.sin(t)
|
|
170
|
+
y: r * Math.sin(t),
|
|
167
171
|
};
|
|
168
172
|
}
|
|
169
173
|
var rose5 = {
|
|
170
174
|
name: "Rose (n=5)",
|
|
171
175
|
fn: rose5Fn,
|
|
172
176
|
period: TWO_PI10,
|
|
173
|
-
speed: 1
|
|
177
|
+
speed: 1,
|
|
174
178
|
};
|
|
175
179
|
|
|
176
180
|
// src/curves/index.ts
|
|
@@ -184,7 +188,7 @@ var curves = {
|
|
|
184
188
|
lissajous32,
|
|
185
189
|
lissajous43,
|
|
186
190
|
epicycloid3,
|
|
187
|
-
lame
|
|
191
|
+
lame,
|
|
188
192
|
};
|
|
189
193
|
|
|
190
194
|
exports.artemis2 = artemis2;
|
|
@@ -199,4 +203,4 @@ exports.lissajous43 = lissajous43;
|
|
|
199
203
|
exports.rose3 = rose3;
|
|
200
204
|
exports.rose5 = rose5;
|
|
201
205
|
//# sourceMappingURL=index.cjs.map
|
|
202
|
-
//# sourceMappingURL=index.cjs.map
|
|
206
|
+
//# sourceMappingURL=index.cjs.map
|
package/dist/curves/index.d.cts
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { C as CurveDef } from
|
|
2
|
-
export { artemis2 } from
|
|
3
|
-
export { astroid } from
|
|
4
|
-
export { deltoid } from
|
|
5
|
-
export { epicycloid3 } from
|
|
6
|
-
export { epitrochoid7 } from
|
|
7
|
-
export { lissajous32 } from
|
|
8
|
-
export { lissajous43 } from
|
|
9
|
-
export { lame } from
|
|
10
|
-
export { rose3 } from
|
|
11
|
-
export { rose5 } from
|
|
1
|
+
import { C as CurveDef } from "../types-BL9HhEmk.cjs";
|
|
2
|
+
export { artemis2 } from "./artemis2.cjs";
|
|
3
|
+
export { astroid } from "./astroid.cjs";
|
|
4
|
+
export { deltoid } from "./deltoid.cjs";
|
|
5
|
+
export { epicycloid3 } from "./epicycloid3.cjs";
|
|
6
|
+
export { epitrochoid7 } from "./epitrochoid7.cjs";
|
|
7
|
+
export { lissajous32 } from "./lissajous32.cjs";
|
|
8
|
+
export { lissajous43 } from "./lissajous43.cjs";
|
|
9
|
+
export { lame } from "./lame.cjs";
|
|
10
|
+
export { rose3 } from "./rose3.cjs";
|
|
11
|
+
export { rose5 } from "./rose5.cjs";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Collection of all built-in sarmal curves
|
|
15
15
|
* Import individual curves for better tree-shaking
|
|
16
16
|
*/
|
|
17
17
|
declare const curves: {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
readonly artemis2: CurveDef;
|
|
19
|
+
readonly epitrochoid7: CurveDef;
|
|
20
|
+
readonly astroid: CurveDef;
|
|
21
|
+
readonly deltoid: CurveDef;
|
|
22
|
+
readonly rose5: CurveDef;
|
|
23
|
+
readonly rose3: CurveDef;
|
|
24
|
+
readonly lissajous32: CurveDef;
|
|
25
|
+
readonly lissajous43: CurveDef;
|
|
26
|
+
readonly epicycloid3: CurveDef;
|
|
27
|
+
readonly lame: CurveDef;
|
|
28
28
|
};
|
|
29
29
|
type CurveName = keyof typeof curves;
|
|
30
30
|
|
package/dist/curves/index.d.ts
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { C as CurveDef } from
|
|
2
|
-
export { artemis2 } from
|
|
3
|
-
export { astroid } from
|
|
4
|
-
export { deltoid } from
|
|
5
|
-
export { epicycloid3 } from
|
|
6
|
-
export { epitrochoid7 } from
|
|
7
|
-
export { lissajous32 } from
|
|
8
|
-
export { lissajous43 } from
|
|
9
|
-
export { lame } from
|
|
10
|
-
export { rose3 } from
|
|
11
|
-
export { rose5 } from
|
|
1
|
+
import { C as CurveDef } from "../types-BL9HhEmk.js";
|
|
2
|
+
export { artemis2 } from "./artemis2.js";
|
|
3
|
+
export { astroid } from "./astroid.js";
|
|
4
|
+
export { deltoid } from "./deltoid.js";
|
|
5
|
+
export { epicycloid3 } from "./epicycloid3.js";
|
|
6
|
+
export { epitrochoid7 } from "./epitrochoid7.js";
|
|
7
|
+
export { lissajous32 } from "./lissajous32.js";
|
|
8
|
+
export { lissajous43 } from "./lissajous43.js";
|
|
9
|
+
export { lame } from "./lame.js";
|
|
10
|
+
export { rose3 } from "./rose3.js";
|
|
11
|
+
export { rose5 } from "./rose5.js";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Collection of all built-in sarmal curves
|
|
15
15
|
* Import individual curves for better tree-shaking
|
|
16
16
|
*/
|
|
17
17
|
declare const curves: {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
readonly artemis2: CurveDef;
|
|
19
|
+
readonly epitrochoid7: CurveDef;
|
|
20
|
+
readonly astroid: CurveDef;
|
|
21
|
+
readonly deltoid: CurveDef;
|
|
22
|
+
readonly rose5: CurveDef;
|
|
23
|
+
readonly rose3: CurveDef;
|
|
24
|
+
readonly lissajous32: CurveDef;
|
|
25
|
+
readonly lissajous43: CurveDef;
|
|
26
|
+
readonly epicycloid3: CurveDef;
|
|
27
|
+
readonly lame: CurveDef;
|
|
28
28
|
};
|
|
29
29
|
type CurveName = keyof typeof curves;
|
|
30
30
|
|
package/dist/curves/index.js
CHANGED
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
// src/curves/artemis2.ts
|
|
2
2
|
var TWO_PI = Math.PI * 2;
|
|
3
3
|
function artemis2Fn(t, _time, _params) {
|
|
4
|
-
const a = 0.35,
|
|
5
|
-
|
|
4
|
+
const a = 0.35,
|
|
5
|
+
b = 0.15,
|
|
6
|
+
ox = 0.175;
|
|
7
|
+
const s = Math.sin(t),
|
|
8
|
+
c = Math.cos(t);
|
|
6
9
|
const denom = 1 + s * s;
|
|
7
10
|
return {
|
|
8
|
-
x: c * (1 + a * c) / denom - ox,
|
|
9
|
-
y: s * c * (1 + b * c) / denom
|
|
11
|
+
x: (c * (1 + a * c)) / denom - ox,
|
|
12
|
+
y: (s * c * (1 + b * c)) / denom,
|
|
10
13
|
};
|
|
11
14
|
}
|
|
12
15
|
var artemis2 = {
|
|
13
16
|
name: "Artemis II",
|
|
14
17
|
fn: artemis2Fn,
|
|
15
18
|
period: TWO_PI,
|
|
16
|
-
speed: 0.7
|
|
19
|
+
speed: 0.7,
|
|
17
20
|
};
|
|
18
21
|
|
|
19
22
|
// src/curves/astroid.ts
|
|
@@ -23,14 +26,14 @@ function astroidFn(t, _time, _params) {
|
|
|
23
26
|
const s = Math.sin(t);
|
|
24
27
|
return {
|
|
25
28
|
x: c * c * c,
|
|
26
|
-
y: s * s * s
|
|
29
|
+
y: s * s * s,
|
|
27
30
|
};
|
|
28
31
|
}
|
|
29
32
|
var astroid = {
|
|
30
33
|
name: "Astroid",
|
|
31
34
|
fn: astroidFn,
|
|
32
35
|
period: TWO_PI2,
|
|
33
|
-
speed: 1.1
|
|
36
|
+
speed: 1.1,
|
|
34
37
|
};
|
|
35
38
|
|
|
36
39
|
// src/curves/deltoid.ts
|
|
@@ -38,14 +41,14 @@ var TWO_PI3 = Math.PI * 2;
|
|
|
38
41
|
function deltoidFn(t, _time, _params) {
|
|
39
42
|
return {
|
|
40
43
|
x: 2 * Math.cos(t) + Math.cos(2 * t),
|
|
41
|
-
y: 2 * Math.sin(t) - Math.sin(2 * t)
|
|
44
|
+
y: 2 * Math.sin(t) - Math.sin(2 * t),
|
|
42
45
|
};
|
|
43
46
|
}
|
|
44
47
|
var deltoid = {
|
|
45
48
|
name: "Deltoid",
|
|
46
49
|
fn: deltoidFn,
|
|
47
50
|
period: TWO_PI3,
|
|
48
|
-
speed: 0.9
|
|
51
|
+
speed: 0.9,
|
|
49
52
|
};
|
|
50
53
|
|
|
51
54
|
// src/curves/epicycloid3.ts
|
|
@@ -53,14 +56,14 @@ var TWO_PI4 = Math.PI * 2;
|
|
|
53
56
|
function epicycloid3Fn(t, _time, _params) {
|
|
54
57
|
return {
|
|
55
58
|
x: 4 * Math.cos(t) - Math.cos(4 * t),
|
|
56
|
-
y: 4 * Math.sin(t) - Math.sin(4 * t)
|
|
59
|
+
y: 4 * Math.sin(t) - Math.sin(4 * t),
|
|
57
60
|
};
|
|
58
61
|
}
|
|
59
62
|
var epicycloid3 = {
|
|
60
63
|
name: "Epicycloid (n=3)",
|
|
61
64
|
fn: epicycloid3Fn,
|
|
62
65
|
period: TWO_PI4,
|
|
63
|
-
speed: 0.75
|
|
66
|
+
speed: 0.75,
|
|
64
67
|
};
|
|
65
68
|
|
|
66
69
|
// src/curves/epitrochoid7.ts
|
|
@@ -69,14 +72,14 @@ function epitrochoid7Fn(t, _time, _params) {
|
|
|
69
72
|
const d = 1 + 0.55 * Math.sin(t * 0.5);
|
|
70
73
|
return {
|
|
71
74
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
72
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
75
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
73
76
|
};
|
|
74
77
|
}
|
|
75
78
|
function epitrochoid7SkeletonFn(t) {
|
|
76
79
|
const d = 1.275;
|
|
77
80
|
return {
|
|
78
81
|
x: 7 * Math.cos(t) - d * Math.cos(7 * t),
|
|
79
|
-
y: 7 * Math.sin(t) - d * Math.sin(7 * t)
|
|
82
|
+
y: 7 * Math.sin(t) - d * Math.sin(7 * t),
|
|
80
83
|
};
|
|
81
84
|
}
|
|
82
85
|
var epitrochoid7 = {
|
|
@@ -84,7 +87,7 @@ var epitrochoid7 = {
|
|
|
84
87
|
fn: epitrochoid7Fn,
|
|
85
88
|
period: TWO_PI5,
|
|
86
89
|
speed: 1.4,
|
|
87
|
-
skeletonFn: epitrochoid7SkeletonFn
|
|
90
|
+
skeletonFn: epitrochoid7SkeletonFn,
|
|
88
91
|
};
|
|
89
92
|
|
|
90
93
|
// src/curves/lissajous32.ts
|
|
@@ -93,7 +96,7 @@ function lissajous32Fn(t, time, _params) {
|
|
|
93
96
|
const phi = time * 0.45;
|
|
94
97
|
return {
|
|
95
98
|
x: Math.sin(3 * t + phi),
|
|
96
|
-
y: Math.sin(2 * t)
|
|
99
|
+
y: Math.sin(2 * t),
|
|
97
100
|
};
|
|
98
101
|
}
|
|
99
102
|
var lissajous32 = {
|
|
@@ -101,7 +104,7 @@ var lissajous32 = {
|
|
|
101
104
|
fn: lissajous32Fn,
|
|
102
105
|
period: TWO_PI6,
|
|
103
106
|
speed: 2,
|
|
104
|
-
skeleton: "live"
|
|
107
|
+
skeleton: "live",
|
|
105
108
|
};
|
|
106
109
|
|
|
107
110
|
// src/curves/lissajous43.ts
|
|
@@ -110,7 +113,7 @@ function lissajous43Fn(t, time, _params) {
|
|
|
110
113
|
const phi = time * 0.38;
|
|
111
114
|
return {
|
|
112
115
|
x: Math.sin(4 * t + phi),
|
|
113
|
-
y: Math.sin(3 * t)
|
|
116
|
+
y: Math.sin(3 * t),
|
|
114
117
|
};
|
|
115
118
|
}
|
|
116
119
|
var lissajous43 = {
|
|
@@ -118,17 +121,18 @@ var lissajous43 = {
|
|
|
118
121
|
fn: lissajous43Fn,
|
|
119
122
|
period: TWO_PI7,
|
|
120
123
|
speed: 1.8,
|
|
121
|
-
skeleton: "live"
|
|
124
|
+
skeleton: "live",
|
|
122
125
|
};
|
|
123
126
|
|
|
124
127
|
// src/curves/lame.ts
|
|
125
128
|
var TWO_PI8 = Math.PI * 2;
|
|
126
129
|
function lameFn(t, time, _params) {
|
|
127
130
|
const p = 1.75 + 1.25 * Math.sin(time * 0.48);
|
|
128
|
-
const c = Math.cos(t),
|
|
131
|
+
const c = Math.cos(t),
|
|
132
|
+
s = Math.sin(t);
|
|
129
133
|
return {
|
|
130
134
|
x: Math.sign(c) * Math.pow(Math.abs(c), p),
|
|
131
|
-
y: Math.sign(s) * Math.pow(Math.abs(s), p)
|
|
135
|
+
y: Math.sign(s) * Math.pow(Math.abs(s), p),
|
|
132
136
|
};
|
|
133
137
|
}
|
|
134
138
|
var lame = {
|
|
@@ -136,7 +140,7 @@ var lame = {
|
|
|
136
140
|
fn: lameFn,
|
|
137
141
|
period: TWO_PI8,
|
|
138
142
|
speed: 1,
|
|
139
|
-
skeleton: "live"
|
|
143
|
+
skeleton: "live",
|
|
140
144
|
};
|
|
141
145
|
|
|
142
146
|
// src/curves/rose3.ts
|
|
@@ -145,14 +149,14 @@ function rose3Fn(t, _time, _params) {
|
|
|
145
149
|
const r = Math.cos(3 * t);
|
|
146
150
|
return {
|
|
147
151
|
x: r * Math.cos(t),
|
|
148
|
-
y: r * Math.sin(t)
|
|
152
|
+
y: r * Math.sin(t),
|
|
149
153
|
};
|
|
150
154
|
}
|
|
151
155
|
var rose3 = {
|
|
152
156
|
name: "Rose (n=3)",
|
|
153
157
|
fn: rose3Fn,
|
|
154
158
|
period: TWO_PI9,
|
|
155
|
-
speed: 1.15
|
|
159
|
+
speed: 1.15,
|
|
156
160
|
};
|
|
157
161
|
|
|
158
162
|
// src/curves/rose5.ts
|
|
@@ -161,14 +165,14 @@ function rose5Fn(t, _time, _params) {
|
|
|
161
165
|
const r = Math.cos(5 * t);
|
|
162
166
|
return {
|
|
163
167
|
x: r * Math.cos(t),
|
|
164
|
-
y: r * Math.sin(t)
|
|
168
|
+
y: r * Math.sin(t),
|
|
165
169
|
};
|
|
166
170
|
}
|
|
167
171
|
var rose5 = {
|
|
168
172
|
name: "Rose (n=5)",
|
|
169
173
|
fn: rose5Fn,
|
|
170
174
|
period: TWO_PI10,
|
|
171
|
-
speed: 1
|
|
175
|
+
speed: 1,
|
|
172
176
|
};
|
|
173
177
|
|
|
174
178
|
// src/curves/index.ts
|
|
@@ -182,9 +186,21 @@ var curves = {
|
|
|
182
186
|
lissajous32,
|
|
183
187
|
lissajous43,
|
|
184
188
|
epicycloid3,
|
|
185
|
-
lame
|
|
189
|
+
lame,
|
|
186
190
|
};
|
|
187
191
|
|
|
188
|
-
export {
|
|
192
|
+
export {
|
|
193
|
+
artemis2,
|
|
194
|
+
astroid,
|
|
195
|
+
curves,
|
|
196
|
+
deltoid,
|
|
197
|
+
epicycloid3,
|
|
198
|
+
epitrochoid7,
|
|
199
|
+
lame,
|
|
200
|
+
lissajous32,
|
|
201
|
+
lissajous43,
|
|
202
|
+
rose3,
|
|
203
|
+
rose5,
|
|
204
|
+
};
|
|
205
|
+
//# sourceMappingURL=index.js.map
|
|
189
206
|
//# sourceMappingURL=index.js.map
|
|
190
|
-
//# sourceMappingURL=index.js.map
|