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

news/2024/9/27 13:01:07

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

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

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 示例

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)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/65374.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

java窗口登录界面实现随机验证码

创建窗口内容及验证码更换 代码示例: package frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextField; public class Jframe…

【VMware ESXi】使用 esxtop 杀死 ESXi 主机中卡死和不响应的虚拟机。

最近在家里的 Homelab 主机上进行 VMware Cloud Foundation 相关测试,由于 CPU 超负荷使用,某个别虚拟机时不时的会出现卡死和不响应等现象,进而导致了测试的失败并影响了相关实验的进度。比如,下图所示的嵌套 ESXi 虚拟机,本来运行好好的,由于资源不足,该虚拟机便出现了…

「TAOI-2」Ciallo~(∠・ω )⌒★ 题解

手玩了一个小时终于做出来了,这不得写一篇题解记录一下?? 下面设 \(s\) 的长度为 \(n\),\(t\) 的长度为 \(m\)。 考虑分类讨论: 如果 \(s\) 中有一个子串 \(s\) 与 \(t\) 完全相同(可以用哈希进行比较),设 \(s\) 是 \(s\) 的第 \(l\) 到第 \(r\) 个字符组成的字符串,则…

伯俊开发回忆录---VIP充值退款增加短信验证逻辑

一、前提总部财务需要增加对VIP卡充值退款的管控,防止资金被异常盗用, 1、针对VIP充值退款获取验证码,表单增加验证码字段 2、系统随机生成6位数验证码并生成提醒信息通过公司发送平台进行发送 三、校验规则未输入验证码不允许提交 验证码校验不通过提示重新输入

我的博客生涯开始了

我的博客生涯开始了

渗透测试入门

什么是渗透测试? 定义: 渗透测试完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节,以期发现和挖掘系统中存在的漏洞,然后输出渗透测试报告,并提交给网络所有者。网络所有者根据渗透人员提供的渗透测试报告,可以清晰知…

常间的css样式问题处理

flex导致文字省略失效 单独使用文字省略,按预期工作: 给元素加上flex,文字省略失效: 解决方案:flex和文字省略不要放到一个元素上。 flex布局中,文字溢出省略不生效的问题 问题展示.container {display: flex;width: 400px;border: 1px solid #000; }.content {flex: 1; …

Spring上传文件乱码问题(问号版)

Spring上传文件乱码问题(问号版) 目录Spring上传文件乱码问题(问号版)一、问题描述:二、原因分析三、解决办法 一、问题描述: spring项目上传文件,后端接收文件并获取文件名称,名称中文变成 “?”,例如:??abc()??.xml,其中问号为中文字符 // 前端传递参数 Mult…