首页 > 其他分享 >manim边学边做--图形间集合关系

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

时间:2024-09-27 12:49:49浏览次数:9  
标签:clip 示例 -- VMobject 几何体 Union manim 边学边 subject

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

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

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)

标签:clip,示例,--,VMobject,几何体,Union,manim,边学边,subject
From: https://www.cnblogs.com/wang_yb/p/18435447

相关文章

  • 建造者模式
    简介建造者模式(BuilderPattern)将一个复杂对象的构建过程与它的表示分离,使得同样的构建过程可以创建不同的表示,属于创建型设计模式。通用模板创建产品类:要创建的产品类对象。//产品类publicclassProduct{//产品组成部件1publicStringpart1;//......
  • ide使用技巧与插件推荐
    IDE(集成开发环境)是开发者日常工作中不可或缺的工具,掌握一些使用技巧和使用合适的插件可以显著提高开发效率。以下是一些常见的IDE使用技巧和插件推荐:1. IDE使用技巧1.1 快捷键常用快捷键:代码格式化: Ctrl+Alt+L (IntelliJIDEA,AndroidStudio)快速修复: Alt......
  • C++ 标准模板库(STL)之集合(set)
    啊,哈喽,小伙伴们大家好。我是#张亿,今天呐,学的n钱买n鸡是集合(set)C++标准模板库(STL)之集合(set)(下面代码中的std::要去掉)在C++标准模板库(STL)中,set 是一种非常有用的容器,用于存储唯一元素的集合。set 内部自动对元素进行排序,通常使用红黑树(Red-BlackTree)实现,以保证元素以升......
  • 【日记】苟命要紧(1118 字)
    正文今天把假请到了,而且前后没有超过1个小时,十分诧异。就我们行现在的人手分配来看,一旦我有点事情,好像还找不到人代班……巨搞。下午上班,左边胸部有点不舒服。回想一下心功能不全最接近的症状,应该是稳定型心绞痛……但就心绞痛的程度而言,是不是有点太轻微了……而......
  • COMS 6998 - High Performance Machine Learning
    COMS6998-HighPerformanceMachineLearningHomeworkAssignment1Fall2024DueDate:September292024UsetheGoogleCloudplatform.(GCP)oryourownmachine.MakesurethatyourGoogleVMoryourmachinehasatlast32GBofRAMtobeabletocomplet......
  • 【VMware ESXi】使用 esxtop 杀死 ESXi 主机中卡死和不响应的虚拟机。
    最近在家里的Homelab主机上进行VMwareCloudFoundation相关测试,由于CPU超负荷使用,某个别虚拟机时不时的会出现卡死和不响应等现象,进而导致了测试的失败并影响了相关实验的进度。比如,下图所示的嵌套ESXi虚拟机,本来运行好好的,由于资源不足,该虚拟机便出现了卡死和不响应问题......
  • 关于Docker不能安装和拉取镜像解决办法,实测有效
    安装Docker**方式一:通过yum安装**sudoyuminstall-ydocker-cedocker-ce-clicontainerd.io**方式二:通过以下教程地址安装**https://github.com/tech-shrimp/docker_installer解决不能拉取镜像修改daemon.json文件vim/etc/docker/daemon.json#将以下内容复制......
  • Springboot拉勾教育课程管理系统y862q--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,讲师,学院,课程分类,课程信息,课程购买,课程发送开题报告内容一、项目背景与意义随着在线教育市场的蓬勃发展,拉勾教育作为专注于IT职业教育的知名品牌,其......
  • Springboot科研项目申报网站设计6109r--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,文件信息,成果类型,科技成果,友情链接开题报告内容一、研究背景与意义在科研领域,科研项目申报是科研活动的重要起点,其流程复杂且涉及众多环节。传统的纸......
  • Springboot课程在线测评系统lkn04程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容随着在线教育的普及与发展,课程在线测评系统作为教学质量评估与学生学习效果检验的重要工具,其重要性日益凸显。本项目旨在设计并开发一套功能完善、......