在Manim中创建向量场时,有人能解释一下“func”论点背后的概念吗?例如:
func = lambda p: np.sin(p[0] / 2) * UR + np.cos(p[1] / 2) * LEFT我只熟悉lambda p: np.array([])方法。单元步骤的意义是什么(UR,UP,UL等)什么时候才能正确使用它们?
发布于 2022-05-19 22:00:47
不幸的是,界面有点笨拙。向量场可视化一个将向量映射到另一个向量的函数;这是指定的函数模型。
文档中相应的一页上的示例将向量函数作为lambda函数传递,该函数将具有三个组件(将其视为列表[x, y, z])的numpy向量p映射到相应的映像中。Manim的单位步长常数LEFT、RIGHT、UR等只是向量np.array([-1, 0, 0])、np.array([1, 0, 0])、np.array([1, 1, 0]),它们可以帮助描述函数的右侧。
例如,函数f(x,y) = (-y,x)。作为一个样式相同的文档中的lambda函数,您可以将其编写为lambda p: p[1]*LEFT + p[0]*UP --或者,也可以编写为lambda p: np.array(-p[1], p[0], 0)。(只需确保返回一个包含三个组件的向量。)
https://stackoverflow.com/questions/72311310
复制相似问题