BulletedList
是Mobjects
分类中用来显示列表的class
。
使用BulletedList
可以帮助我们快速生成一个对齐的列表结构。BulletedList
在manim
各个模块中的位置如上图中所示。
1. 主要参数
BulletedList
的主要参数有:
参数名称 | 类型 | 说明 |
---|---|---|
items | list | 列表的内容 |
buff | float | 列表内容之间的间隔 |
dot_scale_factor | float | 每行列表前的点的大小 |
tex_environment | str | 不要设置此参数 |
最后一个tex_environment
参数尽量不要使用,
它是用来设置latex
语法中的environment
(一般用于显示矩阵,方程组等等)
在BulletedList
中,对items
内容做了处理,使用tex_environment
可能无法按预期显示。
2. 主要方法
BulletedList
的主要方法只有一个:
名称 | 说明 |
---|---|
fade_all_but | 隐藏列表其他行 |
这个方法主要用来突出显示某一行。
3. 使用示例
3.1. 列表行间隔
通过参数buff
调节不同的间隔。
# 小间隔
l = BulletedList("aaa", "bbb", "ccc", buff=0.2)
# 中间隔
l = BulletedList("aaa", "bbb", "ccc", buff=0.5)
# 大间隔
l = BulletedList("aaa", "bbb", "ccc", buff=2)
3.2. 列表圆点大小
列表前的圆点大小也是可以调节的。
# 小点
l = BulletedList("aaa", "bbb", "ccc", dot_scale_factor=1)
# 中点
l = BulletedList("aaa", "bbb", "ccc", dot_scale_factor=2)
# 大点
l = BulletedList("aaa", "bbb", "ccc", dot_scale_factor=4)
3.3. 突出显示某一行
使用BulletedList
的方法fade_all_but
来突出显示列表的某一行。
l = BulletedList(
"$x^2+y^2 = z^2$",
"$x_2 * x_3 = y_2$",
"$z = 0$",
)
# 突出显示第一行
l.fade_all_but(0)
# 突出显示第二行
l.fade_all_but(1)
# 突出显示第三行
l.fade_all_but(2)
4. 附件
文中完整的代码放在网盘中了(bulleted_list.py
),
下载地址: 示例代码 (访问密码: 6872)