Function bcar::intersect_line_line [−][src]
pub fn intersect_line_line(
p1: Point,
p2: Point,
p3: Point,
p4: Point
) -> Option<Point>
Return intersection point of two lines if exists.
See https://en.wikipedia.org/wiki/Line%E2%80%93line_intersection
Examples
match bcar::intersect_line_line( bcar::Point::new(1.0, 1.0), bcar::Point::new(3.0, 3.0), bcar::Point::new(1.0, 3.0), bcar::Point::new(3.0, 1.0), ) { Some(p) => { assert!(p == bcar::Point::new(2.0, 2.0)); }, None => { assert!(false); } } match bcar::intersect_line_line( bcar::Point::new(1.0, 1.0), bcar::Point::new(1.0, 3.0), bcar::Point::new(3.0, 3.0), bcar::Point::new(3.0, 1.0), ) { Some(_p) => { assert!(false); }, None => { assert!(true); } }