Commit graph

373 commits

Author SHA1 Message Date
Bogdan Stăncescu
2f4ade6285
Docs: Added code example to Mobject.get_critical_point(), fixed some broken formatting, added some links to installation guides (#1077)
* +doc Mobject.get_critical_point()

* Minor fix for minor doc improvement

* Minor indentation fix

* A few additional, minor doc improvements

* Update docs/source/installation/for_dev.rst

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* fix broken link to contributing guide

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-03-23 00:52:57 +01:00
kolibril13
f52d4855c7
Docs: Added :class:~.SurroundingRectangle to example gallery (#1036)
* tweak_example

* removed line

* Update docs/source/examples.rst

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Update docs/source/examples.rst

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-03-22 00:55:11 +01:00
Darylgolden
1d9fdaf629
New Feature: Added media_width option to the config to change the default width of gif+video output in Jupyter notebooks (#1074)
* Added new 3D mobjects: mostly taken from dor2727's previous incomplete PR

* Added Torus from 3b1b manim

* Added tests

* Remove personal test file

* Ran black

* Added test for Arrow3D

* Apply suggestions from code review

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Black formatting

* Added documentation, tests failing?

* Added documentation, tests fixed

* Rename self.height to self._height

* Removed unnecessary property.

* Fixed tests

* Apply suggestions from code review

Co-authored-by: friedkeenan <friedkeenan@protonmail.com>

* Black

* Apply suggestions from code review

Simple changes for now

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Apply suggestions from code review

Possibly breaking changes

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>

* Update manim/mobject/three_dimensions.py

Fix indentation

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Update manim/mobject/three_dimensions.py

Fix indentation

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Fix things

* Change parameter names for Torus

* Added get_direction method for Cylinder and fixed direction setting

* retrigger checks

* Changed max-width to 375px

* Resolve merge conflict

* Attempted to add config for jupyter_width

* Apply suggestions from code review

Attempt to fix

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>

* Fixed config

* Updated test data.

* Change name in cfg file to match ManimConfig

* Added media_width support to iPython Image

* Revert "Change name in cfg file to match ManimConfig"

This reverts commit 57080a91be.

* Revert "Added media_width support to iPython Image"

This reverts commit 0391bfb223.

* Revert "Revert "Change name in cfg file to match ManimConfig""

This reverts commit 7d499fa43c.

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
2021-03-21 23:21:28 +01:00
Devin Neal
bc16210360
Add OpenGL Renderer (#1075)
Adds and OpenGL renderer, OpenGL-enabled Mobjects, and a Scene.embed() method.
2021-03-13 20:04:19 -08:00
kolibril13
edcdeb121c
Remove "one line summary" from pr template (#1073)
* Update PULL_REQUEST_TEMPLATE.md

* Improved intro section

* ENH: Model acronyms after NumPy

* MNT: Fixed tense of thank you message

* Removed mention of acronyms in PR titles

* Update .github/PULL_REQUEST_TEMPLATE.md

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Update .github/PULL_REQUEST_TEMPLATE.md

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* removed wikilink from changelog.rst

Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-03-13 15:53:01 +01:00
Mark Miller
aa873e0f8e
Add forgotten svg files to documentation and imports (#1088) 2021-03-09 15:04:24 -08:00
Devin Neal
83dd82b6d3 doctests 2021-03-06 15:50:20 -08:00
Devin Neal
4748f3c730 Merge remote-tracking branch 'origin/master' into moderngl 2021-03-04 18:06:21 -08:00
Devin Neal
30f00d546b
Prepare v0.4.0 (#1072)
Prepare to release v0.4.0
2021-03-03 20:26:28 -08:00
M. Eugenia Moreno
6b90fd287e
fix #1045 changes in line 118 (#1053) 2021-03-01 14:09:16 +05:30
Sergii Penner
6b8ef88ebf
Remove duplicate word 'vector' (#1065) 2021-02-28 15:27:34 +05:30
Naveen M K
7db6c7f730
docs: update installation docs for linux - pango (#1060)
* Linux users should install Pango also

see https://github.com/ManimCommunity/ManimPango/issues/27
manylinux wheels are to be removed in next release on ManimPango

* Add changes to Docker also

* don't mix tabs and spaces
2021-02-28 10:03:03 +01:00
Álvaro Mondéjar
4336cbd744
Remove 'MovingCameraScene.setup' and 'MovingCameraScene.camera_frame' (#1000) 2021-02-25 14:21:15 -08:00
Devin Neal
448d10b590 Animate Arc with OpenGL 2021-02-19 20:41:01 -08:00
SuperMaZingCoder
6744c48c22
Documentation: Add more explicit instructions related to tlmgr (#1015)
* Add reboot and update tlgmr steps.

* Reword reboot step and remove space.

Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>

* Grammar changes.

Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>

* Fixed spelling for "finally."

Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>

* Update docs/source/installation/mac.rst

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-02-16 22:47:31 +01:00
kolibril13
6fce164452
Docs: Update installation guide on mac with Apple Silicon (#1028) 2021-02-16 00:42:21 +01:00
Anoop Hallur
0b15360096
Bugfix: fix link to wikipedia vector graphics page (#1031) 2021-02-14 18:32:17 +01:00
friedkeenan
3ad385a168
Enhancement: Migrate width/height/depth to properties (#1024)
* Migrate width/height/depth to properties

* Fix examples

* Fix typos

* Import manim for doctests

* Expect Square for doctests

* Improve docs for width/height/depth properties
2021-02-14 12:33:12 +01:00
KingWampy
554f829848
Enhancement: Add manim version to CLI output, append version name for generated gif+png, add version to metadata of rendered videos (#984)
* Initial commit

* black formatting

* Changes

* Test to see if it works

* Changes

* Update manim_directive.py

* Update manim_directive.py

* Update manim_directive.py

* Update manim_directive.py

* Update scene_file_writer.py

* Always forget black..

* Change path separator

* Changes

* Add blank line in option block

* Update scene_file_writer.py

* Update metadata messages

* No longer add version to video names

* Fix test_dash_as_filename

* Update __init__.py
2021-02-10 16:56:05 +01:00
Benjamin Hackl
261c28b251
v0.3.0: prepare new release (#986)
* bump version number

* add formatted changelog

* Capitalization of changelog entries

Co-authored-by: KingWampy <superpie@usa.com>

* bump version to 0.3.0

* include 988 in changelog

Co-authored-by: KingWampy <superpie@usa.com>
2021-02-01 19:05:08 -08:00
Benjamin Hackl
60c225a191
Enhancement (of new feature): JupyterLab docker image and documentation for manim and IPython (#977)
* fix import: move setting __version__ to top of __init__

* add simple Dockerfile for a manim-jupyterlab container

* add section on jupyterlab in docker/readme.md

* improve Dockerfile: separate user, install manim with all extras, upgrade to python 3.8

* remove separate jupyterlab docker image, adapt readme

* add missing latex package

* include link to interactive worksheet in documentation

* Update README.md

Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
2021-01-31 18:24:21 +01:00
Devin Neal
57f228b8eb
Js tweening (#952)
* Add .animate attribute to mobjects

* Return function from _AnimationBuilder.__getattr__

* black

* Pass background color to JS renderer

* Handle default case

* Pass background color to JS renderer

* Remove line that came back in the merge

* Handle FrameServer case

* Use community colors by default

* Allow for chaining _AnimationBuilder

* Trying to do tweening

* Add _AnimationBuilder.build()

* Apply docs patch

* Pass tweening data

* Pass ID for ImageMobject

* Fix Wait bug, add FadeIn tween data

* Remove unused proto fields

* Remove unused proto field

* Optimize RPCs

* Handle frame skipping better

* Refactoring

* Ignore PreviewMode.ALL

* Remove preview mode

* Don't send tween data for wait

* Opacity fixes

* Add comments

* Simplify protos

* Add tween data for wait

* Add todo

* Serialize when updating

* Prepare to send tweened and non-tweened mobject IDs

* Pass updater information to javascript

* Add log

* Rename js_* -> webgl_*, remove WebGLScene

* rename js->webgl in workflow file

* Update doctest

* Update .gitattributes

* Remove try/except for webgl imports

* Step through animations using updaters with fixed frame rate

* Add --webgl_updater_fps flag

* Configuration test

* configuration test

* JS->WebGL

* Add install message
2021-01-29 08:33:49 -08:00
Naveen M K
65240b8bc8
Automatically Import Plugins (#967)
* Automatically import Plugins
Specify plugins using CLI and config file

Signed-off-by: Naveen M K <naveen@syrusdark.website>

* Fix Doc tests

* clean manim.cfg

* Add more explanatory docs

* add info about plugins site

* use property method

Co-authored-by: friedkeenan <friedkeenan@protonmail.com>

* use types module and f-strings

* Add tests

* lint

* remove --plugins
it seems it is not possible currently to implement that

* fix doc tests

* don't define unnecessary variables

* Apply suggestions from code review

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
Co-authored-by: Leo Torres <dleonardotn@gmail.com>
2021-01-28 20:57:27 +05:30
Benjamin Hackl
b2abe699fb
New Feature: IPython %%manim magic (#943)
* working prototype of manim line and cell magic

* downgrade "dummy animation" log entry from warning to debug

* use built-in methods for displaying images/videos

* create tempconfig from current config, if available

* cleanup imports

* add some basic documentation and pointers

* make import of ipython_magic robust against missing IPython

* add statement to README

* fix link in quickstart

* experimental: stateful magic allowing to circumvent caching

* add jupyterlab to optional dependencies in pyproject.toml

* actually make jupyterlab an optional dependency

Co-authored-by: Naveen M K <naveen@syrusdark.website>

* try to improve the situation for google colab

* embed video within google colab

Co-authored-by: Naveen M K <naveen@syrusdark.website>
2021-01-28 13:36:23 +01:00
KingWampy
80574b7125
Make ManimCommunity look consistent (#971) 2021-01-28 15:05:08 +05:30
KingWampy
8fce5a74cb
New feature: Added --version command line flag (#970)
* Add --version commandline flag

* Update __init__.py

* Update manim/_config/main_utils.py

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Fix Black Check

* Update poetry.lock

* Create test_version.py

* Make black happy

Running black locally didn't catch this for some reason..

* Review changes

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-01-28 02:26:00 +01:00
kolibril13
e527328a02
Documentation: move installation instructions for developers to page for developers (#923)
* Update installation.rst

* reordered instruction

* Update docs/source/installation/for_dev.rst

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-01-26 14:45:56 +01:00
Noam Zaks
852521841e
New feature: Tree layout for Graph mobject (#922)
* Added bipartite graph layout

* Added multipartite graph column layout

* Add networkx import in documentation

* Apply suggestions from code review

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Add partite to layout docstring

* Fix 'bipartite' layout to 'partite'

* Add tree layout with graphviz

* Don't forget docstring

* black

* work on docs for graphviz

* black

* Custom layout method instead of graphviz

* Unused imports

* Remove graphviz from installation docs

* Remove unnecessary newline

* Apply suggestions from code review

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

Co-authored-by: Noam Zaks <noamzaks@outlook.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-01-18 20:25:03 +01:00
Jason Villanueva
2276cb059f
Added code of conduct (#935)
* Added code of conduct

* Added CoC to sphinx/README.md

* Shortened verbosity in  Enforcement Procedures

* Made conduct.rst a symlink

* Update CODE_OF_CONDUCT.md

* Update CODE_OF_CONDUCT.md

* Tweaked header section levels

Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
2021-01-18 19:14:57 +05:30
Tanner Gilbert
2ed00b6b26
removed deprecated command line arguments from documentation (#908) 2021-01-05 10:46:10 -05:00
KingWampy
0dccec9567
Tiny grammar improvements (#903)
Fixed some grammar I came across while browsing the docs.
2021-01-03 23:20:39 +01:00
Benjamin Hackl
8a673946d8
Prepare new release: v0.2.0 (#894)
* bump version number

* update changelog

* release date: 2020 -> 2021 ... :-)
2021-01-01 17:57:17 -08:00
kolibril13
691db1e461
Run proofreading over the whole library (#890) 2021-01-01 17:59:12 +01:00
Devin Neal
2faa89e3d3
Allow for chaining _AnimationBuilder (#889)
* Allow for chaining _AnimationBuilder

* Add _AnimationBuilder.build()

* Apply docs patch

* fix play call with multiple .animate for the same mobject

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2021-01-01 16:18:26 +01:00
Benjamin Hackl
e16f9a6cc4
Basic implementation of undirected graphs (#861)
* toying around with a graph using networkx layouting

* basic implementation and documentation of a class for undirected graphs

* import graph module into global namespace

* add graph module to documentation

* poetry: add networkx as a dependency

* remove some debug prints

* sort all extracted mobjects w.r.t. z_index

* add test for z_index (from #327)

* more complex z_index test

* black

* improve imports

* use z_index to have edges below vertices

* add type hints

* rename some tests to make space for graph tests

* fix problem with manual positioning

* add test

* black

* new animate syntax

* document label_fill_color
2020-12-31 21:10:41 +01:00
Naveen M K
fe2ba6d86c
Use Manimpango (#878)
* Use manimpango

* Remove MarkUp Text not yet supported

* add manimpango as dep

* remove MarkupText from __all__

* Fix CairoText

* Remove test for Pango

* Run black

* Update ManimPango

* Try fixing MacOS CI by restricting version of grpc

* Try fixing MacOS CI - 2

* Make MarkupText use manimpango (#26)

* Update ManimPango

* update manimpango

* Remove pango installation docs

* remove ffi workaround from Dockerfile

* troubleshooting: new entry for manimpango, hint for update for old pango problems

Co-authored-by: Philipp Imhof <52650214+PhilippImhof@users.noreply.github.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2020-12-31 20:20:33 +05:30
Devin Neal
ffd8b42d26
Add .animate attribute to mobjects (#881)
Adds a .animate attribute to mobjects to be used to animate methods.
2020-12-30 05:56:38 -08:00
Philipp Imhof
c560ab397d
Markup text (#855)
* Minor changes: double line + typos in Text and CairoText

* Add MarkupText class

* Accidentally ran BLACK on wrong file...

* Clean up import, extent SVGMobject instead of Text

* Added offset attribute to workaround ligature problems

* Disable all ligatures when disable_ligatures=True

* BLACK

* Improvements, docs, examples

- individual offset for start and end of partial colorizing / gradients in case there are ligatures inside the string that has to be colorized
- deal with HTML entities in string
- documentation of supported tags
- full set of examples

* removing disable_ligatures from example b/c of failing doc build

* take disable_ligature into account in hash

* doc cleanup + change text2hash to take into account disable_ligatures

* Docs and examples cleanup

* Changelog + bugfix for multi-line strings

* add one more example + small fix

* Remove entries in changelog

will put them in the wiki

* Accept colors as hex triples; typing as per review

* cleanup: gen_chars should not be needed anymore

* Cleanup: PangoUtils class with static methods

* Add color to ligature example

* Small change, mainly to trigger checks again

* Typings, Cleanup

Co-authored-by: Naveen M K <naveen@syrusdark.website>

* Remove warning; it is no longer accurate

* Move remove_last_M to PangoUtils class & make static

* Remove warnings about transofmration

* Doc cleanup

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Clean up docstrings

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Black

Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2020-12-20 11:21:40 +01:00
kolibril13
3d293ab64b
added DashedLine and CurvesAsSubmobjects example to docs (#833)
* small reodering

* added two examples

* Apply suggestions from code review

Co-authored-by: Leo Torres <leo@leotrs.com>

* black

* black

* Update docs/source/examples.rst

* Update docs/source/examples.rst

* Update manim/mobject/geometry.py

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* Update manim/mobject/types/vectorized_mobject.py

* Update manim/mobject/types/vectorized_mobject.py

* Update manim/mobject/types/vectorized_mobject.py

* Update manim/mobject/types/vectorized_mobject.py

* fix indent

* black

* stupid indent

* black

Co-authored-by: Leo Torres <leo@leotrs.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2020-12-18 09:48:25 +01:00
Benjamin Hackl
3c9ff3ff77
Move upcoming changelog to wiki (#822)
* move upcoming changelog to wiki

* modify PR template: new section for online description

* suggestion: reviewer checklist

* whitespace

* remove reference to changelog.rst

* more concrete suggestion for new PR template

* Add testing to checklist

Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>

* improve wording in motivation section

* whitespace

Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
Co-authored-by: Devin Neal <devin@eulertour.com>
2020-12-13 12:35:22 +01:00
Jason Villanueva
744362a132
feat: implement __add__, __iadd__, __sub__, and __isub__ for Mobject
Co-authored-by: Leo Torres <dleonardotn@gmail.com>
2020-12-05 13:45:20 -05:00
kolibril13
5f1cfa3c9d
Added flowchart for Docs overview (#828)
* added flowchart

* updated flowchart

* added second flowchart
2020-12-05 21:26:55 +05:30
Jason Villanueva
a9321acd52
fixed test (#831) 2020-12-05 13:57:55 +01:00
Jason Villanueva
c8c1f68cb3
Feature plugins (#784)
* Added examples, documentation, assets_dir config

* Removed CLI

* Update docs/source/installation/win.rst

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* Lazy commit

* Adds plugin command/functionality

* Removed erroneous parameter from manim plugins -l

* Updated documentation for plugins

* black

* Update manim/_config/main_utils.py

consolidate manim subcommands

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* Update docs/source/installation/plugins.rst

accessible documentation

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* Update manim/plugins/__init__.py

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* Update docs/source/installation/plugins.rst

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* Update docs/source/installation/plugins.rst

Co-authored-by: Leo Torres <dleonardotn@gmail.com>

* revert numpy versioning

* Removed documentation on plugins --update flag

* Removed plugins --update, moved plugins_flags

* Slight improvement to documentation

* Removed leftover update, added suggestions

Co-authored-by: Leo Torres <dleonardotn@gmail.com>
2020-12-05 00:01:16 +05:30
Leo Torres
f3256087a3
Fix doctests (#797)
* fix doctests

* add doctest to our ci pipeline

* need test reqs

* skip rendering videos for the doctests

* try to fix doctests under windows

* shell=True only when running on windows

Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
2020-12-04 11:05:11 +01:00
kolibril13
7fe79e36ec
manimce to manim & capitalizing Manim in readme (#794) 2020-12-04 02:08:55 +01:00
farahash
a67f358683
Removed temporary partial movie file in scenefilewriter (#817) 2020-12-03 07:41:41 -05:00
Aron
68e66dccf5
remove all CONFIG and all digest_config (#783)
* remove CONFIG and digest_config

* docstring fix - arrow tips have length, not tip_length

* fix divide by zero as per issue 780

* Update manim/mobject/geometry.py

Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>

* black, what else

Co-authored-by: leotrs <leo@leotrs.com>
Co-authored-by: Aron <co-bordism@gitlab / cobordism@github>
Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
2020-12-03 17:19:57 +05:30
Benjamin Hackl
50829ca421
add creation animation for ManimBanner (#814)
* add creation animation for ManimBanner

* black

* update changelog
2020-12-03 12:26:15 +01:00
Benjamin Hackl
9d7d640db6
Update the changelog for our latest release (#812)
* new changelog section for v0.1.1

* add toc for changelog

* maxdepth -> depth

* fix table of contents

* prepare basic structure for next changelog

* add some further changes from the last release to the changelog

* add a second checkbox for changelog

* add asset_dir entry to changelog

* also give location to changelog source file in checkbox text
2020-12-03 00:27:47 +01:00