robots协议也称爬虫协议,是指网站可建立一个 robots.txt 文件,来告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,而搜索引擎通过读取 robots.txt 文件来识别这个页面是否允许被抓取。
但是,这个 robots 协议不是防火墙,也没有强制执行力,搜索引擎完全可以忽视 robots.txt 文件去抓取网页的快照。
如果站长想单独定义搜索引擎的漫游器访问子目录时的行为,那么可以将自定的设置合并到根目录下的 robots.txt文件中,或者使用 robots 元数据。
需要注意的是,robots协议并不是一个规范,而只是约定俗成,所以并不能保证网站的隐私。
下面我们来看 Hexo 博客如何添加robots.txt文件。
1.插件安装:首先我们需要再Hexo运行容器中运行如下代码,用来添加robots.txt的插件:hexo-robotstxt-multisitemaps,代码格式如下
1npm install hexo-robotstxt-multisitemaps --save
如果代码报错,就需要使用下面的代码
1npm install hexo-robots ...
manim
未读
今天我们来学习,使用Manim做出点在直线上运动的过程,这个动画效果还是很普遍的,一些初中数学几何作图问题,都会用到这个效果,估计很多朋友看到这篇文章也是因为想着学习点在直线上的运动的知识,不多说来看下面的代码
1.代码示例123456789101112131415161718192021222324252627282930313233from manim import *class SimpleMovingPoint(Scene): def construct(self): # 创建A点和B点 A = LEFT * 3 B = RIGHT * 3 # 创建线段AB line_AB = Line(A, B, color=BLUE) # 创建标签 label_A = Text("A").next_to(A, DOWN) label_B = Text("B").next_to(B, DOWN) ...
前段时间,偶然发现一篇博文,大意就是关于给 Hexo 博客的侧边栏添加一个倒计时,虽然此功能在一些 PHP 博客中已经是常见功能,但是在 hexo 博客之中还是比较少见的,难能可贵的是这个小功能可以非常方便的迁移到安知鱼主题上,详细操作过程如下:
1.添加、引用 JavaScript首先我们需要为日历卡片进行逻辑实现和样式定义,需要大家进入到博客根目录的主题文件夹内。
在博客主题的 /source/ 目录中的 js 文件夹中创建一个名为 countdown.js 的文件。在新建的 countdown.js 文件中添加以下代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 ...
manim
未读
Manim的动画效果虽然炫酷,但是也有一定的难度,对于新手来说,最好的方法就是多总结,今天给大家汇总一些动画常用的知识点,我自己也不是很懂就是简单的整理,留作日后思考查阅。
1.路径与轨迹1.1沿任意路径运动使用1MoveAlongPath(mobject, path, suspend_mobject_updating=False)
让对象沿任意VMobject路径运动,配合rate_func=linear可实现匀速。
要点:路径可以是直线、圆弧、贝塞尔曲线或由函数定义的参数曲线,如 ParametricFunction。
1.2保留运动轨迹使用1TracedPath(mobject.get_center, stroke_width=2, color=YELLOW)
自动绘制对象中心轨迹,便于观察运动规律。
路径采样与抖动优化:对复杂路径或高曲率区域,适当提高采样点可缓解“抖动”,如
1Circle().get_points_defining_boundary(n_samples=100)
1.3物理与向量场驱动使用1PhaseFlow(deriv_func, m ...
manim
未读
在Manim中,有些时候我们想延长一下动画播放的时间,注意,这个动画播放的时长,不是视频的时长,是视频中某个动画动作的时长,今天我们就来看这个问题如何调控,方便我们在做动画效果的时候,做到该快的快,该慢的慢,让视频变得更加有条理。
1.简单的self.play我们先来看代码
12345678910111213from manim import *class RuntimeTraceDemo(Scene): def construct(self): circle=Circle().move_to(LEFT) # 不同速度曲线 self.play( circle.animate.move_to(RIGHT*3), run_time=3, rate_func=smooth # 平滑开始结束 )
我们创建一个圆,创建的同时放到屏幕居左的位置,然后缓慢的将创建好的圆平移到屏幕的右边,大家注意run_time的参数问题,来看动画演示的效果
然后我们修改上面的代 ...
manim
未读
圆环是常见的几何图形,Annulus 是一个圆环形状,由两个同心圆组成,圆环控制文件位于 manim/mobject/geometry/arc.py 模块中,是 VMobject 的子类,具有填充和描边属性。
1.常见表达式1right = Annulus(参数1,参数2,……)
1right = AnnularSector(参数1,参数2,angle = ,……)
第二个圆环是带有一定角度的圆环
2.常见的参数12345678910Annulus( inner_radius=1, # 内圆半径 outer_radius=2, # 外圆半径 angle=TAU, # 角度(默认整圆) start_angle=0, # 起始角度 color=WHITE, # 颜色 fill_opacity=1, # 填充不透明度 stroke_width=0, # 描边宽度 **kwargs)
3.常见的变换3.1.创建圆环1ring = Annulus(inn ...
manim
未读
在Manim中,Polygon 类用于创建多边形。下面我将详细介绍它的使用方法、常见属性和示例。多边形也是常见的几何图形,理解多边形,有助于更好的理解其他的几何图形,下面我们来看基本的用法
1.基本用法我们先来看下面的代码
12345678from manim import *class BasicPolygon(Scene): def construct(self): # 创建三角形 triangle = Polygon([-2, -1, 0], [2, -1, 0], [0, 1, 0]) self.play(Create(triangle)) self.wait()
来看演示代码的视频效果
我们使用
1Polygon([-2, -1, 0], [2, -1, 0], [0, 1, 0])
坐标的形式,创建了个三角形,类似的参数
2.常见参数
2.1.传递多个点12polygon1 = Polygon([-1, 0, 0], [1, 0, 0], [0, 1, 0])
2.2.传递列表12points = ...
geogebra
未读
今天我们来用Geogebra做一个简单的时钟,这是分析的一个Geogebra高手的文章,做了适当的调整,我自己亲测成功之后写的文章记录,很多知识不是很了解就是单纯的做一个记录吧。
1.打开GeoGebra,作一个以O(0,0)为圆心、半径cR=5的圆,并设置好图形的颜色和线条的粗细,依次在代数区内输入以下代码,就可以实现这个过程。
1O = (0, 0)
1cR = 5
1圆周(O, cR)
2.利用点的序列命令将圆周 60等份:
1序列((cR; π / 2 - π / 30 k), k, 1, 60)
这里的点
1(cR; π / 2 - π / 30 k)
为极坐标,点的坐标中间用分号隔开,极径为cR(圆的半径),极角为π / 2 - π / 30 k,指以y轴正方向顺时钟旋转,
3.隐藏这些等分点,并利用线段的序列命令作出“分”的60个刻度,原作者的指令代码为
1序列(线段(mPs(k), 0.95mPs(k)), k, 1, 60)
但是输入这行代码的时候,我这里除了错误,不能够输入进去,提示是“未知的指令mPs”,其实在这个步骤之前,原作者应该 ...
manim
未读
你是否还在为数学动画中的物体运动轨迹不流畅而烦恼?是否想让几何图形按照自定义路径优雅移动?本文将系统讲解Manim路径系统的核心原理与实战技巧,从基础直线运动到复杂贝塞尔曲线,帮助你轻松实现专业级数学动画效果。
Manim的路径系统主要由几何路径定义和动画控制器两部分组成,路径系统架构包含三个层级:
基础路径:直线、圆、椭圆等基本几何路径
复合路径:由多个基础路径组合而成的复杂路径
参数化路径:通过数学函数定义的动态路径
1.基础路径实现最简单的路径动画是沿直线运动,Manim提供了多种内置方法:
123456789# 直线运动示例from manim import *class StraightPathExample(Scene): def construct(self): dot = Dot() self.add(dot) self.play(dot.animate.move_to(RIGHT * 3 + UP * 2), run_time=2) self.wait(2)
上述代码中,move_to方法自动 ...
geogebra
未读
在GeoGebra中,布尔值和条件判断是实现动态数学模型和交互式几何图形的重要工具。布尔值即逻辑值,只有两个可能取值:真(True)或假(False)。通过使用布尔值,我们可以创建依赖于特定条件的动态对象,例如根据用户输入的数值范围自动显示或隐藏某些图形元素。GeoGebra 提供了丰富的逻辑运算符,如等于、不等于、小于、大于等,使得条件判断和布尔运算变得简洁而高效。本文将详细介绍如何在GeoGebra中使用布尔值和条件判断,通过具体实例展示其在数学教学和研究中的实际应用。通过掌握这些技巧,您可以为学生和自己创建更加直观和交互的数学模型。
1.GeoGebra中的布尔值清单(最新)
操作符号
列表选择
键盘输入
例子
适于对象
等于
≟
==
a≟b 或 a==b
数值、点、直线、圆锥曲线a 和b
不等于
≠
!=
a≠b 或 a!=b
数值、点、直线、圆锥曲线a 和b
小于
<
<
a<b
数值a 和b
大于
>
>
a>b
数值a 和b
小于等于
≤
< ...
geogebra
未读
绘制函数图像,特别是速度慢一些的函数图像,开始的时候我有点儿不清除该如何去做,后来发现只需要运用一个指令即可,指令:SlowPlot,也就是常说的缓慢绘制指令,可以在输入栏中进行直接输入就可以
1缓慢绘制( <函数>, <是否重复? true|false> )
或者
1SlowPlot( <函数>, <是否重复? true|false> )
其中指令里面的布尔值判断,false只绘制一次,true绘制完又从头开始绘制。举个例子,动态绘制函数f(x)=x^2的图像,我们可以使用如下指令:
1缓慢绘制[x^2,false]
貌似中括号和小括号没有区别,例如
1缓慢绘制(x^2,false)
或者
1SlowPlot(x^2,false)
会得到如下的动态函数绘制效果,从演示来看,会默认通过滑动条(Slider)控制参数变化速度。
此法虽简单,但不足的是:不知滑动条a为何值时,才开始绘制函数,或许我们需要的动画效果是如下图的,解决办法也简单,先看效果:
这个动画效果也很方便的实现,我们画一个限定自变量取值范围的函数图 ...
manim
未读
在manim的丰富图形库中,圆形类是一个基础且强大的模块。 无论是简单的圆形绘制,还是复杂的圆形变换,它都能以简洁的代码实现。
manim中圆形类的相关模块主要有3个:
Circle:标准的圆形
Annulus:圆环形状
Ellipse:椭圆形状
其中,Annulus和Ellipse继承自Circle。
圆形系列处于manim中的Mobject之下。
1. 主要参数圆Circle对象的属性不多,主要有:
参数名称
类型
说明
radius
float
半径
color
str
颜色
stroke_width
float
边框厚度
fill_opacity
float
透明度
圆环Annulus对象的主要属性有:
参数名称
类型
说明
inner_radius
float
内圈半径
outer_radius
float
外圈半径
color
str
颜色
mark_paths_closed
bool
TODO
Annulus会渲染inner_radius和outer_radius之间的部分,也就是一个环。
椭圆El ...
manim
未读
今天我们来学习如何使用Manim实现漂亮的泡泡效果,本文将介绍如何使用Manim框架实现一个简单而实用的气泡特效,该特效可用于多种场景,如背景装饰、数据可视化过渡等。
1. 实现原理气泡特效的核心在于BubbleEffect类,它继承自 Manim 的 Animation 类,通过重写关键方法来实现气泡的上升、变大和透明度变化效果。在代码用需要先引入Python的库文件:
12from manim import *import random
1.1. 核心类结构BubbleEffect类的基本结构如下:
12345678910111213141516class BubbleEffect(Animation): """ 彩色气泡特效动画类 继承自Animation类,用于创建彩色气泡上升、变大、透明度变化的效果 """ def __init__( self, bubble_count=25, # 气泡数量 bubble_size_range=(0.1, ...
Manim 是一个强大的数学动画制作工具,它使得我们能够通过编程的方式创作复杂的数学动画。对于使用 Manim 的开发者来说,理解它的核心概念是非常重要的。Manim 中的三大核心对象是:Scene、Mobject 和 Animation。它们是构建任何动画的基础,掌握这些概念后,你可以更加得心应手地使用 Manim。
在本文中,我们将详细介绍这三大核心对象,并通过一些示例代码来帮助大家更好地理解它们的作用和关系。
1. Scene:场景的管理者在 Manim 中,Scene 是所有动画的容器,它负责管理和协调动画中所有对象的创建、显示以及动画效果的执行。每一个 Manim 动画都是在一个 Scene 类的子类中进行构建的。
1.1作用Scene 类定义了整个动画的结构和流程。你会在 Scene 类中设置动画的时间线,并通过调用 play() 来控制不同的动画效果。
1.2常用方法
construct():所有动画和对象的创建都在 construct() 方法中进行。你可以在这里创建图形对象、文本、动画等。
play():用于执行一个或多个动画。play() 方法会启动并渲染动画, ...









