ranim 0.1.0-alpha.4

An animation engine inspired by manim and JAnim
Documentation
name = "getting_started3"
code = """
```rust,linenos
use ranim::{\r
    animation::{\r
        creation::WritingAnimSchedule, fading::FadingAnimSchedule, transform::TransformAnimSchedule,\r
    },\r
    color::palettes::manim,\r
    items::vitem::{Circle, Square},\r
    prelude::*,\r
};\r
\r
#[scene]\r
struct GettingStarted3Scene;\r
\r
impl TimelineConstructor for GettingStarted3Scene {\r
    fn construct<'t: 'r, 'r>(\r
        self,\r
        timeline: &'t RanimTimeline,\r
        _camera: &'r mut Rabject<'t, CameraFrame>,\r
    ) {\r
        let mut square = Square(300.0).build();\r
        square.set_color(manim::BLUE_C);\r
\r
        let mut square = timeline.insert(square);\r
        let mut circle = Circle(300.0).build();\r
        circle.set_color(manim::RED_C);\r
\r
        timeline.play(square.transform_to(circle).apply()); // Use `apply` on an anim schedule to update rabject data\r
        timeline.play(square.unwrite()); // Do not use `apply` to keep the data in Rabject not changed\r
        timeline.play(square.write());\r
        timeline.play(square.fade_out());\r
    }\r
}\r
\r
fn main() {\r
    render_timeline(GettingStarted3Scene, &AppOptions::default());\r
}\r

```"""
hash = "b777a4c065157d2ef47186c1387f1e35aaaeb508"
preview_imgs = []
output_files = ["/examples/getting_started3/output.mp4"]