manim边学边做--点
几何图形是manim
中最重要的一类模块,manim
内置了丰富的各类几何图形,
本篇从最简单的点开始,逐个介绍manim
中的几何模块。
manim
中点相关的模块主要有3个:
Dot
:通用的点LabeledDot
:在点的中间可以加一些说明文字AnnotationDot
:使用在注释场景中的点
Dot
系列在manim
各个模块中的位置大致如上图中所示。
1. 主要参数
点比较简单,所以参数不多,主要就是控制点的大小,颜色,透明度等等属性。Dot
对象:
参数名称 | 类型 | 说明 |
---|---|---|
point | [float,float,float] | 点的坐标 |
radius | float | 点的半径 |
stroke_width | float | 边框厚度 |
fill_opacity | float | 透明度 |
color | str | 颜色 |
LabeledDot
对象,继承自Dot
对象,包含Dot
的属性,此外还有:
参数名称 | 类型 | 说明 |
---|---|---|
label | str | 点中的文本内容 |
AnnotationDot
对象,继承自Dot
对象,包含Dot
的属性,此外还有:
参数名称 | 类型 | 说明 |
---|---|---|
stroke_color | str | 外框颜色 |
fill_color | str | 内部的颜色 |
2. 使用示例
这三种点对象中,使用最多的Dot
对象,下面通过一些示例演示点的使用。
2.1. 大小
调节点的大小主要就是调节点的半径radius
。
d1 = Dot(radius=0.04)
d2 = Dot() # 默认点半径
d3 = Dot(radius=0.24)
d4 = Dot(radius=0.32)
d5 = Dot(radius=0.64)
2.2. 颜色
点的color
属性可以设置颜色。
d1 = Dot(color=RED)
d2 = Dot(color=GREEN)
d3 = Dot(color=BLUE)
d4 = Dot(color=YELLOW)
d5 = Dot(color=PURPLE)
2.3. 标签
点中带标签,需要使用LabeledDot
对象,它的label
属性除了可以显示字母和数字之外,
还可以显示中文和数学公式。
d1 = LabeledDot(
label=Text("中文", font_size=20),
)
d2 = LabeledDot(label="a^2")
d3 = LabeledDot(label="32")
d4 = LabeledDot(label="V_i")
label
属性不能直接输入中文,需要通过Text
对象来输入中文;
输入公式的话,只要输入Latex
格式的字符串即可,输出时会被渲染成公式。
2.4. 边框和内部
AnnotationDot
对象是用来在视频中加注释和标注的,它将点分为边框和内部两部分,
边框可以设置粗细,而且这两部分还可以分别设置不同的颜色。
d1 = AnnotationDot(
stroke_width=2,
stroke_color=RED,
fill_color=GREEN,
)
d2 = AnnotationDot(
stroke_width=10,
stroke_color=BLUE,
fill_color=YELLOW,
)
d3 = AnnotationDot(
stroke_width=20,
stroke_color=YELLOW,
fill_color=RED,
)
d4 = AnnotationDot(
stroke_width=40,
stroke_color=GREEN,
fill_color=PURPLE,
)
stroke_width
属性设置外框的粗细,stroke_color
属性设置外框的颜色,fill_color
设置内部的颜色。
3. 附件
文中完整的代码放在网盘中了(dot.py
),
下载地址: 完整代码 (访问密码: 6872)
manim边学边做--点的更多相关文章
- 学EE做硬件找工作不如学CS做软件,为什么会这样?
学EE做硬件找工作不如学CS做软件,为什么会这样? 电子工程(EE)就业最好的方向居然是转计算机,也许让有的人觉得很不公平,EE也是很重要的学科,我们学习也很努力,为什么就业会不如CS?也有的人好奇, ...
- 牛腩学Kotlin做Android应用
牛腩学Kotlin做Android应用,蹭热度视频,边学边做, 01-kotlin插件安装及hello world 02-kotlin基础语法速览 哔哩哔哩观看地址:http://www.bilibi ...
- php实现记忆化递归--以斐波那契数列为例(还是以边学边做为主,注重练习)
php实现记忆化递归--以斐波那契数列为例(还是以边学边做为主,注重练习) 一.总结 1.递归不优化的话,30层开外就有点吃力了 2.php因为定义变量的时候不用定义变量类型,所以数组里面的类型也是p ...
- html5-3 html5标签(热点地图如何实现)(边学边做)
html5-3 html5标签(热点地图如何实现)(边学边做) 一.总结 一句话总结:热点地图用绝对定位实现. 1.自定义列表怎么弄? dl 自定义列表dt 自定义标题dd 自定义列表内容 2. ...
- 第一份开发工作,边学边做android
我刚刚毕业,在培训学校学的Java web开发,虽然学的没有大学生那么丰富细致,没有他们理论基础扎实,但是这是我学习软件开发的唯一方式了. 从小学我学习就是倒数2.3等,所有人都认为我是个没法学习的孩 ...
- 边学边做,简单的 GraphQL 实例
项目中有功能要调用 API,对方 API 用的是 GraphQL 实现,就简单学了下,感叹技术进步真快,Facebook 发明的这玩意儿咋这么牛逼,使前端开发人员变得主动起来,想要什么接口.返回什么结 ...
- LabVIEW Actor Framwork (2)________ 边学边做server&client
回顾下初始需求: 现在要做一个类似聊天的demo,一个server端,若干个client端:首先是server启动,通过server可以打开若干个client端,然后每个client可以独立给serv ...
- 牛腩学ASP.NET CORE做博客(视频)
牛腩学习ASP.NET CORE做的项目,边学边做. 目录: 01-dotnetcore网站部署到centos7系统上(时长 2:03:16) 02-前期准备及项目搭建 (时长:0:23:35) 03 ...
- 牛腩学用MUI做手机APP
斗鱼直播间直播学习撸码,最终目标是用MUI做一个手机APP(暂定android平台,攒钱买IPHONE 7SE!!!),直播内容含整个软件APP的制作过程(含后台接口的制作,放到自己买的阿里云服务器, ...
- 技术的止境(客户价值第一,快速实现第二,边做边学,迅速成为牛人。紧贴客户的需求去做技术,立于不败之地。追求的目标:把一项产品去做好,用产品去养活自己和家人)good
作为一个依靠技术来谋生的程序员,我最近一直在思考一个问题,有限的生命里,面对无限的技术更新,我要研究到什么程度才能算是完成我的成为技术大牛的目标呢?换而言之,那就是技术的止境在哪儿呢?深入的思考下去, ...
随机推荐
- 引入feign注入报错 org.springframework.beans.factory.NoSuchBeanDefinitionException解决
引入feign注入报错 org.springframework.beans.factory.NoSuchBeanDefinitionException解决 [172.16.22.215] out: C ...
- onreadystatechange 属性
onreadystatechange 属性是 XMLHttpRequest 对象的一个事件处理器,用于在 XMLHttpRequest 对象的 readyState 属性发生变化时触发.这个属性通常用 ...
- 端口占用,无法通过netstat找到进程,占用的端口又不能修改,该怎么办?
最近遇到一个奇葩的问题,项目跑的好好的,没有安装其它特殊软件,突然服务器启动报错,日志如下,显然是服务器的8080端口占用了. Caused by: java.net.BindException: A ...
- 03-vi和vim编辑器的使用
背景 vim是一个类似于vi的著名的功能强大.高度可定制的文本编辑器. vim在vi的基础上改进和增加了很多特性. 如今vi已经是最受IT届欢迎的编辑器之一. 不止在Linux中,主流IDE都支持vi ...
- 实验12.dhcp服务器实验
实验12.dhcp服务器实验 测试DHCP服务的可用性 实验组 交换机配置 R1 interface GigabitEthernet0/0/0 ip address 192.168.1.1 255.2 ...
- Bike Sharing Analysis(一)- 探索数据
1. Bike Sharing Analysis 在这章主要介绍如何分析共享单车服务数据,以及如何基于时间.天气状态特征来识别单车的使用模式.除此之外,我们还会引入可视化分析,假设检验.以及时间序列分 ...
- Gmsh 和 FiPy 求解稳态圆柱绕流
本项目的源码保存在 github 仓库 https://github.com/cjyyx/CFD_Learning/tree/main/CFD软件学习/FiPy/cylinder.如果下载整个目录,可 ...
- 函数式编程(Lambda、Stream流、Optional等)
# 声明 文档来源:Github@shuhongfan 源文档:B站UP主:三更草堂 # 函数式编程-Stream流 # 概述 # 为什么学? 基操,否则看不懂别人写的优雅代码 简化代码,不想看到有些 ...
- 我不应该用JWT的!
一.前言 大家好呀,我是summo,之前有自学过Shrio框架,网上一搜就有SpringBoot整合Shrio+ JWT的文章,我是在学习Shrio框架的时候顺带学的JWT.后来我还看见有很多博主专门 ...
- vue项目 回到顶部功能 定位在头部
'backBox'是外层容器类名, 根据传入的index,定位在不同的位置 组件: <template> <div class="toTop" @click=&q ...