manimgeo.math.lines module

manimgeo.math.lines.check_paramerized_line_range(t, line_type)[源代码]

检查参数化直线的范围是否符合要求

  • t: 参数值

  • line_type: 直线类型,可为 "LineSegment", "Ray", "InfinityLine"

manimgeo.math.lines.vertical_line_unit_direction(line_start, line_end, turn='counterclockwise')[源代码]

计算给定直线的垂线方向向量

  • line_start: 直线起点

  • line_end: 直线终点

  • turn: 方向,可为 "clockwise" 或 "counterclockwise"

返回类型:

ndarray

manimgeo.math.lines.vertical_point_to_line(point, line_start, line_end)[源代码]

计算给定点到直线的垂足点

  • point: 要计算垂足点的点

  • line_start: 直线起点

  • line_end: 直线终点

manimgeo.math.lines.point_to_line_distance(point, line_start, line_end)[源代码]

计算点到直线的距离

  • point: 要计算距离的点

  • line_start: 直线起点

  • line_end: 直线终点

Returns: float, 点到直线的距离

manimgeo.math.lines.get_parameter_t_on_line(point, line_start, line_end)[源代码]

计算点 p 在参数化直线 l_start + t * (l_end - l_start) 上的参数 t 值,假设点 p 已经在直线上。

  • point: 要计算的点

  • line_start: 直线起点

  • line_end: 直线终点

返回类型:

float

manimgeo.math.lines.is_point_on_line(point, line_start, line_end, line_type='InfinityLine')[源代码]

判断点是否在线上

  • point: 要判断的点

  • line_start: 线起点

  • line_end: 线终点

  • line_type: 线类型,可为 "LineSegment", "Ray", "InfinityLine"

返回类型:

bool