吼吼吼 发表于 2024-9-27 16:45:18

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

几何图形间的集合关系,是数学和几何学中的一个基本概念,
通过计算不同形状(如圆形、矩形、三角形等)的交集和并集等关系,可以实现复杂的图形处理和视觉效果。
manim中提供了4种计算几何形状间集合关系的模块:

[*]Difference:从形状A中减去与形状B相交的部分
[*]Exclusion:减去形状A和形状B相交的部分,保留不同的部分
[*]Intersection:保留所有形状间的交集
[*]Union:保留所有形状的并集
1. 主要参数

Difference的主要参数有:
参数名称类型说明subjectVMobject主要显示的几何体clipVMobject用来切割的几何体Difference就是将subject和clip相交的部分从subject中删掉。

Exclusion的主要参数有:
参数名称类型说明subjectVMobject第一个几何体clipVMobject第二个几何体Exclusion就是将subject和clip相交的部分删掉,保留subject和clip剩余的部分。

Intersection的主要参数有:
参数名称类型说明vmobjects*VMobject可以传入2个或2个以上的几何体Intersection就是保留所有几何体相交的部分。
如果参数vmobjects中几何体的数量小于2会报错。

Union的主要参数有:
参数名称类型说明vmobjects*VMobject可以传入2个或2个以上的几何体Union是保留所有几何体合起来的部分。
如果参数vmobjects中几何体的数量小于2会报错。

2. 使用示例

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

subject = Square()
clip = Circle()

Difference(subject, clip)
2.2. Exclusion 示例

subject = Square()
clip = Circle()

Exclusion(subject, clip)
2.3. Intersection 示例

subject = Square()
clip = Circle()

Intersection(subject, clip)
2.4. Union 示例

subject = Square()
clip = Circle()

Union(subject, clip)
3. 附件

文中完整的代码放在网盘中了(bool_ops.py),
下载地址: 完整代码 (访问密码: 6872)

来源:https://www.cnblogs.com/wang_yb/p/18435447
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: manim边学边做--图形间集合关系