scientimate.intersectlineedge#
xintersect, yintersect = scientimate.intersectlineedge(x1, y1, x2, y2, x3, y3, x4, y4, CalcMethod='vector', dispout='no')
Description#
Find intersection point between two line segments (line edges)
Inputs#
- x1
x of start point of first segment as (x1,y1)
- y1
y of start point of first segment as (x1,y1)
- x2
x of end point of first segment as (x2,y2)
- y2
- y of end point of first segment as (x2,y2)First segment: p1(x1,y1) to p2(x2,y2)
- x3
x of start point of second segment as (x3,y3)
- y3
y of start point of second segment as (x3,y3)
- x4
x of end point of second segment as (x4,y4)
- y4
- y of end point of second segment as (x4,y4)Second segment: p3(x3,y3) to p4(x4,y4)
- CalcMethod=’vector’
- Intersection point calculation method‘vector’: using vector intersection method‘line’: using line intersection method
- dispout=’no’
Define to display outputs or not (‘yes’: display, ‘no’: not display)
Outputs#
- xintersect
x of intersection point between two segments
- yintersect
y of intersection point between two segments
Examples#
import scientimate as sm
#Segment 1:
x1=1
y1=1
x2=5
y2=5
#Segment 2:
x3=5
y3=1
x4=1
y4=5
xintersect,yintersect=sm.intersectlineedge(x1,y1,x2,y2,x3,y3,x4,y4,'vector','yes')
#Colinear
#Segment 1:
x1=1
y1=1
x2=5
y2=5
#Segment 2:
x3=2
y3=2
x4=6
y4=6
xintersect,yintersect=sm.intersectlineedge(x1,y1,x2,y2,x3,y3,x4,y4,'vector','yes')
#Parallel
#Segment 1:
x1=1
y1=1
x2=5
y2=5
#Segment 2:
x3=2
y3=3
x4=6
y4=7
xintersect,yintersect=sm.intersectlineedge(x1,y1,x2,y2,x3,y3,x4,y4,'vector','yes')
#Segment 1:
x1=[1,3]
y1=[1,4]
x2=[5,7]
y2=[5,8]
#Segment 2:
x3=[5,4]
y3=[1,7]
x4=[1,7]
y4=[5,2]
xintersect,yintersect=sm.intersectlineedge(x1,y1,x2,y2,x3,y3,x4,y4)
References#
Goldman, R. (1990, August). Intersection of two lines in three-space. In Graphics Gems (p. 304). Academic Press Professional, Inc..