跳转至

线 3D

合格名称:manim.mobject.three\_d.three\_dimensions.Line3D

Python
class Line3D(start=array([- 1., 0., 0.]), end=array([1., 0., 0.]), thickness=0.02, color=None, **kwargs)

Bases: Cylinder

圆柱线,用于 ThreeDScene。

参数

  • start ( np.ndarray ) – 线的起点。
  • end ( np.ndarray ) – 线的终点。
  • thickness( float ) – 线条的粗细。
  • color( Color ) – 线条的颜色。

例子

示例:ExampleLine3D

ExampleLine3D-1.png

Python
1
2
3
4
5
6
7
8
from manim import *

class ExampleLine3D(ThreeDScene):
    def construct(self):
        axes = ThreeDAxes()
        line = Line3D(start=np.array([0, 0, 0]), end=np.array([2, 2, 2]))
        self.set_camera_orientation(phi=75 * DEGREES, theta=30 * DEGREES)
        self.add(axes, line)

方法

get_end 返回 的结束点Line3D
get_start 返回 的起点Line3D
parallel_to 返回与穿过给定点的另一条线平行的线。
perpendicular_to 返回与穿过给定点的另一条线垂直的线。
pointify 获取代表 的中心的点Mobjects
set_start_and_end_attrs 设置线的起点和终点。

属性

animate 用于对 的任何方法的应用程序进行动画处理self
animation_overrides
color
depth 对象的深度。
fill_color 如果有多种颜色(对于渐变),则返回第一个颜色
height mobject 的高度。
n_points_per_curve
sheen_factor
stroke_color
width mobject 的宽度。

get_end()

返回 的结束点Line3D

返回

end – 的结束点Line3D

返回类型

numpy.array

get_start()

返回 的起点Line3D

返回

start – 的起点Line3D

返回类型

numpy.array

Python
classmethod parallel_to(line, point=array([0., 0., 0.]), length=5, **kwargs)

返回与穿过给定点的另一条线平行的线。

参数

  • line ( Line3D ) – 要平行的线。
  • point ( Sequence [ float ] ) – 要经过的点。
  • length ( float ) – 平行线的长度。
  • kwargs – 要传递给类的附加参数。

返回

平行于 的线line

返回类型

Line3D

例子

示例:平行线示例

ParallelLineExample-1.png

Python
1
2
3
4
5
6
7
8
9
from manim import *

class ParallelLineExample(ThreeDScene):
    def construct(self):
        self.set_camera_orientation(PI / 3, -PI / 4)
        ax = ThreeDAxes((-5, 5), (-5, 5), (-5, 5), 10, 10, 10)
        line1 = Line3D(RIGHT * 2, UP + OUT, color=RED)
        line2 = Line3D.parallel_to(line1, color=YELLOW)
        self.add(ax, line1, line2)
Python
classmethod perpendicular_to(line, point=array([0., 0., 0.]), length=5, **kwargs)

返回与穿过给定点的另一条线垂直的线。

参数

  • line ( Line3D ) – 要垂直的线。
  • point ( Sequence [ float ] ) – 要经过的点。
  • length ( float ) – 垂直线的长度。
  • kwargs – 要传递给类的附加参数。

返回

垂直于 的线line

返回类型

Line3D

例子

示例:PerpLineExample

PerpLineExample-1.png

Python
1
2
3
4
5
6
7
8
9
from manim import *

class PerpLineExample(ThreeDScene):
    def construct(self):
        self.set_camera_orientation(PI / 3, -PI / 4)
        ax = ThreeDAxes((-5, 5), (-5, 5), (-5, 5), 10, 10, 10)
        line1 = Line3D(RIGHT * 2, UP + OUT, color=RED)
        line2 = Line3D.perpendicular_to(line1, color=BLUE)
        self.add(ax, line1, line2)

pointify(mob_or_point, direction=None)

获取代表 的中心的点Mobjects

参数

  • mob_or_point ( Mobject | float ) –Mobjects或应返回其中心的点。
  • Direction ( np.ndarray ) – 如果应返回 a 的边Mobjects,则为该边的方向。

返回

或点的中心Mobjects,或边缘(如果给定方向)。

返回类型

numpy.array

set_start_and_end_attrs(start, end, **kwargs)

设置线的起点和终点。

如果 或startendMobjects这给出了它们的中心。

参数

  • start ( ndarray ) – 起始点或Mobject.
  • end ( ndarray ) – 结束点或Mobject.

返回类型

None