geogebra
未读
GeoGebra是一款非常不错的动态课件制作软件,当前互联网上很多的教学博主都在使用GeoGebra来制作动态的教学视频,可以说,GeoGebra入门比较简单,但是如果真的想着做出较高质量的教育教学动画,需要一定的编程知识,在这里记录一个我只做动态课件的过程。
首先,我们需要添加一个复选框,在这里需要关注复选框的标识
然后我们需要添加一个滑动杆,也就是滑动条,在这里需要适当的设置滑动杆的最大值和最小值问题,它也有些调控动点滑动位置的含义
再然后我们需要添加一个按钮,用来切换开始和暂停键,需要注意按钮的标识到底是button还是button+数字
同时,在按钮的脚本里输入如下代码
123aa=!aa设置标题(button1,if(aa,"暂停","启动"))if(aa,启动动画(c),启动动画(c,false))
注释一下:
123aa=!aa-------------------------------------------------------aa是复选框的标识设置标题(button1,if(aa,&quo ...
这两天一直想着给自己的博客添加一个Twikoo评论系统,毋庸置疑的,感觉静态博客的评论系统Twikoo还是非常不错的,看过很多的教程,但是因为个人技术和理解能力的问题,都没有成功,后来找一篇简单的文章,仔细思考了一下里面的理论,终于成功安装了Twikoo系统,下面记录一下过程。首先说明,静态博客安装Twikoo的评论系统,应该和轻量服务器的系统没有太大的关系,主要是有没有安装docker,毕竟万物都可以docker。如果没有安装docker,就需要在宝塔面板或者轻量服务器里面安装好docker,毕竟我们安装Twikoo评论系统,使用的是docker。
1.服务器指令安装1.1账户切换进入轻量服务器的登录界面,切换root用户
1sudo su root
个人心理问题,感觉root用户权限大一些,其他默认的账户或者自己添加的账户没有测试。
1.2拉取docker1docker pull imaegoo/twikoo
这个代码主要是拉取最新的Twikoo的镜像,但感觉拉取下来的Twikoo镜像不是最新的,安装之后需要升级,这个时候需要静心等待,如果速度够快稍等片刻就可以,如果速度不好 ...
manim
未读
在Manim库中,FunctionGraph类是一个核心组件,专门用于在坐标系中绘制函数图像。FunctionGraph的主要作用是将数学函数以直观的图形形式展示出来,使得复杂的数学概念更加容易理解。它广泛应用于数学教学、科学演示以及数据可视化等领域。下面是Manim 中的 FunctionGraph 详解
一、概念与适用场景
FunctionGraph 用于在 Manim 中绘制显式函数 y = f(x) 的二维曲线,要求函数在给定区间内是单值的(每个 x 对应唯一 y)。
典型用途:数学教学(展示奇偶性、周期性、渐近线)、物理仿真(位移/速度-时间图)、工程应用(信号波形、控制响应)、算法演示(目标函数、损失函数)。
当函数可显式写成 y = f(x) 时优先使用;若方程以 F(x, y) = 0 给出,用 ImplicitFunction;若以参数 r(t) = (x(t), y(t)) 给出,用 **ParametricFunction。
二、常用参数与方法
主要参数
function:可调用对象,形如 **Callable ...
manim
未读
在Manim中,ParametricFunction是一个用于绘制参数方程曲线的核心工具,它允许用户通过一个参数(通常用t表示)来同时定义x、y、z坐标,从而创建那些无法用单一函数**y=f(x)**形式表示的复杂曲线,如圆、螺线、利萨如图形等三维或二维轨迹。这个类接收一个返回坐标元组的函数作为输入,并支持自定义参数范围、颜色、线宽等属性,特别适合可视化数学中的参数方程描述的运动轨迹、几何曲线和动态系统。
1.基本介绍ParametricFunction 用于创建参数方程定义的曲线。与普通函数不同,参数方程使用一个参数(通常为 t)同时定义 x 和 y 坐标。
2.主要参数
function:参数方程函数,接受一个参数(通常为 t),返回一个三维坐标元组 (x, y, z)
t_range:参数范围,格式为 [起始值, 结束值, 步长],默认为 [0, 1, 0.01]
color:曲线颜色
stroke_width:线条宽度
dt:微分步长(影响导数计算)
discontinuities:不连续点列表
use_smoothing`:是否使用平滑处理
3.实例代码 ...
Manim中的get_area函数用于计算并可视化图形下方区域的填充颜色,常用于数学函数图形的面积展示。该函数适用于二维坐标系中的曲线填充,不支持三维图形。还需要结合Axes类使用,且需导入numpy库定义数学函数。通过get_area函数,用户可动态展示函数曲线与坐标轴围成的面积,增强数学动画的表现力。
1.get_area 函数1get_area(graph, x_range=None, color=(ManimColor('#58C4DD'), ManimColor('#83C167')), opacity=0.3, bounded_graph=None, kwargs)
它主要用于在特定图形(graph)下方填充颜色,以便可视化特定区间上方的面积。
2.参数解释
graph: 要填充其下方区域的图形对象。通常是一个数学函数图形。
x_range: 绘制区域的 x 范围。可以是一个元组,例如 (x_start, x_end),用于指定在哪个 x 轴范围内填充颜色。
color: 这是一个包含两个颜色的元组,用于填充图形下方区域的渐 ...
manim
未读
如果方程F(x,y)=0能确定y是x的函数,那么称这种方式表示的函数是隐函数。在Manim中,很多时候需要渲染一个隐函数的图像,此时我们就可以利用Manim中的 ImplicitFunction来渲染一个隐形函数的图像,下面来介绍ImplicitFunction的相关知识。
一、核心概念与适用场景
ImplicitFunction 用于在二维平面上绘制满足 F(x, y) = 0 的隐式曲线,适合显式函数 y = f(x) 难以表达或无法单值表示的图形。
典型场景:圆锥曲线(圆、椭圆、双曲线)、心形线、双纽线、物理中的等势线/相轨迹、工程中的等值线/等高线等。
二、常用参数与含义
func:Callable[[float, float], float],二元函数 **F(x, y)**,曲线为 F(x, y)=0 的零等值集。
x_range / y_range:序列,如 **[-3, 3]**,定义采样矩形区域,需覆盖目标曲线。
color:曲线颜色,如 RED。
min_distance:点之间的最小距离,越 ...
manim
未读
在Manim中,很多的动画都会用到物体对象的移动,今天我们来汇总一下在Manim中如何移动对象。
1.shift()shift以自身为参考,直接对物体操作,沿指定方向向量移动,方向可使用预定义常量(如UP、DOWN、LEFT、RIGHT)或自定义向量(如UP + LEFT表示对角线移动),所以说shift执行的是相对位移,如果你创建一个对象在某个位置,然后调用 shift(UP),它会从当前位置向上移动 1 个单位。
shift方法它不改变对象的内部属性(如半径、顶点等),只修改对象的 points 数组,为每个点加上位移向量,基于当前坐标位置进行位移。
1234567891011121314151617181920212223from manim import *class CompareMovesShift(Scene): def construct(self): # 创建四个正方形 s1 = Square().set_color(RED) s2 = Square().set_color(GREEN) s3 = Squ ...
manim
未读
在动画制作中,尤其是数学和科学可视化领域,有时我们需要将观众的注意力集中在场景的某个特定部分。Manim提供了一个强大的工具 ZoomedScene,它允许我们在场景中创建一个独立的缩放视图,从而实现对局部细节的深入展示。本文将详细介绍ZoomedScene的作用、参数、方法,并通过实际示例展示其强大功能。
1. ZoomedScene概要ZoomedScene是Manim中一个专门用于局部缩放的场景类。其核心功能是允许我们在主场景中创建一个独立的“缩放窗口”,通过这个窗口,可以清晰地展示场景中某个部分的细节。这种设计特别适用于以下场景:
数学公式推导:在展示复杂的数学公式时,可以使用ZoomedScene对公式中的关键部分进行放大,帮助观众更好地理解
科学实验演示:在展示微观现象(如细胞结构、分子运动)时,通过缩放功能,可以让观众更直观地观察细节。
工程设计展示:对于复杂的机械结构或电路设计,ZoomedScene可以帮助观众聚焦于关键部件
教育动画:在教学视频中,通过局部缩放,可以更有效地引导学生关注重点内容
1.1. 主要参数ZoomedScene的主要参数有:
参数 ...
geogebra
未读
今天我们来学习Geogebra的旋转指令,在GeoGebra中,旋转指令主要用于创建旋转体或动态演示几何变换。我们如果不适用旋转指令,而是采用界面操作的方式,一般需要先点击旋转对象,然后点击旋转中心,随后会出现一个旋转角度设置的界面,这些都会在下面的文章中涉及到。
今天我们需要做一个时针旋转的动画,提前准备好表盘图片和时针图片,然后开始进行下面的制作过程,点击输入框边上的**+**符号,选择添加图片
我们之所以不在工具栏中添加图片,是因为我使用的版本,在工具栏添加图片之后,代数区不显示图片标识,
在弹出的对话框中,我们选择从本地存储器上传图片,点击浏览之后,找到提前准备好的图片进行添加
此时代数区显示了图片的标识为pic1,绘图区显示了我们添加的表盘图片,拖动地下的A点或者B点,会缩放图片的大小,也可以移动图片的位置。同样的方法我们再把分针图片添加进来。
代数区会显示分针的标识为pic2,同样会出现类推的两个点C点和D点,此时拖动这两个点,会缩放图片的大小和改变图片的位置,尽量把分针图片放在适当的位置上,不然旋转起来会偏差很多。点击代数区中的元素,将不需要的对象隐藏掉。
然 ...
manim
未读
在 Manim 中,Arc 类用于绘制圆弧,是几何图形绘制中常用的对象之一。以下是详细的用法说明:
1.基础圆弧我们来看下面的代码示例
12345678from manim import *class BasicArc(Scene): def construct(self): # 创建一个默认圆弧(90度) arc = Arc() self.play(Create(arc)) self.wait()
然后是演示的效果
参数说明
123456# 参数说明:# radius: 圆弧的半径# start_angle: 圆弧开始的弧度# angle: 圆弧的高度(2*半径)# num_components: 组成弧的片段,这个值越大,弧越圆滑# arc_cente: 圆弧对应的圆心位置
2.画一个半圆来看实例代码
1234567891011121314from manim import *class ArcParameters(Scene): def construct(self): # 常用参数 ...
manim
未读
莫比乌斯环是一种拓扑学结构,它只有一个面和一个边界,可以用一根纸条扭转成180度后,两头再粘接起来,就形成了莫比乌斯环,它是将正反面统一为一个面。
如果沿着莫比乌斯环的中间剪开,将会形成一个比原来的莫比乌斯环空间大一倍的环,如果再沿着这个环的中间剪开,将会形成两个一样的,并具有正反两个面的环,而且这两个环是相互套在一起的。
莫比乌斯环沿着中线剪开,第一次,可以得到一个更大的环;第二次及以后,每次都会得到两个互相嵌套的环,中间永远不会断开,这也是莫比乌斯环的神奇之处。
平常的应用也很多,如游乐园的过山车;莫比乌斯环也是一种死循环方式,不管你从莫比乌斯环的哪个点出发,走了一会后你会发现又回到了原点,所以说莫比乌斯环也是很恐怖的,永远的往返,无限,原地踏步。
下面我们来看效果代码:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465from manim import *import numpy as ...
geogebra
未读
我们今天来做一个正六面体的侧面展开图,从互联网的资料来看,正六面体的侧面展开图共计11种,今天我们来用Geogebra来实现这个过程,我的制作版本不是最新版6,而是经典版5,主要因素就是对Geogebra6的视图区认识不足,代数区、绘图区、3D绘图区不能够同时展示出来,日后技术提升了在重新做。
1.创设变量首先我们在绘图区内输入一个滑动条
1k=滑动条(0,1,0.01)
这个滑动条主要是用来控制侧面展开图的展开过程,所以在增量上设置的小一些,使得侧面展开图展开的时候会更加思华一些,接下来我们继续添加一个滑动条
1n=滑动条(1,11,1)
2.创建正六面体这个滑动条的目的,主要是用来控制正方体侧面展开图的11中展开方式,也就是每一种展开图,对应这个滑动条产生的一个值。所以这个滑动条的增量为单位整数1.
1A=(0,0,0)
1B=(1,0,0)
1C=(1,1,0)
我们输入的虽然是点的坐标,但是无形之中也调控了正方体的大小,或者说侧面展开图单个面的大小。然后我们在指令区输入下面的代码,生成一个正六面体。
1a=正六面体(A,B,C)
除了上面分步骤输入指令生成正六面体 ...
manim
未读
今天我们来学习一下 Manim 中如何过直线外一点做一条直线的垂线,其实很多时候,Manim中的直线就是一条线段,如果没有特殊的设置,就是由两个点确定的一条线段,过一点做已知直线的垂线,用到了新的几何函数方法get_projection()。
1.代码示例get_projection() 是 Manim 中一个非常重要的几何方法,用于计算一个点在直线(或线段)上的投影(垂足)。我们先来看代码,
12345678910111213141516171819202122232425262728from manim import *class PerpendicularLine1(Scene): def construct(self): # 创建一条线段 line = Line(start=LEFT*2, end=RIGHT*2, color=BLUE) point = UP + RIGHT*0.5 # 外部一点 # 找到在线段上的投影点 projection = line.get_projecti ...
manim
未读
在Manim中,axes.plot() 是 Axes 类 的一个方法,用于绘制函数曲线。它根据给定的函数和定义域生成对应的点,并将它们连接成平滑的曲线。
1、基本语法123456axes.plot( function: Callable[[float], float], x_range: Sequence[float] = None, use_smoothing: bool = True, **kwargs) -> ParametricFunction
function: 一个以 x 为自变量、返回 y 值的函数
x_range: x 的取值范围,格式为 [x_min, x_max, step](可选,默认使用坐标轴范围)
use_smoothing: 是否平滑连接点(默认为 True)
kwargs: 其他图形属性参数(如颜色、线宽等)
2、基础示例2.1. 绘制简单函数先创建坐标系,然后绘制一个sin(x)的函数。
1234567891011121314151617181920212223from manim import *class P ...








