ManimCommunity / ManimCommunity/manim
What about adding a whiteboard animation?
- Dominant language
- Python
- Stars
- 40.9k
- Forks
- 3.1k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 25
Description
## Description of proposed feature
Given the popularity of whiteboard explainer videos (see e.g. [this](https://www.youtube.com/watch?v=jDm6lvxjAp0)), I was thinking that it may be a low-hanging fruit to add this kind of animation.
## Possible implementation directions (?)
It should be enough to add a new "creation" and "un-creation" classes like Write, Create, etc.
- The creation class (e.g. HandwriteCreate) should make the writing hand to follow the Bezier curve of the MObject that is being unveiled. The MObject could be for example unveiled with .get_subcurve(0, dalpha) where the updater dalpha belongs to [0,1]. The tip of the pen can follow the get_end() point of the returned subcurve.
- The un-creation class (e.g. HandwriteUncreate) should just randomly move the hand holding the eraser around the Bezier curve resulting from .get_subcurve(0, dalpha) - in this case dalpha go from 1 to 0.
Of course this are just implementation ideas that came on top of my head, perhaps things are way more difficult.
Contributor guide
Research direction
Start by reviewing the existing Write and Create animation classes, along with MObject.get_subcurve() and get_end(). Clarify the intended hand-drawn creation and erasure behavior, then determine how a complete implementation should demonstrate both animations following an object's Bézier curve.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100