manim边学边做--Integer

news/2024/10/2 3:16:20

IntegerMobjects分类中专门用来显示整数的一个class
它与上一篇介绍的DecimalNumber类不同之处在于,它只专注于整数的显示。
image.png
Integermanim各个模块中的位置如上图中所示。

1. 主要参数

Integer是继承自DecimalNumber的,所以使用Integer的地方,也可以使用DecimalNumber
不过,如果只是显示整数的话,还是用Integer比较好,它默认会自动把小数部分省略掉。

Integer主要参数和上一篇中的DecimalNumber类似。
不过,一般使用Integer的场合基本都不需要指定参数。

2. 主要方法

DecimalNumber一样,Integer的主要方法也是3个:

名称 说明
get_value 获取数值
set_value 设置数值
increment_value 增加数值

不过,与DecimalNumber不同的是,Integerget_value方法会自动返回整数的部分。

val = Integer(10.56)
print(f"原始数据:{val.get_value()}")val.set_value(20.22)
print(f"设置数据:{val.get_value()}")val.increment_value(3.9)
print(f"递增数据:{val.get_value()}")

image.png
get_value会对数值做四舍五入,然后返回整数。这点是与DecimalNumber的不同之处。

3. 使用示例

Integer类使用时不太需要指定参数,所以演示一些样式方面的示例。
注意:这里对于Integer的样式设置,同样适用于上一篇中的DecimalNumber

3.1. 位置

通过设置\(x,y\)的坐标可以定位Integer显示的位置。
定位时,屏幕中心的坐标是\((0,0)\)\(X\)轴方向从左到右,\(Y\)轴方向从下到上。

x = Integer(123).set_x(-2).set_y(2)
y = Integer(321).set_x(2).set_y(-2)

out.gif

3.2. 大小

设置字体显示的大小用scale方法。

# 缩小至 1/2
x = Integer(123).scale(0.5)# 正常大小
y = Integer(321)# 2倍大小
z = Integer(213).scale(2)

out.gif

3.3. 颜色

最后,演示设置Integer的颜色,可以设置单一的颜色,也可以设置渐变色。

# 单一颜色
x = Integer(123).set_color(RED)# 渐变色
y = Integer(321123).set_color_by_gradient(BLUE_E, YELLOW_E)

out.gif

4. 附件

最后再强调一遍,Integer继承自DecimalNumber,因此上一篇DecimalNumber中介绍的属性这里的Integer也可以使用。
同样,这里的示例中演示的位置,大小,颜色的设置,DecimalNumber也可以使用。

文中完整的代码放在网盘中了(integer.py),
下载地址: https://url11.ctfile.com/d/45455611-61580017-3188ea?p=6872 (访问密码: 6872)

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

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

相关文章

[C++ Primer] 变量和基本类型

总结记录了C++ Primer书中重要的C++相关知识[C++ Primer] 变量和基本类型 变量默认初始化 如果定义变量时没有指定初值,则变量默认初始化,此时变量被赋予“默认值”。默认值到底是什么由变量类型决定,同时定义变量的位置也会对此有影响。 内置类型:其默认值由定义的位置决定…

jmeter【配置元件】-【用户定义的变量】与【前置处理器】-【用户参数】变量重复时,引用哪个值?

引用前置处理器中的【用户参数】 原因: 1.线程组下的用户参数优先级>测试计划中的用户定义的变量 2.取样器(http请求)下的用户参数优先级>线程组下的用户参数优先级 当某个取样器设置了用户参数时,会优先使用该取样器下的用户参数,因为配置元件一般在测试计划开始之…

D365 onebox 开发环境证书到期处理过程

到期证书指纹 76338006924d8bbb7f2f28638ec5d41eb5d21a70克隆命令 此处需使用Windows PowerShell Set-Location -Path "cert:\LocalMachine\My" $OldCert = (Get-ChildItem -Path 76338006924d8bbb7f2f28638ec5d41eb5d21a70) New-SelfSignedCertificate -CloneCert $…

vue3 ref()和reactive()

vue3 ref()和reactive() 能在改变时触发更新的状态被称作是响应式的。 reactive()与ref() reactive() 只适用于对象 (包括数组和内置类型,如 Map 和 Set)。而另一个 API ref() 则可以接受任何值类型。ref 会返回一个包裹对象,并在 .value 属性下暴露内部值。 <script set…

前端微服务架构qiankun初体验

一、背景‘熵增’问题一直是所有软件开发中都会遇到的问题,不管是前端还是后端都会遇到,老的系统在需求不断变更或者迭代,代码量会越来越大,最终都会形成一座‘屎山’, 今天主要讨论前端对于这种情况的解决方案。目前前端的解决方案有比较古老的iframe,但是iframe是完全隔…

网络世界的脊柱——OSI七层模型

简介 OSI代表开放系统互联(Open Systems Interconnection),这是国际标准化组织(ISO)提出的一个概念模型,用于描述网络通信的功能划分。简单来说,OSI模型把复杂的网络通信过程分成了七个不同的层次,每一层都有其特定的功能和角色。每一层都有自己的头数据,在封装和解封…

以 ZGC 为例,谈一谈 JVM 是如何实现 Reference 语义的

本文基于 OpenJDK17 进行讨论1. Reference 相关概念及其应用场景总览 Reference(引用)是 JVM 中非常核心且重要的一个概念,垃圾回收器判断一个对象存活与否都是围绕着这个 Reference 来的,JVM 将 Reference 又细分为几种具体的引用类型,它们分别是:StrongReference,Soft…