给出点A1,A2,B1,B2的坐标, 分别构成线段A1A2, 线段B1B2, 求两线段的交点坐标
线段A1A2,B1B2如下图所示, 并建立辅助线(图片来源于<<挑战程序设计竞赛2>>)
Step1: 先求出B1点到直线A1A2的距离d1, 和B2点到直线A1A2的距离d2
可根据矢量法求出(A1B1为向量, 其它一样)
Step2: 求出 t
可根据相似三角形 d1 : d2= t : (1-t)
得
Step3: 求出交点点O的坐标
根据比例缩放可求出向量B1O, t为小数, 向量B1O=t * 向量B1B2
又因为向量B1O=点O坐标 - 点