manim positons,rotations and fonts
object=Dot()
ScreenGrid()用于创造网格线,语法格式为:ScreenGric(rows=ROWS,columns=COLUMNS)
位置属性分两种,绝对位置和相对位置
1、绝对位置
绝对位置也分两种:edge和corner。前者的方法为to_edge(),有四个预定义的位置:UP = np.array([0,1,0]);DOWN = np.array([0,-1,0]);LEFT = np.array([-1,0,0]);RIGHT = np.array([1,0,0]),buff参数可以调整到预定义位置的距离,语法格式为:to_edge(DIRECTION,buff=NUMBER)。后者的方法为to_corner(),有四个预定义的位置:UR = np.array([1,1,0]);UL = np.array([-1,1,0]);DR = np.array([1,-1,0]);DL = np.array([-1,-1,0])
2、相对位置
相对位置的第一个方法为move_to():两种格式,move_to(vector)/move_to(reference_object.get_center()+vector),这里的参数可以是UP等预定义位置的线性组合,也可以是一个向量:np.array([x,y,0])。如果想要某个对象移动到另一个对象的几何中心,使用第二种格式:obj1.move_to(obj2)
第二个方法为next_to(),和move_to()不同,它不已对象的几何中心为基准,而是以对象的边缘为基准,语法格式为:obj1.next_to(obj2,DIRECTION,buff=NUMBER)
第三个方法为shift(),往水平或垂直方向平移,语法格式为obj.shift(DIRECTION*NUMBER)(参数可以为预定义位置的线性组合)
rotate()用于逆时针旋转,语法格式为obj1.rotate(PI*NUMBER/PI*NUMBER,obj2),第一种格式为自旋,第二种格式为相对对象旋转
filp()用于按照矢量方向翻转,语法格式为obj.flip(DIRECTION)
默认情况下有六种字体格式:Roman/Italic/Typewritter/Bold/Slanted/Small caps