Surface¶
Surface¶
- class manimlib.mobject.types.surface.Surface(**kwargs)¶
曲面(基类)
u_range
: u 范围v_range
: v 范围resolution
: 分割精度color
: 颜色opacity
: 透明度gloss
: 光泽shadow
: 阴影opacity
: 透明度
- get_partial_points_array(points: np.ndarray, a: float, b: float, resolution: npt.ArrayLike, axis: int) np.ndarray ¶
获取百分比从 a 到 b 的部分点集
- get_shader_data() ndarray ¶
获取 shader 数据
- get_unit_normals() ndarray ¶
获取每个分割面的法向量
ParametricSurface¶
- class manimlib.mobject.types.surface.ParametricSurface(uv_func: Callable[[float, float], Iterable[float]], u_range: tuple[float, float] = (0, 1), v_range: tuple[float, float] = (0, 1), **kwargs)¶
参数曲面
传入 func 为自变量为参数 u,v ,返回值为一个点的函数
u_range
,v_range
: 参数范围resolution
:u, v
范围分为多少段(为一个数时 uv 均为此值,为元组时 u 为第一个 v 为第二个)
SGroup¶
TexturedSurface¶
- class manimlib.mobject.types.surface.TexturedSurface(uv_surface: Surface, image_file: str, dark_image_file: str | None = None, **kwargs)¶
带有贴图的曲面
uv_surface
: 曲面(类型必须为Surface
)image_file
: 物件受光面显示的贴图(路径)dark_image_file
: 物件的背光面显示的贴图(路径)
关于受光面与背光面:
相机默认有一个光源,坐标位置在
[-10, 10, 10]
,光源能够直接照射到的部分贴图为受光面,不能直接照射到的为背光面
- pointwise_become_partial(tsmobject: TexturedSurface, a: float, b: float, axis: int = 1)¶
生成一个曲面百分比从 a 到 b 的物件
- set_opacity(opacity: float, recurse: bool = True)¶
设置透明度