ThreeDCamera¶
限定名称: manim.camera.three\_d\_camera.ThreeDCamera
- class ThreeDCamera(focal_distance=20.0, shading_factor=0.2, default_distance=5.0, light_source_start_point=array([-7., -9., 10.]), should_apply_shading=True, exponential_projection=False, phi=0, theta=-1.5707963267948966, gamma=0, zoom=1, **kwargs)[source]¶
基类:
Camera
初始化 ThreeDCamera
- 参数:
*kwargs – 相机的任何关键字参数。
方法
此方法允许 mobject 具有固定位置,即使相机移动。
此方法允许 mobject 具有固定方向,即使相机移动。
通过将mobject打印到
pixel_array
上来捕获它们。根据相机的当前位置生成旋转矩阵。
返回传入 VMobject 填充的 RGBA 数组
返回相机的焦距(focal_distance)。
返回相机围绕从原点到相机的向量的旋转。
用于获取要随相机显示的 mobject 列表。
返回极角(偏离 Z_AXIS 的角度)phi。
返回与相机当前位置对应的矩阵。
获取传入 VMobject 描边的 RGBA 数组。
返回方位角,即围绕 Z_AXIS 旋转相机的角度。
phi、theta、focal_distance、gamma 和 zoom 的
ValueTrackers
列表。返回相机的缩放量。
modified_rgbas
将当前 rotation_matrix 作为投影矩阵应用于传入的点。
将当前 rotation_matrix 作为投影矩阵应用于传入的点数组。
如果 mobject 通过
add_fixed_in_frame_mobjects()
固定在帧中,则此操作将取消该固定。如果 mobject 通过
add_fixed_orientation_mobjects()
固定了方向,则此操作将取消该固定。将 self.rotation_matrix 的值设置为与相机当前位置对应的矩阵
设置相机的焦距(focal_distance)。
设置相机围绕从原点到相机的向量的旋转角度。
设置极角,即 Z_AXIS 与相机(通过原点)之间的角度,单位为弧度。
设置方位角,即相机围绕 Z_AXIS 旋转的角度,单位为弧度。
设置相机的缩放量。
transform_points_pre_display
属性
背景颜色
背景不透明度
frame_center
- add_fixed_in_frame_mobjects(*mobjects)[source]¶
此方法允许 mobject 具有固定位置,即使相机移动。例如,如果它通过此方法在帧顶部传递,它将继续在帧顶部显示。
在显示标题或公式等时非常有用。
- 参数:
**mobjects (Mobject) – 要固定在帧中的 mobject。
- add_fixed_orientation_mobjects(*mobjects, use_static_center_func=False, center_func=None)[source]¶
此方法允许 mobject 具有固定方向,即使相机移动。例如,如果它通过此方法面向相机,即使相机移动,它也会继续面向相机。在为图表添加标签等时非常有用。
- 参数:
*mobjects (Mobject) – 必须固定方向的 mobject。
use_static_center_func (bool) – 是否使用将 mobject 中心作为中心点的函数,默认为 False
center_func (Callable[[], ndarray] | None) – 返回 mobject 将围绕其定向的中心点的函数,默认为 None
- capture_mobjects(mobjects, **kwargs)[source]¶
通过将mobject打印到
pixel_array
上来捕获它们。这是将场景内容转换为数组,然后将数组转换为图像或视频的基本函数。
- 参数:
mobjects – 要捕获的Mobjects。
kwargs – 要传递给
get_mobjects_to_display()
的关键字参数。
注意
有关当前可渲染的类列表,请参阅
display_funcs()
。
- get_fill_rgbas(vmobject)[source]¶
返回传入 VMobject 填充的 RGBA 数组
- 参数:
vmobject – VMobject
- 返回:
VMobject 填充的 RGBA 数组
- 返回类型:
np.array
- get_focal_distance()[source]¶
返回相机的焦距(focal_distance)。
- 返回:
相机的焦距(focal_distance),单位为 MUnits。
- 返回类型:
浮点数
- get_mobjects_to_display(*args, **kwargs)[source]¶
用于获取要随相机显示的 mobject 列表。
- 参数:
mobjects – Mobjects
include_submobjects – 是否包含 mobjects 的子对象,默认为 True
excluded_mobjects – 任何要排除的 mobject,默认为 None
- 返回:
mobject 列表
- 返回类型:
列表
- get_stroke_rgbas(vmobject, background=False)[source]¶
获取传入 VMobject 描边的 RGBA 数组。
- 参数:
vmobject – VMobject
background – 获取描边 RGBA 时是否考虑背景,默认为 False
- 返回:
描边的 RGBA 数组。
- 返回类型:
np.ndarray
- get_value_trackers()[source]¶
phi、theta、focal_distance、gamma 和 zoom 的
ValueTrackers
列表。- 返回:
ValueTracker 对象列表
- 返回类型:
列表
- project_point(point)[source]¶
将当前 rotation_matrix 作为投影矩阵应用于传入的点。
- 参数:
point (list | ndarray) – 要投影的点。
- 返回:
投影后的点。
- 返回类型:
np.array
- project_points(points)[source]¶
将当前 rotation_matrix 作为投影矩阵应用于传入的点数组。
- 参数:
points (ndarray | list) – 要投影的点列表。
- 返回:
投影后的点。
- 返回类型:
np.array
- remove_fixed_in_frame_mobjects(*mobjects)[source]¶
如果 mobject 通过
add_fixed_in_frame_mobjects()
固定在帧中,则此操作将取消该固定。该 Mobject 将不再固定在帧中。- 参数:
mobjects (Mobject) – 不再需要固定在帧中的 mobject。
- remove_fixed_orientation_mobjects(*mobjects)[source]¶
如果 mobject 通过
add_fixed_orientation_mobjects()
固定了方向,则此操作将取消该固定。该 Mobject 将不再具有固定方向。- 参数:
mobjects (Mobject) – 不再需要固定方向的 mobject。