manin动画编程(安装+入门)

文章目录

  • 1.基本介绍
  • 2.效果展示
  • 3.安装步骤
    • 3.1安装manba软件
    • 3.2配置环境变量
    • 3.3查看是否成功
    • 3.4什么是mamba
    • 3.5创建虚拟环境
    • 3.6尝试进入虚拟环境
  • 4.vscode操作
    • 4.1默认配置文件
  • 5.安装ffmpeg
  • 6.安装manim软件
  • 6.vscode制作
  • 7.我的学习收获

1.基本介绍

这个manim就是一款软件,是基于这个python代码实现的数学动画软件;

这个相当于是一个代码软件,适合于有这个python基础的同学,或者对于这个manim很感兴趣的同学~~

2.效果展示

这个已经被我自己实践了一次,因此把这个做成了一个动画,放在了自己的这个b站的账号上面,感兴趣的可以进去看看;

我的投稿视频

3.安装步骤

下面会按照这个逻辑进行说明:
在这里插入图片描述

3.1安装manba软件

因为这个是一款国外的,因此我们使用这个南大的镜像网站作为这个安装的入口:

miniforge南大镜像站:
https://mirror.nju.edu.cn/github-release/conda-forge/miniforge/LatestRelease/

在这个列表里面找打下面的这个程序,点击进行安装;

image-20241123163420868

现在之后,这个会爆出警告,我们直接选择保留即可;

下载成功之后,我们就可以进行安装了:

我们就是根据这个安装包的路径进行安装即可;

3.2配置环境变量

我们的第一个需要进行配置的环境变量就是我们的这个manba所在这个目录下面,其次就是我们的这个目录下面的script所在这个文件夹目录;

把下面的这两个添加到我们的这个系统环境变量的这个path里面即可;

image-20241123163831413

3.3查看是否成功

win+r+cmd

输入这个python --version应该会显示出来这个python的版本;

输入这个mamba init应该会显示下面的这个信息,证明我们的这个mamba就是安装成功的;

image-20241123164102198

3.4什么是mamba

在学习这个之前,虽然我有学过这个python的一丢丢基础,但是对于这个mamba确实也是没有听说过,今天算是了解了一下,下面浅浅的谈一下我自己的这个理解:

我们的这个python解释器里面的这个包之类的这个东西在不同的这个版本的解释器下面的这个兼容性可能会出现问题,因此,我们使用这个mamba就可以创建这个虚拟的环境;

例如我们创建这个mambace这个虚拟环境,我们的这个下面的包,库之类的就是在当前的这个环境下面使用,我们还可以创建这个mambace_2这个虚拟环境,在这个下面,我们可以搞一下这个更新的版本对应的这个包和库之类的,这样再不同的这个环境下面,两个是不会冲突的,这个也是为了方便我们对于这个环境进行管理哦和切换;

上面的这个就是作为初学者的我的一点点的见解;

3.5创建虚拟环境

win+r+cmd进入我们的终端:输入下面的这个指令,就是创建这个名字是manimce的虚拟环境,这个环境下面的这个python的解释器就是3.11版本的

mamba create -n manimce python=3.11

image-20241123145514985

3.6尝试进入虚拟环境

上面的这个虚拟环境创建成功之后,这个系统终端上面会提示我们如何进入我们创建的这个虚拟环境里面去,下面的这个就是进入的指令(终端上面会有提示的):

image-20241123145449871

上面的这个(manimce)这一行表示我们已经进入到了我们自己创建的这个虚拟环境里面去了;

4.vscode操作

我们后续的前提就是在这个vscode上面写代码,因此需要提前安装这个vscode编辑器

4.1默认配置文件

下面的这个就是修改这个解释器为我们的这个mamba里面的这个解释器

image-20241123165226016

下面的这个就是打开我们的这个cmd终端:

image-20241123165337736

这个时候,我们的这个并不是我们的虚拟环境,我们使用下面的这个指令进行切换到我们的虚拟环境里面去(这个可能和版本相关,因为我自己看的这个教程是直接就切换进去了,是不需要下面的这个指令的)但是我最开始就是这个base下面,然后生成这个视频的时候就一顿报错,因此我想起来了这个之前在终端使用的这个切换的指令,尝试之后发现这个果然可以;

下面的这个就表示我们进入了自己创建的这个虚拟环境里面去了;

image-20241123165442258

5.安装ffmpeg

因为我们的这个manim就是生成这个视频嘛,因此我们需要对于这个视频进行处理,这个ffmpeg就是用来处理这个视频格式的软件,我们依然是使用的这个镜像源进行安装:

在下面的这个conda清华园里面去找我们的这个ffmpeg:

conda清华源:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

我们进入这个镜像网站之后:先复制下面的这个黑色的部分到我们的这个终端执行,这个时候就会在我们的这个对应路径下面(一般就是c盘)生成这个.condarc文件;

image-20241123165939953

下面的这个就是.condarc文件的这个内容(使用记事本打开),我们把上面的这个镜像网站里面的这个内容复制粘贴到这个里面去,覆盖掉原来的,不是追加!!!!!!!!!!!!!!

image-20241123145700228

接下来就是安装这个ffmpeg这个软件:

首先还是切换到我们的这个虚拟环境里面去:

mamba activate manim

到这个虚拟环境之后,我们使用下面的这个指令安装我们的这个ffmpeg

mamba install x264 ffmpeg -c conda-forge

6.安装manim软件

下面的这个就是安装我们的这个manim的软件:我么使用这个pip安装,需要在这个pip镜像源里面找到下面的这个命令:就是图片里面的这个红色的框框里面的内容

pip清华源:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

image-20241123170529897

上面的这个就是为了对于我们的这个pip进行升级,然后就是安装我们的这个manim软件了:

pip install manim

6.vscode制作

首先就是写代码了,但是我们的今天的这个就是为了测试,因此直接先把这个代码用上再说:

from manim import *
class Try(Scene):def construct(self):c=Circle(fill_opacity=1)s=Square(color=YELLOW,fill_opacity=1)self.play(FadeIn(c))self.wait()self.play(ReplacementTransform(c,s))self.wait()self.play(FadeOut(s))self.wait()

然后我们在这个终端里面找到我们的这个虚拟环境(上面介绍过这个方法):输入下面的指令

manim main.py -p

其中这个manim就是固定的指令,main.py表示我们的这个相对路径,可以按照下面的这个方法找到,然后粘贴到这个终端里面即可,-p表示对于这个动画进行渲染,最后就会看到视频的效果(虽然只有几秒,但是也是一个入门);

image-20241123171014821

7.我的学习收获

1)我看了这个视频最大的感受就是:知道了这个manim的基本知识,之前我也是从来没有听说过的,但是发现很多的视频都是这样进行创作的(数学动画),其次就是我自己是对于这个vscode有了进一步的这个了解和认识;

2)其实虽然自己是一个计算机专业的这个学生,但是我对于这个vscode里面的这个组件的使用并不是恨懂,今天的这个创建虚拟环境,使用虚拟环境的这个终端,确实是我第一次尝试;包括这个mamba对于这个虚拟环境的管理,我认为这些都是收获;

3)我也是切身体会到了这个没有一个教程是完整:就是总有一些路需要我们自己去走,我自己第一次尝试的时候,可能因为这个版本的原因,我按照这个教程操作并没有成功,我是自己摸索最后成功的,当时也是想过放弃,但是可能是编程的一个虐杀吧,之前经常被折磨,感觉这些都是习以为常了,所以自己也就支撑了下来,但最主要是的我想要学会这个软件的使用,我认为别人能做的,我应该也是可以做到的,因此这个也是支撑我走下来的一个动力;

4)最近也是经常在看这个天意哥的视频,确实是感触到了我,这个manim就是在这个天意哥的视频里面找到的,所以才有了我今天的这个学习使用,我也在不断的质问自己:什么是我自己真正喜欢的,什么是我感兴趣的,起码目前为止我自己还是没有找到答案,还在这个探索的路上,可能之前做的很多的这个事情并没有很大的用处,但是只有做了才知道自己是不是真正的喜欢,因此,我也把一句话送给屏幕前的各位:

不要管那和这,先去做,哪怕做成一坨~~

就是我们要勇敢的尝试,在这个过程中找到我们喜欢和热爱,因此,不要犹豫,大胆地向前走吧~~~

自己:什么是我自己真正喜欢的,什么是我感兴趣的,起码目前为止我自己还是没有找到答案,还在这个探索的路上,可能之前做的很多的这个事情并没有很大的用处,但是只有做了才知道自己是不是真正的喜欢,因此,我也把一句话送给屏幕前的各位:

不要管那和这,先去做,哪怕做成一坨~~

就是我们要勇敢的尝试,在这个过程中找到我们喜欢和热爱,因此,不要犹豫,大胆地向前走吧~~~

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CH595 驱动数码管

先上原理图 我手里的是型号SR410361K的 4段数码管是共阳的(低电平驱动),先发送数据,然后发送片选 共阴 共阳的图如下: 如何测量呢? 首先将数字万用表档位调节到蜂鸣器/二极管档,红表笔和黑表笔…

Vue生命周期详解

目录 1.beforeCreate2.created3.beforeMount4.mounted5.beforeUpdate6.updated7.beforeUnmount(beforeDestroy)8.unmounted(destroyed) 1.beforeCreate 分析 beforeCreate执行时Vue实例还没有被创建,data和methods也…

MySQL底层概述—1.InnoDB内存结构

大纲 1.InnoDB引擎架构 2.Buffer Pool 3.Page管理机制之Page页分类 4.Page管理机制之Page页管理 5.Change Buffer 6.Log Buffer 1.InnoDB引擎架构 (1)InnoDB引擎架构图 (2)InnoDB内存结构 (1)InnoDB引擎架构图 下面是InnoDB引擎架构图,主要分为内存结构和磁…

【力扣算法题】双指针-战场上的矛与盾的组合(移动零)(快乐数)

前言 🌟🌟本期讲解关于力扣算法两道双指针题目解析~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 🎆那么…

第三十九篇 ShuffleNet V1、V2模型解析

摘要 ShuffleNet V1 ShuffleNet V1是由旷视科技(Megvii,又称Face)在2017年底提出的一种轻量级卷积神经网络架构。该网络专为移动设备和边缘计算环境设计,旨在以较低的计算资源实现高效的图像分类和其他计算机视觉任务。 特点与…

Springboot系列之:创建Springboot项目,Springboot整合MyBatis-plus

Springboot系列之:创建Springboot项目,Springboot整合MyBatis-plus 一、快速创建Spring boot项目二、项目完整目录三、pom.xml四、application.yaml五、实体类六、mapper七、IService接口八、Service实现类九、配置类十、枚举十一、增删改查测试类十二、…

C++:用红黑树封装map与set-1

文章目录 前言一、STL源码分析二、红黑树的构建三、map与set整体框架的搭建与解析四、如何取出进行比较?1. met与set的数据是不同的2. 取出数据进行比较1)问题发现2)仿函数解决 五、封装插入六、迭代器的实现1. operator* 与operator->2. …

Perforce《2024游戏技术现状报告》Part3:生成式AI、版本控制、CI/CD等游戏技术的未来趋势与应用

游戏开发者一直处于创新前沿。他们的实践、工具和技术受到各行各业的广泛关注,正在改变着组织进行数字创作的方式。 近期,Perforce发布了《2024游戏技术现状报告》,通过收集来自游戏、媒体与娱乐、汽车和制造业等高增长行业的从业者、管理人…

4-SpringCloud整合服务间的调用即负载均衡

springcloud目录: 1.Spring Cloud简介 2.SpringCloud整合eureka注册中心 3.SpringCloud整合服务注册 4.SpringCloud整合服务间的调用即负载均衡 5.SpringCloud整合Feign调用 6.SpringCloud整合config配置中心 7.SpringCloud整合zuul路由网关 我们复制一个yqx-user服…

Elasticsearch客户端在和集群连接时,如何选择特定的节点执行请求的?

大家好,我是锋哥。今天分享关于【Elasticsearch客户端在和集群连接时,如何选择特定的节点执行请求的?】面试题。希望对大家有帮助; Elasticsearch客户端在和集群连接时,如何选择特定的节点执行请求的? 100…

深入浅出,快速安装并了解汇编语言

1.什么是汇编语言 了解汇编语言需要先从了解机器语言开始,在计算机发展的初期阶段,机器语言是计算机直接理解和执行的二进制代码语言,其核心特点包括直接执行性、资源高效性、学习难度大以及平台依赖性。它主要由指令码构成,这些…

2.2_3 纠错编码—海明码

目录 1、海明码的纠错过程 2、海明距离 3、确认检验码位数 4、确定校验码和数据的位置 5、求出校验码的值 6、检错并纠错 方法一 方法二 1、海明码的纠错过程 2、海明距离 两个合法编码(码字)的对应比特取值不同的比特数称为这两个码字的海明距离(码距),一…

1992-2021年 各省市县经过矫正的夜间灯光数据(GNLD、VIIRS)区域汇总:省份、城市、区县面板数据

1992-2021年 各省市县经过矫正的夜间灯光数据(GNLD、VIIRS)区域汇总:省份、城市、区县面板数据 .r.rar https://download.csdn.net/download/2401_84585615/90001905 从1992年至2021年,中国各省份、城市及区县的夜间灯光数据经过…

微信小程序上传微信官方审核流程(1)

1,打开微信开发者工具 2,微信开发者工具右上角有一个上传按钮,点击上传按钮 3,点击完上传按钮会弹出一个上传成功的提示,点击提示框中的确定按钮 4,点击完确定按钮后会显示填写版本好和项目备注 5&#x…

快速获取镜像包的方法

1、当我们需要在无网络的环境中,在Docker环境中安装某个镜像时,需要先下载这个镜像包后,再上传 2、下面以在minio为例 在有网络的电脑中使用使用命令下载 docker pull minio/minio将下载好的tar包保存到指定的目录下 save -o /home/cl/app…

11 —— 打包模式的应用

需求:在开发模式下想让webpack使用style-loader进行css样式的处理;让它把css代码内嵌在js中;在生产模式下提取css代码 —— 判断当前运行命令时所在的环境 方案:借助cross-env全局软件包,设置参数区分打包运行环境 …

docker容器化部署springboot项目

前言 docker安装 下载官网 选择自己的系统 然后安装文档内给的命令按顺序执行即可。设置仓库,安装docker. 一、更换镜像源 一般情况下,docker原本自带的镜像网站不一定连的上,就很容易导致下载镜像失败,因此需要换源. 创建/etc/docker/daemon.json并填入数据…

2024深育杯misc2

题目描述:攻击者远程服务器监听所用的端口是( )?请提交flag,例如端口号为80,则提交Sangfor{80} 附件解压打开是一个raw文件 用volatility3工具查看ip链接信息

UI自动化测试中公认最佳的设计模式-POM

一、概念 什么是POM? POM是PageObjectModule(页面对象模式)的缩写,其目的是为了Web UI测试创建对象库。在这种模式下,应用涉及的每一个页面应该定义为一个单独的类。类中应该包含此页面上的页面元素对象和处理这些元…

L14.【LeetCode笔记】返回倒数第k个节点

目录 1.题目 2.分析 思路 代码 提交结果 1.题目 面试题 02.02. 返回倒数第 k 个节点 实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。 注意:本题相对原题稍作改动 示例: 输入: 1->2->3->4->5 和 …