manim-web 0.3.17 → 0.3.19
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/README.md +26 -40
- package/dist/AllPackages-C4Ha3Jps.js +7912 -0
- package/dist/AllPackages-Dwxf_-Ps.js +7912 -0
- package/dist/BaseConfiguration-D2fikupy.js +4402 -0
- package/dist/BaseConfiguration-DYpI8zxb.js +4402 -0
- package/dist/Entities-BxzKxtF2.js +458 -0
- package/dist/Entities-gIbwAkB6.js +458 -0
- package/dist/GifExporter-7EpPGupp.js +338 -0
- package/dist/GifExporter-DCrSD6FV.js +338 -0
- package/dist/InputJax-BszJvLkW.js +43 -0
- package/dist/InputJax-CgHBfQsv.js +43 -0
- package/dist/MathItem-4gYKatZT.js +77 -0
- package/dist/MathItem-BGJUnd1K.js +77 -0
- package/dist/Options-CQim5zsr.js +188 -0
- package/dist/Options-Cn9jv1mh.js +188 -0
- package/dist/PrioritizedList-C1R4aNEC.js +36 -0
- package/dist/PrioritizedList-lIkFMNlo.js +36 -0
- package/dist/Styles-Bi9Db-2J.js +411 -0
- package/dist/Styles-CzHPc-An.js +411 -0
- package/dist/TeXAtom-Cinii27y.js +2025 -0
- package/dist/TeXAtom-DFdvwkN2.js +2025 -0
- package/dist/VideoExporter-6w8xBpcV.js +102 -0
- package/dist/VideoExporter-DdQb18dC.js +102 -0
- package/dist/animation/creation/Create.d.ts +1 -1
- package/dist/animation/movement/Rotate.d.ts +2 -0
- package/dist/animation/movement/Rotate.d.ts.map +1 -1
- package/dist/animation/movement/Scale.d.ts +2 -0
- package/dist/animation/movement/Scale.d.ts.map +1 -1
- package/dist/animation/transform/ApplyTransforms.d.ts +1 -2
- package/dist/animation/transform/ApplyTransforms.d.ts.map +1 -1
- package/dist/animation/transform/Transform.d.ts +19 -0
- package/dist/animation/transform/Transform.d.ts.map +1 -1
- package/dist/animation/utility/index.d.ts +2 -0
- package/dist/animation/utility/index.d.ts.map +1 -1
- package/dist/chunk-DeC0fbbY.js +23 -0
- package/dist/core/AnimateProxy.d.ts +39 -0
- package/dist/core/AnimateProxy.d.ts.map +1 -0
- package/dist/core/CameraExtensions.d.ts +128 -0
- package/dist/core/CameraExtensions.d.ts.map +1 -1
- package/dist/core/Group.d.ts +2 -2
- package/dist/core/Group.d.ts.map +1 -1
- package/dist/core/Mobject.d.ts +40 -6
- package/dist/core/Mobject.d.ts.map +1 -1
- package/dist/core/MobjectState.d.ts +23 -2
- package/dist/core/MobjectState.d.ts.map +1 -1
- package/dist/core/NullRenderer.d.ts +42 -0
- package/dist/core/NullRenderer.d.ts.map +1 -0
- package/dist/core/Renderer.d.ts +17 -1
- package/dist/core/Renderer.d.ts.map +1 -1
- package/dist/core/Scene.d.ts +23 -5
- package/dist/core/Scene.d.ts.map +1 -1
- package/dist/core/ThreeDScene.d.ts +23 -2
- package/dist/core/ThreeDScene.d.ts.map +1 -1
- package/dist/core/VGroup.d.ts +8 -1
- package/dist/core/VGroup.d.ts.map +1 -1
- package/dist/core/ZoomedScene.d.ts +6 -2
- package/dist/core/ZoomedScene.d.ts.map +1 -1
- package/dist/html-DKkfg_ss.js +1587 -0
- package/dist/html-DpiYkktJ.js +1587 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -575
- package/dist/integrations/react.js +144 -731
- package/dist/integrations/vue.js +109 -731
- package/dist/interaction/Draggable.d.ts.map +1 -1
- package/dist/lengths-C0YS8_KC.js +65 -0
- package/dist/lengths-eBH2o1TO.js +65 -0
- package/dist/liteAdaptor-CB8lQj3d.js +828 -0
- package/dist/liteAdaptor-DvuW8HsZ.js +828 -0
- package/dist/manim-web.browser.js +72318 -83323
- package/dist/mathjax-BVz9WLAG.js +105 -0
- package/dist/mathjax-BbWkqal4.js +2 -0
- package/dist/mathjax-BrFZxFhK.js +2 -0
- package/dist/mathjax-DdKmwllV.js +105 -0
- package/dist/mo-B60kIOAG.js +3271 -0
- package/dist/mo-cSv2058o.js +3271 -0
- package/dist/mobjects/geometry/AngleShapes.d.ts +8 -0
- package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -1
- package/dist/mobjects/geometry/DashedLine.d.ts +2 -2
- package/dist/mobjects/geometry/DashedLine.d.ts.map +1 -1
- package/dist/mobjects/graphing/Axes.d.ts +2 -2
- package/dist/mobjects/graphing/Axes.d.ts.map +1 -1
- package/dist/mobjects/graphing/ComplexPlane.d.ts +4 -1
- package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -1
- package/dist/mobjects/matrix/Matrix.d.ts +2 -2
- package/dist/mobjects/matrix/Matrix.d.ts.map +1 -1
- package/dist/mobjects/point/PGroup.d.ts +1 -1
- package/dist/mobjects/point/PGroup.d.ts.map +1 -1
- package/dist/mobjects/point/PMobject.d.ts +1 -1
- package/dist/mobjects/point/PMobject.d.ts.map +1 -1
- package/dist/mobjects/svg/Brace.d.ts +3 -3
- package/dist/mobjects/svg/Brace.d.ts.map +1 -1
- package/dist/mobjects/table/Table.d.ts +4 -4
- package/dist/mobjects/table/Table.d.ts.map +1 -1
- package/dist/mobjects/text/Code.d.ts.map +1 -1
- package/dist/mobjects/text/DecimalNumber.d.ts.map +1 -1
- package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -1
- package/dist/mobjects/text/MathTex.d.ts +61 -202
- package/dist/mobjects/text/MathTex.d.ts.map +1 -1
- package/dist/mobjects/text/MathTexImage.d.ts +254 -0
- package/dist/mobjects/text/MathTexImage.d.ts.map +1 -0
- package/dist/mobjects/text/MathTexParts.d.ts +10 -10
- package/dist/mobjects/text/MathTexParts.d.ts.map +1 -1
- package/dist/mobjects/text/Tex.d.ts +2 -7
- package/dist/mobjects/text/Tex.d.ts.map +1 -1
- package/dist/mobjects/text/Text.d.ts.map +1 -1
- package/dist/mobjects/text/Variable.d.ts +5 -5
- package/dist/mobjects/text/Variable.d.ts.map +1 -1
- package/dist/mobjects/text/index.d.ts +2 -2
- package/dist/mobjects/text/index.d.ts.map +1 -1
- package/dist/mobjects/text/svgPathParser.d.ts.map +1 -1
- package/dist/mobjects/value-tracker/ValueTracker.d.ts +0 -14
- package/dist/mobjects/value-tracker/ValueTracker.d.ts.map +1 -1
- package/dist/player/Player.d.ts +8 -2
- package/dist/player/Player.d.ts.map +1 -1
- package/dist/player/PlayerController.d.ts +2 -0
- package/dist/player/PlayerController.d.ts.map +1 -1
- package/dist/player/PlayerUI.d.ts +5 -0
- package/dist/player/PlayerUI.d.ts.map +1 -1
- package/dist/src-0ifQdJUj.js +59703 -0
- package/dist/svg-BDTt4xHZ.js +23879 -0
- package/dist/svg-DzbC3CbJ.js +23879 -0
- package/dist/tex-CRhAZgfS.js +401 -0
- package/dist/tex-D3LEgNlQ.js +401 -0
- package/dist/utils/math.d.ts +7 -0
- package/dist/utils/math.d.ts.map +1 -1
- package/package.json +3 -2
- package/dist/featureFlags-RDWYX142.js +0 -59330
- package/dist/mobjects/text/MathTexSVG.d.ts +0 -102
- package/dist/mobjects/text/MathTexSVG.d.ts.map +0 -1
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { n as e } from "./chunk-DeC0fbbY.js";
|
|
2
|
+
//#region src/export/VideoExporter.ts
|
|
3
|
+
var t = /* @__PURE__ */ e({
|
|
4
|
+
VideoExporter: () => n,
|
|
5
|
+
createVideoExporter: () => r
|
|
6
|
+
}), n = class e {
|
|
7
|
+
_scene;
|
|
8
|
+
_options;
|
|
9
|
+
_mediaRecorder = null;
|
|
10
|
+
_recordedChunks = [];
|
|
11
|
+
_isRecording = !1;
|
|
12
|
+
constructor(e, t) {
|
|
13
|
+
this._scene = e, this._options = {
|
|
14
|
+
fps: t?.fps ?? 60,
|
|
15
|
+
quality: t?.quality ?? .9,
|
|
16
|
+
format: t?.format ?? "webm",
|
|
17
|
+
width: t?.width ?? e.getWidth(),
|
|
18
|
+
height: t?.height ?? e.getHeight(),
|
|
19
|
+
duration: t?.duration ?? 0,
|
|
20
|
+
onProgress: t?.onProgress ?? (() => {}),
|
|
21
|
+
includeAudio: t?.includeAudio ?? !0,
|
|
22
|
+
audioManager: t?.audioManager ?? null
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
_getAudioManager() {
|
|
26
|
+
if (this._options.audioManager) return this._options.audioManager;
|
|
27
|
+
try {
|
|
28
|
+
let e = this._scene.audioManager;
|
|
29
|
+
return e.tracks.length > 0 ? e : null;
|
|
30
|
+
} catch (e) {
|
|
31
|
+
return console.warn("AudioManager unavailable; exporting without audio:", e), null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async startRecording() {
|
|
35
|
+
if (this._isRecording) throw Error("Already recording");
|
|
36
|
+
let e = this._scene.getCanvas().captureStream(this._options.fps), t = this._options.includeAudio ? this._getAudioManager() : null, n;
|
|
37
|
+
if (t && t.tracks.length > 0) {
|
|
38
|
+
let r = t.createStreamDestination().stream.getAudioTracks();
|
|
39
|
+
n = new MediaStream([...e.getVideoTracks(), ...r]);
|
|
40
|
+
} else n = e;
|
|
41
|
+
let r;
|
|
42
|
+
if (this._options.format === "webm" ? r = "video/webm;codecs=vp9" : this._options.format === "mov" ? MediaRecorder.isTypeSupported("video/quicktime") ? r = "video/quicktime" : (console.warn("MOV format not supported by this browser, falling back to WebM"), r = "video/webm;codecs=vp9") : r = "video/mp4", !MediaRecorder.isTypeSupported(r)) throw Error(`Format ${r} is not supported by this browser`);
|
|
43
|
+
this._recordedChunks = [], this._mediaRecorder = new MediaRecorder(n, {
|
|
44
|
+
mimeType: r,
|
|
45
|
+
videoBitsPerSecond: Math.floor(this._options.quality * 1e7)
|
|
46
|
+
}), this._mediaRecorder.ondataavailable = (e) => {
|
|
47
|
+
e.data.size > 0 && this._recordedChunks.push(e.data);
|
|
48
|
+
}, this._mediaRecorder.start(), this._isRecording = !0;
|
|
49
|
+
}
|
|
50
|
+
async stopRecording() {
|
|
51
|
+
return new Promise((e, t) => {
|
|
52
|
+
if (!this._mediaRecorder || !this._isRecording) {
|
|
53
|
+
t(/* @__PURE__ */ Error("Not recording"));
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
this._mediaRecorder.onstop = () => {
|
|
57
|
+
let t;
|
|
58
|
+
t = this._options.format === "webm" ? "video/webm" : this._options.format === "mov" ? "video/quicktime" : "video/mp4";
|
|
59
|
+
let n = new Blob(this._recordedChunks, { type: t });
|
|
60
|
+
this._isRecording = !1, e(n);
|
|
61
|
+
}, this._mediaRecorder.stop();
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
async exportTimeline(e) {
|
|
65
|
+
let t = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5, n = Math.ceil(t * this._options.fps), r = 1 / this._options.fps, i = this._options.includeAudio ? this._getAudioManager() : null;
|
|
66
|
+
i && i.tracks.length > 0 && i.seek(0), await this.startRecording(), i && i.tracks.length > 0 && i.play();
|
|
67
|
+
for (let e = 0; e < n; e++) {
|
|
68
|
+
let t = e * r;
|
|
69
|
+
this._scene.seek(t), await new Promise((e) => requestAnimationFrame(e)), this._options.onProgress(e / n);
|
|
70
|
+
}
|
|
71
|
+
return i && i.isPlaying && i.stop(), this.stopRecording();
|
|
72
|
+
}
|
|
73
|
+
async exportAudio(e) {
|
|
74
|
+
let t = this._getAudioManager();
|
|
75
|
+
if (!t || t.tracks.length === 0) return null;
|
|
76
|
+
let n = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5;
|
|
77
|
+
return t.exportWAV(n);
|
|
78
|
+
}
|
|
79
|
+
static download(e, t = "animation.webm") {
|
|
80
|
+
let n = URL.createObjectURL(e), r = document.createElement("a");
|
|
81
|
+
r.href = n, r.download = t, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n);
|
|
82
|
+
}
|
|
83
|
+
async exportAndDownload(t, n) {
|
|
84
|
+
let r = await this.exportTimeline(n), i = {
|
|
85
|
+
webm: ".webm",
|
|
86
|
+
mp4: ".mp4",
|
|
87
|
+
mov: ".mov"
|
|
88
|
+
}[this._options.format] ?? ".webm";
|
|
89
|
+
e.download(r, t ?? `animation${i}`);
|
|
90
|
+
}
|
|
91
|
+
isRecording() {
|
|
92
|
+
return this._isRecording;
|
|
93
|
+
}
|
|
94
|
+
getOptions() {
|
|
95
|
+
return { ...this._options };
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
function r(e, t) {
|
|
99
|
+
return new n(e, t);
|
|
100
|
+
}
|
|
101
|
+
//#endregion
|
|
102
|
+
export { t as n, r, n as t };
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { n as e } from "./chunk-DeC0fbbY.js";
|
|
2
|
+
//#region src/export/VideoExporter.ts
|
|
3
|
+
var t = /* @__PURE__ */ e({
|
|
4
|
+
VideoExporter: () => n,
|
|
5
|
+
createVideoExporter: () => r
|
|
6
|
+
}), n = class e {
|
|
7
|
+
_scene;
|
|
8
|
+
_options;
|
|
9
|
+
_mediaRecorder = null;
|
|
10
|
+
_recordedChunks = [];
|
|
11
|
+
_isRecording = !1;
|
|
12
|
+
constructor(e, t) {
|
|
13
|
+
this._scene = e, this._options = {
|
|
14
|
+
fps: t?.fps ?? 60,
|
|
15
|
+
quality: t?.quality ?? .9,
|
|
16
|
+
format: t?.format ?? "webm",
|
|
17
|
+
width: t?.width ?? e.getWidth(),
|
|
18
|
+
height: t?.height ?? e.getHeight(),
|
|
19
|
+
duration: t?.duration ?? 0,
|
|
20
|
+
onProgress: t?.onProgress ?? (() => {}),
|
|
21
|
+
includeAudio: t?.includeAudio ?? !0,
|
|
22
|
+
audioManager: t?.audioManager ?? null
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
_getAudioManager() {
|
|
26
|
+
if (this._options.audioManager) return this._options.audioManager;
|
|
27
|
+
try {
|
|
28
|
+
let e = this._scene.audioManager;
|
|
29
|
+
return e.tracks.length > 0 ? e : null;
|
|
30
|
+
} catch (e) {
|
|
31
|
+
return console.warn("AudioManager unavailable; exporting without audio:", e), null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async startRecording() {
|
|
35
|
+
if (this._isRecording) throw Error("Already recording");
|
|
36
|
+
let e = this._scene.getCanvas().captureStream(this._options.fps), t = this._options.includeAudio ? this._getAudioManager() : null, n;
|
|
37
|
+
if (t && t.tracks.length > 0) {
|
|
38
|
+
let r = t.createStreamDestination().stream.getAudioTracks();
|
|
39
|
+
n = new MediaStream([...e.getVideoTracks(), ...r]);
|
|
40
|
+
} else n = e;
|
|
41
|
+
let r;
|
|
42
|
+
if (this._options.format === "webm" ? r = "video/webm;codecs=vp9" : this._options.format === "mov" ? MediaRecorder.isTypeSupported("video/quicktime") ? r = "video/quicktime" : (console.warn("MOV format not supported by this browser, falling back to WebM"), r = "video/webm;codecs=vp9") : r = "video/mp4", !MediaRecorder.isTypeSupported(r)) throw Error(`Format ${r} is not supported by this browser`);
|
|
43
|
+
this._recordedChunks = [], this._mediaRecorder = new MediaRecorder(n, {
|
|
44
|
+
mimeType: r,
|
|
45
|
+
videoBitsPerSecond: Math.floor(this._options.quality * 1e7)
|
|
46
|
+
}), this._mediaRecorder.ondataavailable = (e) => {
|
|
47
|
+
e.data.size > 0 && this._recordedChunks.push(e.data);
|
|
48
|
+
}, this._mediaRecorder.start(), this._isRecording = !0;
|
|
49
|
+
}
|
|
50
|
+
async stopRecording() {
|
|
51
|
+
return new Promise((e, t) => {
|
|
52
|
+
if (!this._mediaRecorder || !this._isRecording) {
|
|
53
|
+
t(/* @__PURE__ */ Error("Not recording"));
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
this._mediaRecorder.onstop = () => {
|
|
57
|
+
let t;
|
|
58
|
+
t = this._options.format === "webm" ? "video/webm" : this._options.format === "mov" ? "video/quicktime" : "video/mp4";
|
|
59
|
+
let n = new Blob(this._recordedChunks, { type: t });
|
|
60
|
+
this._isRecording = !1, e(n);
|
|
61
|
+
}, this._mediaRecorder.stop();
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
async exportTimeline(e) {
|
|
65
|
+
let t = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5, n = Math.ceil(t * this._options.fps), r = 1 / this._options.fps, i = this._options.includeAudio ? this._getAudioManager() : null;
|
|
66
|
+
i && i.tracks.length > 0 && i.seek(0), await this.startRecording(), i && i.tracks.length > 0 && i.play();
|
|
67
|
+
for (let e = 0; e < n; e++) {
|
|
68
|
+
let t = e * r;
|
|
69
|
+
this._scene.seek(t), await new Promise((e) => requestAnimationFrame(e)), this._options.onProgress(e / n);
|
|
70
|
+
}
|
|
71
|
+
return i && i.isPlaying && i.stop(), this.stopRecording();
|
|
72
|
+
}
|
|
73
|
+
async exportAudio(e) {
|
|
74
|
+
let t = this._getAudioManager();
|
|
75
|
+
if (!t || t.tracks.length === 0) return null;
|
|
76
|
+
let n = e ?? this._options.duration ?? this._scene.getTimelineDuration() ?? 5;
|
|
77
|
+
return t.exportWAV(n);
|
|
78
|
+
}
|
|
79
|
+
static download(e, t = "animation.webm") {
|
|
80
|
+
let n = URL.createObjectURL(e), r = document.createElement("a");
|
|
81
|
+
r.href = n, r.download = t, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n);
|
|
82
|
+
}
|
|
83
|
+
async exportAndDownload(t, n) {
|
|
84
|
+
let r = await this.exportTimeline(n), i = {
|
|
85
|
+
webm: ".webm",
|
|
86
|
+
mp4: ".mp4",
|
|
87
|
+
mov: ".mov"
|
|
88
|
+
}[this._options.format] ?? ".webm";
|
|
89
|
+
e.download(r, t ?? `animation${i}`);
|
|
90
|
+
}
|
|
91
|
+
isRecording() {
|
|
92
|
+
return this._isRecording;
|
|
93
|
+
}
|
|
94
|
+
getOptions() {
|
|
95
|
+
return { ...this._options };
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
function r(e, t) {
|
|
99
|
+
return new n(e, t);
|
|
100
|
+
}
|
|
101
|
+
//#endregion
|
|
102
|
+
export { t as n, r, n as t };
|
|
@@ -45,7 +45,7 @@ export declare class Create extends Animation {
|
|
|
45
45
|
private _collectOpacities;
|
|
46
46
|
/**
|
|
47
47
|
* Apply proportionally scaled opacities to all saved descendants.
|
|
48
|
-
* Uses Mobject.prototype.
|
|
48
|
+
* Uses Mobject.prototype.setStrokeOpacity to avoid Group propagation.
|
|
49
49
|
*/
|
|
50
50
|
private _applyScaledOpacities;
|
|
51
51
|
/**
|
|
@@ -7,6 +7,8 @@ export interface RotateOptions extends AnimationOptions {
|
|
|
7
7
|
axis?: Vector3Tuple;
|
|
8
8
|
/** Point to rotate about, defaults to mobject center */
|
|
9
9
|
aboutPoint?: Vector3Tuple;
|
|
10
|
+
/** Edge to rotate about, resolved via bounding box. Mutually exclusive with aboutPoint. */
|
|
11
|
+
aboutEdge?: Vector3Tuple;
|
|
10
12
|
}
|
|
11
13
|
export declare class Rotate extends Animation {
|
|
12
14
|
/** Angle to rotate in radians */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rotate.d.ts","sourceRoot":"","sources":["../../../src/animation/movement/Rotate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Rotate.d.ts","sourceRoot":"","sources":["../../../src/animation/movement/Rotate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAG3D,MAAM,WAAW,aAAc,SAAQ,gBAAgB;IACrD,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,wDAAwD;IACxD,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,2FAA2F;IAC3F,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B;AAED,qBAAa,MAAO,SAAQ,SAAS;IACnC,iCAAiC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAE5B,4BAA4B;IAC5B,QAAQ,CAAC,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;IAEzC,4CAA4C;IAC5C,OAAO,CAAC,kBAAkB,CAA4C;IAEtE,oDAAoD;IACpD,OAAO,CAAC,gBAAgB,CAAsC;IAE9D,qCAAqC;IACrC,OAAO,CAAC,WAAW,CAAsC;IAEzD,mCAAmC;IACnC,OAAO,CAAC,iBAAiB,CAA8B;gBAE3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa;IAQpD;;OAEG;IACM,KAAK,IAAI,IAAI;IA0BtB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IA0BhC;;OAEG;IACM,MAAM,IAAI,IAAI;CAIxB;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CACpB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GACrC,MAAM,CAER"}
|
|
@@ -5,6 +5,8 @@ export interface ScaleOptions extends AnimationOptions {
|
|
|
5
5
|
scaleFactor: number | Vector3Tuple;
|
|
6
6
|
/** Point to scale about, defaults to mobject center */
|
|
7
7
|
aboutPoint?: Vector3Tuple;
|
|
8
|
+
/** Edge to scale about, resolved via bounding box. Mutually exclusive with aboutPoint. */
|
|
9
|
+
aboutEdge?: Vector3Tuple;
|
|
8
10
|
}
|
|
9
11
|
export declare class Scale extends Animation {
|
|
10
12
|
/** Scale factor */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scale.d.ts","sourceRoot":"","sources":["../../../src/animation/movement/Scale.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Scale.d.ts","sourceRoot":"","sources":["../../../src/animation/movement/Scale.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAG3D,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,uEAAuE;IACvE,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,uDAAuD;IACvD,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,0FAA0F;IAC1F,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B;AASD,qBAAa,KAAM,SAAQ,SAAS;IAClC,mBAAmB;IACnB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC;IAE5C,2BAA2B;IAC3B,QAAQ,CAAC,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;IAEzC,2BAA2B;IAC3B,OAAO,CAAC,aAAa,CAAsC;IAE3D,0BAA0B;IAC1B,OAAO,CAAC,YAAY,CAAsC;IAE1D,uBAAuB;IACvB,OAAO,CAAC,gBAAgB,CAAsC;IAE9D,mCAAmC;IACnC,OAAO,CAAC,iBAAiB,CAA8B;gBAE3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY;IAOnD;;OAEG;IACM,KAAK,IAAI,IAAI;IAsCtB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAyBhC;;OAEG;IACM,MAAM,IAAI,IAAI;CAIxB;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CACnB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GAAG,YAAY,EAC7B,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,GAC1C,KAAK,CAEP;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAErD;;GAEG;AACH,qBAAa,cAAe,SAAQ,SAAS;IAC3C,wCAAwC;IACxC,OAAO,CAAC,YAAY,CAAsC;gBAE9C,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,qBAA0B;IAIjE;;OAEG;IACM,KAAK,IAAI,IAAI;IAUtB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAShC;;OAEG;IACM,MAAM,IAAI,IAAI;CAKxB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAEhG"}
|
|
@@ -92,14 +92,13 @@ export declare class ApplyMatrix extends Animation {
|
|
|
92
92
|
private _snapshots;
|
|
93
93
|
constructor(mobject: Mobject, options: ApplyMatrixOptions);
|
|
94
94
|
begin(): void;
|
|
95
|
-
private _transformPoint;
|
|
96
95
|
interpolate(alpha: number): void;
|
|
97
96
|
finish(): void;
|
|
98
97
|
}
|
|
99
98
|
/**
|
|
100
99
|
* Create an ApplyMatrix animation.
|
|
101
100
|
* @param mobject The Mobject to transform (VMobject or Group)
|
|
102
|
-
* @param matrix
|
|
101
|
+
* @param matrix 2x2 or 3x3 transformation matrix
|
|
103
102
|
* @param options Animation options including aboutPoint
|
|
104
103
|
*/
|
|
105
104
|
export declare function applyMatrix(mobject: Mobject, matrix: number[][], options?: Omit<ApplyMatrixOptions, 'matrix'>): ApplyMatrix;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApplyTransforms.d.ts","sourceRoot":"","sources":["../../../src/animation/transform/ApplyTransforms.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ApplyTransforms.d.ts","sourceRoot":"","sources":["../../../src/animation/transform/ApplyTransforms.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,12 +34,31 @@ export declare class Transform extends Animation {
|
|
|
34
34
|
private _useCrossFade;
|
|
35
35
|
/** Original target opacity before cross-fade zeroes it */
|
|
36
36
|
private _crossFadeTargetOpacity;
|
|
37
|
+
/** Whether source and target are both VGroups (per-child interpolation) */
|
|
38
|
+
private _isVGroupTransform;
|
|
39
|
+
/** Per-child start/target points for VGroup transforms */
|
|
40
|
+
private _childStartPoints;
|
|
41
|
+
private _childTargetPoints;
|
|
42
|
+
/** Per-child start/target styles for VGroup transforms */
|
|
43
|
+
private _childStartStyles;
|
|
44
|
+
private _childTargetStyles;
|
|
45
|
+
/** Per-child pre-allocated THREE.Color pairs for interpolation (avoids per-frame allocation) */
|
|
46
|
+
private _childColorPairs;
|
|
47
|
+
private _childFillColorPairs;
|
|
48
|
+
/** Snapshot of source children references at begin() time */
|
|
49
|
+
private _childRefs;
|
|
37
50
|
constructor(mobject: Mobject, target: Mobject, options?: AnimationOptions);
|
|
38
51
|
/**
|
|
39
52
|
* Set up the animation - align points between mobject and target,
|
|
40
53
|
* or set up cross-fade if either is not a VMobject.
|
|
41
54
|
*/
|
|
42
55
|
begin(): void;
|
|
56
|
+
/**
|
|
57
|
+
* Set up per-child interpolation for VGroup → VGroup transforms.
|
|
58
|
+
* Matches children pairwise; extra source children fade out, extra
|
|
59
|
+
* target children fade in via placeholder VMobjects.
|
|
60
|
+
*/
|
|
61
|
+
private _beginVGroup;
|
|
43
62
|
/**
|
|
44
63
|
* Interpolate between start and target at the given alpha
|
|
45
64
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transform.d.ts","sourceRoot":"","sources":["../../../src/animation/transform/Transform.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Transform.d.ts","sourceRoot":"","sources":["../../../src/animation/transform/Transform.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,6 +79,8 @@ export interface RotatingOptions extends AnimationOptions {
|
|
|
79
79
|
axis?: Vector3Tuple;
|
|
80
80
|
/** Point to rotate about. Default: mobject center */
|
|
81
81
|
aboutPoint?: Vector3Tuple;
|
|
82
|
+
/** Edge to rotate about, resolved via bounding box. Mutually exclusive with aboutPoint. */
|
|
83
|
+
aboutEdge?: Vector3Tuple;
|
|
82
84
|
}
|
|
83
85
|
/**
|
|
84
86
|
* Continuous rotation animation that rotates by a total angle over the duration.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/animation/utility/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/animation/utility/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), s = (e, n) => {
|
|
3
|
+
let r = {};
|
|
4
|
+
for (var i in e) t(r, i, {
|
|
5
|
+
get: e[i],
|
|
6
|
+
enumerable: !0
|
|
7
|
+
});
|
|
8
|
+
return n || t(r, Symbol.toStringTag, { value: "Module" }), r;
|
|
9
|
+
}, c = (e, i, o, s) => {
|
|
10
|
+
if (i && typeof i == "object" || typeof i == "function") for (var c = r(i), l = 0, u = c.length, d; l < u; l++) d = c[l], !a.call(e, d) && d !== o && t(e, d, {
|
|
11
|
+
get: ((e) => i[e]).bind(null, d),
|
|
12
|
+
enumerable: !(s = n(i, d)) || s.enumerable
|
|
13
|
+
});
|
|
14
|
+
return e;
|
|
15
|
+
}, l = (n, r, a) => (a = n == null ? {} : e(i(n)), c(r || !n || !n.__esModule ? t(a, "default", {
|
|
16
|
+
value: n,
|
|
17
|
+
enumerable: !0
|
|
18
|
+
}) : a, n)), u = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) {
|
|
19
|
+
if (typeof require < "u") return require.apply(this, arguments);
|
|
20
|
+
throw Error("Calling `require` for \"" + e + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
|
|
21
|
+
});
|
|
22
|
+
//#endregion
|
|
23
|
+
export { l as i, s as n, u as r, o as t };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Mobject, Vector3Tuple, MobjectStyle } from './Mobject';
|
|
2
|
+
import { Animation, AnimationOptions } from '../animation/Animation';
|
|
3
|
+
import { RateFunction } from '../rate-functions';
|
|
4
|
+
export declare class AnimateProxy extends Animation {
|
|
5
|
+
private _source;
|
|
6
|
+
private _calls;
|
|
7
|
+
private _innerTransform;
|
|
8
|
+
private _overrideAnimation;
|
|
9
|
+
constructor(mobject: Mobject, options?: AnimationOptions);
|
|
10
|
+
/** Override duration for this animation (builder-style). */
|
|
11
|
+
withDuration(seconds: number): this;
|
|
12
|
+
/** Override rate function (builder-style). */
|
|
13
|
+
withRateFunc(fn: RateFunction): this;
|
|
14
|
+
shift(delta: Vector3Tuple): this;
|
|
15
|
+
moveTo(target: Vector3Tuple | Mobject, alignedEdge?: Vector3Tuple): this;
|
|
16
|
+
rotate(angle: number, axisOrOptions?: Vector3Tuple | {
|
|
17
|
+
axis?: Vector3Tuple;
|
|
18
|
+
aboutPoint?: Vector3Tuple;
|
|
19
|
+
}): this;
|
|
20
|
+
scale(factor: number | Vector3Tuple): this;
|
|
21
|
+
setColor(color: string): this;
|
|
22
|
+
setOpacity(opacity: number): this;
|
|
23
|
+
setStrokeWidth(width: number): this;
|
|
24
|
+
setFillOpacity(opacity: number): this;
|
|
25
|
+
setFill(color?: string, opacity?: number): this;
|
|
26
|
+
setStyle(style: Partial<MobjectStyle>): this;
|
|
27
|
+
flip(axis?: Vector3Tuple): this;
|
|
28
|
+
center(): this;
|
|
29
|
+
nextTo(target: Mobject | Vector3Tuple, direction?: Vector3Tuple, buff?: number): this;
|
|
30
|
+
alignTo(target: Mobject | Vector3Tuple, direction: Vector3Tuple): this;
|
|
31
|
+
toEdge(direction: Vector3Tuple, buff?: number): this;
|
|
32
|
+
setX(x: number): this;
|
|
33
|
+
setY(y: number): this;
|
|
34
|
+
setZ(z: number): this;
|
|
35
|
+
begin(): void;
|
|
36
|
+
interpolate(alpha: number): void;
|
|
37
|
+
finish(): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=AnimateProxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimateProxy.d.ts","sourceRoot":"","sources":["../../src/core/AnimateProxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAwB,MAAM,WAAW,CAAC;AAChG,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,KAAK,YAAY,EAAU,MAAM,mBAAmB,CAAC;AAM9D,qBAAa,YAAa,SAAQ,SAAS;IACzC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,kBAAkB,CAA0B;gBAExC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB;IAU5D,4DAA4D;IAC5D,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKnC,8CAA8C;IAC9C,YAAY,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI;IAOpC,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAKhC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAKxE,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,YAAY,GAAG;QAAE,IAAI,CAAC,EAAE,YAAY,CAAC;QAAC,UAAU,CAAC,EAAE,YAAY,CAAA;KAAE,GAChF,IAAI;IAKP,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAK1C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKnC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKrC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAK/C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAK5C,IAAI,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI;IAK/B,MAAM,IAAI,IAAI;IAKd,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAQrF,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI;IAKtE,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAKpD,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAKrB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAKrB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAOZ,KAAK,IAAI,IAAI;IA2CtB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAUvB,MAAM,IAAI,IAAI;CASxB"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { Camera2D, Camera3D, CameraOptions, Camera3DOptions } from './Camera';
|
|
2
2
|
import { Mobject, Vector3Tuple } from './Mobject';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
|
+
/**
|
|
5
|
+
* Coordinate mapping function type.
|
|
6
|
+
* Transforms a 3D point to another 3D point.
|
|
7
|
+
*/
|
|
8
|
+
export type MappingFunction = (point: Vector3Tuple) => Vector3Tuple;
|
|
4
9
|
/**
|
|
5
10
|
* Animation options for camera movements.
|
|
6
11
|
*/
|
|
@@ -417,4 +422,127 @@ export declare class MultiCamera {
|
|
|
417
422
|
*/
|
|
418
423
|
clear(): this;
|
|
419
424
|
}
|
|
425
|
+
/**
|
|
426
|
+
* Options for configuring a MappingCamera.
|
|
427
|
+
*/
|
|
428
|
+
export interface MappingCameraOptions extends CameraOptions {
|
|
429
|
+
/** Initial mapping function to apply to coordinates. */
|
|
430
|
+
mappingFunction?: MappingFunction;
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* MappingCamera - A Camera2D that applies a coordinate mapping function
|
|
434
|
+
* to transform how the scene is viewed.
|
|
435
|
+
*
|
|
436
|
+
* Based on Python Manim's MappingCamera concept. Use cases include
|
|
437
|
+
* non-linear coordinate distortions and custom projections.
|
|
438
|
+
*/
|
|
439
|
+
export declare class MappingCamera extends Camera2D {
|
|
440
|
+
private _mappingFunction;
|
|
441
|
+
/**
|
|
442
|
+
* Create a new MappingCamera.
|
|
443
|
+
* @param options - Camera configuration options
|
|
444
|
+
*/
|
|
445
|
+
constructor(options?: MappingCameraOptions);
|
|
446
|
+
/**
|
|
447
|
+
* Set the mapping function used to transform coordinates.
|
|
448
|
+
* @param fn - Mapping function that transforms [x, y, z] points
|
|
449
|
+
* @returns this for chaining
|
|
450
|
+
*/
|
|
451
|
+
setMappingFunction(fn: MappingFunction): this;
|
|
452
|
+
/**
|
|
453
|
+
* Get the current mapping function.
|
|
454
|
+
* @returns The mapping function, or null if none is set
|
|
455
|
+
*/
|
|
456
|
+
getMappingFunction(): MappingFunction | null;
|
|
457
|
+
/**
|
|
458
|
+
* Apply the mapping function to a point.
|
|
459
|
+
* Returns the point unchanged if no mapping is set (identity).
|
|
460
|
+
* @param point - Input point [x, y, z]
|
|
461
|
+
* @returns The mapped point
|
|
462
|
+
*/
|
|
463
|
+
mapPoint(point: Vector3Tuple): Vector3Tuple;
|
|
464
|
+
/**
|
|
465
|
+
* Clear the mapping function, reverting to identity.
|
|
466
|
+
* @returns this for chaining
|
|
467
|
+
*/
|
|
468
|
+
resetMapping(): this;
|
|
469
|
+
}
|
|
470
|
+
/**
|
|
471
|
+
* Options for configuring a SplitScreenCamera.
|
|
472
|
+
*/
|
|
473
|
+
export interface SplitScreenCameraOptions {
|
|
474
|
+
/** Camera for the left (or top) side. Defaults to a new Camera2D. */
|
|
475
|
+
leftCamera?: Camera2D;
|
|
476
|
+
/** Camera for the right (or bottom) side. Defaults to a new Camera2D. */
|
|
477
|
+
rightCamera?: Camera2D;
|
|
478
|
+
/** Split direction. Defaults to 'horizontal'. */
|
|
479
|
+
split?: 'horizontal' | 'vertical';
|
|
480
|
+
/** Split ratio (0-1). Defaults to 0.5. */
|
|
481
|
+
splitRatio?: number;
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* SplitScreenCamera - A convenience class that wraps MultiCamera
|
|
485
|
+
* for split-screen comparison views.
|
|
486
|
+
*
|
|
487
|
+
* Based on Python Manim's multi_camera module. Provides two Camera2D
|
|
488
|
+
* instances rendered side-by-side (horizontal split) or stacked
|
|
489
|
+
* (vertical split) with a configurable split ratio.
|
|
490
|
+
*/
|
|
491
|
+
export declare class SplitScreenCamera {
|
|
492
|
+
private _leftCamera;
|
|
493
|
+
private _rightCamera;
|
|
494
|
+
private _multiCamera;
|
|
495
|
+
private _splitDirection;
|
|
496
|
+
private _splitRatio;
|
|
497
|
+
/**
|
|
498
|
+
* Create a new SplitScreenCamera.
|
|
499
|
+
* @param options - Configuration options
|
|
500
|
+
*/
|
|
501
|
+
constructor(options?: SplitScreenCameraOptions);
|
|
502
|
+
/**
|
|
503
|
+
* Clamp a ratio to the valid range (0.01 - 0.99).
|
|
504
|
+
*/
|
|
505
|
+
private static _clampRatio;
|
|
506
|
+
/**
|
|
507
|
+
* Rebuild the MultiCamera viewports based on current split settings.
|
|
508
|
+
*/
|
|
509
|
+
private _rebuildViewports;
|
|
510
|
+
/**
|
|
511
|
+
* Get the left (or top) camera.
|
|
512
|
+
* @returns The left Camera2D
|
|
513
|
+
*/
|
|
514
|
+
getLeftCamera(): Camera2D;
|
|
515
|
+
/**
|
|
516
|
+
* Get the right (or bottom) camera.
|
|
517
|
+
* @returns The right Camera2D
|
|
518
|
+
*/
|
|
519
|
+
getRightCamera(): Camera2D;
|
|
520
|
+
/**
|
|
521
|
+
* Get the underlying MultiCamera instance.
|
|
522
|
+
* @returns The MultiCamera managing the viewports
|
|
523
|
+
*/
|
|
524
|
+
getMultiCamera(): MultiCamera;
|
|
525
|
+
/**
|
|
526
|
+
* Get the current split direction.
|
|
527
|
+
* @returns 'horizontal' or 'vertical'
|
|
528
|
+
*/
|
|
529
|
+
getSplitDirection(): 'horizontal' | 'vertical';
|
|
530
|
+
/**
|
|
531
|
+
* Get the current split ratio.
|
|
532
|
+
* @returns Split ratio between 0.01 and 0.99
|
|
533
|
+
*/
|
|
534
|
+
getSplitRatio(): number;
|
|
535
|
+
/**
|
|
536
|
+
* Set the split direction.
|
|
537
|
+
* @param direction - 'horizontal' for side-by-side, 'vertical' for stacked
|
|
538
|
+
* @returns this for chaining
|
|
539
|
+
*/
|
|
540
|
+
setSplit(direction: 'horizontal' | 'vertical'): this;
|
|
541
|
+
/**
|
|
542
|
+
* Set the split ratio.
|
|
543
|
+
* @param ratio - Position of the split (0-1). 0.5 = equal halves.
|
|
544
|
+
* @returns this for chaining
|
|
545
|
+
*/
|
|
546
|
+
setSplitRatio(ratio: number): this;
|
|
547
|
+
}
|
|
420
548
|
//# sourceMappingURL=CameraExtensions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CameraExtensions.d.ts","sourceRoot":"","sources":["../../src/core/CameraExtensions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CameraExtensions.d.ts","sourceRoot":"","sources":["../../src/core/CameraExtensions.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Group.d.ts
CHANGED
|
@@ -79,11 +79,11 @@ export declare class Group extends Mobject {
|
|
|
79
79
|
*/
|
|
80
80
|
setColor(color: string): this;
|
|
81
81
|
/**
|
|
82
|
-
* Set the opacity of all children.
|
|
82
|
+
* Set the stroke opacity of all children.
|
|
83
83
|
* @param opacity - Opacity value (0-1)
|
|
84
84
|
* @returns this for chaining
|
|
85
85
|
*/
|
|
86
|
-
|
|
86
|
+
setStrokeOpacity(opacity: number): this;
|
|
87
87
|
/**
|
|
88
88
|
* Set the stroke width of all children.
|
|
89
89
|
* @param width - Stroke width in pixels
|
package/dist/core/Group.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Group.d.ts","sourceRoot":"","sources":["../../src/core/Group.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAElD;;;GAGG;AACH,qBAAa,KAAM,SAAQ,OAAO;IAChC;;;OAGG;gBACS,GAAG,QAAQ,EAAE,OAAO,EAAE;IAQlC;;;;OAIG;IACM,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAoBpC;;;;OAIG;IACM,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAavC;;;OAGG;IACH,KAAK,IAAI,IAAI;IAOb;;;;;OAKG;IACM,SAAS,IAAI,YAAY;IAmBlC;;;;;;;OAOG;IACM,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAQzC;;;;;OAKG;IACM,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAuBjF;;;;;;OAMG;IACM,MAAM,CACb,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,YAAY,GAAG;QAAE,IAAI,CAAC,EAAE,YAAY,CAAC;QAAC,UAAU,CAAC,EAAE,YAAY,CAAA;KAAE,GAChF,IAAI;IAQP;;;;;OAKG;IACM,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAQnD;;;;OAIG;IACM,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQtC;;;;OAIG;IACM,
|
|
1
|
+
{"version":3,"file":"Group.d.ts","sourceRoot":"","sources":["../../src/core/Group.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAElD;;;GAGG;AACH,qBAAa,KAAM,SAAQ,OAAO;IAChC;;;OAGG;gBACS,GAAG,QAAQ,EAAE,OAAO,EAAE;IAQlC;;;;OAIG;IACM,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAoBpC;;;;OAIG;IACM,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAavC;;;OAGG;IACH,KAAK,IAAI,IAAI;IAOb;;;;;OAKG;IACM,SAAS,IAAI,YAAY;IAmBlC;;;;;;;OAOG;IACM,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAQzC;;;;;OAKG;IACM,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAuBjF;;;;;;OAMG;IACM,MAAM,CACb,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,YAAY,GAAG;QAAE,IAAI,CAAC,EAAE,YAAY,CAAC;QAAC,UAAU,CAAC,EAAE,YAAY,CAAA;KAAE,GAChF,IAAI;IAQP;;;;;OAKG;IACM,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAQnD;;;;OAIG;IACM,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQtC;;;;OAIG;IACM,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQhD;;;;OAIG;IACM,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ5C;;;;OAIG;IACM,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQ9C;;;OAGG;IACH,SAAS,CAAC,kBAAkB,IAAI,KAAK,CAAC,QAAQ;IAW9C;;OAEG;cACgB,WAAW,IAAI,KAAK;IAKvC;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAIvC;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;IAItC;;;;OAIG;IACH,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAK5D;;;;OAIG;IACH,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE;IAIvD;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,GAAG,KAAK;CAIhE"}
|