向量场
合格名称:manim.mobject.vector\_field.VectorField
Python | |
---|---|
Bases: VGroup
向量场。
矢量场基于在每个位置定义矢量的函数。Mobject
默认情况下,此类不包含任何可见元素,但提供沿矢量场移动其他元素的方法。
参数
- func ( Callable [ [ np.ndarray ] , np.ndarray _] ) – 定义_VectorField 每个位置的变化率的函数。
- color ( Color | None ) – 矢量场的颜色。如果设置,则禁用特定于位置的着色。
- color_scheme ( Callable [ [ np.ndarray ] , float ] | None ) – 将向量映射到单个值的函数。该值给出使用 min_color_scheme_value、max_color_scheme_value 和 Colors 定义的颜色渐变中的位置。
- min_color_scheme_value ( float ) – 要映射到颜色中第一个颜色的 color_scheme 函数的值。较低的值也会导致渐变的第一种颜色。
- max_color_scheme_value ( float ) – 要映射到颜色中最后一个颜色的 color_scheme 函数的值。较高的值也会导致渐变的最后一种颜色。
- colors( Sequence [ Color ] ) – 定义矢量场颜色渐变的颜色。
- kwargs – 要传递给
VGroup
构造函数的附加参数
方法
fit_to_coordinate_system |
缩放矢量场以适合坐标系。 |
get_colored_background_image |
生成显示矢量场的图像。 |
get_nudge_updater |
获取更新函数以Mobject 沿矢量场移动 a。 |
get_vectorized_rgba_gradient_function |
生成 rgbas 的梯度作为 numpy 数组 |
nudge |
Mobject 沿着矢量场微移 a 。 |
nudge_submobjects |
沿矢量场对所有子对象应用微移。 |
scale_func |
缩放矢量场函数。 |
shift_func |
平移向量场函数。 |
start_submobject_movement |
开始沿着矢量场连续移动所有子对象。 |
stop_submobject_movement |
停止使用 开始的连续运动start_submobject_movement() 。 |
属性
animate |
用于对 的任何方法的应用程序进行动画处理self 。 |
animation_overrides |
|
color |
|
depth |
对象的深度。 |
fill_color |
如果有多种颜色(对于渐变),则返回第一个颜色 |
height |
mobject 的高度。 |
n_points_per_curve |
|
sheen_factor |
|
stroke_color |
|
width |
mobject 的宽度。 |
fit_to_coordinate_system(coordinate_system)
缩放矢量场以适合坐标系。
当矢量场定义在与用于显示矢量场的坐标系不同的坐标系中时,此方法非常有用。
该方法只能使用一次,因为它会变换每个向量的原点。
参数
axis_system ( CoordinateSystem ) – 用于拟合向量场的坐标系。
get_colored_background_image(sampling_rate=5)
生成显示矢量场的图像。
每个位置的颜色是通过一系列步骤传递定位来计算的:计算该位置的向量场函数,使用 self.color_scheme 将该向量映射到单个值,最后使用颜色渐变从该值生成颜色。
参数
Sample_rate ( int ) – 像素包含在图像中的步长。较低的值可提供更准确的结果,但可能需要很长时间才能计算。
返回
矢量场图像。
返回类型
Image.Imgae
get_nudge_updater(speed=1, pointwise=False)
获取更新函数以Mobject
沿矢量场移动 a。
当与 一起使用时add_updater()
,mobject 将沿着矢量场移动,其速度由矢量场的大小决定。
参数
- speed ( float ) – 当 speed=1 时,物体每秒移动的距离等于沿其路径的矢量场的大小。速度值缩放此类对象的速度。
- pointwise ( bool ) – 是否沿着向量场移动对象。
nudge()
详情请参阅。
返回
更新功能。
返回类型
Callable[[ Mobject , float], Mobject ]
get_vectorized_rgba_gradient_function(start, end, colors)
生成 rgbas 的梯度作为 numpy 数组
参数
- start ( float ) – 用于逆插值的起始值
inverse_interpolate()
- end ( float ) – 用于逆插值的最终值
inverse_interpolate()
- colors( Iterable ) – 生成渐变的颜色列表
返回类型
函数将梯度生成为代表 rgba 值的 numpy 数组
nudge(mob, dt=1, substeps=1, pointwise=False)
Mobject
沿着矢量场微移 a 。
参数
- mob ( Mobject ) – 沿着矢量场移动的 mobject
- dt ( float ) – 对象沿矢量场移动量的标量。实际距离基于矢量场的大小。
- substeps ( int ) – 整个微移分为的步数。值越高,近似值越准确。
- pointwise ( bool ) – 是否沿着向量场移动对象。如果为 False,矢量场在给定 的中心生效
Mobject
。如果为 True,矢量场会影响 的各个点的点Mobject
,可能会使其变形。
返回
这个向量场。
返回类型
例子
示例:轻推
nudge_submobjects(dt=1, substeps=1, pointwise=False)
沿矢量场对所有子对象应用微移。
参数
- dt ( float ) – 对象沿矢量场移动量的标量。实际距离基于矢量场的大小。
- substeps ( int ) – 整个微移分为的步数。值越高,近似值越准确。
- pointwise ( bool ) – 是否沿着向量场移动对象。
nudge()
详情请参阅。
返回
这个向量场。
返回类型
static scale_func(func, scalar)
缩放矢量场函数。
参数
- func ( Callable [ [ ndarray ] , ndarray ] ) – 定义向量场的函数。
- scalar ( float ) – 应用于向量场的标量。
返回类型
Callable[[ ndarray ], ndarray ]
例子
示例:ScaleVectorFieldFunction
返回
缩放后的向量场函数。
返回类型
Callable[[np.ndarray],np.ndarray]
参数
- func (Callable__[ [ ndarray ] , ndarray ] ) –
- scalar(float)–
static shift_func(func, shift_vector)
平移向量场函数。
参数
- func ( Callable [ [ ndarray ] , ndarray ] ) – 定义向量场的函数。
- shift_vector ( ndarray ) – 应用于向量场的移位。
返回
平移向量场函数。
返回类型
Callable[[np.ndarray],np.ndarray]
start_submobject_movement(speed=1, pointwise=False)
开始沿着矢量场连续移动所有子对象。
多次调用此方法将导致删除此方法创建的先前更新程序。
参数
- speed ( float ) – 移动子对象的速度。
get_nudge_updater()
详情请参阅。 - pointwise ( bool ) – 是否沿着向量场移动对象。
nudge()
详情请参阅。
返回
这个向量场。
返回类型
stop_submobject_movement()
停止使用 开始的连续运动start_submobject_movement()
。
返回
这个向量场。
返回类型