挑战用30个例子掌握Python数学可视化manim【例4】

本文介绍了如何使用Python中的图形库构建一个场景,实现实时动画效果,包括绘制圆、改变半径、画出三角形和圆的周长。通过实例展示了如何创建、动画化图形元素以及复制圆并转化为周长的过程。
摘要由CSDN通过智能技术生成

例4

  • 画圆
  • 画半径
  • 画三角
  • 画周长
  • 复制圆转变为周长
    在这里插入图片描述
class Tute4(Scene):
  def construct(self):
    #这个浮点数变量初始为0.5,这个变量是可以动画变化线性等方式增加或减少的
    r = ValueTracker(0.5) #Tracks the value of the radius
    #根据每帧不断重绘圆,半径大小是r
    circle = always_redraw(lambda :
circle(radius = r.get_value(), stroke_color = YELLOW,
stroke_width =5))
    #画一条线,起点圆心,终点圆底部,也是实时重绘
    line_radius = always_redraw(lambda :
Line(start = circle.get_center(), end = circle.get_ bottom(), stroke_color = RED_B, stroke_width = 10)
    #画线,长度是圆的周长,位置在圆的下部,缓冲0.2
    line_circumference = always_redraw(lambda :
Line(stroke_color = YELLOW, stroke_width = 5
).set_length(2*r.get_value()* PI).next_to(circle, DOWN, buff=0.2)
    #三角形,实时重绘,圆顶部左部右部
    triangle = always_redraw(lambda :
Polygon(circle.get_top(), circle.get_left(), circle.get_right(), fill_color = GREEN_C)
    #动画分部进行,画圆,画半径,画三角
    self.play(Laggedstart(
Create(circle), DrawBorderThenFill(line_radius), DrawBorderThenFill(triangle),
run_time =4, lag_ratio = 0.75)
    #复制一个圆变成周长
    self.play(ReplacementTransform(circle.copy(), line_ circumference), run_time = 2)
    #动画,半径变大,其他关联图形随着变化
    self.play(r.animate.set_value(2), run_time = 5)
  • 11
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值