几何图形是manim
中最重要的一类模块,manim
内置了丰富的各类几何图形,
本篇从最简单的点开始,逐个介绍manim
中的几何模块。
manim
中点相关的模块主要有3个:
Dot
:通用的点LabeledDot
:在点的中间可以加一些说明文字AnnotationDot
:使用在注释场景中的点Dot
系列在manim
各个模块中的位置大致如上图中所示。
点比较简单,所以参数不多,主要就是控制点的大小,颜色,透明度等等属性。Dot
对象:
参数名称 | 类型 | 说明 |
---|---|---|
point | [float,float,float] | 点的坐标 |
radius | float | 点的半径 |
stroke_width | float | 边框厚度 |
fill_opacity | float | 透明度 |
color | str | 颜色 |
LabeledDot
对象,继承自Dot
对象,包含Dot
的属性,此外还有:
参数名称 | 类型 | 说明 |
---|---|---|
label | str | 点中的文本内容 |
AnnotationDot
对象,继承自Dot
对象,包含Dot
的属性,此外还有:
参数名称 | 类型 | 说明 |
---|---|---|
stroke_color | str | 外框颜色 |
fill_color | str | 内部的颜色 |
这三种点对象中,使用最多的Dot
对象,下面通过一些示例演示点的使用。
调节点的大小主要就是调节点的半径radius
。
d1 = Dot(radius=0.04)
d2 = Dot() # 默认点半径
d3 = Dot(radius=0.24)
d4 = Dot(radius=0.32)
d5 = Dot(radius=0.64)
点的color
属性可以设置颜色。
d1 = Dot(color=RED)
d2 = Dot(color=GREEN)
d3 = Dot(color=BLUE)
d4 = Dot(color=YELLOW)
d5 = Dot(color=PURPLE)
点中带标签,需要使用LabeledDot
对象,它的label
属性除了可以显示字母和数字之外,
还可以显示中文和数学公式。
d1 = LabeledDot(
label=Text("中文", font_size=20),
)
d2 = LabeledDot(label="a^2")
d3 = LabeledDot(label="32")
d4 = LabeledDot(label="V_i")
label
属性不能直接输入中文,需要通过Text
对象来输入中文;
输入公式的话,只要输入Latex
格式的字符串即可,输出时会被渲染成公式。
AnnotationDot
对象是用来在视频中加注释和标注的,它将点分为边框和内部两部分,
边框可以设置粗细,而且这两部分还可以分别设置不同的颜色。
d1 = AnnotationDot(
stroke_width=2,
stroke_color=RED,
fill_color=GREEN,
)
d2 = AnnotationDot(
stroke_width=10,
stroke_color=BLUE,
fill_color=YELLOW,
)
d3 = AnnotationDot(
stroke_width=20,
stroke_color=YELLOW,
fill_color=RED,
)
d4 = AnnotationDot(
stroke_width=40,
stroke_color=GREEN,
fill_color=PURPLE,
)
stroke_width
属性设置外框的粗细,stroke_color
属性设置外框的颜色,fill_color
设置内部的颜色。
文中完整的代码放在网盘中了(dot.py
),
下载地址: 完整代码 (访问密码: 6872)