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.
Files changed (356) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +109 -0
  3. package/dist/animation/Animation.d.ts +69 -0
  4. package/dist/animation/Animation.d.ts.map +1 -0
  5. package/dist/animation/AnimationGroup.d.ts +48 -0
  6. package/dist/animation/AnimationGroup.d.ts.map +1 -0
  7. package/dist/animation/LaggedStart.d.ts +25 -0
  8. package/dist/animation/LaggedStart.d.ts.map +1 -0
  9. package/dist/animation/MaintainPositionRelativeTo.d.ts +23 -0
  10. package/dist/animation/MaintainPositionRelativeTo.d.ts.map +1 -0
  11. package/dist/animation/Succession.d.ts +19 -0
  12. package/dist/animation/Succession.d.ts.map +1 -0
  13. package/dist/animation/Timeline.d.ts +89 -0
  14. package/dist/animation/Timeline.d.ts.map +1 -0
  15. package/dist/animation/UpdateFromAlphaFunc.d.ts +32 -0
  16. package/dist/animation/UpdateFromAlphaFunc.d.ts.map +1 -0
  17. package/dist/animation/UpdateFromFunc.d.ts +30 -0
  18. package/dist/animation/UpdateFromFunc.d.ts.map +1 -0
  19. package/dist/animation/changing/index.d.ts +213 -0
  20. package/dist/animation/changing/index.d.ts.map +1 -0
  21. package/dist/animation/composition/LaggedStartMap.d.ts +47 -0
  22. package/dist/animation/composition/LaggedStartMap.d.ts.map +1 -0
  23. package/dist/animation/composition/index.d.ts +5 -0
  24. package/dist/animation/composition/index.d.ts.map +1 -0
  25. package/dist/animation/creation/Create.d.ts +232 -0
  26. package/dist/animation/creation/Create.d.ts.map +1 -0
  27. package/dist/animation/creation/CreationExtensions.d.ts +127 -0
  28. package/dist/animation/creation/CreationExtensions.d.ts.map +1 -0
  29. package/dist/animation/creation/TypeWithCursor.d.ts +133 -0
  30. package/dist/animation/creation/TypeWithCursor.d.ts.map +1 -0
  31. package/dist/animation/creation/index.d.ts +4 -0
  32. package/dist/animation/creation/index.d.ts.map +1 -0
  33. package/dist/animation/fading/FadeIn.d.ts +31 -0
  34. package/dist/animation/fading/FadeIn.d.ts.map +1 -0
  35. package/dist/animation/fading/FadeOut.d.ts +32 -0
  36. package/dist/animation/fading/FadeOut.d.ts.map +1 -0
  37. package/dist/animation/fading/index.d.ts +3 -0
  38. package/dist/animation/fading/index.d.ts.map +1 -0
  39. package/dist/animation/growing/index.d.ts +103 -0
  40. package/dist/animation/growing/index.d.ts.map +1 -0
  41. package/dist/animation/index.d.ts +20 -0
  42. package/dist/animation/index.d.ts.map +1 -0
  43. package/dist/animation/indication/ApplyWave.d.ts +51 -0
  44. package/dist/animation/indication/ApplyWave.d.ts.map +1 -0
  45. package/dist/animation/indication/Blink.d.ts +34 -0
  46. package/dist/animation/indication/Blink.d.ts.map +1 -0
  47. package/dist/animation/indication/Circumscribe.d.ts +54 -0
  48. package/dist/animation/indication/Circumscribe.d.ts.map +1 -0
  49. package/dist/animation/indication/Flash.d.ts +45 -0
  50. package/dist/animation/indication/Flash.d.ts.map +1 -0
  51. package/dist/animation/indication/FocusOn.d.ts +79 -0
  52. package/dist/animation/indication/FocusOn.d.ts.map +1 -0
  53. package/dist/animation/indication/Indicate.d.ts +30 -0
  54. package/dist/animation/indication/Indicate.d.ts.map +1 -0
  55. package/dist/animation/indication/ShowCreationThenDestruction.d.ts +26 -0
  56. package/dist/animation/indication/ShowCreationThenDestruction.d.ts.map +1 -0
  57. package/dist/animation/indication/ShowPassingFlash.d.ts +47 -0
  58. package/dist/animation/indication/ShowPassingFlash.d.ts.map +1 -0
  59. package/dist/animation/indication/ShowPassingFlashWithThinningStrokeWidth.d.ts +21 -0
  60. package/dist/animation/indication/ShowPassingFlashWithThinningStrokeWidth.d.ts.map +1 -0
  61. package/dist/animation/indication/Wiggle.d.ts +48 -0
  62. package/dist/animation/indication/Wiggle.d.ts.map +1 -0
  63. package/dist/animation/indication/WiggleOutThenIn.d.ts +44 -0
  64. package/dist/animation/indication/WiggleOutThenIn.d.ts.map +1 -0
  65. package/dist/animation/indication/index.d.ts +20 -0
  66. package/dist/animation/indication/index.d.ts.map +1 -0
  67. package/dist/animation/movement/Homotopy.d.ts +204 -0
  68. package/dist/animation/movement/Homotopy.d.ts.map +1 -0
  69. package/dist/animation/movement/MoveAlongPath.d.ts +48 -0
  70. package/dist/animation/movement/MoveAlongPath.d.ts.map +1 -0
  71. package/dist/animation/movement/Rotate.d.ts +47 -0
  72. package/dist/animation/movement/Rotate.d.ts.map +1 -0
  73. package/dist/animation/movement/Scale.d.ts +74 -0
  74. package/dist/animation/movement/Scale.d.ts.map +1 -0
  75. package/dist/animation/movement/Shift.d.ts +74 -0
  76. package/dist/animation/movement/Shift.d.ts.map +1 -0
  77. package/dist/animation/movement/index.d.ts +6 -0
  78. package/dist/animation/movement/index.d.ts.map +1 -0
  79. package/dist/animation/numbers/index.d.ts +152 -0
  80. package/dist/animation/numbers/index.d.ts.map +1 -0
  81. package/dist/animation/speed/index.d.ts +114 -0
  82. package/dist/animation/speed/index.d.ts.map +1 -0
  83. package/dist/animation/transform/ApplyPointwiseFunction.d.ts +23 -0
  84. package/dist/animation/transform/ApplyPointwiseFunction.d.ts.map +1 -0
  85. package/dist/animation/transform/Transform.d.ts +89 -0
  86. package/dist/animation/transform/Transform.d.ts.map +1 -0
  87. package/dist/animation/transform/TransformExtensions.d.ts +444 -0
  88. package/dist/animation/transform/TransformExtensions.d.ts.map +1 -0
  89. package/dist/animation/transform/TransformMatching.d.ts +138 -0
  90. package/dist/animation/transform/TransformMatching.d.ts.map +1 -0
  91. package/dist/animation/transform/index.d.ts +5 -0
  92. package/dist/animation/transform/index.d.ts.map +1 -0
  93. package/dist/animation/utility/index.d.ts +171 -0
  94. package/dist/animation/utility/index.d.ts.map +1 -0
  95. package/dist/constants/colors.d.ts +72 -0
  96. package/dist/constants/colors.d.ts.map +1 -0
  97. package/dist/constants/colors.test.d.ts +2 -0
  98. package/dist/constants/colors.test.d.ts.map +1 -0
  99. package/dist/constants/directions.test.d.ts +2 -0
  100. package/dist/constants/directions.test.d.ts.map +1 -0
  101. package/dist/constants/index.d.ts +16 -0
  102. package/dist/constants/index.d.ts.map +1 -0
  103. package/dist/core/AudioManager.d.ts +203 -0
  104. package/dist/core/AudioManager.d.ts.map +1 -0
  105. package/dist/core/Camera.d.ts +172 -0
  106. package/dist/core/Camera.d.ts.map +1 -0
  107. package/dist/core/Camera2DFrame.d.ts +31 -0
  108. package/dist/core/Camera2DFrame.d.ts.map +1 -0
  109. package/dist/core/CameraExtensions.d.ts +420 -0
  110. package/dist/core/CameraExtensions.d.ts.map +1 -0
  111. package/dist/core/CameraFrame.d.ts +178 -0
  112. package/dist/core/CameraFrame.d.ts.map +1 -0
  113. package/dist/core/Group.d.ts +139 -0
  114. package/dist/core/Group.d.ts.map +1 -0
  115. package/dist/core/InteractiveScene.d.ts +122 -0
  116. package/dist/core/InteractiveScene.d.ts.map +1 -0
  117. package/dist/core/Lighting.d.ts +128 -0
  118. package/dist/core/Lighting.d.ts.map +1 -0
  119. package/dist/core/Mobject.d.ts +488 -0
  120. package/dist/core/Mobject.d.ts.map +1 -0
  121. package/dist/core/Renderer.d.ts +84 -0
  122. package/dist/core/Renderer.d.ts.map +1 -0
  123. package/dist/core/Scene.d.ts +353 -0
  124. package/dist/core/Scene.d.ts.map +1 -0
  125. package/dist/core/SceneExtensions.d.ts +640 -0
  126. package/dist/core/SceneExtensions.d.ts.map +1 -0
  127. package/dist/core/SceneExtensions.test.d.ts +2 -0
  128. package/dist/core/SceneExtensions.test.d.ts.map +1 -0
  129. package/dist/core/StateManager.d.ts +193 -0
  130. package/dist/core/StateManager.d.ts.map +1 -0
  131. package/dist/core/VDict.d.ts +229 -0
  132. package/dist/core/VDict.d.ts.map +1 -0
  133. package/dist/core/VGroup.d.ts +200 -0
  134. package/dist/core/VGroup.d.ts.map +1 -0
  135. package/dist/core/VMobject.d.ts +419 -0
  136. package/dist/core/VMobject.d.ts.map +1 -0
  137. package/dist/core/index.d.ts +16 -0
  138. package/dist/core/index.d.ts.map +1 -0
  139. package/dist/examples.test.d.ts +2 -0
  140. package/dist/examples.test.d.ts.map +1 -0
  141. package/dist/export/GifExporter.d.ts +40 -0
  142. package/dist/export/GifExporter.d.ts.map +1 -0
  143. package/dist/export/VideoExporter.d.ts +135 -0
  144. package/dist/export/VideoExporter.d.ts.map +1 -0
  145. package/dist/export/index.d.ts +3 -0
  146. package/dist/export/index.d.ts.map +1 -0
  147. package/dist/index.d.ts +65 -0
  148. package/dist/index.d.ts.map +1 -0
  149. package/dist/index.js +49064 -0
  150. package/dist/integrations/index.d.ts +1 -0
  151. package/dist/integrations/index.d.ts.map +1 -0
  152. package/dist/integrations/react.d.ts +144 -0
  153. package/dist/integrations/react.d.ts.map +1 -0
  154. package/dist/integrations/react.js +570 -0
  155. package/dist/integrations/vue.d.ts +249 -0
  156. package/dist/integrations/vue.d.ts.map +1 -0
  157. package/dist/integrations/vue.js +560 -0
  158. package/dist/interaction/Clickable.d.ts +71 -0
  159. package/dist/interaction/Clickable.d.ts.map +1 -0
  160. package/dist/interaction/Controls.d.ts +174 -0
  161. package/dist/interaction/Controls.d.ts.map +1 -0
  162. package/dist/interaction/Draggable.d.ts +88 -0
  163. package/dist/interaction/Draggable.d.ts.map +1 -0
  164. package/dist/interaction/Hoverable.d.ts +82 -0
  165. package/dist/interaction/Hoverable.d.ts.map +1 -0
  166. package/dist/interaction/OrbitControls.d.ts +139 -0
  167. package/dist/interaction/OrbitControls.d.ts.map +1 -0
  168. package/dist/interaction/PlaybackControls.d.ts +113 -0
  169. package/dist/interaction/PlaybackControls.d.ts.map +1 -0
  170. package/dist/interaction/SelectionManager.d.ts +125 -0
  171. package/dist/interaction/SelectionManager.d.ts.map +1 -0
  172. package/dist/interaction/index.d.ts +12 -0
  173. package/dist/interaction/index.d.ts.map +1 -0
  174. package/dist/mobjects/fractals/MandelbrotSet.d.ts +92 -0
  175. package/dist/mobjects/fractals/MandelbrotSet.d.ts.map +1 -0
  176. package/dist/mobjects/fractals/NewtonFractal.d.ts +121 -0
  177. package/dist/mobjects/fractals/NewtonFractal.d.ts.map +1 -0
  178. package/dist/mobjects/fractals/index.d.ts +3 -0
  179. package/dist/mobjects/fractals/index.d.ts.map +1 -0
  180. package/dist/mobjects/frame/index.d.ts +188 -0
  181. package/dist/mobjects/frame/index.d.ts.map +1 -0
  182. package/dist/mobjects/geometry/AngleShapes.d.ts +326 -0
  183. package/dist/mobjects/geometry/AngleShapes.d.ts.map +1 -0
  184. package/dist/mobjects/geometry/Arc.d.ts +111 -0
  185. package/dist/mobjects/geometry/Arc.d.ts.map +1 -0
  186. package/dist/mobjects/geometry/ArcBetweenPoints.d.ts +68 -0
  187. package/dist/mobjects/geometry/ArcBetweenPoints.d.ts.map +1 -0
  188. package/dist/mobjects/geometry/ArcShapes.d.ts +659 -0
  189. package/dist/mobjects/geometry/ArcShapes.d.ts.map +1 -0
  190. package/dist/mobjects/geometry/Arrow.d.ts +130 -0
  191. package/dist/mobjects/geometry/Arrow.d.ts.map +1 -0
  192. package/dist/mobjects/geometry/ArrowTips.d.ts +238 -0
  193. package/dist/mobjects/geometry/ArrowTips.d.ts.map +1 -0
  194. package/dist/mobjects/geometry/BooleanOperations.d.ts +163 -0
  195. package/dist/mobjects/geometry/BooleanOperations.d.ts.map +1 -0
  196. package/dist/mobjects/geometry/Circle.d.ts +92 -0
  197. package/dist/mobjects/geometry/Circle.d.ts.map +1 -0
  198. package/dist/mobjects/geometry/CubicBezier.d.ts +126 -0
  199. package/dist/mobjects/geometry/CubicBezier.d.ts.map +1 -0
  200. package/dist/mobjects/geometry/DashedLine.d.ts +109 -0
  201. package/dist/mobjects/geometry/DashedLine.d.ts.map +1 -0
  202. package/dist/mobjects/geometry/DashedVMobject.d.ts +96 -0
  203. package/dist/mobjects/geometry/DashedVMobject.d.ts.map +1 -0
  204. package/dist/mobjects/geometry/Dot.d.ts +100 -0
  205. package/dist/mobjects/geometry/Dot.d.ts.map +1 -0
  206. package/dist/mobjects/geometry/LabeledGeometry.d.ts +372 -0
  207. package/dist/mobjects/geometry/LabeledGeometry.d.ts.map +1 -0
  208. package/dist/mobjects/geometry/Line.d.ts +83 -0
  209. package/dist/mobjects/geometry/Line.d.ts.map +1 -0
  210. package/dist/mobjects/geometry/Polygon.d.ts +155 -0
  211. package/dist/mobjects/geometry/Polygon.d.ts.map +1 -0
  212. package/dist/mobjects/geometry/PolygonExtensions.d.ts +412 -0
  213. package/dist/mobjects/geometry/PolygonExtensions.d.ts.map +1 -0
  214. package/dist/mobjects/geometry/Rectangle.d.ts +123 -0
  215. package/dist/mobjects/geometry/Rectangle.d.ts.map +1 -0
  216. package/dist/mobjects/geometry/ShapeMatchers.d.ts +252 -0
  217. package/dist/mobjects/geometry/ShapeMatchers.d.ts.map +1 -0
  218. package/dist/mobjects/geometry/index.d.ts +25 -0
  219. package/dist/mobjects/geometry/index.d.ts.map +1 -0
  220. package/dist/mobjects/graph/index.d.ts +425 -0
  221. package/dist/mobjects/graph/index.d.ts.map +1 -0
  222. package/dist/mobjects/graphing/Axes.d.ts +254 -0
  223. package/dist/mobjects/graphing/Axes.d.ts.map +1 -0
  224. package/dist/mobjects/graphing/BarChart.d.ts +241 -0
  225. package/dist/mobjects/graphing/BarChart.d.ts.map +1 -0
  226. package/dist/mobjects/graphing/ComplexPlane.d.ts +311 -0
  227. package/dist/mobjects/graphing/ComplexPlane.d.ts.map +1 -0
  228. package/dist/mobjects/graphing/FunctionGraph.d.ts +123 -0
  229. package/dist/mobjects/graphing/FunctionGraph.d.ts.map +1 -0
  230. package/dist/mobjects/graphing/ImplicitFunction.d.ts +131 -0
  231. package/dist/mobjects/graphing/ImplicitFunction.d.ts.map +1 -0
  232. package/dist/mobjects/graphing/NumberLine.d.ts +195 -0
  233. package/dist/mobjects/graphing/NumberLine.d.ts.map +1 -0
  234. package/dist/mobjects/graphing/NumberPlane.d.ts +91 -0
  235. package/dist/mobjects/graphing/NumberPlane.d.ts.map +1 -0
  236. package/dist/mobjects/graphing/ParametricFunction.d.ts +111 -0
  237. package/dist/mobjects/graphing/ParametricFunction.d.ts.map +1 -0
  238. package/dist/mobjects/graphing/Vector.d.ts +121 -0
  239. package/dist/mobjects/graphing/Vector.d.ts.map +1 -0
  240. package/dist/mobjects/graphing/VectorField.d.ts +321 -0
  241. package/dist/mobjects/graphing/VectorField.d.ts.map +1 -0
  242. package/dist/mobjects/graphing/index.d.ts +18 -0
  243. package/dist/mobjects/graphing/index.d.ts.map +1 -0
  244. package/dist/mobjects/image/index.d.ts +223 -0
  245. package/dist/mobjects/image/index.d.ts.map +1 -0
  246. package/dist/mobjects/matrix/Matrix.d.ts +260 -0
  247. package/dist/mobjects/matrix/Matrix.d.ts.map +1 -0
  248. package/dist/mobjects/matrix/index.d.ts +8 -0
  249. package/dist/mobjects/matrix/index.d.ts.map +1 -0
  250. package/dist/mobjects/point/index.d.ts +707 -0
  251. package/dist/mobjects/point/index.d.ts.map +1 -0
  252. package/dist/mobjects/probability/DiceFace.d.ts +137 -0
  253. package/dist/mobjects/probability/DiceFace.d.ts.map +1 -0
  254. package/dist/mobjects/probability/SampleSpace.d.ts +267 -0
  255. package/dist/mobjects/probability/SampleSpace.d.ts.map +1 -0
  256. package/dist/mobjects/probability/index.d.ts +9 -0
  257. package/dist/mobjects/probability/index.d.ts.map +1 -0
  258. package/dist/mobjects/svg/Brace.d.ts +308 -0
  259. package/dist/mobjects/svg/Brace.d.ts.map +1 -0
  260. package/dist/mobjects/svg/SVGMobject.d.ts +64 -0
  261. package/dist/mobjects/svg/SVGMobject.d.ts.map +1 -0
  262. package/dist/mobjects/svg/index.d.ts +10 -0
  263. package/dist/mobjects/svg/index.d.ts.map +1 -0
  264. package/dist/mobjects/table/Table.d.ts +315 -0
  265. package/dist/mobjects/table/Table.d.ts.map +1 -0
  266. package/dist/mobjects/table/index.d.ts +8 -0
  267. package/dist/mobjects/table/index.d.ts.map +1 -0
  268. package/dist/mobjects/text/Code.d.ts +244 -0
  269. package/dist/mobjects/text/Code.d.ts.map +1 -0
  270. package/dist/mobjects/text/DecimalNumber.d.ts +199 -0
  271. package/dist/mobjects/text/DecimalNumber.d.ts.map +1 -0
  272. package/dist/mobjects/text/GlyphVMobject.d.ts +76 -0
  273. package/dist/mobjects/text/GlyphVMobject.d.ts.map +1 -0
  274. package/dist/mobjects/text/MarkupText.d.ts +161 -0
  275. package/dist/mobjects/text/MarkupText.d.ts.map +1 -0
  276. package/dist/mobjects/text/MathJaxRenderer.d.ts +49 -0
  277. package/dist/mobjects/text/MathJaxRenderer.d.ts.map +1 -0
  278. package/dist/mobjects/text/MathTex.d.ts +242 -0
  279. package/dist/mobjects/text/MathTex.d.ts.map +1 -0
  280. package/dist/mobjects/text/Paragraph.d.ts +86 -0
  281. package/dist/mobjects/text/Paragraph.d.ts.map +1 -0
  282. package/dist/mobjects/text/Tex.d.ts +40 -0
  283. package/dist/mobjects/text/Tex.d.ts.map +1 -0
  284. package/dist/mobjects/text/Text.d.ts +171 -0
  285. package/dist/mobjects/text/Text.d.ts.map +1 -0
  286. package/dist/mobjects/text/TextExtensions.d.ts +383 -0
  287. package/dist/mobjects/text/TextExtensions.d.ts.map +1 -0
  288. package/dist/mobjects/text/TextGlyphGroup.d.ts +48 -0
  289. package/dist/mobjects/text/TextGlyphGroup.d.ts.map +1 -0
  290. package/dist/mobjects/text/Variable.d.ts +160 -0
  291. package/dist/mobjects/text/Variable.d.ts.map +1 -0
  292. package/dist/mobjects/text/index.d.ts +21 -0
  293. package/dist/mobjects/text/index.d.ts.map +1 -0
  294. package/dist/mobjects/text/katex-styles.d.ts +23 -0
  295. package/dist/mobjects/text/katex-styles.d.ts.map +1 -0
  296. package/dist/mobjects/text/svgPathParser.d.ts +39 -0
  297. package/dist/mobjects/text/svgPathParser.d.ts.map +1 -0
  298. package/dist/mobjects/three-d/Arrow3D.d.ts +136 -0
  299. package/dist/mobjects/three-d/Arrow3D.d.ts.map +1 -0
  300. package/dist/mobjects/three-d/Cube.d.ts +186 -0
  301. package/dist/mobjects/three-d/Cube.d.ts.map +1 -0
  302. package/dist/mobjects/three-d/Cylinder.d.ts +189 -0
  303. package/dist/mobjects/three-d/Cylinder.d.ts.map +1 -0
  304. package/dist/mobjects/three-d/Line3D.d.ts +100 -0
  305. package/dist/mobjects/three-d/Line3D.d.ts.map +1 -0
  306. package/dist/mobjects/three-d/ParametricSurface.d.ts +86 -0
  307. package/dist/mobjects/three-d/ParametricSurface.d.ts.map +1 -0
  308. package/dist/mobjects/three-d/Polyhedra.d.ts +271 -0
  309. package/dist/mobjects/three-d/Polyhedra.d.ts.map +1 -0
  310. package/dist/mobjects/three-d/Sphere.d.ts +100 -0
  311. package/dist/mobjects/three-d/Sphere.d.ts.map +1 -0
  312. package/dist/mobjects/three-d/Surface3D.d.ts +156 -0
  313. package/dist/mobjects/three-d/Surface3D.d.ts.map +1 -0
  314. package/dist/mobjects/three-d/TexturedSurface.d.ts +208 -0
  315. package/dist/mobjects/three-d/TexturedSurface.d.ts.map +1 -0
  316. package/dist/mobjects/three-d/ThreeDAxes.d.ts +172 -0
  317. package/dist/mobjects/three-d/ThreeDAxes.d.ts.map +1 -0
  318. package/dist/mobjects/three-d/ThreeDExtensions.d.ts +335 -0
  319. package/dist/mobjects/three-d/ThreeDExtensions.d.ts.map +1 -0
  320. package/dist/mobjects/three-d/Torus.d.ts +123 -0
  321. package/dist/mobjects/three-d/Torus.d.ts.map +1 -0
  322. package/dist/mobjects/three-d/index.d.ts +19 -0
  323. package/dist/mobjects/three-d/index.d.ts.map +1 -0
  324. package/dist/mobjects/value-tracker/ValueTracker.d.ts +248 -0
  325. package/dist/mobjects/value-tracker/ValueTracker.d.ts.map +1 -0
  326. package/dist/mobjects/value-tracker/index.d.ts +9 -0
  327. package/dist/mobjects/value-tracker/index.d.ts.map +1 -0
  328. package/dist/rate-functions/index.d.ts +81 -0
  329. package/dist/rate-functions/index.d.ts.map +1 -0
  330. package/dist/rate-functions/rateFunctions.test.d.ts +2 -0
  331. package/dist/rate-functions/rateFunctions.test.d.ts.map +1 -0
  332. package/dist/rendering/BezierRenderer.d.ts +112 -0
  333. package/dist/rendering/BezierRenderer.d.ts.map +1 -0
  334. package/dist/rendering/BezierShaderMaterial.d.ts +50 -0
  335. package/dist/rendering/BezierShaderMaterial.d.ts.map +1 -0
  336. package/dist/rendering/index.d.ts +10 -0
  337. package/dist/rendering/index.d.ts.map +1 -0
  338. package/dist/utils/Performance.d.ts +118 -0
  339. package/dist/utils/Performance.d.ts.map +1 -0
  340. package/dist/utils/featureFlags.d.ts +15 -0
  341. package/dist/utils/featureFlags.d.ts.map +1 -0
  342. package/dist/utils/hungarian.d.ts +66 -0
  343. package/dist/utils/hungarian.d.ts.map +1 -0
  344. package/dist/utils/logger.d.ts +14 -0
  345. package/dist/utils/logger.d.ts.map +1 -0
  346. package/dist/utils/math.d.ts +52 -0
  347. package/dist/utils/math.d.ts.map +1 -0
  348. package/dist/utils/ode.d.ts +135 -0
  349. package/dist/utils/ode.d.ts.map +1 -0
  350. package/dist/utils/skeletonize.d.ts +35 -0
  351. package/dist/utils/skeletonize.d.ts.map +1 -0
  352. package/dist/utils/triangulate.d.ts +54 -0
  353. package/dist/utils/triangulate.d.ts.map +1 -0
  354. package/dist/utils/vectors.d.ts +57 -0
  355. package/dist/utils/vectors.d.ts.map +1 -0
  356. package/package.json +122 -0
@@ -0,0 +1,125 @@
1
+ import { Mobject } from '../core/Mobject';
2
+ import { Scene } from '../core/Scene';
3
+ /**
4
+ * Options for configuring the SelectionManager.
5
+ */
6
+ export interface SelectionManagerOptions {
7
+ /** Color of the selection highlight outline. Defaults to '#FFFF00' (yellow). */
8
+ highlightColor?: string;
9
+ /** Width of the selection highlight outline. Defaults to 2. */
10
+ highlightWidth?: number;
11
+ /** Opacity of the box selection overlay. Defaults to 0.15. */
12
+ boxSelectOpacity?: number;
13
+ /** Color of the box selection overlay. Defaults to '#58C4DD' (manim blue). */
14
+ boxSelectColor?: string;
15
+ /** Callback when selection changes. */
16
+ onSelectionChange?: (selected: ReadonlySet<Mobject>) => void;
17
+ }
18
+ /**
19
+ * Manages interactive selection of mobjects in a Scene.
20
+ *
21
+ * Attach to a Scene to enable click-to-select, shift-multi-select,
22
+ * and box/lasso selection with visual feedback.
23
+ */
24
+ export declare class SelectionManager {
25
+ private _scene;
26
+ private _selected;
27
+ private _options;
28
+ private _enabled;
29
+ private _raycaster;
30
+ private _mouse;
31
+ private _highlights;
32
+ private _isBoxSelecting;
33
+ private _boxStart;
34
+ private _boxOverlay;
35
+ private _dragThreshold;
36
+ private _onMouseDown;
37
+ private _onMouseMove;
38
+ private _onMouseUp;
39
+ private _onKeyDown;
40
+ /**
41
+ * Create a new SelectionManager.
42
+ * @param scene - The Scene whose mobjects can be selected
43
+ * @param options - Configuration options
44
+ */
45
+ constructor(scene: Scene, options?: SelectionManagerOptions);
46
+ /** Currently selected mobjects (read-only view). */
47
+ get selected(): ReadonlySet<Mobject>;
48
+ /** Number of currently selected mobjects. */
49
+ get count(): number;
50
+ /** Whether the manager is enabled. */
51
+ get isEnabled(): boolean;
52
+ /** Enable selection interactions. */
53
+ enable(): void;
54
+ /** Disable selection interactions. Clears current selection. */
55
+ disable(): void;
56
+ /**
57
+ * Programmatically select one or more mobjects.
58
+ * @param mobjects - Mobjects to select
59
+ */
60
+ select(...mobjects: Mobject[]): void;
61
+ /**
62
+ * Programmatically deselect one or more mobjects.
63
+ * @param mobjects - Mobjects to deselect
64
+ */
65
+ deselect(...mobjects: Mobject[]): void;
66
+ /**
67
+ * Toggle selection state of a mobject.
68
+ * @param mob - Mobject to toggle
69
+ */
70
+ toggleSelect(mob: Mobject): void;
71
+ /**
72
+ * Select all mobjects currently in the scene.
73
+ */
74
+ selectAll(): void;
75
+ /**
76
+ * Deselect all mobjects, removing all highlights.
77
+ */
78
+ deselectAll(): void;
79
+ /**
80
+ * Check if a specific mobject is selected.
81
+ */
82
+ isSelected(mob: Mobject): boolean;
83
+ /**
84
+ * Get selected mobjects as an array (ordered by selection time).
85
+ */
86
+ getSelectedArray(): Mobject[];
87
+ /**
88
+ * Clean up event listeners and highlights.
89
+ */
90
+ dispose(): void;
91
+ private _setupEventListeners;
92
+ private _teardownEventListeners;
93
+ private _handleMouseDown;
94
+ private _handleMouseMove;
95
+ private _handleMouseUp;
96
+ private _handleClick;
97
+ private _handleKeyDown;
98
+ private _createBoxOverlay;
99
+ private _updateBoxOverlay;
100
+ private _removeBoxOverlay;
101
+ private _finishBoxSelect;
102
+ /**
103
+ * Pick the topmost scene mobject under the given screen coordinates.
104
+ * Uses Three.js Raycaster for accurate intersection testing.
105
+ */
106
+ private _pickMobject;
107
+ /**
108
+ * Find the scene-level Mobject that owns a Three.js object.
109
+ */
110
+ private _findOwnerMobject;
111
+ /**
112
+ * Fallback bounding-box pick for mobjects that don't register raycaster hits.
113
+ */
114
+ private _boundingBoxPick;
115
+ private _addHighlight;
116
+ private _removeHighlight;
117
+ /**
118
+ * Refresh highlight positions for all selected mobjects.
119
+ * Call this after moving/transforming selected mobjects.
120
+ */
121
+ refreshHighlights(): void;
122
+ private _screenToWorld;
123
+ private _notifyChange;
124
+ }
125
+ //# sourceMappingURL=SelectionManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectionManager.d.ts","sourceRoot":"","sources":["../../src/interaction/SelectionManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,OAAO,EAAgB,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uCAAuC;IACvC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;CAC9D;AAED;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAiB;IAGjC,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,MAAM,CAAsC;IAGpD,OAAO,CAAC,WAAW,CAA+C;IAGlE,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,WAAW,CAA+B;IAGlD,OAAO,CAAC,cAAc,CAAa;IAGnC,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,UAAU,CAA6B;IAE/C;;;;OAIG;gBACS,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,uBAA4B;IAsB/D,oDAAoD;IACpD,IAAI,QAAQ,IAAI,WAAW,CAAC,OAAO,CAAC,CAEnC;IAED,6CAA6C;IAC7C,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,sCAAsC;IACtC,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,qCAAqC;IACrC,MAAM,IAAI,IAAI;IAId,gEAAgE;IAChE,OAAO,IAAI,IAAI;IAKf;;;OAGG;IACH,MAAM,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAUpC;;;OAGG;IACH,QAAQ,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAUtC;;;OAGG;IACH,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAQhC;;OAEG;IACH,SAAS,IAAI,IAAI;IAUjB;;OAEG;IACH,WAAW,IAAI,IAAI;IAQnB;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIjC;;OAEG;IACH,gBAAgB,IAAI,OAAO,EAAE;IAI7B;;OAEG;IACH,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,cAAc;IAuBtB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAiCxB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuCpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA2BxB,OAAO,CAAC,aAAa;IA0DrB,OAAO,CAAC,gBAAgB;IAYxB;;;OAGG;IACH,iBAAiB,IAAI,IAAI;IAWzB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,aAAa;CAGtB"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Interaction module for manimweb.
3
+ * Provides UI controls for interactive scene manipulation and playback.
4
+ */
5
+ export { Controls, type ControlsOptions, type ControlsPosition, type ControlsTheme, type SliderConfig, type ButtonConfig, type CheckboxConfig, type ColorPickerConfig, } from './Controls';
6
+ export { PlaybackControls, type PlaybackControlsOptions, type TimeUpdateCallback, } from './PlaybackControls';
7
+ export { Draggable, makeDraggable, type DraggableOptions } from './Draggable';
8
+ export { Hoverable, makeHoverable, type HoverableOptions } from './Hoverable';
9
+ export { Clickable, makeClickable, type ClickableOptions } from './Clickable';
10
+ export { SelectionManager, type SelectionManagerOptions } from './SelectionManager';
11
+ export { OrbitControls, type OrbitControlsOptions } from './OrbitControls';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interaction/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG9E,OAAO,EAAE,gBAAgB,EAAE,KAAK,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAGpF,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,92 @@
1
+ import { Mobject, Vector3Tuple } from '../../core/Mobject';
2
+ import * as THREE from 'three';
3
+ /**
4
+ * Options for creating a MandelbrotSet visualization
5
+ */
6
+ export interface MandelbrotSetOptions {
7
+ /** Width of the render plane in world units. Default: 8 */
8
+ width?: number;
9
+ /** Height of the render plane in world units. Default: 6 */
10
+ height?: number;
11
+ /** Center of the view in the complex plane [re, im]. Default: [-0.5, 0] */
12
+ center?: [number, number];
13
+ /** Zoom level (higher = more zoomed in). Default: 1 */
14
+ zoom?: number;
15
+ /** Maximum iteration count. Default: 100 */
16
+ maxIterations?: number;
17
+ /** Saturation for HSL-based coloring (0-1). Default: 0.8 */
18
+ saturation?: number;
19
+ /** Lightness for HSL-based coloring (0-1). Default: 0.5 */
20
+ lightness?: number;
21
+ /** Opacity (0-1). Default: 1 */
22
+ opacity?: number;
23
+ }
24
+ /**
25
+ * MandelbrotSet -- GPU-accelerated Mandelbrot set visualisation.
26
+ *
27
+ * Renders the classic Mandelbrot fractal on a full-screen quad using a custom
28
+ * GLSL fragment shader. All view parameters (center, zoom, maxIterations)
29
+ * are exposed as animatable uniforms so they can be driven by the Timeline.
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * const mandelbrot = new MandelbrotSet({
34
+ * width: 8,
35
+ * height: 6,
36
+ * center: [-0.5, 0],
37
+ * zoom: 1,
38
+ * maxIterations: 200,
39
+ * });
40
+ * scene.add(mandelbrot);
41
+ *
42
+ * // Animate a zoom into a region
43
+ * mandelbrot.setCenter([-0.7435, 0.1314]);
44
+ * mandelbrot.setZoom(500);
45
+ * ```
46
+ */
47
+ export declare class MandelbrotSet extends Mobject {
48
+ private _width;
49
+ private _height;
50
+ private _center;
51
+ private _zoom;
52
+ private _maxIterations;
53
+ private _saturation;
54
+ private _lightness;
55
+ private _material;
56
+ constructor(options?: MandelbrotSetOptions);
57
+ protected _createThreeObject(): THREE.Object3D;
58
+ protected _syncMaterialToThree(): void;
59
+ /** Set the center of the view in the complex plane. */
60
+ setCenter(center: [number, number]): this;
61
+ /** Get the current view center. */
62
+ getCenter(): Vector3Tuple;
63
+ /** Set the zoom level (higher = more zoomed in). */
64
+ setZoom(zoom: number): this;
65
+ /** Get the current zoom level. */
66
+ getZoom(): number;
67
+ /** Set the maximum number of iterations. */
68
+ setMaxIterations(maxIter: number): this;
69
+ /** Get the maximum number of iterations. */
70
+ getMaxIterations(): number;
71
+ /** Set HSL saturation (0-1). */
72
+ setSaturation(s: number): this;
73
+ /** Get HSL saturation. */
74
+ getSaturation(): number;
75
+ /** Set HSL lightness (0-1). */
76
+ setLightness(l: number): this;
77
+ /** Get HSL lightness. */
78
+ getLightness(): number;
79
+ /** Set the display width in world units. */
80
+ setWidth(w: number): this;
81
+ /** Get the display width. */
82
+ getWidth(): number;
83
+ /** Set the display height in world units. */
84
+ setHeight(h: number): this;
85
+ /** Get the display height. */
86
+ getHeight(): number;
87
+ protected _createCopy(): MandelbrotSet;
88
+ /** Free GPU resources. */
89
+ dispose(): void;
90
+ }
91
+ export default MandelbrotSet;
92
+ //# sourceMappingURL=MandelbrotSet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MandelbrotSet.d.ts","sourceRoot":"","sources":["../../../src/mobjects/fractals/MandelbrotSet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA6ED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,aAAc,SAAQ,OAAO;IACxC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAqC;gBAE1C,OAAO,GAAE,oBAAyB;IA6B9C,SAAS,CAAC,kBAAkB,IAAI,KAAK,CAAC,QAAQ;cA0B3B,oBAAoB,IAAI,IAAI;IAmB/C,uDAAuD;IACvD,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMzC,mCAAmC;IAC1B,SAAS,IAAI,YAAY;IAIlC,oDAAoD;IACpD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3B,kCAAkC;IAClC,OAAO,IAAI,MAAM;IAIjB,4CAA4C;IAC5C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMvC,4CAA4C;IAC5C,gBAAgB,IAAI,MAAM;IAI1B,gCAAgC;IAChC,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM9B,0BAA0B;IAC1B,aAAa,IAAI,MAAM;IAIvB,+BAA+B;IAC/B,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM7B,yBAAyB;IACzB,YAAY,IAAI,MAAM;IAItB,4CAA4C;IAC5C,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMzB,6BAA6B;IAC7B,QAAQ,IAAI,MAAM;IAIlB,6CAA6C;IAC7C,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM1B,8BAA8B;IAC9B,SAAS,IAAI,MAAM;cAQA,WAAW,IAAI,aAAa;IAiB/C,0BAA0B;IAC1B,OAAO,IAAI,IAAI;CAShB;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,121 @@
1
+ import { Mobject, Vector3Tuple } from '../../core/Mobject';
2
+ import * as THREE from 'three';
3
+ /**
4
+ * Options for creating a NewtonFractal visualization
5
+ */
6
+ export interface NewtonFractalOptions {
7
+ /** Width of the render plane in world units. Default: 8 */
8
+ width?: number;
9
+ /** Height of the render plane in world units. Default: 6 */
10
+ height?: number;
11
+ /** Center of the view in the complex plane [re, im]. Default: [0, 0] */
12
+ center?: [number, number];
13
+ /** Zoom level (higher = more zoomed in). Default: 1 */
14
+ zoom?: number;
15
+ /** Maximum iteration count. Default: 40 */
16
+ maxIterations?: number;
17
+ /**
18
+ * Polynomial coefficients in ascending degree order.
19
+ * e.g. [-1, 0, 0, 1] represents z^3 - 1 (coeff[0]*z^0 + ... + coeff[3]*z^3).
20
+ * Default: [-1, 0, 0, 1] (z^3 - 1)
21
+ */
22
+ coefficients?: number[];
23
+ /** Convergence threshold. Default: 1e-6 */
24
+ tolerance?: number;
25
+ /** Root color saturation (0-1). Default: 0.85 */
26
+ saturation?: number;
27
+ /** Root color lightness (0-1). Default: 0.5 */
28
+ lightness?: number;
29
+ /** Opacity (0-1). Default: 1 */
30
+ opacity?: number;
31
+ }
32
+ /**
33
+ * NewtonFractal -- GPU-accelerated Newton's-method fractal visualization.
34
+ *
35
+ * Renders a Newton fractal for an arbitrary polynomial in the complex plane.
36
+ * For each pixel (treated as a complex number z), the shader iterates
37
+ * Newton's root-finding method z <- z - f(z)/f'(z) and colours based on
38
+ * which root the iteration converges to and how quickly.
39
+ *
40
+ * The default polynomial is z^3 - 1 which has three roots at the cube roots
41
+ * of unity, producing the classic three-fold symmetric fractal.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * // Default z^3 - 1 fractal
46
+ * const newton = new NewtonFractal();
47
+ * scene.add(newton);
48
+ *
49
+ * // Custom polynomial z^4 - 1
50
+ * const quartic = new NewtonFractal({
51
+ * coefficients: [-1, 0, 0, 0, 1],
52
+ * maxIterations: 60,
53
+ * });
54
+ * scene.add(quartic);
55
+ * ```
56
+ */
57
+ export declare class NewtonFractal extends Mobject {
58
+ private _width;
59
+ private _height;
60
+ private _center;
61
+ private _zoom;
62
+ private _maxIterations;
63
+ private _coefficients;
64
+ private _tolerance;
65
+ private _saturation;
66
+ private _lightness;
67
+ private _material;
68
+ constructor(options?: NewtonFractalOptions);
69
+ /**
70
+ * Build the uniform array for polynomial coefficients.
71
+ * Coefficients are stored as vec2 (re, im) for generality, but the public
72
+ * API currently only accepts real coefficients. We zero-pad to MAX_COEFF.
73
+ */
74
+ private _buildCoeffUniforms;
75
+ protected _createThreeObject(): THREE.Object3D;
76
+ protected _syncMaterialToThree(): void;
77
+ /** Set the center of the view in the complex plane. */
78
+ setCenter(center: [number, number]): this;
79
+ /** Get the current view center. */
80
+ getCenter(): Vector3Tuple;
81
+ /** Set the zoom level (higher = more zoomed in). */
82
+ setZoom(zoom: number): this;
83
+ /** Get the current zoom level. */
84
+ getZoom(): number;
85
+ /** Set the maximum number of iterations. */
86
+ setMaxIterations(maxIter: number): this;
87
+ /** Get the maximum number of iterations. */
88
+ getMaxIterations(): number;
89
+ /**
90
+ * Set polynomial coefficients in ascending degree order.
91
+ * e.g. `[-1, 0, 0, 1]` for z^3 - 1.
92
+ */
93
+ setCoefficients(coeffs: number[]): this;
94
+ /** Get the current polynomial coefficients. */
95
+ getCoefficients(): number[];
96
+ /** Set the convergence tolerance. */
97
+ setTolerance(tol: number): this;
98
+ /** Get the convergence tolerance. */
99
+ getTolerance(): number;
100
+ /** Set HSL saturation (0-1). */
101
+ setSaturation(s: number): this;
102
+ /** Get HSL saturation. */
103
+ getSaturation(): number;
104
+ /** Set HSL lightness (0-1). */
105
+ setLightness(l: number): this;
106
+ /** Get HSL lightness. */
107
+ getLightness(): number;
108
+ /** Set the display width in world units. */
109
+ setWidth(w: number): this;
110
+ /** Get the display width. */
111
+ getWidth(): number;
112
+ /** Set the display height in world units. */
113
+ setHeight(h: number): this;
114
+ /** Get the display height. */
115
+ getHeight(): number;
116
+ protected _createCopy(): NewtonFractal;
117
+ /** Free GPU resources. */
118
+ dispose(): void;
119
+ }
120
+ export default NewtonFractal;
121
+ //# sourceMappingURL=NewtonFractal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewtonFractal.d.ts","sourceRoot":"","sources":["../../../src/mobjects/fractals/NewtonFractal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAS3D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAwID;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,aAAc,SAAQ,OAAO;IACxC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAW;IAChC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAqC;gBAE1C,OAAO,GAAE,oBAAyB;IAiC9C;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAa3B,SAAS,CAAC,kBAAkB,IAAI,KAAK,CAAC,QAAQ;cA6B3B,oBAAoB,IAAI,IAAI;IA6B/C,uDAAuD;IACvD,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMzC,mCAAmC;IAC1B,SAAS,IAAI,YAAY;IAIlC,oDAAoD;IACpD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3B,kCAAkC;IAClC,OAAO,IAAI,MAAM;IAIjB,4CAA4C;IAC5C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMvC,4CAA4C;IAC5C,gBAAgB,IAAI,MAAM;IAI1B;;;OAGG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAMvC,+CAA+C;IAC/C,eAAe,IAAI,MAAM,EAAE;IAI3B,qCAAqC;IACrC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM/B,qCAAqC;IACrC,YAAY,IAAI,MAAM;IAItB,gCAAgC;IAChC,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM9B,0BAA0B;IAC1B,aAAa,IAAI,MAAM;IAIvB,+BAA+B;IAC/B,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM7B,yBAAyB;IACzB,YAAY,IAAI,MAAM;IAItB,4CAA4C;IAC5C,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMzB,6BAA6B;IAC7B,QAAQ,IAAI,MAAM;IAIlB,6CAA6C;IAC7C,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAM1B,8BAA8B;IAC9B,SAAS,IAAI,MAAM;cAQA,WAAW,IAAI,aAAa;IAmB/C,0BAA0B;IAC1B,OAAO,IAAI,IAAI;CAShB;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { MandelbrotSet, type MandelbrotSetOptions } from './MandelbrotSet';
2
+ export { NewtonFractal, type NewtonFractalOptions } from './NewtonFractal';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mobjects/fractals/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,188 @@
1
+ import { Rectangle, RectangleOptions } from '../geometry/Rectangle';
2
+ import { Vector3Tuple } from '../../core/Mobject';
3
+ /**
4
+ * Default 16:9 aspect ratio
5
+ */
6
+ export declare const DEFAULT_ASPECT_RATIO: number;
7
+ /**
8
+ * Options for creating a ScreenRectangle
9
+ */
10
+ export interface ScreenRectangleOptions extends Omit<RectangleOptions, 'width'> {
11
+ /** Height of the rectangle. Default: 4 */
12
+ height?: number;
13
+ /** Aspect ratio (width/height). Default: 16/9 */
14
+ aspectRatio?: number;
15
+ }
16
+ /**
17
+ * ScreenRectangle - A rectangle that matches a screen/frame aspect ratio
18
+ *
19
+ * Creates a rectangle where the width is calculated from the height and aspect ratio.
20
+ * Useful for creating screen-like shapes or video frame outlines.
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * // Create a 16:9 screen rectangle with height 4
25
+ * const screen = new ScreenRectangle();
26
+ *
27
+ * // Create a 4:3 screen rectangle
28
+ * const oldScreen = new ScreenRectangle({ aspectRatio: 4/3 });
29
+ *
30
+ * // Create a larger screen
31
+ * const bigScreen = new ScreenRectangle({ height: 6 });
32
+ * ```
33
+ */
34
+ export declare class ScreenRectangle extends Rectangle {
35
+ private _aspectRatio;
36
+ constructor(options?: ScreenRectangleOptions);
37
+ /**
38
+ * Get the aspect ratio of this screen rectangle
39
+ */
40
+ getAspectRatio(): number;
41
+ /**
42
+ * Set the aspect ratio, recalculating width while keeping height constant
43
+ */
44
+ setAspectRatio(ratio: number): this;
45
+ /**
46
+ * Override setHeight to maintain aspect ratio
47
+ */
48
+ setHeight(value: number): this;
49
+ /**
50
+ * Create a copy of this ScreenRectangle
51
+ */
52
+ protected _createCopy(): ScreenRectangle;
53
+ }
54
+ /**
55
+ * Options for creating a FullScreenRectangle
56
+ */
57
+ export interface FullScreenRectangleOptions {
58
+ /** Fill color. Default: BLACK (#000000) */
59
+ color?: string;
60
+ /** Fill opacity from 0 to 1. Default: 1 */
61
+ fillOpacity?: number;
62
+ /** Stroke width in pixels. Default: 0 (no stroke) */
63
+ strokeWidth?: number;
64
+ /** Stroke color. Default: same as fill color */
65
+ strokeColor?: string;
66
+ /** Frame width in world units. Default: DEFAULT_FRAME_WIDTH (14.222) */
67
+ frameWidth?: number;
68
+ /** Frame height in world units. Default: DEFAULT_FRAME_HEIGHT (8) */
69
+ frameHeight?: number;
70
+ /** Center position. Default: [0, 0, 0] */
71
+ center?: Vector3Tuple;
72
+ }
73
+ /**
74
+ * FullScreenRectangle - A rectangle that covers the entire camera frame
75
+ *
76
+ * Creates a rectangle sized to match the camera frame dimensions.
77
+ * Perfect for backgrounds, overlays, and scene-wide effects.
78
+ *
79
+ * @example
80
+ * ```typescript
81
+ * // Create a black background
82
+ * const bg = new FullScreenRectangle();
83
+ *
84
+ * // Create a semi-transparent blue overlay
85
+ * const overlay = new FullScreenRectangle({
86
+ * color: '#0000ff',
87
+ * fillOpacity: 0.3,
88
+ * });
89
+ *
90
+ * // Create a custom-sized full screen for a different camera setup
91
+ * const customBg = new FullScreenRectangle({
92
+ * frameWidth: 16,
93
+ * frameHeight: 9,
94
+ * });
95
+ * ```
96
+ */
97
+ export declare class FullScreenRectangle extends Rectangle {
98
+ private _frameWidth;
99
+ private _frameHeight;
100
+ constructor(options?: FullScreenRectangleOptions);
101
+ /**
102
+ * Get the frame width
103
+ */
104
+ getFrameWidth(): number;
105
+ /**
106
+ * Get the frame height
107
+ */
108
+ getFrameHeight(): number;
109
+ /**
110
+ * Update to match new camera frame dimensions
111
+ */
112
+ matchCamera(frameWidth: number, frameHeight: number): this;
113
+ /**
114
+ * Create a copy of this FullScreenRectangle
115
+ */
116
+ protected _createCopy(): FullScreenRectangle;
117
+ }
118
+ /**
119
+ * Options for creating a FullScreenFadeRectangle
120
+ */
121
+ export interface FullScreenFadeRectangleOptions extends Omit<FullScreenRectangleOptions, 'fillOpacity'> {
122
+ /** Initial opacity for the fade. Default: 0 (invisible) */
123
+ opacity?: number;
124
+ }
125
+ /**
126
+ * FullScreenFadeRectangle - A full screen rectangle designed for fade transitions
127
+ *
128
+ * Extends FullScreenRectangle with convenience methods for fade effects.
129
+ * Commonly used for fade-to-black, fade-to-white, or other transition effects.
130
+ *
131
+ * @example
132
+ * ```typescript
133
+ * // Create a fade-to-black rectangle (starts invisible)
134
+ * const fadeBlack = new FullScreenFadeRectangle();
135
+ *
136
+ * // Create a fade-to-white rectangle
137
+ * const fadeWhite = new FullScreenFadeRectangle({ color: '#ffffff' });
138
+ *
139
+ * // In an animation, gradually increase opacity
140
+ * timeline.add(fadeIn(fadeBlack));
141
+ *
142
+ * // Or manually animate opacity
143
+ * fadeBlack.setFadeProgress(0.5); // Half faded
144
+ * fadeBlack.setFadeProgress(1.0); // Fully faded (opaque)
145
+ * ```
146
+ */
147
+ export declare class FullScreenFadeRectangle extends FullScreenRectangle {
148
+ private _fadeProgress;
149
+ constructor(options?: FullScreenFadeRectangleOptions);
150
+ /**
151
+ * Get the current fade progress (0 = transparent, 1 = opaque)
152
+ */
153
+ getFadeProgress(): number;
154
+ /**
155
+ * Set the fade progress
156
+ * @param progress Value from 0 (transparent) to 1 (opaque)
157
+ */
158
+ setFadeProgress(progress: number): this;
159
+ /**
160
+ * Convenience method to set to fully transparent
161
+ */
162
+ fadeOut(): this;
163
+ /**
164
+ * Convenience method to set to fully opaque
165
+ */
166
+ fadeIn(): this;
167
+ /**
168
+ * Check if currently fully transparent
169
+ */
170
+ isTransparent(): boolean;
171
+ /**
172
+ * Check if currently fully opaque
173
+ */
174
+ isOpaque(): boolean;
175
+ /**
176
+ * Create a copy of this FullScreenFadeRectangle
177
+ */
178
+ protected _createCopy(): FullScreenFadeRectangle;
179
+ }
180
+ /**
181
+ * Create a black fade rectangle for fade-to-black effects
182
+ */
183
+ export declare function createFadeToBlack(options?: Omit<FullScreenFadeRectangleOptions, 'color'>): FullScreenFadeRectangle;
184
+ /**
185
+ * Create a white fade rectangle for fade-to-white effects
186
+ */
187
+ export declare function createFadeToWhite(options?: Omit<FullScreenFadeRectangleOptions, 'color'>): FullScreenFadeRectangle;
188
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mobjects/frame/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOlD;;GAEG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC;IAC7E,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,OAAO,CAAC,YAAY,CAAS;gBAEjB,OAAO,GAAE,sBAA2B;IAchD;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAOnC;;OAEG;IACM,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMvC;;OAEG;cACgB,WAAW,IAAI,eAAe;CAUlD;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAS;gBAEjB,OAAO,GAAE,0BAA+B;IA+BpD;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAQ1D;;OAEG;cACgB,WAAW,IAAI,mBAAmB;CAWtD;AAED;;GAEG;AACH,MAAM,WAAW,8BAA+B,SAAQ,IAAI,CAAC,0BAA0B,EAAE,aAAa,CAAC;IACrG,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,uBAAwB,SAAQ,mBAAmB;IAC9D,OAAO,CAAC,aAAa,CAAS;gBAElB,OAAO,GAAE,8BAAmC;IAQxD;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOvC;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;cACgB,WAAW,IAAI,uBAAuB;CAW1D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,IAAI,CAAC,8BAA8B,EAAE,OAAO,CAAM,GAAG,uBAAuB,CAEtH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,IAAI,CAAC,8BAA8B,EAAE,OAAO,CAAM,GAAG,uBAAuB,CAEtH"}