resqpy.olio.intersection.line_triangle_intersect_numba
- resqpy.olio.intersection.line_triangle_intersect_numba(line_p: ndarray, line_v: ndarray, triangle: ndarray, line_segment: bool = False, l_tol: float = 0.0, t_tol: float = 0.0) None | ndarray[source]
Find the intersection of a line within a triangle in 3D space.
- Parameters:
line_p (
np.ndarray) – a point on the line.line_v (
np.ndarray) – vector being the direction of the line.triangle (
np.ndarray) – shape (3, 3); three corners of the triangle (second index is xyz).line_segment (
bool) – if True, returns None if intersection is outwith (line_p .. line_p + line_v).l_tol (
float, default0.0) – a fraction of the line length to allow for an intersection to be found just outside the segment.t_tol (
float, default0.0) – a fraction of the triangle size to allow for an intersection to be found just outside the triangle.
- Returns:
point (np.ndarray) of intersection of the line within the triangle, or None if line is parallel to plane of triangle or intersection with the plane is outside the triangle.