manim-web 0.3.20 → 0.3.22
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 +20 -0
- package/dist/AmsConfiguration-OUoC_kJ0.js +847 -0
- package/dist/AmsConfiguration-tdje_HlF.js +847 -0
- package/dist/ConfigMacrosConfiguration-4OaQYvlr.js +46 -0
- package/dist/ConfigMacrosConfiguration-DM3-S5M8.js +46 -0
- package/dist/Entities-Dw6381dl.js +429 -0
- package/dist/Entities-bJKKDYjE.js +429 -0
- package/dist/Factory-Ba6Nqb3M.js +107 -0
- package/dist/HtmlNode-1mFtYQ9G.js +981 -0
- package/dist/HtmlNode-CQqo5we-.js +981 -0
- package/dist/InputJax-D5R2pqUk.js +41 -0
- package/dist/InputJax-jNvwWU5P.js +41 -0
- package/dist/NewcommandConfiguration-BN_OlLcO.js +32 -0
- package/dist/NewcommandConfiguration-DZ3mSCpD.js +32 -0
- package/dist/NewcommandMethods-D5bueYYE.js +187 -0
- package/dist/NewcommandMethods-DTf_dan5.js +187 -0
- package/dist/Options-DMK2wYar.js +63 -0
- package/dist/ParseMethods-Deqa7kJ6.js +2636 -0
- package/dist/ParseMethods-Dt5bYDSZ.js +2636 -0
- package/dist/Styles-BILrGVps.js +293 -0
- package/dist/Styles-DQSruwWe.js +293 -0
- package/dist/animation/Animation.d.ts +15 -0
- package/dist/animation/Animation.d.ts.map +1 -1
- package/dist/animation/MasterTimeline.d.ts +88 -1
- package/dist/animation/MasterTimeline.d.ts.map +1 -1
- package/dist/animation/movement/Rotate.d.ts +2 -7
- package/dist/animation/movement/Rotate.d.ts.map +1 -1
- package/dist/animation/transform/FadeMorphStrategy.d.ts +18 -0
- package/dist/animation/transform/FadeMorphStrategy.d.ts.map +1 -0
- package/dist/animation/transform/FadeTransforms.d.ts +2 -0
- package/dist/animation/transform/FadeTransforms.d.ts.map +1 -1
- package/dist/animation/transform/MorphStrategy.d.ts +8 -0
- package/dist/animation/transform/MorphStrategy.d.ts.map +1 -0
- package/dist/animation/transform/MovementTransforms.d.ts.map +1 -1
- package/dist/animation/transform/PointMorphStrategy.d.ts +36 -0
- package/dist/animation/transform/PointMorphStrategy.d.ts.map +1 -0
- package/dist/animation/transform/ShapeMorphStrategy.d.ts +39 -0
- package/dist/animation/transform/ShapeMorphStrategy.d.ts.map +1 -0
- package/dist/animation/transform/Transform.d.ts +9 -91
- package/dist/animation/transform/Transform.d.ts.map +1 -1
- package/dist/animation/transform/TransformMatching.d.ts.map +1 -1
- package/dist/animation/transform/TransformMatchingBase.d.ts +1 -0
- package/dist/animation/transform/TransformMatchingBase.d.ts.map +1 -1
- package/dist/animation/transform/TransformMatchingShared.d.ts +37 -0
- package/dist/animation/transform/TransformMatchingShared.d.ts.map +1 -0
- package/dist/animation/transform/TransformPairing.d.ts +19 -0
- package/dist/animation/transform/TransformPairing.d.ts.map +1 -0
- package/dist/core/AnimateProxy.d.ts +4 -5
- package/dist/core/AnimateProxy.d.ts.map +1 -1
- package/dist/core/Camera.d.ts +37 -0
- package/dist/core/Camera.d.ts.map +1 -1
- package/dist/core/CameraExtensions.d.ts +33 -1
- package/dist/core/CameraExtensions.d.ts.map +1 -1
- package/dist/core/Group.d.ts +5 -11
- package/dist/core/Group.d.ts.map +1 -1
- package/dist/core/Mobject.d.ts +39 -7
- package/dist/core/Mobject.d.ts.map +1 -1
- package/dist/core/MobjectPositioning.d.ts +2 -5
- package/dist/core/MobjectPositioning.d.ts.map +1 -1
- package/dist/core/MobjectTypes.d.ts +21 -4
- package/dist/core/MobjectTypes.d.ts.map +1 -1
- package/dist/core/Renderer.d.ts +3 -0
- package/dist/core/Renderer.d.ts.map +1 -1
- package/dist/core/Scene.d.ts +50 -0
- package/dist/core/Scene.d.ts.map +1 -1
- package/dist/core/TexturedMobject.d.ts +38 -0
- package/dist/core/TexturedMobject.d.ts.map +1 -0
- package/dist/core/ThreeDScene.d.ts +18 -3
- package/dist/core/ThreeDScene.d.ts.map +1 -1
- package/dist/core/VGroup.d.ts +11 -19
- package/dist/core/VGroup.d.ts.map +1 -1
- package/dist/core/VMobject.d.ts +48 -110
- package/dist/core/VMobject.d.ts.map +1 -1
- package/dist/core/VMobjectCurveUtils.d.ts +106 -0
- package/dist/core/VMobjectCurveUtils.d.ts.map +1 -0
- package/dist/core/VMobjectGeometry.d.ts +22 -25
- package/dist/core/VMobjectGeometry.d.ts.map +1 -1
- package/dist/core/VMobjectRendering.d.ts +5 -0
- package/dist/core/VMobjectRendering.d.ts.map +1 -1
- package/dist/core/VMobjectStrokeGeometry.d.ts +20 -0
- package/dist/core/VMobjectStrokeGeometry.d.ts.map +1 -0
- package/dist/core/VMobjectTransformAlignment.d.ts +20 -0
- package/dist/core/VMobjectTransformAlignment.d.ts.map +1 -0
- package/dist/html-Bza5WY1y.js +829 -0
- package/dist/html-bhzMuE8p.js +829 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -4
- package/dist/integrations/react.js +16 -18
- package/dist/integrations/vue.js +15 -17
- package/dist/interaction/Draggable.d.ts +2 -0
- package/dist/interaction/Draggable.d.ts.map +1 -1
- package/dist/interaction/OrbitControls.d.ts +1 -1
- package/dist/interaction/OrbitControls.d.ts.map +1 -1
- package/dist/lengths-D2zTYMUu.js +54 -0
- package/dist/liteAdaptor-BkxB5CGC.js +616 -0
- package/dist/liteAdaptor-LMKuWwg1.js +616 -0
- package/dist/manim-web.browser.js +35821 -30916
- package/dist/mathjax-CPQWkQEv.js +121 -0
- package/dist/mathjax-b-GTdZgw.js +121 -0
- package/dist/mo-D4wFHS6V.js +2675 -0
- package/dist/mo-hAX79Dzl.js +2675 -0
- package/dist/mobjects/geometry/AngleShapes.d.ts +0 -4
- package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -1
- package/dist/mobjects/geometry/BooleanOperations.d.ts +1 -1
- package/dist/mobjects/geometry/BooleanOperations.d.ts.map +1 -1
- package/dist/mobjects/geometry/CubicBezier.d.ts.map +1 -1
- package/dist/mobjects/geometry/PolygonExtensions.d.ts +1 -1
- package/dist/mobjects/geometry/PolygonExtensions.d.ts.map +1 -1
- package/dist/mobjects/graphing/ComplexPlane.d.ts +59 -1
- package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -1
- package/dist/mobjects/graphing/Vector.d.ts.map +1 -1
- package/dist/mobjects/image/index.d.ts +9 -2
- package/dist/mobjects/image/index.d.ts.map +1 -1
- package/dist/mobjects/point/Mobject1D.d.ts.map +1 -1
- package/dist/mobjects/point/Mobject2D.d.ts.map +1 -1
- package/dist/mobjects/point/PMobject.d.ts +8 -2
- package/dist/mobjects/point/PMobject.d.ts.map +1 -1
- package/dist/mobjects/point/PointMobject.d.ts.map +1 -1
- package/dist/mobjects/text/Code.d.ts.map +1 -1
- package/dist/mobjects/text/MarkupText.d.ts.map +1 -1
- package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -1
- package/dist/mobjects/text/MathTex.d.ts +9 -0
- package/dist/mobjects/text/MathTex.d.ts.map +1 -1
- package/dist/mobjects/text/MathTexImage.d.ts +9 -3
- package/dist/mobjects/text/MathTexImage.d.ts.map +1 -1
- package/dist/mobjects/text/Text.d.ts +8 -3
- package/dist/mobjects/text/Text.d.ts.map +1 -1
- package/dist/mobjects/text/TextGlyphGroup.d.ts.map +1 -1
- package/dist/mobjects/text/svgPathParser.d.ts.map +1 -1
- package/dist/mobjects/three-d/Line3D.d.ts +10 -56
- package/dist/mobjects/three-d/Line3D.d.ts.map +1 -1
- package/dist/mobjects/three-d/ThreeDAxes.d.ts +8 -0
- package/dist/mobjects/three-d/ThreeDAxes.d.ts.map +1 -1
- package/dist/player/Player.d.ts +36 -29
- package/dist/player/Player.d.ts.map +1 -1
- package/dist/player/PlayerUI.d.ts.map +1 -1
- package/dist/player/RecordingScene.d.ts +37 -0
- package/dist/player/RecordingScene.d.ts.map +1 -0
- package/dist/{src-Db7QTr4S.js → src-BlTk3Bta.js} +34386 -29482
- package/dist/svg-DNS5Hwhk.js +28713 -0
- package/dist/svg-DVUoAdmC.js +28713 -0
- package/dist/test-setup/vitest-setup.d.ts +20 -0
- package/dist/test-setup/vitest-setup.d.ts.map +1 -0
- package/dist/tex-BQCLd0dF.js +1427 -0
- package/dist/tex-Cd_bTYKG.js +1427 -0
- package/dist/utils/axis.d.ts +4 -0
- package/dist/utils/axis.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +37 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/math.d.ts +11 -0
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/vectors.d.ts +54 -1
- package/dist/utils/vectors.d.ts.map +1 -1
- package/package.json +10 -8
- package/dist/AllPackages-B0GtkYjD.js +0 -7912
- package/dist/AllPackages-BIAELuhU.js +0 -7912
- package/dist/BaseConfiguration-CDf44lxS.js +0 -4402
- package/dist/BaseConfiguration-Chcqjv9L.js +0 -4402
- package/dist/Entities-B_gwJfrn.js +0 -458
- package/dist/Entities-CmJkmuw_.js +0 -458
- package/dist/GifExporter-C9lP34Iu.js +0 -338
- package/dist/GifExporter-DBak5Vk7.js +0 -338
- package/dist/InputJax-C5sGfjJ8.js +0 -43
- package/dist/InputJax-Jb4hSThK.js +0 -43
- package/dist/MathItem-BmK41eqe.js +0 -77
- package/dist/MathItem-C_mZyaeT.js +0 -77
- package/dist/Options-Ch1vGsgd.js +0 -188
- package/dist/Options-V6ag48Dv.js +0 -188
- package/dist/PrioritizedList-DkoCmqPk.js +0 -36
- package/dist/PrioritizedList-eKTii0tW.js +0 -36
- package/dist/Styles-De4BjKiV.js +0 -411
- package/dist/Styles-DgoiBrzf.js +0 -411
- package/dist/TeXAtom-DT2wCvcU.js +0 -2025
- package/dist/TeXAtom-JogI0lus.js +0 -2025
- package/dist/VideoExporter-Bdtz_pWv.js +0 -102
- package/dist/VideoExporter-Vjfsnv1h.js +0 -102
- package/dist/chunk-3e0lkp8x.js +0 -23
- package/dist/html-53__O8r2.js +0 -1587
- package/dist/html-DfHFh5II.js +0 -1587
- package/dist/lengths-3epoqRj7.js +0 -65
- package/dist/lengths-B-bX9Tfk.js +0 -65
- package/dist/liteAdaptor-BxFvlO-q.js +0 -828
- package/dist/liteAdaptor-CsOIKw2g.js +0 -828
- package/dist/mathjax-Bkrmftxh.js +0 -102
- package/dist/mathjax-DBrTNl9C.js +0 -102
- package/dist/mo-AzagC5AD.js +0 -3271
- package/dist/mo-I_6dyJsk.js +0 -3271
- package/dist/svg-CoGQ_sAt.js +0 -23880
- package/dist/svg-DiIG93Lr.js +0 -23880
- package/dist/tex-ChPKMfdv.js +0 -401
- package/dist/tex-hYZcjadW.js +0 -401
package/dist/core/Camera.d.ts
CHANGED
|
@@ -104,6 +104,18 @@ export declare class Camera3D {
|
|
|
104
104
|
distance: number;
|
|
105
105
|
};
|
|
106
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* How `Camera2D.setAspectRatio` reconciles the user-set frame with the
|
|
109
|
+
* viewport's pixel aspect.
|
|
110
|
+
*
|
|
111
|
+
* - `'fill'` (default): keep `frameHeight`, recompute `frameWidth` from
|
|
112
|
+
* the viewport aspect. Frame is cropped horizontally on wider viewports
|
|
113
|
+
* and over-shows on narrower ones. Back-compatible.
|
|
114
|
+
* - `'contain'`: keep both base `frameWidth` and `frameHeight`. Grow
|
|
115
|
+
* whichever dimension is needed to letterbox so the user's full
|
|
116
|
+
* frame is always visible (no cropping of the intended view).
|
|
117
|
+
*/
|
|
118
|
+
export type Camera2DAspectMode = 'fill' | 'contain';
|
|
107
119
|
/**
|
|
108
120
|
* Options for configuring a Camera2D.
|
|
109
121
|
*/
|
|
@@ -114,6 +126,14 @@ export interface CameraOptions {
|
|
|
114
126
|
frameHeight?: number;
|
|
115
127
|
/** Initial camera position [x, y, z]. Defaults to [0, 0, 10]. */
|
|
116
128
|
position?: [number, number, number];
|
|
129
|
+
/**
|
|
130
|
+
* Behaviour of `setAspectRatio` when the viewport aspect doesn't match
|
|
131
|
+
* this camera's frame. Defaults to `'fill'` for back-compat — set to
|
|
132
|
+
* `'contain'` (recommended for multi-camera layouts) to make per-camera
|
|
133
|
+
* `frameWidth`/`frameHeight` zoom intent survive the per-viewport
|
|
134
|
+
* aspect adjustment.
|
|
135
|
+
*/
|
|
136
|
+
aspectMode?: Camera2DAspectMode;
|
|
117
137
|
}
|
|
118
138
|
/**
|
|
119
139
|
* 2D camera for manimweb scenes.
|
|
@@ -123,6 +143,14 @@ export declare class Camera2D {
|
|
|
123
143
|
private _camera;
|
|
124
144
|
private _frameWidth;
|
|
125
145
|
private _frameHeight;
|
|
146
|
+
/**
|
|
147
|
+
* The frame dimensions the user *asked for*, preserved across
|
|
148
|
+
* `setAspectRatio` calls when `_aspectMode === 'contain'`. Updated
|
|
149
|
+
* whenever the user mutates `frameWidth`/`frameHeight` directly.
|
|
150
|
+
*/
|
|
151
|
+
private _userFrameWidth;
|
|
152
|
+
private _userFrameHeight;
|
|
153
|
+
private _aspectMode;
|
|
126
154
|
private _frame;
|
|
127
155
|
/**
|
|
128
156
|
* Create a new 2D camera.
|
|
@@ -145,6 +173,15 @@ export declare class Camera2D {
|
|
|
145
173
|
* Set the frame height in world units.
|
|
146
174
|
*/
|
|
147
175
|
set frameHeight(height: number);
|
|
176
|
+
/**
|
|
177
|
+
* Get the current aspect-mode (see {@link Camera2DAspectMode}).
|
|
178
|
+
*/
|
|
179
|
+
get aspectMode(): Camera2DAspectMode;
|
|
180
|
+
/**
|
|
181
|
+
* Set the aspect-mode. Re-applies the current aspect ratio so the
|
|
182
|
+
* projection updates immediately.
|
|
183
|
+
*/
|
|
184
|
+
set aspectMode(mode: Camera2DAspectMode);
|
|
148
185
|
/**
|
|
149
186
|
* Get the camera position.
|
|
150
187
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Camera.d.ts","sourceRoot":"","sources":["../../src/core/Camera.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,sEAAsE;IACtE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,4EAA4E;IAC5E,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,GAAG,CAA8B;IAEzC;;;;OAIG;gBACS,WAAW,GAAE,MAAe,EAAE,OAAO,CAAC,EAAE,eAAe;IAsBnE;;;OAGG;IACH,SAAS,IAAI,KAAK,CAAC,iBAAiB;IAIpC;;OAEG;IACH,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAE5B;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,CAEhC;IAED;;OAEG;IACH,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAOhD;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMjD;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOzB;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMnC;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IA4B7E;;;OAGG;IACH,cAAc,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;CAenE;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Camera.d.ts","sourceRoot":"","sources":["../../src/core/Camera.ts"],"names":[],"mappings":"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"}
|
|
@@ -264,6 +264,15 @@ export interface CameraViewport {
|
|
|
264
264
|
width: number;
|
|
265
265
|
/** Height as fraction of canvas height (0-1). */
|
|
266
266
|
height: number;
|
|
267
|
+
/**
|
|
268
|
+
* Optional border color (any THREE.Color input — `#rrggbb`, named, or
|
|
269
|
+
* 0xrrggbb). When set together with `borderWidth > 0`, MultiCamera
|
|
270
|
+
* draws a rectangle outline around the viewport in canvas-pixel space
|
|
271
|
+
* after the scene render. Off by default.
|
|
272
|
+
*/
|
|
273
|
+
borderColor?: number | string;
|
|
274
|
+
/** Optional border thickness in canvas pixels. Defaults to 0 (no border). */
|
|
275
|
+
borderWidth?: number;
|
|
267
276
|
}
|
|
268
277
|
/**
|
|
269
278
|
* Camera entry in the multi-camera system.
|
|
@@ -325,6 +334,18 @@ export declare class MultiCamera {
|
|
|
325
334
|
* @returns Index of the added camera
|
|
326
335
|
*/
|
|
327
336
|
addCamera(camera: Camera2D | Camera3D | MovingCamera | ThreeDCamera, viewport: CameraViewport, label?: string): number;
|
|
337
|
+
/**
|
|
338
|
+
* Update the border style of an existing viewport. Passing `null` for
|
|
339
|
+
* either field disables that side of the configuration (e.g. setting
|
|
340
|
+
* `borderWidth` to 0 turns the border off).
|
|
341
|
+
* @param index - Camera index
|
|
342
|
+
* @param style - Partial border style; merged into the existing viewport
|
|
343
|
+
* @returns this for chaining
|
|
344
|
+
*/
|
|
345
|
+
setViewportBorder(index: number, style: {
|
|
346
|
+
borderColor?: number | string | null;
|
|
347
|
+
borderWidth?: number | null;
|
|
348
|
+
}): this;
|
|
328
349
|
/**
|
|
329
350
|
* Remove a camera by index.
|
|
330
351
|
* @param index - Index of camera to remove
|
|
@@ -412,7 +433,18 @@ export declare class MultiCamera {
|
|
|
412
433
|
*/
|
|
413
434
|
render(renderer: THREE.WebGLRenderer, scene: THREE.Scene, canvasWidth: number, canvasHeight: number): void;
|
|
414
435
|
/**
|
|
415
|
-
*
|
|
436
|
+
* Lazy-initialized scene + camera + line geometry used to draw viewport
|
|
437
|
+
* borders. Borders are rendered as a single screen-space pass after the
|
|
438
|
+
* main multi-camera render.
|
|
439
|
+
*/
|
|
440
|
+
private _borderScene;
|
|
441
|
+
private _borderCamera;
|
|
442
|
+
private _renderBorders;
|
|
443
|
+
/**
|
|
444
|
+
* Update all cameras that support animation. Advances per-camera
|
|
445
|
+
* animation state (MovingCamera/ThreeDCamera) and runs any frame
|
|
446
|
+
* updaters attached to Camera2D entries so secondary cameras can
|
|
447
|
+
* follow targets the same way `scene.camera.frame` does.
|
|
416
448
|
* @param dt - Delta time in seconds
|
|
417
449
|
*/
|
|
418
450
|
update(dt: number): void;
|
|
@@ -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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"}
|
package/dist/core/Group.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Mobject, Vector3Tuple } from './Mobject';
|
|
1
|
+
import { Mobject, Vector3Tuple, AxisOrOptions } from './Mobject';
|
|
2
2
|
/**
|
|
3
3
|
* Group class for grouping multiple mobjects together.
|
|
4
4
|
* Transformations applied to the group cascade to all children.
|
|
@@ -31,13 +31,8 @@ export declare class Group extends Mobject {
|
|
|
31
31
|
* @returns this for chaining
|
|
32
32
|
*/
|
|
33
33
|
clear(): this;
|
|
34
|
-
/**
|
|
35
|
-
* Get the center of the group (average of all children centers).
|
|
36
|
-
* Children maintain world-space coordinates, so no group position offset
|
|
37
|
-
* is added (shift/moveTo only update children, not group position).
|
|
38
|
-
* @returns Center position as [x, y, z]
|
|
39
|
-
*/
|
|
40
34
|
getCenter(): Vector3Tuple;
|
|
35
|
+
normalizeTransform(): this;
|
|
41
36
|
/**
|
|
42
37
|
* Shift all children by the given delta.
|
|
43
38
|
* Only children are shifted (they maintain world-space coordinates).
|
|
@@ -61,10 +56,7 @@ export declare class Group extends Mobject {
|
|
|
61
56
|
* @param axis - Axis of rotation [x, y, z], defaults to Z axis
|
|
62
57
|
* @returns this for chaining
|
|
63
58
|
*/
|
|
64
|
-
rotate(angle: number, axisOrOptions?: Vector3Tuple |
|
|
65
|
-
axis?: Vector3Tuple;
|
|
66
|
-
aboutPoint?: Vector3Tuple;
|
|
67
|
-
}): this;
|
|
59
|
+
rotate(angle: number, axisOrOptions?: Vector3Tuple | AxisOrOptions): this;
|
|
68
60
|
/**
|
|
69
61
|
* Scale all children.
|
|
70
62
|
* Only children are scaled to avoid double-counting with Three.js hierarchy.
|
|
@@ -101,6 +93,8 @@ export declare class Group extends Mobject {
|
|
|
101
93
|
* A group is simply a THREE.Group that contains children.
|
|
102
94
|
*/
|
|
103
95
|
protected _createThreeObject(): THREE.Object3D;
|
|
96
|
+
getDisplayMeshLength(): number;
|
|
97
|
+
getDisplayMeshes(): THREE.Mesh[];
|
|
104
98
|
/**
|
|
105
99
|
* Create a copy of this Group.
|
|
106
100
|
*/
|
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;
|
|
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,aAAa,EAAE,MAAM,WAAW,CAAC;AAEjE;;;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;IAOJ,SAAS,IAAI,YAAY;IAkBzB,kBAAkB,IAAI,IAAI;IAKnC;;;;;;;OAOG;IACM,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAUzC;;;;;OAKG;IACM,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAuBjF;;;;;;OAMG;IACM,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,YAAY,GAAG,aAAa,GAAG,IAAI;IAQlF;;;;;OAKG;IACM,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAInD;;;;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;IAWrC,oBAAoB,IAAI,MAAM;IAI9B,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE;IAIzC;;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"}
|
package/dist/core/Mobject.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import { Vector3Tuple, MobjectStyle } from './MobjectTypes';
|
|
1
|
+
import { Vector3Tuple, MobjectStyle, AxisOrOptions } from './MobjectTypes';
|
|
2
2
|
import * as THREE from 'three';
|
|
3
|
+
interface NormalizeContainerOptions {
|
|
4
|
+
translateChild?: (child: Mobject, dx: number, dy: number, dz: number) => void;
|
|
5
|
+
}
|
|
3
6
|
/** @internal Called by AnimateProxy module to register the factory. */
|
|
4
7
|
export declare function registerAnimateProxy(factory: (mobject: Mobject) => any): void;
|
|
5
|
-
export { type Vector3Tuple, type MobjectStyle, type MobjectLike, type VMobjectLike, isVMobjectLike, UP, DOWN, LEFT, RIGHT, OUT, IN, ORIGIN, UL, UR, DL, DR, } from './MobjectTypes';
|
|
8
|
+
export { type Vector3Tuple, type MobjectStyle, type MobjectLike, type VMobjectLike, type AxisOrOptions, isVMobjectLike, UP, DOWN, LEFT, RIGHT, OUT, IN, ORIGIN, UL, UR, DL, DR, } from './MobjectTypes';
|
|
6
9
|
/**
|
|
7
10
|
* Updater function type that runs every frame.
|
|
8
11
|
* Defined here (not in MobjectTypes) to reference the concrete Mobject class
|
|
@@ -60,11 +63,7 @@ export declare abstract class Mobject {
|
|
|
60
63
|
* Rotate the mobject by angle around an axis.
|
|
61
64
|
* Accepts aboutPoint or aboutEdge to specify the rotation center.
|
|
62
65
|
*/
|
|
63
|
-
rotate(angle: number, axisOrOptions?: Vector3Tuple |
|
|
64
|
-
axis?: Vector3Tuple;
|
|
65
|
-
aboutPoint?: Vector3Tuple;
|
|
66
|
-
aboutEdge?: Vector3Tuple;
|
|
67
|
-
}): this;
|
|
66
|
+
rotate(angle: number, axisOrOptions?: Vector3Tuple | AxisOrOptions): this;
|
|
68
67
|
rotateAboutOrigin(angle: number, axis?: Vector3Tuple): this;
|
|
69
68
|
flip(axis?: Vector3Tuple, options?: {
|
|
70
69
|
aboutPoint?: Vector3Tuple;
|
|
@@ -135,12 +134,38 @@ export declare abstract class Mobject {
|
|
|
135
134
|
get animate(): any;
|
|
136
135
|
toEdge(direction: Vector3Tuple, buff?: number, frameDimensions?: [number, number]): this;
|
|
137
136
|
toCorner(direction?: Vector3Tuple, buff?: number, frameDimensions?: [number, number]): this;
|
|
137
|
+
/**
|
|
138
|
+
* Normalize local transform into object-specific canonical representation.
|
|
139
|
+
*
|
|
140
|
+
* Subclasses may override this to fold transient transforms into their
|
|
141
|
+
* canonical state (e.g. forwarding container translation to children).
|
|
142
|
+
* Call this before geometry queries like getCenter()/getBounds().
|
|
143
|
+
*
|
|
144
|
+
* Base implementation is a no-op.
|
|
145
|
+
*/
|
|
146
|
+
normalizeTransform(): this;
|
|
147
|
+
/**
|
|
148
|
+
* Normalize this object as a container: forward parent S/R/T anchors into
|
|
149
|
+
* children, reset parent anchors, then recurse into children.
|
|
150
|
+
*/
|
|
151
|
+
protected _normalizeContainerTransform(options?: NormalizeContainerOptions): void;
|
|
152
|
+
protected _hasDeferredAnchors(): boolean;
|
|
153
|
+
private _normalizeContainerScale;
|
|
154
|
+
private _normalizeContainerRotation;
|
|
155
|
+
private _applyEulerSteps;
|
|
156
|
+
private _normalizeContainerTranslation;
|
|
138
157
|
_syncToThree(): void;
|
|
139
158
|
protected _syncMaterialToThree(): void;
|
|
140
159
|
_markDirty(): void;
|
|
141
160
|
_markDirtyUpward(): void;
|
|
142
161
|
get isDirty(): boolean;
|
|
143
162
|
getThreeObject(): THREE.Object3D;
|
|
163
|
+
/**
|
|
164
|
+
* Number of visible display meshes this mobject contributes when rendered.
|
|
165
|
+
* Used for Transform eligibility checks without forcing Three.js object creation.
|
|
166
|
+
*/
|
|
167
|
+
getDisplayMeshLength(): number;
|
|
168
|
+
getDisplayMeshes(): THREE.Mesh[];
|
|
144
169
|
protected abstract _createThreeObject(): THREE.Object3D;
|
|
145
170
|
applyToFamily(func: (mobject: Mobject) => void): this;
|
|
146
171
|
getFamily(): Mobject[];
|
|
@@ -162,6 +187,13 @@ export declare abstract class Mobject {
|
|
|
162
187
|
generateTarget(): Mobject;
|
|
163
188
|
saveState(): this;
|
|
164
189
|
restoreState(): boolean;
|
|
190
|
+
/**
|
|
191
|
+
* Hook for the Scene to propagate renderer dimensions and camera frame
|
|
192
|
+
* width to mobjects that need them (e.g. shader-resolution uniforms).
|
|
193
|
+
* Default is a no-op; subclasses override as needed.
|
|
194
|
+
* @internal
|
|
195
|
+
*/
|
|
196
|
+
_setSceneContext(_rendererWidth: number, _rendererHeight: number, _frameWidth: number): void;
|
|
165
197
|
dispose(): void;
|
|
166
198
|
}
|
|
167
199
|
//# sourceMappingURL=Mobject.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mobject.d.ts","sourceRoot":"","sources":["../../src/core/Mobject.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"Mobject.d.ts","sourceRoot":"","sources":["../../src/core/Mobject.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,EAKnB,MAAM,gBAAgB,CAAC;AA2BxB,UAAU,yBAAyB;IACjC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/E;AAED,uEAAuE;AAEvE,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,GAAG,GAAG,IAAI,CAE7E;AAGD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,cAAc,EACd,EAAE,EACF,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,GAAG,EACH,EAAE,EACF,MAAM,EACN,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,GACH,MAAM,gBAAgB,CAAC;AAExB;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;AAErE,+FAA+F;AAC/F,8BAAsB,OAAO;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,GAAG,IAAI,CAAQ;IAC9B,QAAQ,EAAE,OAAO,EAAE,CAAM;IACzB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;IACtB,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAS;IACpC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAa;IACrC,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAMtB;IACD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAK;IAC/B,WAAW,EAAE,MAAM,CAAK;IACxB,WAAW,EAAE,MAAM,CAAK;IACxB,yEAAyE;IACzE,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAS;IAClD,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC;IAC/B,YAAY,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAQ;IAC3C,MAAM,EAAE,OAAO,CAAQ;IACvB,OAAO,CAAC,SAAS,CAAyB;IAC1C,0EAA0E;IAC1E,UAAU,EAAE,OAAO,GAAG,IAAI,CAAQ;IAClC,qEAAqE;IACrE,UAAU,EAAE,OAAO,GAAG,IAAI,CAAQ;IAClC,8DAA8D;IAC9D,mBAAmB,EAAE,OAAO,CAAQ;IACpC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAa;;IAkBtC,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAExB;IAED,IAAI,KAAK,IAAI,YAAY,CAExB;IAED,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAU5C,IAAI,WAAW,IAAI,OAAO,EAAE,CAE3B;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ7B,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAUvC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAUnC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAUrC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAM/C,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,EAK1B;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAK5B;IAID,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAQhC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAiBxE;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,YAAY,GAAG,aAAa,GAAG,IAAI;IAoBzE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,YAAwB,GAAG,IAAI;IAItE,IAAI,CACF,IAAI,GAAE,YAAwB,EAC9B,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,YAAY,CAAA;KAAE,GAChE,IAAI;IAuBP,KAAK,CACH,MAAM,EAAE,MAAM,GAAG,YAAY,EAC7B,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,YAAY,CAAA;KAAE,GAChE,IAAI;IAiBP,OAAO,CACL,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,YAAY,CAAA;KAAE,GAChE,IAAI;IAgBP,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAajC,MAAM,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAgBpC,IAAI,IAAI,OAAO;IAgBf,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO;IAEzC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAK5B,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,OAAe,GAAG,IAAI;IAOxD,SAAS,IAAI,YAAY;IAIzB,SAAS,IAAI;QACX,GAAG,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACzC,GAAG,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC1C;IAaD,MAAM,CACJ,MAAM,EAAE,OAAO,GAAG,YAAY,EAC9B,SAAS,GAAE,YAAoB,EAC/B,IAAI,GAAE,MAAa,GAClB,IAAI;IAaP,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI;IAUtE,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI;IAK/E,mBAAmB,CAAC,SAAS,EAAE,YAAY,GAAG,YAAY;IAG1D,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAGlE,gDAAgD;IAChD,eAAe,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAGnE,OAAO,CAAC,SAAS,EAAE,YAAY,GAAG,YAAY;IAG9C,MAAM,IAAI,YAAY;IAGtB,SAAS,IAAI,YAAY;IAGzB,OAAO,IAAI,YAAY;IAGvB,QAAQ,IAAI,YAAY;IAGxB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIrB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIrB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIrB,MAAM,IAAI,IAAI;IAMd;;;;;;;;;;OAUG;IAEH,IAAI,OAAO,IAAI,GAAG,CAKjB;IAED,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,GAAE,MAAY,EAAE,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAK7F,QAAQ,CACN,SAAS,GAAE,YAAwB,EACnC,IAAI,GAAE,MAAY,EAClB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,IAAI;IAMP;;;;;;;;OAQG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;;OAGG;IACH,SAAS,CAAC,4BAA4B,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,IAAI;IAiBjF,SAAS,CAAC,mBAAmB,IAAI,OAAO;IAcxC,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,2BAA2B;IAenC,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,8BAA8B;IAkBtC,YAAY,IAAI,IAAI;IAoBpB,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAEtC,UAAU,IAAI,IAAI;IAIlB,gBAAgB,IAAI,IAAI;IAMxB,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,cAAc,IAAI,KAAK,CAAC,QAAQ;IAMhC;;;OAGG;IACH,oBAAoB,IAAI,MAAM;IAI9B,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE;IAIhC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,KAAK,CAAC,QAAQ;IAIvD,aAAa,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAMrD,SAAS,IAAI,OAAO,EAAE;IAMtB,UAAU,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,GAAE,OAAe,GAAG,IAAI;IAMtE,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAM7C,aAAa,IAAI,IAAI;IAIrB,WAAW,IAAI,OAAO;IAGtB,WAAW,IAAI,eAAe,EAAE;IAIhC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAOxB,aAAa,CACX,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,EACjC,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,YAAY,CAAA;KAAE,GAChE,IAAI;IAKP,WAAW,CACT,MAAM,EAAE,MAAM,EAAE,EAAE,EAClB,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,YAAY,CAAC;QAAC,SAAS,CAAC,EAAE,YAAY,CAAA;KAAE,GAChE,IAAI;IAKP,4BAA4B,CAAC,SAAS,GAAE,MAAW,GAAG,IAAI;IAO1D,cAAc,IAAI,OAAO;IAKzB,SAAS,IAAI,IAAI;IAKjB,YAAY,IAAI,OAAO;IAMvB;;;;;OAKG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAI5F,OAAO,IAAI,IAAI;CAehB"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import { MobjectLike, Vector3Tuple } from './MobjectTypes';
|
|
1
|
+
import { MobjectLike, Vector3Tuple, AxisOrOptions } from './MobjectTypes';
|
|
2
2
|
/**
|
|
3
3
|
* Rotate a mobject around an axis.
|
|
4
4
|
* Uses object pooling to avoid allocations in hot paths.
|
|
5
5
|
*/
|
|
6
|
-
export declare function rotateMobject(mob: MobjectLike, angle: number, axisOrOptions?: Vector3Tuple |
|
|
7
|
-
axis?: Vector3Tuple;
|
|
8
|
-
aboutPoint?: Vector3Tuple;
|
|
9
|
-
}): void;
|
|
6
|
+
export declare function rotateMobject(mob: MobjectLike, angle: number, axisOrOptions?: Vector3Tuple | AxisOrOptions): void;
|
|
10
7
|
/**
|
|
11
8
|
* Get the center point of a mobject.
|
|
12
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobjectPositioning.d.ts","sourceRoot":"","sources":["../../src/core/MobjectPositioning.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"MobjectPositioning.d.ts","sourceRoot":"","sources":["../../src/core/MobjectPositioning.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAU/E;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,YAAY,GAAG,aAAa,GAC3C,IAAI,CAoBN;AA+GD;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAG5D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAKA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,GAAG,YAAY,CAU9F;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,YAAY,EACvB,IAAI,EAAE,MAAM,EACZ,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,IAAI,CAWN"}
|
|
@@ -3,6 +3,14 @@ import * as THREE from 'three';
|
|
|
3
3
|
* Vector3 type as a tuple for external API
|
|
4
4
|
*/
|
|
5
5
|
export type Vector3Tuple = [number, number, number];
|
|
6
|
+
/**
|
|
7
|
+
* Options for rotation and other operations that can accept an axis or a full options object
|
|
8
|
+
*/
|
|
9
|
+
export type AxisOrOptions = {
|
|
10
|
+
axis?: Vector3Tuple;
|
|
11
|
+
aboutPoint?: Vector3Tuple;
|
|
12
|
+
aboutEdge?: Vector3Tuple;
|
|
13
|
+
};
|
|
6
14
|
export declare const UP: Vector3Tuple;
|
|
7
15
|
export declare const DOWN: Vector3Tuple;
|
|
8
16
|
export declare const LEFT: Vector3Tuple;
|
|
@@ -49,16 +57,25 @@ export interface MobjectLike {
|
|
|
49
57
|
_markDirty(): void;
|
|
50
58
|
getThreeObject(): THREE.Object3D;
|
|
51
59
|
getCenter(): Vector3Tuple;
|
|
60
|
+
getBounds(): {
|
|
61
|
+
min: {
|
|
62
|
+
x: number;
|
|
63
|
+
y: number;
|
|
64
|
+
z: number;
|
|
65
|
+
};
|
|
66
|
+
max: {
|
|
67
|
+
x: number;
|
|
68
|
+
y: number;
|
|
69
|
+
z: number;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
52
72
|
getBoundingBox(): {
|
|
53
73
|
width: number;
|
|
54
74
|
height: number;
|
|
55
75
|
depth: number;
|
|
56
76
|
};
|
|
57
77
|
moveTo(target: Vector3Tuple | MobjectLike, alignedEdge?: Vector3Tuple): MobjectLike;
|
|
58
|
-
rotate(angle: number, axisOrOptions?: Vector3Tuple |
|
|
59
|
-
axis?: Vector3Tuple;
|
|
60
|
-
aboutPoint?: Vector3Tuple;
|
|
61
|
-
}): MobjectLike;
|
|
78
|
+
rotate(angle: number, axisOrOptions?: Vector3Tuple | AxisOrOptions): MobjectLike;
|
|
62
79
|
copy(): MobjectLike;
|
|
63
80
|
restoreState(): boolean;
|
|
64
81
|
getFamily(): MobjectLike[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobjectTypes.d.ts","sourceRoot":"","sources":["../../src/core/MobjectTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"MobjectTypes.d.ts","sourceRoot":"","sources":["../../src/core/MobjectTypes.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Renderer.d.ts
CHANGED
|
@@ -52,6 +52,7 @@ export declare class Renderer implements IRenderer {
|
|
|
52
52
|
private _backgroundOpacity;
|
|
53
53
|
private _alpha;
|
|
54
54
|
private _contextLost;
|
|
55
|
+
private _autoPixelRatio;
|
|
55
56
|
/**
|
|
56
57
|
* Create a new Renderer and append it to the container.
|
|
57
58
|
* @param container - DOM element to append the canvas to
|
|
@@ -95,6 +96,8 @@ export declare class Renderer implements IRenderer {
|
|
|
95
96
|
render(scene: THREE.Scene, camera: THREE.Camera): void;
|
|
96
97
|
/**
|
|
97
98
|
* Handle resize events.
|
|
99
|
+
* Re-applies the device pixel ratio so DPR changes (e.g. screen rotation
|
|
100
|
+
* moving the canvas between displays) do not leave a blurry buffer.
|
|
98
101
|
* @param width - New width in pixels
|
|
99
102
|
* @param height - New height in pixels
|
|
100
103
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../src/core/Renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8FAA8F;IAC9F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,eAAe,CAAC,EAAE,SAAS,GAAG,kBAAkB,GAAG,WAAW,CAAC;IAC/D,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2LAA2L;IAC3L,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2FAA2F;IAC3F,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,SAAS,IAAI,iBAAiB,CAAC;IAC/B,gBAAgB,IAAI,KAAK,CAAC,aAAa,CAAC;IACxC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,QAAS,YAAW,SAAS;IACxC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,YAAY,CAAkB;
|
|
1
|
+
{"version":3,"file":"Renderer.d.ts","sourceRoot":"","sources":["../../src/core/Renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8FAA8F;IAC9F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,eAAe,CAAC,EAAE,SAAS,GAAG,kBAAkB,GAAG,WAAW,CAAC;IAC/D,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2LAA2L;IAC3L,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2FAA2F;IAC3F,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kFAAkF;IAClF,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,SAAS,IAAI,iBAAiB,CAAC;IAC/B,gBAAgB,IAAI,KAAK,CAAC,aAAa,CAAC;IACxC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,QAAS,YAAW,SAAS;IACxC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAc;IACtC,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,YAAY,CAAkB;IAItC,OAAO,CAAC,eAAe,CAAU;IAEjC;;;;OAIG;gBAES,SAAS,EAAE,WAAW,EAAE,OAAO,GAAE,eAAoB;IAwDjE;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,KAAK,CAAC,KAAK,CAEjC;IAED;;OAEG;IACH,IAAI,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,EAG9C;IAED;;OAEG;IACH,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED;;;OAGG;IACH,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAUlC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI;IAKtD;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAW3C;;;OAGG;IACH,SAAS,IAAI,iBAAiB;IAI9B;;;OAGG;IACH,gBAAgB,IAAI,KAAK,CAAC,aAAa;IAIvC;;;OAGG;IACH,OAAO,IAAI,IAAI;CAOhB"}
|
package/dist/core/Scene.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { Animation } from '../animation/Animation';
|
|
|
5
5
|
import { Timeline } from '../animation/Timeline';
|
|
6
6
|
import { SceneStateManager, SceneSnapshot } from './StateManager';
|
|
7
7
|
import { AudioManager, AddSoundOptions, AudioTrack } from './AudioManager';
|
|
8
|
+
import { MultiCamera } from './CameraExtensions';
|
|
8
9
|
import * as THREE from 'three';
|
|
9
10
|
/**
|
|
10
11
|
* Options for scene.export() convenience method.
|
|
@@ -54,6 +55,13 @@ export interface SceneOptions {
|
|
|
54
55
|
backgroundOpacity?: number;
|
|
55
56
|
/** Enable headless mode (no WebGL renderer). Useful for testing scene logic without a DOM. */
|
|
56
57
|
headless?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Automatically resize the canvas when its container (or the window, on
|
|
60
|
+
* mobile rotation) changes size. Only active when both `width` and `height`
|
|
61
|
+
* are omitted — passing either dimension is treated as a request for a
|
|
62
|
+
* pinned canvas size, so auto-resize stays off. Defaults to true.
|
|
63
|
+
*/
|
|
64
|
+
autoResize?: boolean;
|
|
57
65
|
}
|
|
58
66
|
/**
|
|
59
67
|
* Scene orchestrator for manimweb.
|
|
@@ -81,9 +89,16 @@ export declare class Scene {
|
|
|
81
89
|
private _projScreenMatrix;
|
|
82
90
|
private static _tempBox3;
|
|
83
91
|
protected _autoRender: boolean;
|
|
92
|
+
private _pendingRender;
|
|
93
|
+
private _suppressAutoRender;
|
|
84
94
|
private _renderOrderCounter;
|
|
85
95
|
private _stateManager;
|
|
86
96
|
private _audioManager;
|
|
97
|
+
private _multiCamera;
|
|
98
|
+
private _container;
|
|
99
|
+
private _resizeObserver;
|
|
100
|
+
private _resizeRafId;
|
|
101
|
+
private _onWindowResize;
|
|
87
102
|
/**
|
|
88
103
|
* Create a new Scene.
|
|
89
104
|
* @param container - DOM element to render into, or null for headless mode
|
|
@@ -102,6 +117,18 @@ export declare class Scene {
|
|
|
102
117
|
* Get the renderer.
|
|
103
118
|
*/
|
|
104
119
|
get renderer(): IRenderer;
|
|
120
|
+
/**
|
|
121
|
+
* Get the active MultiCamera, or null if single-camera rendering is in use.
|
|
122
|
+
*/
|
|
123
|
+
get multiCamera(): MultiCamera | null;
|
|
124
|
+
/**
|
|
125
|
+
* Attach (or detach) a MultiCamera for split-screen, picture-in-picture, or
|
|
126
|
+
* quad-view rendering. Pass `null` to revert to single-camera rendering.
|
|
127
|
+
* Has no effect in headless mode (the NullRenderer cannot scissor viewports).
|
|
128
|
+
* @param mc - MultiCamera instance, or null to restore the default render path
|
|
129
|
+
* @returns this for chaining
|
|
130
|
+
*/
|
|
131
|
+
useMultiCamera(mc: MultiCamera | null): this;
|
|
105
132
|
/**
|
|
106
133
|
* Whether this scene is running in headless mode (no WebGL renderer).
|
|
107
134
|
*/
|
|
@@ -272,12 +299,28 @@ export declare class Scene {
|
|
|
272
299
|
* can override to also check for ambient camera rotation, etc.
|
|
273
300
|
*/
|
|
274
301
|
protected _needsPerFrameRendering(): boolean;
|
|
302
|
+
/**
|
|
303
|
+
* Queue a render to run on the next microtask. Multiple calls within the
|
|
304
|
+
* same tick coalesce. If `_cancelPendingRender()` is called or
|
|
305
|
+
* `_suppressAutoRender` is set before the microtask fires, the render is
|
|
306
|
+
* skipped. Used by `add()` so a chained `play()` can suppress the
|
|
307
|
+
* pre-animation flash described in issue #317.
|
|
308
|
+
*/
|
|
309
|
+
protected _scheduleRender(): void;
|
|
310
|
+
protected _cancelPendingRender(): void;
|
|
275
311
|
/**
|
|
276
312
|
* Render a single frame.
|
|
277
313
|
* Syncs only dirty mobjects before rendering for performance.
|
|
278
314
|
* Protected so subclasses (e.g. ZoomedScene) can override for multi-pass rendering.
|
|
279
315
|
*/
|
|
280
316
|
protected _render(): void;
|
|
317
|
+
/**
|
|
318
|
+
* Render via the attached MultiCamera. Clears the full canvas first so
|
|
319
|
+
* arbitrary viewport layouts (e.g. picture-in-picture) don't leak stale
|
|
320
|
+
* pixels, and restores renderer state via try/finally even if a camera
|
|
321
|
+
* render throws.
|
|
322
|
+
*/
|
|
323
|
+
protected _renderMultiCamera(): void;
|
|
281
324
|
/**
|
|
282
325
|
* Sync only mobjects that have been modified (dirty flag optimization).
|
|
283
326
|
*/
|
|
@@ -350,6 +393,13 @@ export declare class Scene {
|
|
|
350
393
|
* @param height - New height in pixels
|
|
351
394
|
*/
|
|
352
395
|
resize(width: number, height: number): this;
|
|
396
|
+
/**
|
|
397
|
+
* Install ResizeObserver on the container and a window resize/orientation
|
|
398
|
+
* fallback. All triggers funnel through a single rAF-debounced measurement
|
|
399
|
+
* so a rotation that fires multiple events resizes once per frame.
|
|
400
|
+
*/
|
|
401
|
+
private _installAutoResize;
|
|
402
|
+
private _disposeAutoResize;
|
|
353
403
|
/**
|
|
354
404
|
* Get the canvas element.
|
|
355
405
|
* @returns The HTMLCanvasElement used for rendering
|
package/dist/core/Scene.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../../src/core/Scene.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAA6B,SAAS,EAAE,MAAM,YAAY,CAAC;AAElE,OAAO,EAAE,QAAQ,EAAiB,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAErF;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,+EAA+E;IAC/E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yIAAyI;IACzI,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../../src/core/Scene.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Mobject } from './Mobject';
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
/**
|
|
4
|
+
* Base class for mobjects that render via textured display meshes.
|
|
5
|
+
*
|
|
6
|
+
* Shape-morph code can use this contract to transfer texture/material state
|
|
7
|
+
* without knowing the concrete textured subtype.
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class TexturedMobject extends Mobject {
|
|
10
|
+
/**
|
|
11
|
+
* Return the meshes that visually represent this mobject.
|
|
12
|
+
* Textured morph code can use this for strict single-mesh validation.
|
|
13
|
+
*/
|
|
14
|
+
abstract getDisplayMeshes(): THREE.Mesh[];
|
|
15
|
+
/**
|
|
16
|
+
* Return how many display meshes this textured mobject contributes.
|
|
17
|
+
*/
|
|
18
|
+
abstract getDisplayMeshLength(): number;
|
|
19
|
+
/**
|
|
20
|
+
* Copy texture/material-relevant state from another textured mobject.
|
|
21
|
+
*/
|
|
22
|
+
abstract applyTextureFrom(other: TexturedMobject): void;
|
|
23
|
+
/**
|
|
24
|
+
* Update class-authoritative visual size state so later sync cycles do not
|
|
25
|
+
* revert display dimensions set during transform finish.
|
|
26
|
+
*/
|
|
27
|
+
abstract applyVisualSize(width: number, height: number): void;
|
|
28
|
+
/**
|
|
29
|
+
* Copy class-authoritative content metadata from another textured mobject so that
|
|
30
|
+
* future sync cycles and API reads (e.g. getText()) reflect the target's content.
|
|
31
|
+
*/
|
|
32
|
+
abstract applyContentFrom(other: TexturedMobject): void;
|
|
33
|
+
/**
|
|
34
|
+
* Sets material.map, marks material dirty, and disposes previous texture when replaced.
|
|
35
|
+
*/
|
|
36
|
+
protected _handoffTextureMap(material: THREE.MeshBasicMaterial, nextTexture: THREE.Texture | null, previousTexture: THREE.Texture | null): void;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=TexturedMobject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TexturedMobject.d.ts","sourceRoot":"","sources":["../../src/core/TexturedMobject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;GAKG;AACH,8BAAsB,eAAgB,SAAQ,OAAO;IACnD;;;OAGG;aACe,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE;IAElD;;OAEG;aACe,oBAAoB,IAAI,MAAM;IAEhD;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAEvD;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAE7D;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAEvD;;OAEG;IACH,SAAS,CAAC,kBAAkB,CAC1B,QAAQ,EAAE,KAAK,CAAC,iBAAiB,EACjC,WAAW,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,EACjC,eAAe,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,GACpC,IAAI;CAOR"}
|