manim-web 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +109 -0
- package/dist/animation/Animation.d.ts +69 -0
- package/dist/animation/Animation.d.ts.map +1 -0
- package/dist/animation/AnimationGroup.d.ts +48 -0
- package/dist/animation/AnimationGroup.d.ts.map +1 -0
- package/dist/animation/LaggedStart.d.ts +25 -0
- package/dist/animation/LaggedStart.d.ts.map +1 -0
- package/dist/animation/MaintainPositionRelativeTo.d.ts +23 -0
- package/dist/animation/MaintainPositionRelativeTo.d.ts.map +1 -0
- package/dist/animation/Succession.d.ts +19 -0
- package/dist/animation/Succession.d.ts.map +1 -0
- package/dist/animation/Timeline.d.ts +89 -0
- package/dist/animation/Timeline.d.ts.map +1 -0
- package/dist/animation/UpdateFromAlphaFunc.d.ts +32 -0
- package/dist/animation/UpdateFromAlphaFunc.d.ts.map +1 -0
- package/dist/animation/UpdateFromFunc.d.ts +30 -0
- package/dist/animation/UpdateFromFunc.d.ts.map +1 -0
- package/dist/animation/changing/index.d.ts +213 -0
- package/dist/animation/changing/index.d.ts.map +1 -0
- package/dist/animation/composition/LaggedStartMap.d.ts +47 -0
- package/dist/animation/composition/LaggedStartMap.d.ts.map +1 -0
- package/dist/animation/composition/index.d.ts +5 -0
- package/dist/animation/composition/index.d.ts.map +1 -0
- package/dist/animation/creation/Create.d.ts +232 -0
- package/dist/animation/creation/Create.d.ts.map +1 -0
- package/dist/animation/creation/CreationExtensions.d.ts +127 -0
- package/dist/animation/creation/CreationExtensions.d.ts.map +1 -0
- package/dist/animation/creation/TypeWithCursor.d.ts +133 -0
- package/dist/animation/creation/TypeWithCursor.d.ts.map +1 -0
- package/dist/animation/creation/index.d.ts +4 -0
- package/dist/animation/creation/index.d.ts.map +1 -0
- package/dist/animation/fading/FadeIn.d.ts +31 -0
- package/dist/animation/fading/FadeIn.d.ts.map +1 -0
- package/dist/animation/fading/FadeOut.d.ts +32 -0
- package/dist/animation/fading/FadeOut.d.ts.map +1 -0
- package/dist/animation/fading/index.d.ts +3 -0
- package/dist/animation/fading/index.d.ts.map +1 -0
- package/dist/animation/growing/index.d.ts +103 -0
- package/dist/animation/growing/index.d.ts.map +1 -0
- package/dist/animation/index.d.ts +20 -0
- package/dist/animation/index.d.ts.map +1 -0
- package/dist/animation/indication/ApplyWave.d.ts +51 -0
- package/dist/animation/indication/ApplyWave.d.ts.map +1 -0
- package/dist/animation/indication/Blink.d.ts +34 -0
- package/dist/animation/indication/Blink.d.ts.map +1 -0
- package/dist/animation/indication/Circumscribe.d.ts +54 -0
- package/dist/animation/indication/Circumscribe.d.ts.map +1 -0
- package/dist/animation/indication/Flash.d.ts +45 -0
- package/dist/animation/indication/Flash.d.ts.map +1 -0
- package/dist/animation/indication/FocusOn.d.ts +79 -0
- package/dist/animation/indication/FocusOn.d.ts.map +1 -0
- package/dist/animation/indication/Indicate.d.ts +30 -0
- package/dist/animation/indication/Indicate.d.ts.map +1 -0
- package/dist/animation/indication/ShowCreationThenDestruction.d.ts +26 -0
- package/dist/animation/indication/ShowCreationThenDestruction.d.ts.map +1 -0
- package/dist/animation/indication/ShowPassingFlash.d.ts +47 -0
- package/dist/animation/indication/ShowPassingFlash.d.ts.map +1 -0
- package/dist/animation/indication/ShowPassingFlashWithThinningStrokeWidth.d.ts +21 -0
- package/dist/animation/indication/ShowPassingFlashWithThinningStrokeWidth.d.ts.map +1 -0
- package/dist/animation/indication/Wiggle.d.ts +48 -0
- package/dist/animation/indication/Wiggle.d.ts.map +1 -0
- package/dist/animation/indication/WiggleOutThenIn.d.ts +44 -0
- package/dist/animation/indication/WiggleOutThenIn.d.ts.map +1 -0
- package/dist/animation/indication/index.d.ts +20 -0
- package/dist/animation/indication/index.d.ts.map +1 -0
- package/dist/animation/movement/Homotopy.d.ts +204 -0
- package/dist/animation/movement/Homotopy.d.ts.map +1 -0
- package/dist/animation/movement/MoveAlongPath.d.ts +48 -0
- package/dist/animation/movement/MoveAlongPath.d.ts.map +1 -0
- package/dist/animation/movement/Rotate.d.ts +47 -0
- package/dist/animation/movement/Rotate.d.ts.map +1 -0
- package/dist/animation/movement/Scale.d.ts +74 -0
- package/dist/animation/movement/Scale.d.ts.map +1 -0
- package/dist/animation/movement/Shift.d.ts +74 -0
- package/dist/animation/movement/Shift.d.ts.map +1 -0
- package/dist/animation/movement/index.d.ts +6 -0
- package/dist/animation/movement/index.d.ts.map +1 -0
- package/dist/animation/numbers/index.d.ts +152 -0
- package/dist/animation/numbers/index.d.ts.map +1 -0
- package/dist/animation/speed/index.d.ts +114 -0
- package/dist/animation/speed/index.d.ts.map +1 -0
- package/dist/animation/transform/ApplyPointwiseFunction.d.ts +23 -0
- package/dist/animation/transform/ApplyPointwiseFunction.d.ts.map +1 -0
- package/dist/animation/transform/Transform.d.ts +89 -0
- package/dist/animation/transform/Transform.d.ts.map +1 -0
- package/dist/animation/transform/TransformExtensions.d.ts +444 -0
- package/dist/animation/transform/TransformExtensions.d.ts.map +1 -0
- package/dist/animation/transform/TransformMatching.d.ts +138 -0
- package/dist/animation/transform/TransformMatching.d.ts.map +1 -0
- package/dist/animation/transform/index.d.ts +5 -0
- package/dist/animation/transform/index.d.ts.map +1 -0
- package/dist/animation/utility/index.d.ts +171 -0
- package/dist/animation/utility/index.d.ts.map +1 -0
- package/dist/constants/colors.d.ts +72 -0
- package/dist/constants/colors.d.ts.map +1 -0
- package/dist/constants/colors.test.d.ts +2 -0
- package/dist/constants/colors.test.d.ts.map +1 -0
- package/dist/constants/directions.test.d.ts +2 -0
- package/dist/constants/directions.test.d.ts.map +1 -0
- package/dist/constants/index.d.ts +16 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/core/AudioManager.d.ts +203 -0
- package/dist/core/AudioManager.d.ts.map +1 -0
- package/dist/core/Camera.d.ts +172 -0
- package/dist/core/Camera.d.ts.map +1 -0
- package/dist/core/Camera2DFrame.d.ts +31 -0
- package/dist/core/Camera2DFrame.d.ts.map +1 -0
- package/dist/core/CameraExtensions.d.ts +420 -0
- package/dist/core/CameraExtensions.d.ts.map +1 -0
- package/dist/core/CameraFrame.d.ts +178 -0
- package/dist/core/CameraFrame.d.ts.map +1 -0
- package/dist/core/Group.d.ts +139 -0
- package/dist/core/Group.d.ts.map +1 -0
- package/dist/core/InteractiveScene.d.ts +122 -0
- package/dist/core/InteractiveScene.d.ts.map +1 -0
- package/dist/core/Lighting.d.ts +128 -0
- package/dist/core/Lighting.d.ts.map +1 -0
- package/dist/core/Mobject.d.ts +488 -0
- package/dist/core/Mobject.d.ts.map +1 -0
- package/dist/core/Renderer.d.ts +84 -0
- package/dist/core/Renderer.d.ts.map +1 -0
- package/dist/core/Scene.d.ts +353 -0
- package/dist/core/Scene.d.ts.map +1 -0
- package/dist/core/SceneExtensions.d.ts +640 -0
- package/dist/core/SceneExtensions.d.ts.map +1 -0
- package/dist/core/SceneExtensions.test.d.ts +2 -0
- package/dist/core/SceneExtensions.test.d.ts.map +1 -0
- package/dist/core/StateManager.d.ts +193 -0
- package/dist/core/StateManager.d.ts.map +1 -0
- package/dist/core/VDict.d.ts +229 -0
- package/dist/core/VDict.d.ts.map +1 -0
- package/dist/core/VGroup.d.ts +200 -0
- package/dist/core/VGroup.d.ts.map +1 -0
- package/dist/core/VMobject.d.ts +419 -0
- package/dist/core/VMobject.d.ts.map +1 -0
- package/dist/core/index.d.ts +16 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/examples.test.d.ts +2 -0
- package/dist/examples.test.d.ts.map +1 -0
- package/dist/export/GifExporter.d.ts +40 -0
- package/dist/export/GifExporter.d.ts.map +1 -0
- package/dist/export/VideoExporter.d.ts +135 -0
- package/dist/export/VideoExporter.d.ts.map +1 -0
- package/dist/export/index.d.ts +3 -0
- package/dist/export/index.d.ts.map +1 -0
- package/dist/index.d.ts +65 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +49064 -0
- package/dist/integrations/index.d.ts +1 -0
- package/dist/integrations/index.d.ts.map +1 -0
- package/dist/integrations/react.d.ts +144 -0
- package/dist/integrations/react.d.ts.map +1 -0
- package/dist/integrations/react.js +570 -0
- package/dist/integrations/vue.d.ts +249 -0
- package/dist/integrations/vue.d.ts.map +1 -0
- package/dist/integrations/vue.js +560 -0
- package/dist/interaction/Clickable.d.ts +71 -0
- package/dist/interaction/Clickable.d.ts.map +1 -0
- package/dist/interaction/Controls.d.ts +174 -0
- package/dist/interaction/Controls.d.ts.map +1 -0
- package/dist/interaction/Draggable.d.ts +88 -0
- package/dist/interaction/Draggable.d.ts.map +1 -0
- package/dist/interaction/Hoverable.d.ts +82 -0
- package/dist/interaction/Hoverable.d.ts.map +1 -0
- package/dist/interaction/OrbitControls.d.ts +139 -0
- package/dist/interaction/OrbitControls.d.ts.map +1 -0
- package/dist/interaction/PlaybackControls.d.ts +113 -0
- package/dist/interaction/PlaybackControls.d.ts.map +1 -0
- package/dist/interaction/SelectionManager.d.ts +125 -0
- package/dist/interaction/SelectionManager.d.ts.map +1 -0
- package/dist/interaction/index.d.ts +12 -0
- package/dist/interaction/index.d.ts.map +1 -0
- package/dist/mobjects/fractals/MandelbrotSet.d.ts +92 -0
- package/dist/mobjects/fractals/MandelbrotSet.d.ts.map +1 -0
- package/dist/mobjects/fractals/NewtonFractal.d.ts +121 -0
- package/dist/mobjects/fractals/NewtonFractal.d.ts.map +1 -0
- package/dist/mobjects/fractals/index.d.ts +3 -0
- package/dist/mobjects/fractals/index.d.ts.map +1 -0
- package/dist/mobjects/frame/index.d.ts +188 -0
- package/dist/mobjects/frame/index.d.ts.map +1 -0
- package/dist/mobjects/geometry/AngleShapes.d.ts +326 -0
- package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -0
- package/dist/mobjects/geometry/Arc.d.ts +111 -0
- package/dist/mobjects/geometry/Arc.d.ts.map +1 -0
- package/dist/mobjects/geometry/ArcBetweenPoints.d.ts +68 -0
- package/dist/mobjects/geometry/ArcBetweenPoints.d.ts.map +1 -0
- package/dist/mobjects/geometry/ArcShapes.d.ts +659 -0
- package/dist/mobjects/geometry/ArcShapes.d.ts.map +1 -0
- package/dist/mobjects/geometry/Arrow.d.ts +130 -0
- package/dist/mobjects/geometry/Arrow.d.ts.map +1 -0
- package/dist/mobjects/geometry/ArrowTips.d.ts +238 -0
- package/dist/mobjects/geometry/ArrowTips.d.ts.map +1 -0
- package/dist/mobjects/geometry/BooleanOperations.d.ts +163 -0
- package/dist/mobjects/geometry/BooleanOperations.d.ts.map +1 -0
- package/dist/mobjects/geometry/Circle.d.ts +92 -0
- package/dist/mobjects/geometry/Circle.d.ts.map +1 -0
- package/dist/mobjects/geometry/CubicBezier.d.ts +126 -0
- package/dist/mobjects/geometry/CubicBezier.d.ts.map +1 -0
- package/dist/mobjects/geometry/DashedLine.d.ts +109 -0
- package/dist/mobjects/geometry/DashedLine.d.ts.map +1 -0
- package/dist/mobjects/geometry/DashedVMobject.d.ts +96 -0
- package/dist/mobjects/geometry/DashedVMobject.d.ts.map +1 -0
- package/dist/mobjects/geometry/Dot.d.ts +100 -0
- package/dist/mobjects/geometry/Dot.d.ts.map +1 -0
- package/dist/mobjects/geometry/LabeledGeometry.d.ts +372 -0
- package/dist/mobjects/geometry/LabeledGeometry.d.ts.map +1 -0
- package/dist/mobjects/geometry/Line.d.ts +83 -0
- package/dist/mobjects/geometry/Line.d.ts.map +1 -0
- package/dist/mobjects/geometry/Polygon.d.ts +155 -0
- package/dist/mobjects/geometry/Polygon.d.ts.map +1 -0
- package/dist/mobjects/geometry/PolygonExtensions.d.ts +412 -0
- package/dist/mobjects/geometry/PolygonExtensions.d.ts.map +1 -0
- package/dist/mobjects/geometry/Rectangle.d.ts +123 -0
- package/dist/mobjects/geometry/Rectangle.d.ts.map +1 -0
- package/dist/mobjects/geometry/ShapeMatchers.d.ts +252 -0
- package/dist/mobjects/geometry/ShapeMatchers.d.ts.map +1 -0
- package/dist/mobjects/geometry/index.d.ts +25 -0
- package/dist/mobjects/geometry/index.d.ts.map +1 -0
- package/dist/mobjects/graph/index.d.ts +425 -0
- package/dist/mobjects/graph/index.d.ts.map +1 -0
- package/dist/mobjects/graphing/Axes.d.ts +254 -0
- package/dist/mobjects/graphing/Axes.d.ts.map +1 -0
- package/dist/mobjects/graphing/BarChart.d.ts +241 -0
- package/dist/mobjects/graphing/BarChart.d.ts.map +1 -0
- package/dist/mobjects/graphing/ComplexPlane.d.ts +311 -0
- package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -0
- package/dist/mobjects/graphing/FunctionGraph.d.ts +123 -0
- package/dist/mobjects/graphing/FunctionGraph.d.ts.map +1 -0
- package/dist/mobjects/graphing/ImplicitFunction.d.ts +131 -0
- package/dist/mobjects/graphing/ImplicitFunction.d.ts.map +1 -0
- package/dist/mobjects/graphing/NumberLine.d.ts +195 -0
- package/dist/mobjects/graphing/NumberLine.d.ts.map +1 -0
- package/dist/mobjects/graphing/NumberPlane.d.ts +91 -0
- package/dist/mobjects/graphing/NumberPlane.d.ts.map +1 -0
- package/dist/mobjects/graphing/ParametricFunction.d.ts +111 -0
- package/dist/mobjects/graphing/ParametricFunction.d.ts.map +1 -0
- package/dist/mobjects/graphing/Vector.d.ts +121 -0
- package/dist/mobjects/graphing/Vector.d.ts.map +1 -0
- package/dist/mobjects/graphing/VectorField.d.ts +321 -0
- package/dist/mobjects/graphing/VectorField.d.ts.map +1 -0
- package/dist/mobjects/graphing/index.d.ts +18 -0
- package/dist/mobjects/graphing/index.d.ts.map +1 -0
- package/dist/mobjects/image/index.d.ts +223 -0
- package/dist/mobjects/image/index.d.ts.map +1 -0
- package/dist/mobjects/matrix/Matrix.d.ts +260 -0
- package/dist/mobjects/matrix/Matrix.d.ts.map +1 -0
- package/dist/mobjects/matrix/index.d.ts +8 -0
- package/dist/mobjects/matrix/index.d.ts.map +1 -0
- package/dist/mobjects/point/index.d.ts +707 -0
- package/dist/mobjects/point/index.d.ts.map +1 -0
- package/dist/mobjects/probability/DiceFace.d.ts +137 -0
- package/dist/mobjects/probability/DiceFace.d.ts.map +1 -0
- package/dist/mobjects/probability/SampleSpace.d.ts +267 -0
- package/dist/mobjects/probability/SampleSpace.d.ts.map +1 -0
- package/dist/mobjects/probability/index.d.ts +9 -0
- package/dist/mobjects/probability/index.d.ts.map +1 -0
- package/dist/mobjects/svg/Brace.d.ts +308 -0
- package/dist/mobjects/svg/Brace.d.ts.map +1 -0
- package/dist/mobjects/svg/SVGMobject.d.ts +64 -0
- package/dist/mobjects/svg/SVGMobject.d.ts.map +1 -0
- package/dist/mobjects/svg/index.d.ts +10 -0
- package/dist/mobjects/svg/index.d.ts.map +1 -0
- package/dist/mobjects/table/Table.d.ts +315 -0
- package/dist/mobjects/table/Table.d.ts.map +1 -0
- package/dist/mobjects/table/index.d.ts +8 -0
- package/dist/mobjects/table/index.d.ts.map +1 -0
- package/dist/mobjects/text/Code.d.ts +244 -0
- package/dist/mobjects/text/Code.d.ts.map +1 -0
- package/dist/mobjects/text/DecimalNumber.d.ts +199 -0
- package/dist/mobjects/text/DecimalNumber.d.ts.map +1 -0
- package/dist/mobjects/text/GlyphVMobject.d.ts +76 -0
- package/dist/mobjects/text/GlyphVMobject.d.ts.map +1 -0
- package/dist/mobjects/text/MarkupText.d.ts +161 -0
- package/dist/mobjects/text/MarkupText.d.ts.map +1 -0
- package/dist/mobjects/text/MathJaxRenderer.d.ts +49 -0
- package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -0
- package/dist/mobjects/text/MathTex.d.ts +242 -0
- package/dist/mobjects/text/MathTex.d.ts.map +1 -0
- package/dist/mobjects/text/Paragraph.d.ts +86 -0
- package/dist/mobjects/text/Paragraph.d.ts.map +1 -0
- package/dist/mobjects/text/Tex.d.ts +40 -0
- package/dist/mobjects/text/Tex.d.ts.map +1 -0
- package/dist/mobjects/text/Text.d.ts +171 -0
- package/dist/mobjects/text/Text.d.ts.map +1 -0
- package/dist/mobjects/text/TextExtensions.d.ts +383 -0
- package/dist/mobjects/text/TextExtensions.d.ts.map +1 -0
- package/dist/mobjects/text/TextGlyphGroup.d.ts +48 -0
- package/dist/mobjects/text/TextGlyphGroup.d.ts.map +1 -0
- package/dist/mobjects/text/Variable.d.ts +160 -0
- package/dist/mobjects/text/Variable.d.ts.map +1 -0
- package/dist/mobjects/text/index.d.ts +21 -0
- package/dist/mobjects/text/index.d.ts.map +1 -0
- package/dist/mobjects/text/katex-styles.d.ts +23 -0
- package/dist/mobjects/text/katex-styles.d.ts.map +1 -0
- package/dist/mobjects/text/svgPathParser.d.ts +39 -0
- package/dist/mobjects/text/svgPathParser.d.ts.map +1 -0
- package/dist/mobjects/three-d/Arrow3D.d.ts +136 -0
- package/dist/mobjects/three-d/Arrow3D.d.ts.map +1 -0
- package/dist/mobjects/three-d/Cube.d.ts +186 -0
- package/dist/mobjects/three-d/Cube.d.ts.map +1 -0
- package/dist/mobjects/three-d/Cylinder.d.ts +189 -0
- package/dist/mobjects/three-d/Cylinder.d.ts.map +1 -0
- package/dist/mobjects/three-d/Line3D.d.ts +100 -0
- package/dist/mobjects/three-d/Line3D.d.ts.map +1 -0
- package/dist/mobjects/three-d/ParametricSurface.d.ts +86 -0
- package/dist/mobjects/three-d/ParametricSurface.d.ts.map +1 -0
- package/dist/mobjects/three-d/Polyhedra.d.ts +271 -0
- package/dist/mobjects/three-d/Polyhedra.d.ts.map +1 -0
- package/dist/mobjects/three-d/Sphere.d.ts +100 -0
- package/dist/mobjects/three-d/Sphere.d.ts.map +1 -0
- package/dist/mobjects/three-d/Surface3D.d.ts +156 -0
- package/dist/mobjects/three-d/Surface3D.d.ts.map +1 -0
- package/dist/mobjects/three-d/TexturedSurface.d.ts +208 -0
- package/dist/mobjects/three-d/TexturedSurface.d.ts.map +1 -0
- package/dist/mobjects/three-d/ThreeDAxes.d.ts +172 -0
- package/dist/mobjects/three-d/ThreeDAxes.d.ts.map +1 -0
- package/dist/mobjects/three-d/ThreeDExtensions.d.ts +335 -0
- package/dist/mobjects/three-d/ThreeDExtensions.d.ts.map +1 -0
- package/dist/mobjects/three-d/Torus.d.ts +123 -0
- package/dist/mobjects/three-d/Torus.d.ts.map +1 -0
- package/dist/mobjects/three-d/index.d.ts +19 -0
- package/dist/mobjects/three-d/index.d.ts.map +1 -0
- package/dist/mobjects/value-tracker/ValueTracker.d.ts +248 -0
- package/dist/mobjects/value-tracker/ValueTracker.d.ts.map +1 -0
- package/dist/mobjects/value-tracker/index.d.ts +9 -0
- package/dist/mobjects/value-tracker/index.d.ts.map +1 -0
- package/dist/rate-functions/index.d.ts +81 -0
- package/dist/rate-functions/index.d.ts.map +1 -0
- package/dist/rate-functions/rateFunctions.test.d.ts +2 -0
- package/dist/rate-functions/rateFunctions.test.d.ts.map +1 -0
- package/dist/rendering/BezierRenderer.d.ts +112 -0
- package/dist/rendering/BezierRenderer.d.ts.map +1 -0
- package/dist/rendering/BezierShaderMaterial.d.ts +50 -0
- package/dist/rendering/BezierShaderMaterial.d.ts.map +1 -0
- package/dist/rendering/index.d.ts +10 -0
- package/dist/rendering/index.d.ts.map +1 -0
- package/dist/utils/Performance.d.ts +118 -0
- package/dist/utils/Performance.d.ts.map +1 -0
- package/dist/utils/featureFlags.d.ts +15 -0
- package/dist/utils/featureFlags.d.ts.map +1 -0
- package/dist/utils/hungarian.d.ts +66 -0
- package/dist/utils/hungarian.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +14 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/math.d.ts +52 -0
- package/dist/utils/math.d.ts.map +1 -0
- package/dist/utils/ode.d.ts +135 -0
- package/dist/utils/ode.d.ts.map +1 -0
- package/dist/utils/skeletonize.d.ts +35 -0
- package/dist/utils/skeletonize.d.ts.map +1 -0
- package/dist/utils/triangulate.d.ts +54 -0
- package/dist/utils/triangulate.d.ts.map +1 -0
- package/dist/utils/vectors.d.ts +57 -0
- package/dist/utils/vectors.d.ts.map +1 -0
- package/package.json +122 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { VMobject } from '../../core/VMobject';
|
|
2
|
+
import { Vector3Tuple } from '../../core/Mobject';
|
|
3
|
+
/**
|
|
4
|
+
* Control points for a cubic Bezier curve
|
|
5
|
+
*/
|
|
6
|
+
export type CubicBezierPoints = [Vector3Tuple, Vector3Tuple, Vector3Tuple, Vector3Tuple];
|
|
7
|
+
/**
|
|
8
|
+
* Options for creating a CubicBezier
|
|
9
|
+
*/
|
|
10
|
+
export interface CubicBezierOptions {
|
|
11
|
+
/** The four control points [p0, p1, p2, p3] */
|
|
12
|
+
points: CubicBezierPoints;
|
|
13
|
+
/** Stroke color as CSS color string. Default: Manim's blue (#58C4DD) */
|
|
14
|
+
color?: string;
|
|
15
|
+
/** Stroke width in pixels. Default: 4 (Manim's default) */
|
|
16
|
+
strokeWidth?: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* CubicBezier - A single cubic Bezier curve segment
|
|
20
|
+
*
|
|
21
|
+
* Creates a cubic Bezier curve defined by four control points:
|
|
22
|
+
* - p0: Start anchor point
|
|
23
|
+
* - p1: First control point (influences curve near start)
|
|
24
|
+
* - p2: Second control point (influences curve near end)
|
|
25
|
+
* - p3: End anchor point
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // Create a simple S-curve
|
|
30
|
+
* const bezier = new CubicBezier({
|
|
31
|
+
* points: [
|
|
32
|
+
* [0, 0, 0],
|
|
33
|
+
* [1, 1, 0],
|
|
34
|
+
* [2, -1, 0],
|
|
35
|
+
* [3, 0, 0]
|
|
36
|
+
* ]
|
|
37
|
+
* });
|
|
38
|
+
*
|
|
39
|
+
* // Get a point at parameter t
|
|
40
|
+
* const midpoint = bezier.pointAtT(0.5);
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare class CubicBezier extends VMobject {
|
|
44
|
+
private _controlPoints;
|
|
45
|
+
constructor(options: CubicBezierOptions);
|
|
46
|
+
/**
|
|
47
|
+
* Generate the Bezier curve points
|
|
48
|
+
*/
|
|
49
|
+
private _generatePoints;
|
|
50
|
+
/**
|
|
51
|
+
* Get the control points
|
|
52
|
+
*/
|
|
53
|
+
getControlPoints(): CubicBezierPoints;
|
|
54
|
+
/**
|
|
55
|
+
* Set the control points
|
|
56
|
+
*/
|
|
57
|
+
setControlPoints(points: CubicBezierPoints): this;
|
|
58
|
+
/**
|
|
59
|
+
* Get a specific control point by index (0-3)
|
|
60
|
+
*/
|
|
61
|
+
getControlPoint(index: 0 | 1 | 2 | 3): Vector3Tuple;
|
|
62
|
+
/**
|
|
63
|
+
* Set a specific control point by index (0-3)
|
|
64
|
+
*/
|
|
65
|
+
setControlPoint(index: 0 | 1 | 2 | 3, point: Vector3Tuple): this;
|
|
66
|
+
/**
|
|
67
|
+
* Evaluate the curve at parameter t (0 to 1)
|
|
68
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
69
|
+
* @returns Point on the curve at parameter t
|
|
70
|
+
*/
|
|
71
|
+
pointAtT(t: number): Vector3Tuple;
|
|
72
|
+
/**
|
|
73
|
+
* Get the tangent vector at parameter t (0 to 1)
|
|
74
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
75
|
+
* @returns Tangent vector at parameter t (not normalized)
|
|
76
|
+
*/
|
|
77
|
+
tangentAtT(t: number): Vector3Tuple;
|
|
78
|
+
/**
|
|
79
|
+
* Get the normalized tangent vector at parameter t
|
|
80
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
81
|
+
* @returns Normalized tangent vector at parameter t
|
|
82
|
+
*/
|
|
83
|
+
normalizedTangentAtT(t: number): Vector3Tuple;
|
|
84
|
+
/**
|
|
85
|
+
* Get the normal vector at parameter t (perpendicular to tangent in XY plane)
|
|
86
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
87
|
+
* @returns Normal vector at parameter t
|
|
88
|
+
*/
|
|
89
|
+
normalAtT(t: number): Vector3Tuple;
|
|
90
|
+
/**
|
|
91
|
+
* Get the second derivative (acceleration) at parameter t
|
|
92
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
93
|
+
* @returns Second derivative at parameter t
|
|
94
|
+
*/
|
|
95
|
+
secondDerivativeAtT(t: number): Vector3Tuple;
|
|
96
|
+
/**
|
|
97
|
+
* Get the curvature at parameter t
|
|
98
|
+
* @param t Parameter value from 0 (start) to 1 (end)
|
|
99
|
+
* @returns Curvature value at parameter t
|
|
100
|
+
*/
|
|
101
|
+
curvatureAtT(t: number): number;
|
|
102
|
+
/**
|
|
103
|
+
* Get the start point (p0)
|
|
104
|
+
*/
|
|
105
|
+
getStart(): Vector3Tuple;
|
|
106
|
+
/**
|
|
107
|
+
* Get the end point (p3)
|
|
108
|
+
*/
|
|
109
|
+
getEnd(): Vector3Tuple;
|
|
110
|
+
/**
|
|
111
|
+
* Approximate the arc length of the curve using numerical integration
|
|
112
|
+
* @param numSamples Number of samples for approximation. Default: 50
|
|
113
|
+
*/
|
|
114
|
+
getApproximateLength(numSamples?: number): number;
|
|
115
|
+
/**
|
|
116
|
+
* Split the curve at parameter t into two curves
|
|
117
|
+
* @param t Parameter value to split at (0 to 1)
|
|
118
|
+
* @returns Two CubicBezier curves [left, right]
|
|
119
|
+
*/
|
|
120
|
+
splitAtT(t: number): [CubicBezier, CubicBezier];
|
|
121
|
+
/**
|
|
122
|
+
* Create a copy of this CubicBezier
|
|
123
|
+
*/
|
|
124
|
+
protected _createCopy(): CubicBezier;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=CubicBezier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubicBezier.d.ts","sourceRoot":"","sources":["../../../src/mobjects/geometry/CubicBezier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;AAEzF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,+CAA+C;IAC/C,MAAM,EAAE,iBAAiB,CAAC;IAC1B,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,WAAY,SAAQ,QAAQ;IACvC,OAAO,CAAC,cAAc,CAAoB;gBAE9B,OAAO,EAAE,kBAAkB;IAwBvC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,gBAAgB,IAAI,iBAAiB;IASrC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAWjD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY;IAInD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI;IAMhE;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY;IAiBjC;;;;OAIG;IACH,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY;IAoBnC;;;;OAIG;IACH,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY;IAa7C;;;;OAIG;IACH,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY;IAMlC;;;;OAIG;IACH,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY;IAgB5C;;;;OAIG;IACH,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAgB/B;;OAEG;IACH,QAAQ,IAAI,YAAY;IAIxB;;OAEG;IACH,MAAM,IAAI,YAAY;IAItB;;;OAGG;IACH,oBAAoB,CAAC,UAAU,GAAE,MAAW,GAAG,MAAM;IAmBrD;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC;IAuC/C;;OAEG;cACgB,WAAW,IAAI,WAAW;CAO9C"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { VMobject } from '../../core/VMobject';
|
|
2
|
+
import { Vector3Tuple } from '../../core/Mobject';
|
|
3
|
+
import { Line } from './Line';
|
|
4
|
+
/**
|
|
5
|
+
* Options for creating a DashedLine
|
|
6
|
+
*/
|
|
7
|
+
export interface DashedLineOptions {
|
|
8
|
+
/** Start point of the line. Default: [0, 0, 0] */
|
|
9
|
+
start?: Vector3Tuple;
|
|
10
|
+
/** End point of the line. Default: [1, 0, 0] */
|
|
11
|
+
end?: Vector3Tuple;
|
|
12
|
+
/** Length of each dash. Default: 0.1 */
|
|
13
|
+
dashLength?: number;
|
|
14
|
+
/** Ratio of dash length to total (dash + gap). Default: 0.5 */
|
|
15
|
+
dashRatio?: number;
|
|
16
|
+
/** Stroke color as CSS color string. Default: Manim's blue (#58C4DD) */
|
|
17
|
+
color?: string;
|
|
18
|
+
/** Stroke width in pixels. Default: 4 (Manim's default) */
|
|
19
|
+
strokeWidth?: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* DashedLine - A dashed line segment VMobject
|
|
23
|
+
*
|
|
24
|
+
* Creates a line made up of multiple small line segments with gaps between them.
|
|
25
|
+
* The dashes are stored as children for proper rendering.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // Create a horizontal dashed line
|
|
30
|
+
* const dashed = new DashedLine();
|
|
31
|
+
*
|
|
32
|
+
* // Create a dashed diagonal with custom dash length
|
|
33
|
+
* const diagonal = new DashedLine({
|
|
34
|
+
* start: [-1, -1, 0],
|
|
35
|
+
* end: [1, 1, 0],
|
|
36
|
+
* dashLength: 0.2,
|
|
37
|
+
* dashRatio: 0.6
|
|
38
|
+
* });
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare class DashedLine extends VMobject {
|
|
42
|
+
private _start;
|
|
43
|
+
private _end;
|
|
44
|
+
private _dashLength;
|
|
45
|
+
private _dashRatio;
|
|
46
|
+
private _dashes;
|
|
47
|
+
constructor(options?: DashedLineOptions);
|
|
48
|
+
/**
|
|
49
|
+
* Generate the dash segments along the line
|
|
50
|
+
*/
|
|
51
|
+
private _generateDashes;
|
|
52
|
+
/**
|
|
53
|
+
* Get the individual dash segments
|
|
54
|
+
*/
|
|
55
|
+
getDashes(): Line[];
|
|
56
|
+
/**
|
|
57
|
+
* Get the start point of the dashed line
|
|
58
|
+
*/
|
|
59
|
+
getStart(): Vector3Tuple;
|
|
60
|
+
/**
|
|
61
|
+
* Set the start point of the dashed line
|
|
62
|
+
*/
|
|
63
|
+
setStart(point: Vector3Tuple): this;
|
|
64
|
+
/**
|
|
65
|
+
* Get the end point of the dashed line
|
|
66
|
+
*/
|
|
67
|
+
getEnd(): Vector3Tuple;
|
|
68
|
+
/**
|
|
69
|
+
* Set the end point of the dashed line
|
|
70
|
+
*/
|
|
71
|
+
setEnd(point: Vector3Tuple): this;
|
|
72
|
+
/**
|
|
73
|
+
* Get the dash length
|
|
74
|
+
*/
|
|
75
|
+
getDashLength(): number;
|
|
76
|
+
/**
|
|
77
|
+
* Set the dash length
|
|
78
|
+
*/
|
|
79
|
+
setDashLength(length: number): this;
|
|
80
|
+
/**
|
|
81
|
+
* Get the dash ratio
|
|
82
|
+
*/
|
|
83
|
+
getDashRatio(): number;
|
|
84
|
+
/**
|
|
85
|
+
* Set the dash ratio
|
|
86
|
+
*/
|
|
87
|
+
setDashRatio(ratio: number): this;
|
|
88
|
+
/**
|
|
89
|
+
* Get the total length of the line
|
|
90
|
+
*/
|
|
91
|
+
getLength(): number;
|
|
92
|
+
/**
|
|
93
|
+
* Override setColor to propagate to dashes
|
|
94
|
+
*/
|
|
95
|
+
setColor(color: string): this;
|
|
96
|
+
/**
|
|
97
|
+
* Override setStrokeWidth to propagate to dashes
|
|
98
|
+
*/
|
|
99
|
+
setStrokeWidth(width: number): this;
|
|
100
|
+
/**
|
|
101
|
+
* Override setOpacity to propagate to dashes
|
|
102
|
+
*/
|
|
103
|
+
setOpacity(opacity: number): this;
|
|
104
|
+
/**
|
|
105
|
+
* Create a copy of this DashedLine
|
|
106
|
+
*/
|
|
107
|
+
protected _createCopy(): DashedLine;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=DashedLine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashedLine.d.ts","sourceRoot":"","sources":["../../../src/mobjects/geometry/DashedLine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,gDAAgD;IAChD,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,UAAW,SAAQ,QAAQ;IACtC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAc;gBAEjB,OAAO,GAAE,iBAAsB;IAwB3C;;OAEG;IACH,OAAO,CAAC,eAAe;IAiEvB;;OAEG;IACH,SAAS,IAAI,IAAI,EAAE;IAInB;;OAEG;IACH,QAAQ,IAAI,YAAY;IAIxB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAMnC;;OAEG;IACH,MAAM,IAAI,YAAY;IAItB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAMjC;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMnC;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMjC;;OAEG;IACH,SAAS,IAAI,MAAM;IAOnB;;OAEG;IACM,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQtC;;OAEG;IACM,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ5C;;OAEG;IACM,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQ1C;;OAEG;cACgB,WAAW,IAAI,UAAU;CAU7C"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { VMobject } from '../../core/VMobject';
|
|
2
|
+
import { Group } from '../../core/Group';
|
|
3
|
+
/**
|
|
4
|
+
* Options for creating a DashedVMobject
|
|
5
|
+
*/
|
|
6
|
+
export interface DashedVMobjectOptions {
|
|
7
|
+
/** The VMobject to create a dashed version of */
|
|
8
|
+
vmobject: VMobject;
|
|
9
|
+
/** Number of dashes. Default: 15 */
|
|
10
|
+
numDashes?: number;
|
|
11
|
+
/** Ratio of dash length to total (dash + gap). Default: 0.5 */
|
|
12
|
+
dashRatio?: number;
|
|
13
|
+
/** Override color. Default: uses vmobject's color */
|
|
14
|
+
color?: string;
|
|
15
|
+
/** Override stroke width. Default: uses vmobject's stroke width */
|
|
16
|
+
strokeWidth?: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* DashedVMobject - Creates a dashed version of any VMobject
|
|
20
|
+
*
|
|
21
|
+
* Takes any VMobject and creates a dashed version by sampling points
|
|
22
|
+
* along the original path. Each dash is a separate VMobject child.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* // Create a dashed circle
|
|
27
|
+
* const circle = new Circle({ radius: 2 });
|
|
28
|
+
* const dashedCircle = new DashedVMobject({ vmobject: circle });
|
|
29
|
+
*
|
|
30
|
+
* // Create a dashed arc with more dashes
|
|
31
|
+
* const arc = new Arc({ angle: Math.PI });
|
|
32
|
+
* const dashedArc = new DashedVMobject({
|
|
33
|
+
* vmobject: arc,
|
|
34
|
+
* numDashes: 20,
|
|
35
|
+
* dashRatio: 0.6
|
|
36
|
+
* });
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare class DashedVMobject extends Group {
|
|
40
|
+
private _sourceVMobject;
|
|
41
|
+
private _numDashes;
|
|
42
|
+
private _dashRatio;
|
|
43
|
+
private _dashColor;
|
|
44
|
+
private _dashStrokeWidth;
|
|
45
|
+
private _dashSegments;
|
|
46
|
+
constructor(options: DashedVMobjectOptions);
|
|
47
|
+
/**
|
|
48
|
+
* Generate dashes by sampling the source VMobject's points
|
|
49
|
+
*/
|
|
50
|
+
private _generateDashes;
|
|
51
|
+
/**
|
|
52
|
+
* Sample evenly spaced points along a Bezier path
|
|
53
|
+
*/
|
|
54
|
+
private _samplePathPoints;
|
|
55
|
+
/**
|
|
56
|
+
* Evaluate a cubic Bezier curve at parameter t
|
|
57
|
+
*/
|
|
58
|
+
private _evaluateCubicBezier;
|
|
59
|
+
/**
|
|
60
|
+
* Calculate the total path length from sampled points
|
|
61
|
+
*/
|
|
62
|
+
private _calculatePathLength;
|
|
63
|
+
/**
|
|
64
|
+
* Get points within a length range along the path
|
|
65
|
+
*/
|
|
66
|
+
private _getPointsInRange;
|
|
67
|
+
/**
|
|
68
|
+
* Get the individual dash segments
|
|
69
|
+
*/
|
|
70
|
+
getDashes(): VMobject[];
|
|
71
|
+
/**
|
|
72
|
+
* Get the number of dashes
|
|
73
|
+
*/
|
|
74
|
+
getNumDashes(): number;
|
|
75
|
+
/**
|
|
76
|
+
* Set the number of dashes and regenerate
|
|
77
|
+
*/
|
|
78
|
+
setNumDashes(num: number): this;
|
|
79
|
+
/**
|
|
80
|
+
* Get the dash ratio
|
|
81
|
+
*/
|
|
82
|
+
getDashRatio(): number;
|
|
83
|
+
/**
|
|
84
|
+
* Set the dash ratio and regenerate
|
|
85
|
+
*/
|
|
86
|
+
setDashRatio(ratio: number): this;
|
|
87
|
+
/**
|
|
88
|
+
* Get the source VMobject
|
|
89
|
+
*/
|
|
90
|
+
getSourceVMobject(): VMobject;
|
|
91
|
+
/**
|
|
92
|
+
* Create a copy of this DashedVMobject
|
|
93
|
+
*/
|
|
94
|
+
protected _createCopy(): DashedVMobject;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=DashedVMobject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DashedVMobject.d.ts","sourceRoot":"","sources":["../../../src/mobjects/geometry/DashedVMobject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,QAAQ,EAAE,QAAQ,CAAC;IACnB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,aAAa,CAAkB;gBAE3B,OAAO,EAAE,qBAAqB;IAoB1C;;OAEG;IACH,OAAO,CAAC,eAAe;IAyDvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwDzB;;OAEG;IACH,SAAS,IAAI,QAAQ,EAAE;IAIvB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM/B;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMjC;;OAEG;IACH,iBAAiB,IAAI,QAAQ;IAI7B;;OAEG;cACgB,WAAW,IAAI,cAAc;CASjD"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Circle } from './Circle';
|
|
2
|
+
import { Vector3Tuple } from '../../core/Mobject';
|
|
3
|
+
/**
|
|
4
|
+
* Options for creating a Dot
|
|
5
|
+
*/
|
|
6
|
+
export interface DotOptions {
|
|
7
|
+
/** Position of the dot. Default: [0, 0, 0] */
|
|
8
|
+
point?: Vector3Tuple;
|
|
9
|
+
/** Radius of the dot. Default: 0.08 */
|
|
10
|
+
radius?: number;
|
|
11
|
+
/** Fill color as CSS color string. Default: white (#FFFFFF) */
|
|
12
|
+
color?: string;
|
|
13
|
+
/** Fill opacity from 0 to 1. Default: 1 */
|
|
14
|
+
fillOpacity?: number;
|
|
15
|
+
/** Stroke width in pixels. Default: 0 (no stroke) */
|
|
16
|
+
strokeWidth?: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Dot - A small filled circle for marking points
|
|
20
|
+
*
|
|
21
|
+
* Creates a small filled circle, typically used for marking specific points
|
|
22
|
+
* in visualizations. Extends Circle with different defaults appropriate
|
|
23
|
+
* for point markers.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Create a dot at the origin
|
|
28
|
+
* const dot = new Dot();
|
|
29
|
+
*
|
|
30
|
+
* // Create a red dot at a specific position
|
|
31
|
+
* const redDot = new Dot({
|
|
32
|
+
* point: [1, 2, 0],
|
|
33
|
+
* color: '#ff0000'
|
|
34
|
+
* });
|
|
35
|
+
*
|
|
36
|
+
* // Create a larger dot
|
|
37
|
+
* const largeDot = new Dot({ radius: 0.15 });
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export declare class Dot extends Circle {
|
|
41
|
+
private _point;
|
|
42
|
+
constructor(options?: DotOptions);
|
|
43
|
+
/**
|
|
44
|
+
* Shift the dot by updating its internal point and Circle center.
|
|
45
|
+
* Does not change Mobject.position to avoid double-counting in THREE.js hierarchy.
|
|
46
|
+
*/
|
|
47
|
+
shift(delta: Vector3Tuple): this;
|
|
48
|
+
/**
|
|
49
|
+
* Move the dot to a new position
|
|
50
|
+
* @param point Target position [x, y, z]
|
|
51
|
+
*/
|
|
52
|
+
moveTo(point: Vector3Tuple): this;
|
|
53
|
+
/**
|
|
54
|
+
* Get the position of the dot
|
|
55
|
+
*/
|
|
56
|
+
getPoint(): Vector3Tuple;
|
|
57
|
+
/**
|
|
58
|
+
* Set the position of the dot (alias for moveTo)
|
|
59
|
+
*/
|
|
60
|
+
setPoint(point: Vector3Tuple): this;
|
|
61
|
+
/**
|
|
62
|
+
* Create a copy of this Dot
|
|
63
|
+
*/
|
|
64
|
+
protected _createCopy(): Dot;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* SmallDot - An even smaller dot for fine details
|
|
68
|
+
*
|
|
69
|
+
* A convenience class that creates a very small dot.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```typescript
|
|
73
|
+
* const smallDot = new SmallDot({ point: [1, 0, 0] });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare class SmallDot extends Dot {
|
|
77
|
+
constructor(options?: Omit<DotOptions, 'radius'>);
|
|
78
|
+
/**
|
|
79
|
+
* Create a copy of this SmallDot
|
|
80
|
+
*/
|
|
81
|
+
protected _createCopy(): SmallDot;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* LargeDot - A larger dot for emphasis
|
|
85
|
+
*
|
|
86
|
+
* A convenience class that creates a larger dot.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const largeDot = new LargeDot({ point: [0, 1, 0] });
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare class LargeDot extends Dot {
|
|
94
|
+
constructor(options?: Omit<DotOptions, 'radius'>);
|
|
95
|
+
/**
|
|
96
|
+
* Create a copy of this LargeDot
|
|
97
|
+
*/
|
|
98
|
+
protected _createCopy(): LargeDot;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=Dot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dot.d.ts","sourceRoot":"","sources":["../../../src/mobjects/geometry/Dot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,GAAI,SAAQ,MAAM;IAC7B,OAAO,CAAC,MAAM,CAAe;gBAEjB,OAAO,GAAE,UAAe;IAwBpC;;;OAGG;IACM,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAQzC;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAMjC;;OAEG;IACH,QAAQ,IAAI,YAAY;IAIxB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAInC;;OAEG;cACgB,WAAW,IAAI,GAAG;CAStC;AAED;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,GAAG;gBACnB,OAAO,GAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAM;IAOpD;;OAEG;cACgB,WAAW,IAAI,QAAQ;CAQ3C;AAED;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,GAAG;gBACnB,OAAO,GAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAM;IAOpD;;OAEG;cACgB,WAAW,IAAI,QAAQ;CAQ3C"}
|