manim
未读
概述Manim(Manim Community Edition)是由3Blue1Brown的Grant Sanderson开发的数学动画引擎,专为数学和科学可视化设计。它结合了Python的灵活性与LaTeX的精确性,支持多领域的内容展示,能生成清晰、精确的数学动画,广泛应用于教育视频制作。安装简单,入门容易,适合教育工作者和编程爱好者使用。
开始一个新项目首先创建一个新文件夹,命名为:project,此文件夹是项目的根文件夹,它包含 Manim 运行所需的所有文件,以及项目产生的所有输出。
设置圆的动画1、打开文本编辑器,复制以下代码:
12345678from manim import *class CreateCircle(Scene): def construct(self): circle = Circle() # create a circle circle.set_fill(PINK, opacity=0.5) # set the color and transparency self.play(Create(cir ...
manim
未读
manim中提供了两种方式来表示文字信息,一种是 Text系列,一种是 Tex系列。 从目前我自己的使用的体验来看, Text系列在显示文字信息方面,提供了更多的的属性来调整显示效果。如果有大段的文字要排版,或者对文字的显示效果要求高的话,建议使用 Text。而 Tex系列最大的优势是支持 Latex,也就是说它能更好的显示数学公式。 Tex目前还不支持显示中文,如果一段文本中既有中文又有数学公式的话,需要结合 Text和 Tex一起来显示。
下面介绍 Text和 Tex中几种常用的显示文字和公式的方法。
1. TextText系列常用的对象主要有三种:
Text:一般用于单行的文本
Paragraph:一般用于多行的文本
MarkupText:一般用于富文本显示
1.1 一般文本一般文本 Text支持显示任何语言:
123456Text("hello world") # 英文Text("你好,世界") # 中文Text("こんにちは世界") # 日文Text("Привет, мир") ...
manim
未读
manim绘制图形时,除了上一节提到的那些必须的参数,还有一些可选的参数, 这些参数可以控制图形显示的样式。绘制各类基本图形点、线、圆、多边形等时,每个图形都有自己的默认的样式,比如上一节的图形,有的默认是白色,有的默认是红色。控制图形样式的参数最常用的有以下四个:
stroke_width:图形边框的粗细
color:图形的颜色
fill_color:图形的填充色
fill_opacity:填充色的透明度,这个参数一般和 fill_color一起使用
边框线,圆和多边形都可以通过 stroke_width调整边框粗细程度。线的边框:
1234567891011121314151617# 线Line( [-1, 1, 0], [1, 1, 0], stroke_width=1,)Line( [-1, 0, 0], [1, 0, 0], stroke_width=5,)Line( [-1, -1, 0], [1, -1, 0], stroke_width=10,)
上面的示例中是3种不同粗细的线,运行之后的效果:
圆 ...
manim
未读本文将详细介绍如何使用 Manim 框架来实现一个逼真的闪电特效。我本人对这篇文章不了解,并不知晓里面代码的编写思路,而且原作者给出的代码也不是很完整,我利用AI进行了补充,勉强的能够运转,有一些闪电的效果,但是个人不是很满意,更重要的是对原文章进行了调整,希望原作者能够谅解。
1. 实现原理闪电特效通过LightningAnimation类实现,该类继承自 Manim 的基础Animation类,主要基于以下几个核心原理,代码开始,需要先引入Python的一些库:
12from manim import *import numpy as np
1.1. LightningAnimation 类的参数LightningAnimation 类提供了丰富的参数选项,可以灵活调整闪电效果的各种特性。
12345678910111213141516171819202122232425262728293031323334class LightningAnimation(Animation): """ 闪电特效动画类 通过创建多个带有尖锐转折的折线 ...
manim
未读
Manim社区版(ManimCE)作为一个强大的动画制作框架,它为创作者提供了丰富多样的动画效果,无论是文字、图形还是其他元素,都能通过这些动画效果呈现出生动、有趣的视觉体验。本文将详细总结Manim社区版ManimCE(v0.19.0版本)中常见的动画效果,并分析它们的应用场景和带来的视觉效果,以及我们在制作数学动画时如何选择动画效果的建议。
1. 动画效果分类ManinCE中提供了丰富的动画效果,总结起来大致可分为7类。
1.1. 文字动画:让内容”活”过来1.1.1. AddTextLetterByLetter效果当你需要逐字显示一段文字,比如在介绍一个概念或者逐步展示一个过程时,AddTextLetterByLetter动画效果非常合适。
AddTextLetterByLetter的视觉效果是文字会逐个字母依次出现,给人一种逐步展开、逐步深入的感觉。
这种效果可以让观众更好地跟随文字内容,避免一次性出现大量文字带来的视觉疲劳。
1.1.2. RemoveTextLetterByLetter效果与添加文字相反,当你需要逐字移除文字时,比如在展示一个过程的结束阶段,或者需要逐步清 ...
manim
未读本篇开始介绍Manim中的动画模块,动画模块是整个框架的核心魅力所在。Manim不仅提供了可以直接实现各种各样动画效果的对象,还提供了设置动画的时长、延迟时间以及运动速率等参数,可以据此发挥自己的创意,自定义出与众不同的动画效果。本篇主要介绍与文字相关的几个内置的动画效果,例如:
AddTextLetterByLetter:以逐个字母添加文本的方式来展示文字内容
RemoveTextLetterByLetter:类似橡皮擦式的文本删除效果
Write:模拟手写的效果
Unwrite:与 Write 动画相反,用于模拟擦除手写内容或者撤销绘制的过程
1. 动画概述1.1. AddTextLetterByLetterAddTextLetterByLetter动画的特点是以逐个字母添加文本的方式来展示文字内容,呈现出一种文字逐步生成的效果。呈现的过程中可以控制字母出现的速度,让动画的节奏更符合内容需要。它主要适用于教学视频、讲解类动画等场景。例如在制作数学定理讲解视频时逐步展示定理内容,让观众能够逐字跟上节奏,增强理解。它的主要参数有:
参数名称
类型
说明
text
Tex ...
manim
未读
在 Manim 库中,FunctionGraph、ImplicitFunction 和 ParametricFunction 都是用于绘制函数图像的类,但它们的适用场景、输入形式和实现方式有显著区别。以下是详细对比:
1. FunctionGraph
用途:绘制 显式函数 ($ y = f(x) $) 的图像(单值函数)。
输入要求: 接受一个 一元函数 ($ f(x) \() 和 (\) x $) 的范围(如x_range=[-2, 2])。
特点:
直接映射 ($ x \to (x, f(x)) $)。
要求函数是 单值 的(一个$ x \(对应唯一\) y $)。
示例代码:
123456class Example(Scene): def construct(self): # 绘制 y = x^2 graph = FunctionGraph(lambda x: x**2, x_range=[-2, 2], color=BLUE) self.add(graph)
2. ImplicitFunction
用途:绘 ...
虽然安和鱼主题的个人信息卡片已经很是完美,但是有些小伙伴还是不安分,分享了一些个人信息卡美化的教程,我转载过来。
本教程基于安知鱼主题,介绍如何通过 CSS 美化侧边栏个人信息卡片,实现自定义背景图的效果。
1.添加 CSS 文件我们需要为侧边栏的个人卡片进行样式定义。在博客 /source/ 目录中的 css 文件夹中,创建一个名为 coustom.css 的文件。
在新建的 custom.css 文件中添加如下代码:
12345678910/* 侧边栏头像卡片 */#aside-content>.card-widget.card-info::before { background: url('自定义'); border: 0; position: absolute; background-size: 100% 100%; -webkit-animation: Gradient 10s ease infinite; -moz-animation: Gradient 10s ease infinite; anima ...
Hexo 博客有自己独特的文章 URL 链接方式,例如在默认 Hexo+Butterfly 中,采用 title 标题作为永久链接。
但是这种链接也有弊端,使用默认永久链接格式,会导致文章页面的默认链接相当的长,基本上都是中文链接的转义字符。
特别是,如果变动了标题,那么会导致永久链接也会变,对搜索引擎极其不利。
1.默认的链接参数我们先来看 Hexo官方文档 中提供的可供修改的参数:
变量
描述
:year
文章的发表年份(4 位数)
:month
文章的发表月份(2 位数)
:i_month
文章的发表月份(不含前导零)
:day
文章的发表日期 (2 位数)
:i_day
文章的发表日期(不含前导零)
:hour
文章发表时的小时 (2 位数)
:minute
文章发表时的分钟 (2 位数)
:second
文章发表时的秒钟 (2 位数)
:title
文件名称 (相对于 “source/_posts/“ 文件夹)
:name
文件名称
:post_title
文章标题
:id
文章 ID ,清除缓存时 ...
geogebra
未读
我们今天来学习一下Geogebra中的折线指令,利用折线指令创建一条折线。在Geogebra制作课件的过程中,折线指令还是比较实用的,一些分段函数的问题在题意创设上都会使用动点在折线上的运动。所以学会折线指令,有助于我们做好课件。
1.添加线段我们需要在绘图区添加几条首尾相连的线段,点击工具栏中的线段之后,随意添加就可以,只是演示。
2.折线指令从上面的截图我们可看到,添加了三条线段,下面我们就需要输入折线指令,在代数区的输入框中输入折线,就会给出对应的提示词。
在这里,我们选择折线指令中的第二个对话框
1折线(点,……,点)
这个折线指令,就是需要我们输入绘制折线的点就可以,从起始点开始,依次输入对应的点,然后到最后的终止点。例如,我在这里输入
1折线(A,B,C,D)
敲击回车键之后,就会出现一条沿着从A→B→C→D的折线 i,在这里需要记住这个折线标识
3.动点路径然后我们在代数区的输入框中输入创建点的指令:描点,在这里我们使用
1描点(对象)
然后在出现的对话框中,对象用折线的标识替换掉。
我这里的折线标识是 i,所以我填入了对应的折线标识
然后敲击回车键, ...
Python
未读
Manim是Python的一个库,因此想更好的运行Manim代码,就需要提前部署Python环境,虽然最新版的Python已经到3.14.2,但是我测试,这个版本安装器Manim来基本上拉不动,所以建议初学者选择3.13的版本,安装Manim很流畅,基本上没有阻碍就可以自由安装。今天我们来介绍Python环境的本地部署。
1.基础信息
操作系统:windows10或者更高版本
教程案例使用版本:3.13.3
Python官网:https://www.python.org
下载地址:https://www.python.org/downloads/release/python-3140/
进入Python官网后根据自己的系统环境下载对应的安装包(本教程使用如下包)
2.安装过程2.1下载后,双击安装包准备安装
自定义安装、添加到环境变量中
2.1.1 Install Now
默认安装会自动额外安装IDLE、pip、documentation、Creates shortcuts and file associations(在开始菜单中创建快捷方式,创建文件关联)。默 ...
博客设置
未读
给博客顶部和底部各添加一排宠物,是一种非常酷的效果,经过多方查找,终于在安知鱼主题下通过修改主题文件,进行实现,下面来看具体的操作过程。
1.顶部挂件主要设置页面左上角随机动物挂件
1.1代码修改仅针对安知鱼主题,其他主题自行修改,可直接替换
1blog/themes/anzhiyu/layout/includes/bbTimeList.pug
文件中的内容,大家注意下面的代码
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 ...
博客设置
未读
今天我们来给安知鱼主题的 Hexo 博客添红灯笼,临近春节的时候,很多小伙伴的博客都开始悬挂红灯笼,喜气洋洋,今天我们来看实现教程。
1.添加信息字段我们需要对博客根目录下面的 _config.yml 进行字段添加,打开这个文件之后,找一个合适的位置添加以下代码
123denglong: enable: true # true 开启 false 关闭 text: "新年快乐" # 配置灯笼的四个字
主要设置目的,就是为了方便开启红灯笼,毕竟春节和其他节庆日时间有限,需要祝贺的内容也不相同。
2.添加并引用 CSS完成了第一步后我们需要为红灯笼进行样式定义。
在博客主题的 /source/ 目录中的 css 文件夹中,创建一个名为 coustom.css 的文件。
在新建的 custom.css 文件中添加如下代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 ...
好看的雪景千千万,能够放到网站上的少,有情趣有意境的更少,今天我们就来给自己的博客添加雪景,非常漂亮,意境也很不错。
1.添加 JS 代码这款网页的雪景是通过 JS 代码实现的,完美整合在安知鱼主题之中,操作过程很简单,来看下面的实际操作过程。
首先在 /themes/anzhiyu/source/js/ 文件夹下面, 新建一个 snowflake.js 文件,然后将以下内容写入该文件:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106if((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|A ...













