使用投影计算两条直线交点
2014-02-15 02:46
330 查看
如下图已知点P1,P2位于被P3和P4确定直线的两侧,两线段交予点(x0, y0)
易得P2到直线距离为l2,投影为(x2, y2),P1直线距离为l1,投影为(x1, y1)
因为这两个直角三角形相似,所以进一步得到 l1/ l2 = a1/ a2
又因为"投影相似原理”得到 a1 / a2 = (y1 - y0) / (y0 - y2) 和 a1 / a2 = (x1 - x0) / (x0 - x2)
定义变量
float factor = l1/l2;
x0 = (x1 - factor * x2) / (1.f + factor);
y0 = (y1 - factor * y2) / (1.f + factor);
易得P2到直线距离为l2,投影为(x2, y2),P1直线距离为l1,投影为(x1, y1)
因为这两个直角三角形相似,所以进一步得到 l1/ l2 = a1/ a2
又因为"投影相似原理”得到 a1 / a2 = (y1 - y0) / (y0 - y2) 和 a1 / a2 = (x1 - x0) / (x0 - x2)
定义变量
float factor = l1/l2;
x0 = (x1 - factor * x2) / (1.f + factor);
y0 = (y1 - factor * y2) / (1.f + factor);
相关文章推荐
- (计算几何step8.1.2.2)POJ 1269 Intersecting Lines(使用叉积来计算两条直线的交点)
- 计算两条直线的交点(C#)
- 计算两条直线的交点
- 计算两条直线的交点--C语言
- 可以用在图像处理中的计算两条直线的交点
- poj1269 Intersecting Lines(计算几何--两条直线的交点)
- 计算两条直线的交点
- YT03-递推求解课后题目-1004 计算直线的交点数-(6.7日-烟台大学ACM预备队解题报告)分析: 将n 条直线排成一个序列,两条直线最多只有一个交点,三条直线最多有两个交点,直线n 和其他n
- HDU 1466 计算直线的交点数(简单dp)
- HDU.1466.计算直线的交点数(动态规划)
- 使用OpenCV2.x计算图像的水平和垂直积分投影
- [ACM] hdu 2857 Mirror and Light (对称点+两条直线的交点)
- poj 3340 Segments(计算几何,直线跟线段的交点)
- 杭电1466计算直线的交点数
- POJ1269---Intersecting Lines (计算几何基础:直线相交求交点)
- HDU---1466-计算直线的交点数(DP)
- HDOJ 1466 计算直线的交点数
- 计算直线的交点数(HDU-1466)
- HDOJ 1466 计算直线的交点数 (DP)
- hdoj 1466 计算直线的交点数 (几何 DP)