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.
Files changed (130) hide show
  1. package/README.md +26 -40
  2. package/dist/AllPackages-C4Ha3Jps.js +7912 -0
  3. package/dist/AllPackages-Dwxf_-Ps.js +7912 -0
  4. package/dist/BaseConfiguration-D2fikupy.js +4402 -0
  5. package/dist/BaseConfiguration-DYpI8zxb.js +4402 -0
  6. package/dist/Entities-BxzKxtF2.js +458 -0
  7. package/dist/Entities-gIbwAkB6.js +458 -0
  8. package/dist/GifExporter-7EpPGupp.js +338 -0
  9. package/dist/GifExporter-DCrSD6FV.js +338 -0
  10. package/dist/InputJax-BszJvLkW.js +43 -0
  11. package/dist/InputJax-CgHBfQsv.js +43 -0
  12. package/dist/MathItem-4gYKatZT.js +77 -0
  13. package/dist/MathItem-BGJUnd1K.js +77 -0
  14. package/dist/Options-CQim5zsr.js +188 -0
  15. package/dist/Options-Cn9jv1mh.js +188 -0
  16. package/dist/PrioritizedList-C1R4aNEC.js +36 -0
  17. package/dist/PrioritizedList-lIkFMNlo.js +36 -0
  18. package/dist/Styles-Bi9Db-2J.js +411 -0
  19. package/dist/Styles-CzHPc-An.js +411 -0
  20. package/dist/TeXAtom-Cinii27y.js +2025 -0
  21. package/dist/TeXAtom-DFdvwkN2.js +2025 -0
  22. package/dist/VideoExporter-6w8xBpcV.js +102 -0
  23. package/dist/VideoExporter-DdQb18dC.js +102 -0
  24. package/dist/animation/creation/Create.d.ts +1 -1
  25. package/dist/animation/movement/Rotate.d.ts +2 -0
  26. package/dist/animation/movement/Rotate.d.ts.map +1 -1
  27. package/dist/animation/movement/Scale.d.ts +2 -0
  28. package/dist/animation/movement/Scale.d.ts.map +1 -1
  29. package/dist/animation/transform/ApplyTransforms.d.ts +1 -2
  30. package/dist/animation/transform/ApplyTransforms.d.ts.map +1 -1
  31. package/dist/animation/transform/Transform.d.ts +19 -0
  32. package/dist/animation/transform/Transform.d.ts.map +1 -1
  33. package/dist/animation/utility/index.d.ts +2 -0
  34. package/dist/animation/utility/index.d.ts.map +1 -1
  35. package/dist/chunk-DeC0fbbY.js +23 -0
  36. package/dist/core/AnimateProxy.d.ts +39 -0
  37. package/dist/core/AnimateProxy.d.ts.map +1 -0
  38. package/dist/core/CameraExtensions.d.ts +128 -0
  39. package/dist/core/CameraExtensions.d.ts.map +1 -1
  40. package/dist/core/Group.d.ts +2 -2
  41. package/dist/core/Group.d.ts.map +1 -1
  42. package/dist/core/Mobject.d.ts +40 -6
  43. package/dist/core/Mobject.d.ts.map +1 -1
  44. package/dist/core/MobjectState.d.ts +23 -2
  45. package/dist/core/MobjectState.d.ts.map +1 -1
  46. package/dist/core/NullRenderer.d.ts +42 -0
  47. package/dist/core/NullRenderer.d.ts.map +1 -0
  48. package/dist/core/Renderer.d.ts +17 -1
  49. package/dist/core/Renderer.d.ts.map +1 -1
  50. package/dist/core/Scene.d.ts +23 -5
  51. package/dist/core/Scene.d.ts.map +1 -1
  52. package/dist/core/ThreeDScene.d.ts +23 -2
  53. package/dist/core/ThreeDScene.d.ts.map +1 -1
  54. package/dist/core/VGroup.d.ts +8 -1
  55. package/dist/core/VGroup.d.ts.map +1 -1
  56. package/dist/core/ZoomedScene.d.ts +6 -2
  57. package/dist/core/ZoomedScene.d.ts.map +1 -1
  58. package/dist/html-DKkfg_ss.js +1587 -0
  59. package/dist/html-DpiYkktJ.js +1587 -0
  60. package/dist/index.d.ts +5 -3
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +4 -575
  63. package/dist/integrations/react.js +144 -731
  64. package/dist/integrations/vue.js +109 -731
  65. package/dist/interaction/Draggable.d.ts.map +1 -1
  66. package/dist/lengths-C0YS8_KC.js +65 -0
  67. package/dist/lengths-eBH2o1TO.js +65 -0
  68. package/dist/liteAdaptor-CB8lQj3d.js +828 -0
  69. package/dist/liteAdaptor-DvuW8HsZ.js +828 -0
  70. package/dist/manim-web.browser.js +72318 -83323
  71. package/dist/mathjax-BVz9WLAG.js +105 -0
  72. package/dist/mathjax-BbWkqal4.js +2 -0
  73. package/dist/mathjax-BrFZxFhK.js +2 -0
  74. package/dist/mathjax-DdKmwllV.js +105 -0
  75. package/dist/mo-B60kIOAG.js +3271 -0
  76. package/dist/mo-cSv2058o.js +3271 -0
  77. package/dist/mobjects/geometry/AngleShapes.d.ts +8 -0
  78. package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -1
  79. package/dist/mobjects/geometry/DashedLine.d.ts +2 -2
  80. package/dist/mobjects/geometry/DashedLine.d.ts.map +1 -1
  81. package/dist/mobjects/graphing/Axes.d.ts +2 -2
  82. package/dist/mobjects/graphing/Axes.d.ts.map +1 -1
  83. package/dist/mobjects/graphing/ComplexPlane.d.ts +4 -1
  84. package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -1
  85. package/dist/mobjects/matrix/Matrix.d.ts +2 -2
  86. package/dist/mobjects/matrix/Matrix.d.ts.map +1 -1
  87. package/dist/mobjects/point/PGroup.d.ts +1 -1
  88. package/dist/mobjects/point/PGroup.d.ts.map +1 -1
  89. package/dist/mobjects/point/PMobject.d.ts +1 -1
  90. package/dist/mobjects/point/PMobject.d.ts.map +1 -1
  91. package/dist/mobjects/svg/Brace.d.ts +3 -3
  92. package/dist/mobjects/svg/Brace.d.ts.map +1 -1
  93. package/dist/mobjects/table/Table.d.ts +4 -4
  94. package/dist/mobjects/table/Table.d.ts.map +1 -1
  95. package/dist/mobjects/text/Code.d.ts.map +1 -1
  96. package/dist/mobjects/text/DecimalNumber.d.ts.map +1 -1
  97. package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -1
  98. package/dist/mobjects/text/MathTex.d.ts +61 -202
  99. package/dist/mobjects/text/MathTex.d.ts.map +1 -1
  100. package/dist/mobjects/text/MathTexImage.d.ts +254 -0
  101. package/dist/mobjects/text/MathTexImage.d.ts.map +1 -0
  102. package/dist/mobjects/text/MathTexParts.d.ts +10 -10
  103. package/dist/mobjects/text/MathTexParts.d.ts.map +1 -1
  104. package/dist/mobjects/text/Tex.d.ts +2 -7
  105. package/dist/mobjects/text/Tex.d.ts.map +1 -1
  106. package/dist/mobjects/text/Text.d.ts.map +1 -1
  107. package/dist/mobjects/text/Variable.d.ts +5 -5
  108. package/dist/mobjects/text/Variable.d.ts.map +1 -1
  109. package/dist/mobjects/text/index.d.ts +2 -2
  110. package/dist/mobjects/text/index.d.ts.map +1 -1
  111. package/dist/mobjects/text/svgPathParser.d.ts.map +1 -1
  112. package/dist/mobjects/value-tracker/ValueTracker.d.ts +0 -14
  113. package/dist/mobjects/value-tracker/ValueTracker.d.ts.map +1 -1
  114. package/dist/player/Player.d.ts +8 -2
  115. package/dist/player/Player.d.ts.map +1 -1
  116. package/dist/player/PlayerController.d.ts +2 -0
  117. package/dist/player/PlayerController.d.ts.map +1 -1
  118. package/dist/player/PlayerUI.d.ts +5 -0
  119. package/dist/player/PlayerUI.d.ts.map +1 -1
  120. package/dist/src-0ifQdJUj.js +59703 -0
  121. package/dist/svg-BDTt4xHZ.js +23879 -0
  122. package/dist/svg-DzbC3CbJ.js +23879 -0
  123. package/dist/tex-CRhAZgfS.js +401 -0
  124. package/dist/tex-D3LEgNlQ.js +401 -0
  125. package/dist/utils/math.d.ts +7 -0
  126. package/dist/utils/math.d.ts.map +1 -1
  127. package/package.json +3 -2
  128. package/dist/featureFlags-RDWYX142.js +0 -59330
  129. package/dist/mobjects/text/MathTexSVG.d.ts +0 -102
  130. 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.setOpacity to avoid Group propagation.
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;AAE3D,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;CAC3B;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;IAOpD;;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"}
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;AAE3D,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,uEAAuE;IACvE,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,uDAAuD;IACvD,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B;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;IAMnD;;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"}
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 3x3 or 4x4 transformation 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":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAiCpD,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,sCAAsC;IACtC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;CACrC;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IAC7C,OAAO,CAAC,UAAU,CAAuB;gBAE7B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB;IAKlD,KAAK,IAAI,IAAI;IAsCtB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAYvB,MAAM,IAAI,IAAI;CAQxB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,EACnC,OAAO,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,GAC3C,aAAa,CAEf;AAMD,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,2EAA2E;IAC3E,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;CAC/B;AAED;;;;;GAKG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;IACjD,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IACvC,OAAO,CAAC,UAAU,CAAuB;gBAE7B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,2BAA2B;IAKzD,KAAK,IAAI,IAAI;IA2CtB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAYvB,MAAM,IAAI,IAAI;CAQxB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,EAC7B,OAAO,CAAC,EAAE,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,GAClD,oBAAoB,CAEtB;AAMD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,kBAAkB;IAClB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;gBAEb,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB;CAc3D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,QAAQ,EACjB,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,WAAW,CAEb;AAMD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,mDAAmD;IACnD,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B;AAED;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAC;IAClC,OAAO,CAAC,UAAU,CAAuB;gBAE7B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB;IAMhD,KAAK,IAAI,IAAI;IAuCtB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAYvB,MAAM,IAAI,IAAI;CAQxB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,OAAO,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,GAC3C,WAAW,CAEb"}
@@ -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;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAG3D,qBAAa,SAAU,SAAQ,SAAS;IACtC,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB,wDAAwD;IACxD,OAAO,CAAC,YAAY,CAAkB;IAEtC,sEAAsE;IACtE,OAAO,CAAC,aAAa,CAAkB;IAEvC,4BAA4B;IAC5B,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,4DAA4D;IAC5D,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,+EAA+E;IAC/E,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,qBAAqB,CAAkB;IAE/C,2EAA2E;IAC3E,OAAO,CAAC,cAAc,CAAsC;IAC5D,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,WAAW,CAA6C;IAChE,OAAO,CAAC,YAAY,CAA6C;IAEjE,0DAA0D;IAC1D,OAAO,CAAC,aAAa,CAAkB;IAEvC,0DAA0D;IAC1D,OAAO,CAAC,uBAAuB,CAAa;gBAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB;IAK7E;;;OAGG;IACM,KAAK,IAAI,IAAI;IA4FtB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IA+DhC;;OAEG;IACM,MAAM,IAAI,IAAI;CA4ExB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,SAAS,CAEX;AAED;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB;IAI7E;;;OAGG;IACM,MAAM,IAAI,IAAI;CAKxB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,oBAAoB,CAEtB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IACjD,UAAU,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC7B;AAED,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,EAAE,iBAAiB,EAAE,OAAO,GAAE,gBAAqB;CAQvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAEjG"}
1
+ {"version":3,"file":"Transform.d.ts","sourceRoot":"","sources":["../../../src/animation/transform/Transform.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAoC3D,qBAAa,SAAU,SAAQ,SAAS;IACtC,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB,wDAAwD;IACxD,OAAO,CAAC,YAAY,CAAkB;IAEtC,sEAAsE;IACtE,OAAO,CAAC,aAAa,CAAkB;IAEvC,4BAA4B;IAC5B,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,kBAAkB,CAAa;IAEvC,4DAA4D;IAC5D,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,+EAA+E;IAC/E,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,qBAAqB,CAAkB;IAE/C,2EAA2E;IAC3E,OAAO,CAAC,cAAc,CAAsC;IAC5D,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,WAAW,CAA6C;IAChE,OAAO,CAAC,YAAY,CAA6C;IAEjE,0DAA0D;IAC1D,OAAO,CAAC,aAAa,CAAkB;IAEvC,0DAA0D;IAC1D,OAAO,CAAC,uBAAuB,CAAa;IAE5C,2EAA2E;IAC3E,OAAO,CAAC,kBAAkB,CAAkB;IAE5C,0DAA0D;IAC1D,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,0DAA0D;IAC1D,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,kBAAkB,CAAoB;IAE9C,gGAAgG;IAChG,OAAO,CAAC,gBAAgB,CACnB;IACL,OAAO,CAAC,oBAAoB,CAInB;IAET,6DAA6D;IAC7D,OAAO,CAAC,UAAU,CAAkB;gBAExB,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB;IAK7E;;;OAGG;IACM,KAAK,IAAI,IAAI;IAkGtB;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAiEpB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IA2GhC;;OAEG;IACM,MAAM,IAAI,IAAI;CAmGxB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,SAAS,CAEX;AAED;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB;IAI7E;;;OAGG;IACM,MAAM,IAAI,IAAI;CAKxB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,oBAAoB,CAEtB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IACjD,UAAU,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC7B;AAED,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,EAAE,iBAAiB,EAAE,OAAO,GAAE,gBAAqB;CAQvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,YAAY,CAEjG"}
@@ -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":"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"}
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":"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"}
1
+ {"version":3,"file":"CameraExtensions.d.ts","sourceRoot":"","sources":["../../src/core/CameraExtensions.ts"],"names":[],"mappings":"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"}
@@ -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
- setOpacity(opacity: number): this;
86
+ setStrokeOpacity(opacity: number): this;
87
87
  /**
88
88
  * Set the stroke width of all children.
89
89
  * @param width - Stroke width in pixels
@@ -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,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQ1C;;;;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"}
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"}