自定义物体

angle.py

class manim_sandbox.utils.mobjects.angle.Angle(p1, p2, p3, **kwargs)

传入 start_angle 表示起始的角度, angle 表示圆心角

  • radius : 圆弧半径

  • num_components : 数越大越精细

  • arc_center : 圆弧的中心

pdcxs写的关于角的类

用法: Angle(p1, p2, p3), p1, p2, p3 应该按逆时针顺序, p2 是顶点, is_right=True 始终是直角, not_right 始终不是直角。 is_rightnot_right 都是 False 时,根据值来选择

Arc_group.py

class manim_sandbox.utils.mobjects.Arc_group.Angle(A, O, B, **kwargs)

cigar666写的关于角的类,更复杂好看一些

ColorText.py

class manim_sandbox.utils.mobjects.ColorText.ColorText(color, name=None, background_color='#FFFFFF', **kwargs)

传入一个文件名指向输入的SVG文件

自动呈现颜色,可以传入hex/rgb数组

class manim_sandbox.utils.mobjects.ColorText.DecimalNumberText(number=0, **kwargs)

DecimalNumber 使用 Text 代替 TextMobject。 可以通过 text_config={"font": "..."} 来更换数字字体。

fractal_tree.py

class manim_sandbox.utils.mobjects.fractal_tree.BaseTree(mob=None, change_stroke=True, **kwargs)

可以看同文件里的其他例子

Grear.py

几个齿轮类

intersection.py

  1. 主要用来求解两圆和多圆相交的交集部分的示意(如果是空集会出问题)

  2. Intersection_n_circle 是没有基于前两个类的,其实就用它也就行了

  3. 可以用来做一些类似文氏图之类的,其他凸区域的交集可使用类似的方法写出来(如果谁有兴趣可以写一下

MyBoxes.py

class manim_sandbox.utils.mobjects.MyBoxes.MyBox(**kwargs)

单个Box,可以更新高度,上下位置,和类3D的颜色

class manim_sandbox.utils.mobjects.MyBoxes.MyBoxes(**kwargs)

一堆Box,可以根据数组或者函数更新高度、上下位置和颜色

MyText.py

class manim_sandbox.utils.mobjects.MyText.MyText(*tex_strings, **kwargs)

可传入多个 tex_strings

arg_separator 表示每两个字符串之间的字符,默认为空格

tex_to_color_map 为一个字典,会根据其中的键自动拆开字符串用于上色

可以修改字体的公式,根据TexMobject定位,然后用Unicode字符替换特殊符号

MyTriangle.py

class manim_sandbox.utils.mobjects.MyTriangle.MyTriangle(*vertices, **kwargs)

传入多个 vertices (点坐标)表示顶点

由MATHEART_EVER和我是害羞的向量制作

功能:支持求三角形的周长,面积,五心,以及内切圆,外接圆,旁切圆,欧拉圆等

Object_Border.py

显示一个物体上下左右的边界,对教程有用

class manim_sandbox.utils.mobjects.Object_Border.CtrlT(obj, **kwargs)
class manim_sandbox.utils.mobjects.Object_Border.BorderNoneUpdate(obj, **kwargs)

PeriodicTable.py

class manim_sandbox.utils.mobjects.PeriodicTable.PeriodicTable(**kwargs)

基于 MyBoxes 的元素周期表

Right_angle.py

class manim_sandbox.utils.mobjects.Right_angle.Right_angle(corner=array([0.0, 0.0, 0.0]), angle=0, **kwargs)

直角符号

Rubik_Cube.py

class manim_sandbox.utils.mobjects.Rubik_Cube.Cube_array(**kwargs)

方块序列

class manim_sandbox.utils.mobjects.Rubik_Cube.Rubik_Cube(size=3, order=3, base_color='#BBBBBB', **kwargs)

魔方类

Shadow_arround.py

class manim_sandbox.utils.mobjects.Shadow_around.Shadow_around(mob_or_points, **kwargs)
  1. 这个类用来创建一个轮廓形状产生的阴影(有边缘的模糊效果)

  2. 这个类尚不完善,对圆形、接近圆的椭圆和多边形等效果还凑合,对于其他形状可能和预期的阴影效果不一样

  3. 本质上是一个渐变效果,所以通过改动CONFIG或其他参数可以用来表示其他类似渐变效果

ThreeBody.py

class manim_sandbox.utils.mobjects.ThreeBody.Sun(**kwargs)

恒星,带有阴影

class manim_sandbox.utils.mobjects.ThreeBody.Three_Body(*three_Mobject, **kwargs)

三体系统,实现自动模拟

ThreeDVector.py

三维向量

class manim_sandbox.utils.mobjects.ThreeDVector.ThreeDVector(vector=array([1.0, 0.0, 0.0]), position=array([0.0, 0.0, 0.0]), **kwargs)

This vector has two parts

The top part is a cone (tip)

The bottom part is a circular cone

The parameter “tip_length” means the height of the cone (tip)

The parameter “tip_radius” means the base radius of the cone (tip)

The parameter “bottom_radius” means the bottom base radius of the truncated cone

The parameter “top_radius”means the top base radius of the truncated cone

The parameter “circle_side_width” means the width of the side of the base circle of the cone and the base circles of the truncated cone

The parameter “circle_side_color” means the color of the side of the base circle of the cone and the base circles of the truncated cone

Trail.py

class manim_sandbox.utils.mobjects.Trail.Trail(mob, **kwargs)

轨迹类,末尾轨迹自动变小到消失

VideoProgressBar.py

class manim_sandbox.utils.mobjects.VideoProgressBar.VideoProgressBar(**kwargs)

教程系列的底端进度条