--- title: mbcp.mp_math.segment --- ### ***class*** `Segment3` ### *def* `__init__(self, p1: 'Point3', p2: 'Point3')` 三维空间中的线段。 :param p1: :param p2:
源码 ```python def __init__(self, p1: 'Point3', p2: 'Point3'): """ 三维空间中的线段。 :param p1: :param p2: """ self.p1 = p1 self.p2 = p2 '方向向量' self.direction = self.p2 - self.p1 '长度' self.length = self.direction.length '中心点' self.midpoint = Point3((self.p1.x + self.p2.x) / 2, (self.p1.y + self.p2.y) / 2, (self.p1.z + self.p2.z) / 2) ```
### *def* `__repr__(self)`
源码 ```python def __repr__(self): return f'Segment3({self.p1}, {self.p2})' ```
### *def* `__str__(self)`
源码 ```python def __str__(self): return f'Segment3({self.p1} -> {self.p2})' ```