弧线
弧线相比直线,在绘制过程中包含一定的弧度,manim中弧线相关的类都继承自Arc。
继承关系如下:
- Arc 弧线
- ArcBetweenPoints 两点生成的弧线
- CurvedArrow 单箭头弧线
- CurvedDoubleArrow 双箭头弧线
- CurvedArrow 单箭头弧线
- Circle 圆
- Dot 点
- SmallDot 小点
- Ellipse 椭圆
- Annulus 环形
- Dot 点
- AnnularSector 环扇,轮状
- Sector 扇形
- ArcBetweenPoints 两点生成的弧线
思维导图如下:
各自的效果如下:
测试代码如下:
from manimlib.imports import *
class TestArc(Scene):
def construct(self):
all_acl_classes = [
Arc(),
ArcBetweenPoints(LEFT, RIGHT),
CurvedArrow(LEFT, RIGHT),
CurvedDoubleArrow(LEFT, RIGHT),
Circle(),
Dot(),
SmallDot(),
Ellipse(),
Annulus(),
AnnularSector(),
Sector()
]
cc = TextMobject("Arc class")
titles = [TextMobject(obj.__class__.__name__) for obj in all_acl_classes]
vv = VGroup(cc)
for i, j in zip(titles, all_acl_classes):
i.next_to(j,UP)
vg = VGroup(i, j)
self.play(Transform(vv, vg))
self.wait(1)