要使用manim实现直角坐标系上一点的运动,可以按照以下步骤进行操作:

  1. 导入manim库:
from manim import *
  1. 创建一个继承自Scene的类,用于显示动画:
class MyScene(Scene):
    def construct(self):
        pass
  1. 在construct方法中创建直角坐标系:
        axes = Axes(
            x_range=(-5, 5, 1),
            y_range=(-5, 5, 1),
            x_length=10,
            y_length=10,
            axis_config={"color": WHITE},
            x_axis_config={"numbers_to_include": range(-5, 6)},
            y_axis_config={"numbers_to_include": range(-5, 6)}
        )
        self.play(Create(axes))
  1. 创建一个Dot对象,并设置其初始位置:
        dot = Dot(point=axes.c2p(0, 0))  # 初始位置在坐标原点
        self.play(Create(dot))
  1. 创建一个运动路径,并设置运动的终点:
        path = TracedPath(dot.get_center, stroke_color=YELLOW, stroke_width=2)
        self.play(MoveAlongPath(dot, path), run_time=4)  # 运动时间为4秒
  1. 播放动画:
        self.wait(1)  # 等待1秒
        self.play(FadeOut(dot))  # 淡出点对象
        self.wait(1)  # 等待1秒
  1. 运行动画:
MyScene().render()

完整的代码如下所示:

from manim import *

class MyScene(Scene):
    def construct(self):
        axes = Axes(
            x_range=(-5, 5, 1),
            y_range=(-5, 5, 1),
            x_length=10,
            y_length=10,
            axis_config={"color": WHITE},
            x_axis_config={"numbers_to_include": range(-5, 6)},
            y_axis_config={"numbers_to_include": range(-5, 6)}
        )
        self.play(Create(axes))

        dot = Dot(point=axes.c2p(0, 0))
        self.play(Create(dot))

        path = TracedPath(dot.get_center, stroke_color=YELLOW, stroke_width=2)
        self.play(MoveAlongPath(dot, path), run_time=4)

        self.wait(1)
        self.play(FadeOut(dot))
        self.wait(1)

MyScene().render()

运行代码后,会生成一个名为MyScene的动画视频,显示一个点在直角坐标系上的运动轨迹

manim实现直角坐标系上一点的运动

原文地址: https://www.cveoy.top/t/topic/h12p 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录