当前位置: 首页 > wzjs >正文

电子政务网站建设参考文献友情链接吧

电子政务网站建设参考文献,友情链接吧,昆山科技网站建设,wordpress 标题跳外链1.相机的移动(MovingCameraScene) MovingCameraScene 是 Manim 中的一个类&#xff0c;用于创建可以移动的相机场景。这个类继承自 Scene&#xff0c;并提供了关于相机移动的额外功能。 MovingCameraScene(camera_class<class manim.camera.moving_camera.MovingCamera>…

1.相机的移动(MovingCameraScene)

MovingCameraScene 是 Manim 中的一个类,用于创建可以移动的相机场景。这个类继承自 Scene,并提供了关于相机移动的额外功能。

MovingCameraScene(camera_class=<class 'manim.camera.moving_camera.MovingCamera'>,
**kwargs)

参数解释:

  • camera_class: 这是一个类,指定相机的类型。MovingCamera 是 Manim 中的一个类,允许相机在场景中平移和旋转。
  • **kwargs: 这是一个可变参数,可以传递给基类 Scene 的构造函数,允许用户自定义其他一些场景参数。

以下是一个使用 MovingCameraScene 的基本示例,包括实例化并使用相机移动的简单代码,注释解释了每一部分的功能。

from manim import *  class MyMovingCameraScene(MovingCameraScene):  def construct(self):  # 创建一个场景中的文本  text = Text("Hello, Manim!").shift(2*DOWN)  # 将文本添加到场景中  self.add(text)  # 确保相机开始时聚焦于文本  self.camera.frame.save_state()  # 移动相机并进行动画  self.play(self.camera.frame.animate.move_to([0,0,0]))  # 添加一些额外元素来显示相机移动效果  square = Square(color=BLUE).move_to([-4,2,0]) self.add(square)  # 将相机视图移动到新位置  self.play(self.camera.frame.animate.move_to([2,2,0]))  # 恢复相机到初始位置  self.play(self.camera.frame.animate.restore())  

 实例2;放大相机

class ChangingCameraWidthAndRestore(MovingCameraScene):  def construct(self):  text = Text("Hello World").set_color(BLUE)  text01 = Text("setep1").set_color(BLUE).shift(2 * UP)  # 添加文本到场景中  self.add(text01)  # 只添加 text01,不改变它的状态  self.add(text)    # 添加并保持 text  # 保存相机的状态  self.camera.frame.save_state()  # 放大 text 的视图,改变相机宽度  self.play(self.camera.frame.animate.set(width=text.width * 2))  self.wait(0.3)  # 恢复相机的状态  self.play(Restore(self.camera.frame))  self.wait(0.3)  # 再次改变相机宽度,但保持 text01 的大小不变  self.play(self.camera.frame.animate.set(width=text.width * 0.5))  self.wait(0.3)  # 最后恢复到初始状态  self.play(Restore(self.camera.frame))

运行结果都会发生的事情就是,场面放什么,他都一起放大和移动。

实例3:移动相机

from manim import *class MovingCameraCenter(MovingCameraScene):def construct(self):s = Square(color=RED, fill_opacity=0.5).move_to(2 * LEFT)t = Triangle(color=GREEN, fill_opacity=0.5).move_to(2 * RIGHT)self.wait(0.3)self.add(s, t)self.play(self.camera.frame.animate.move_to(s))self.wait(0.3)self.play(self.camera.frame.animate.move_to(t))

 实例4:先放大,再移动。

from manim import *class MovingAndZoomingCamera(MovingCameraScene):def construct(self):s = Square(color=BLUE, fill_opacity=0.5).move_to(2 * LEFT)t = Triangle(color=YELLOW, fill_opacity=0.5).move_to(2 * RIGHT)self.add(s, t)self.play(self.camera.frame.animate.move_to(s).set(width=s.width*2))self.wait(0.3)self.play(self.camera.frame.animate.move_to(t).set(width=t.width*2))self.play(self.camera.frame.animate.move_to(ORIGIN).set(width=14))

实例5:

from manim import *class MovingCameraOnGraph(MovingCameraScene):def construct(self):self.camera.frame.save_state()ax = Axes(x_range=[-1, 10], y_range=[-1, 10])graph = ax.plot(lambda x: np.sin(x), color=WHITE, x_range=[0, 3 * PI])dot_1 = Dot(ax.i2gp(graph.t_min, graph))dot_2 = Dot(ax.i2gp(graph.t_max, graph))self.add(ax, graph, dot_1, dot_2)self.play(self.camera.frame.animate.scale(0.5).move_to(dot_1))self.play(self.camera.frame.animate.move_to(dot_2))self.play(Restore(self.camera.frame))self.wait()

 2.获取在特定动画过程中移动的物体

get_moving_mobjects(*animations) 是 Manim 中的一个辅助函数,主要用于获取在特定动画过程中移动的物体。它会分析传入的动画对象,并返回这些动画中涉及的移动物体的列表。

参数解释:

  • *animations: 这是一个可变参数,允许传入多个动画对象。函数将逐个检查这些动画,确定哪些物体因这些动画而发生了位置变化。

代码示例:

下面是一个示例代码,展示了如何使用 get_moving_mobjects 函数。注释部分解释了每个步骤的功能。

from manim import *  class MovingObjectsExample(Scene):  def construct(self):  # 创建两个文本对象  text1 = Text("Moving Text 1",color=RED).shift(LEFT * 3+UP)  text2 = Text("Moving Text 2",color=BLUE).shift(RIGHT * 3+DOWN)  # 将对象添加到场景中  self.add(text1, text2)  # 定义动画,将第一个文本向右移动,将第3个文本向左移动  animation1 = text1.animate.shift(RIGHT * 3)  animation2 = text2.animate.shift(LEFT * 3)  # 获取所有移动的物体  moving_objects = self.get_moving_mobjects(animation1, animation2)  # 播放动画  self.play(animation1, animation2) def get_moving_mobjects(self, *animations):  # 使用 get_moving_mobjects 函数来获取在动画过程中移动的物体 return super().get_moving_mobjects(*animations)  

想看详细的视频,可以在资源里面自行下载观看ChangingCameraWidthAndRestore.zip。

 

http://www.dtcms.com/wzjs/19217.html

相关文章:

  • 江苏外贸型网站制作网络营销常用的工具和方法
  • 做地方门户网站抓取关键词的软件
  • 网络营销企业网站设计希爱力吃一颗能干多久
  • 哪个网站做效果图好可以投放广告的网站
  • 企业网站的建设营销软文500字
  • 新疆建设兵团第五师网站网页制作软件
  • 做网站视频用哪个视频编辑软件沈阳百度seo关键词优化排名
  • 西安企业网站建站网站建设的公司
  • 网站设计与维护最新军事新闻
  • 网站建设公司开发企业北京网站常用的seo网站优化排名
  • 做网站项目需要多少钱竞价推广网络推广运营
  • 网站留言模板网络推广员岗位职责
  • 自己做内部网站服务器域名查询
  • 网站会员系统怎么做模版网站链接提交
  • 最版网站建设案例淘宝补流量平台
  • 自己网站做短链接今天的热搜榜
  • 用cms做的网站 的步骤百度双十一活动
  • 怎么在外汇局网站做结汇申报成都互联网公司排名
  • 东营市河口区建设局网站正规网络教育培训机构
  • 北京网站建设报价永久免费自助建站平台
  • 国内知名网站制作公司举三个成功的新媒体营销案例
  • 山西钢铁建设集团有限公司网站北京网站建设公司优势
  • 品牌网站的推广成人教育机构排行前十名
  • 建设网站目的b2b自动发布信息软件
  • 滁州网站开发公司优化seo教程
  • 联合建设官方网站东莞网站关键词优化公司
  • 网站建设开发费会计分录网站关键词优化的步骤和过程
  • 陵水网站建设价格深圳seo秘籍
  • 医院响应式网站建设方案集合竞价口诀背熟6句
  • 美国专门做特卖的网站有哪些域名备案官网