1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-01-17 06:08:31 +01:00
dotSCAD/docs/lib3x-lines_intersection.md
2022-06-06 13:11:46 +08:00

841 B

lines_intersection

Find the intersection of two line segments. Return [] if lines don't intersect.

Since: 2.4

Parameters

  • line1 : Two points of 2D or 3D line1.
  • line2 : Two points of 2D or 3D line2.
  • ext : Default to false, which doesn't extend a line to an intersection with another line.
  • epsilon : An upper bound on the relative error due to rounding in floating point arithmetic. Default to 0.0001.

Examples

use <lines_intersection.scad>

line1 = [[0, 0], [0, 10]];
line2 = [[5, 0], [-5, 5]];
line3 = [[5, 0], [2.5, 5]];

assert(lines_intersection(line1, line2) == [0, 2.5]);
assert(lines_intersection(line1, line3, ext = true) == [0, 10]);

line4 = [[0, 0, 0], [10, 10, 10]];
line5 = [[10, 0, 0], [0, 10, 10]];
assert(lines_intersection(line4, line5) == [5, 5, 5]);