¿Cómo crear y animar Curvas PARAMÉTRICAS con Manim?
Crear curvas PARAMÉTRICAS en 2 y 3 dimensiones con Manim. Ejemplos: la epicicloide.
from manim import * class curva2d(Scene): def construct(self): cielo = "#C4DDFF" purpura="#800080" self.camera.background_color = cielo self.add(Text("Epicicloide",color=RED).move_to(UP * 3.5)) ax = Axes(x_range=[-3.5, 3.5, 1], y_range=[-3.5, 3.5, 1], x_length=7, y_length=7, axis_config={"include_tip": True}, ).move_to(np.array([-3.5, 0, 0])) ax.set_color(GREY) self.add(ax) circulo_grande = ParametricFunction( lambda u: np.array([ 2 * np.sin(u), 2 * np.cos(u), 0 ]), color=BLUE, t_range=np.array([0, 2 * PI, 0.01]) ).move_to(ax.coords_to_point(0, 0)) self.play( Write(circulo_grande, run_time=0.5), ) self.wait(3) epicicloide = ParametricFunction( lambda u: np.array([ 2.5 * np.cos(u) - 0.5 * np.cos((5 * u)), 2.5 * np.sin(u) - 0.5 * np.sin((5 * u)), 0 ]), color=purpura, t_range=np.array([0, 4 * PI, 0.01]) ).move_to(ax.coords_to_point(0, 0)) self.play( Write(epicicloide), run_time=15) namex = MathTex("x=2.5\cos(\theta)-0.5\cos(5\theta)").move_to(RIGHT * 3.5 + UP).set_color(BLACK) namey = MathTex("y=2.5\sin(\theta)-0.5\sin(5\theta)").move_to(RIGHT * 3.5 + UP * 0).set_color(BLACK) rango = MathTex("\theta \in (0,5\pi)").move_to(RIGHT * 3.5 + DOWN).set_color(BLACK) self.play( Write(namex), Write(namey), Write(rango) ) self.wait(10)
© Profesor Favián Arenas. 2023. Diseñado por HTML Codex