manim边学边做--图形间集合关系

几何图形间的集合关系,是数学和几何学中的一个基本概念,

通过计算不同形状(如圆形、矩形、三角形等)的交集和并集等关系,可以实现复杂的图形处理和视觉效果。

manim中提供了4种计算几何形状间集合关系的模块:

  1. Difference:从形状A 中减去与形状B相交的部分
  2. Exclusion:减去形状A形状B相交的部分,保留不同的部分
  3. Intersection:保留所有形状间的交集
  4. Union:保留所有形状的并集

1. 主要参数

Difference的主要参数有:

参数名称 类型 说明
subject VMobject 主要显示的几何体
clip VMobject 用来切割的几何体

Difference就是将subjectclip相交的部分从subject中删掉。

Exclusion的主要参数有:

参数名称 类型 说明
subject VMobject 第一个几何体
clip VMobject 第二个几何体

Exclusion就是将subjectclip相交的部分删掉,保留subjectclip剩余的部分。

Intersection的主要参数有:

参数名称 类型 说明
vmobjects *VMobject 可以传入2个或2个以上的几何体

Intersection就是保留所有几何体相交的部分。

如果参数vmobjects中几何体的数量小于2会报错。

Union的主要参数有:

参数名称 类型 说明
vmobjects *VMobject 可以传入2个或2个以上的几何体

Union是保留所有几何体合起来的部分。

如果参数vmobjects中几何体的数量小于2会报错。

2. 使用示例

manim提供的集合关系模块,大大简化了代码的编写。

2.1. Difference 示例

python 复制代码
subject = Square()
clip = Circle()

Difference(subject, clip)

2.2. Exclusion 示例

python 复制代码
subject = Square()
clip = Circle()

Exclusion(subject, clip)

2.3. Intersection 示例

python 复制代码
subject = Square()
clip = Circle()

Intersection(subject, clip)

2.4. Union 示例

python 复制代码
subject = Square()
clip = Circle()

Union(subject, clip)

3. 附件

文中完整的代码放在网盘中了(bool_ops.py),

下载地址: 完整代码 (访问密码: 6872)

相关推荐
wang_yb3 天前
用SymPy自动因式分解:从面积拼图到代数恒等式
databook·manim
wang_yb7 天前
用SymPy自动求解追及问题的方程
databook·manim
wang_yb9 天前
用SymPy自动求解三角形构造与全等条件验证
databook·manim
wang_yb12 天前
用SymPy自动计算抛物线求根、判别式与顶点
databook·manim
wang_yb14 天前
一次函数图像工厂:用 SymPy 自动生成 y=kx+b 对比动画
databook·manim
wang_yb16 天前
用 SymPy 解决 Manim 曲线绘制速度不均的问题
databook·manim
wang_yb22 天前
Manim物理模拟:别自己写欧拉了!
databook·manim
wang_yb25 天前
轨迹的蓝图:方程求解与交点计算
databook·manim
wang_yb1 个月前
填充与积累:积分与面积的可视化
databook·manim
wang_yb1 个月前
切线的魔法:用 SymPy 和 Manim 轻松搞定导数动画
databook·manim