* Add Scene.embed_2
* Don't overwrite Scene methods
* Checks
* Remove extra test
* Add docstring
* Allow rerunning the same Scene
* Allow rerunning with file changes
* Found how to kill terminal thread
* Allow for skipping part of a preview
* Add warning
* break out of the loop if no rerun is requested
* Add test shader code
* Port a shader from shadertoy
* Save in-progress work
* Add Shader and Mesh classes
* Rotation matrices
* #INSERT -> #include
* Render with Mesh instead of render groups
* Add mesh updaters and FullscreenQuad
* Beginning OrbitControls
* OribitControls working
* Attempt using a symmetric perpective projection
* Fix OrbitControls and perspective projection
* Remove unecessary changes
* Add docstring for RerunSceneHandler
* Move OrbitControls into Scene, simplify examples
* Modification to matrix code, converting attributes to homogeneous coords
* Add better camera controls
* Check depth test
* Debug some shaders
* Cleanup for PR
* Address pre-commit checks
* Review comments
* iterdir
* Fixed flake8 in files outside of manim/manim
* Removed linter/formatter workflows
* Small update to pre-commit in contributing guideline
* Better English/grammar in doc
* Added click dependency and command structure
* Refactored code for separation of concerns
* Shortened plugins command to plugin, added render options
* first draft for render -h
* First successful render using click
* Cleaned main
* Moved flush_cache to option, ran black
* Removed argparse logic, scattered print statements
* corrected tests, all passing
* merge upstream
* fixed test with click's clirunner
* Fixed doctest configuration.rst
* Temporarily add in main_utils
* Removed main_utils.parse_args, used ManimConfig.digest_args
* fixed progress bar
* Fix jupyter
* black
* Fixed incorrectly merged merge conflict
* updated README command.png image
* updated configuration.rst expected output
* Fixed test_plugins and config_file expected type
* Refixed the jupyter fix
* Apply 3/5 suggestions
Remove stray print
Improve readability of test code
Added module docs for the subcommands
* Updated `main` to `manim` for tests
* Forced `file` positional argument to be Path type
* Fixed main -> manim
* Added libpango to linux dependency
* Updated poetry.lock
* Changed configuration.rst test
* Fixed test_a_flag test
minor space issue
added media_width to configuration.rst
* Fixed fps flag in Cairo rendering
* Fixed more outdated rst in sphinx docs
Removed default for fps option, always overwrote quality
Fixed doctest control_data
* Fixed more incorrect rst orderings
* Update tests/test_commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Added suggestions
* Removed unused imports
* Reverted entry point back to main
* Update manim/_config/default.cfg
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* Adjusted ipython_magic's call to the entry_point
* Converted frame_rate to int if integer
* run black
* Fixed doctest
* Fixed issue with command name from CliRunner
* Fixed multiple video windows opening from upstream merge
* to black or not to black
* Added deprecation warning to render subcommand
* warning instead of warn
* Applied Naveen's suggestions
* Made `manim render` show the help page
* Update manim/cli/render/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/cfg/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/cfg/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/plugins/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Addressed some style changes
* add back in write_to_movie temporarily for OpenGL support
* Removed sound flag, deprecated use_opengl_renderer, added renderer option
* revert webgl_renderer_path removal
* Fixed cfg export
Fixed readme usage of CLI
* Flake8/black
* Fixed bug in setting renderer choice
* Removed log message due to default option
Removed default option of background color
Fixed write_to_movie flag default
* Fix log_to_file tests
* Make '-c' option for config_file, not background_color
* print colored version always
* Remove -v = --version shorthand, conflicts with verbosity
* Use subprocess.run instead of Click's CliRunner for stdout
* Refactor cli/render to use Cloup instead of click-option-group
1) There's a new file for each option group
2) render is now a cloup.Command, not a Group
Fixed issue when an animation is cached, manim can't merge the partial movie files. (#1192)
* fixed issue
* fixed tests
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Darylgolden <darylgolden@gmail.com>
* added tests
* imrpoved test
* fixed logic
* added new test
* check if the file has been outputed
* added test when caching is enabled
* fixed tests on windows
* black
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update tests/assert_utils.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>
Co-authored-by: Darylgolden <darylgolden@gmail.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Added :ref_methods: to the manim directive (#1209)
* fix manim_directive for methods
* added ref_methods to Angle example
* black
* added new ref_methods references
* sort out ref_functions vs ref_methods in examples.rst
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Fixed issue when an animation is cached, manim can't merge the partial movie files. (#1192)
* fixed issue
* fixed tests
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Darylgolden <darylgolden@gmail.com>
* added tests
* imrpoved test
* fixed logic
* added new test
* check if the file has been outputed
* added test when caching is enabled
* fixed tests on windows
* black
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update tests/assert_utils.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>
Co-authored-by: Darylgolden <darylgolden@gmail.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Added :ref_methods: to the manim directive (#1209)
* fix manim_directive for methods
* added ref_methods to Angle example
* black
* added new ref_methods references
* sort out ref_functions vs ref_methods in examples.rst
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Fixed unnecessary args dict
* Fixed bug that changed caching hashing result
* Revert doctest logic for fps filename output
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Co-authored-by: Gianluca Gippetto <gianluca.gippetto@gmail.com>
* Update mobject.py
* 2 test failed
* Update mobject.py
* fix set_rgba_array
* finish
* no errors with cairo so far
* SurfaceExample partially works
* SquareToCircle works
* Update opengl_mobject.py
* SurfaceExample works without Textures
* More updates
* all opengl examples work pefectly
* Update opengl_surface.py
* fix test case
* fix flake8 and refactor code
* remove all OpenGLMobject related code
* add functions from OpenGL
* remove comments
* Fix bug
* Deprecated ShowCreation in favor of Create
* Fixed Black formatting and logger error
* Fixed relative import issue of logger
* Renamed CreateThen.. calls to previous names
* Fixed __all__ classes, fixed Create inheritance
* Update manim/animation/creation.py
Move logger warning to class initializer
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Changed manimce links in the docs to docs.manim.community, replaced manimce with manim where applicable
* black is extra finicky today
Co-authored-by: Aron Fischer <cobordism@github, co-bordism@gitlab>
Recreates TexTemplate() and a few basic examples including ThreeBlueOneBrownTexTemplate()
Templates can be supplied by CLI as before.
Templates can also be specified per Tex() object
* Add the Variable class with an example. It inherits
* Automatically detect math/text mode
* Allow passing a Tex, MathTex, Text as label
* Update changelog with Variable class
Co-authored-by: Leo Torres <dleonardotn@gmail.com>
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* Rename TexMobject to MathTex
Rename TextMobject to Tex
Replace all instances of TexMobject with MathTex and TextMobject with Tex.
Get rid of single-use TexSymbol.
Rename SingleStringTexMobject to SingleStringMathTex.
Add Deprecation warnings to TexMobject and TextMobject.
* Edit __all__ for tex_mobject.py
* Re-add TexSymbol by request of devs.
* Docstring Modifications by @pgbiel
Co-authored-by: Pg Biel <9021226+PgBiel@users.noreply.github.com>
* Import logger differently, by @leotrs
* Run updated Black on files changed.
Co-authored-by: Pg Biel <9021226+PgBiel@users.noreply.github.com>