EDA365电子工程师网
标题:
求解,PCB上任意两条线交叉点坐标算法,附代码没看懂
[打印本页]
作者:
fengyu6117
时间:
2015-3-26 15:27
标题:
求解,PCB上任意两条线交叉点坐标算法,附代码没看懂
本帖最后由 fengyu6117 于 2015-3-26 17:18 编辑
求大神详细解释。
A_x 直线AB的开始和终点坐标
A_y
B_x
B_y
C_x 直线CD的开始和终点坐标
C_y
D_x
D_y
denom = (( D_y - C_y)*( B_x - A_x) - ( D_x - C_x)*( B_y - A_y)) 两条直线斜率相减。
u_AB = ((( D_x - C_x)*( A_y - C_y) - ( D_y - C_y)*( A_x - C_x)) / denom) 这个是什么公式?
u_CD = ((( B_x - A_x)*( A_y - C_y) - ( B_y - A_y)*( A_x - C_x)) / denom) 这个是什么公式?
cross_x = A_x + u_AB * ( B_x - A_x) 交叉点X坐标 这个是什么公式?
cross_y = A_y + u_AB * ( B_y - A_y) 交叉点Y坐标 这个是什么公式?
if( (u_AB >= 0.0 && u_AB <= 1.0) && (u_CD >= 0.0 && u_CD <= 1.0) then
true_intersect_exists = t
作者:
gzgl153
时间:
2015-3-26 16:13
个人表示很晕
作者:
fengyu6117
时间:
2015-3-26 16:26
估计上小学的时候算这个在行
作者:
Max_xwz
时间:
2015-3-27 09:55
建议楼主自己把公式推导一遍,这个也许是简化后的公式。。。也许根本就是错的。。
作者:
fengyu6117
时间:
2015-3-27 16:52
是对的,可以执行
欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/)
Powered by Discuz! X3.2