求解一算法
一个矩形和一条线段相交(假设有且只有一个交点的情况,且矩形的边界和坐标系平行).已知矩形的四个点的坐标和线段两个端点坐标,求交点的坐标?
哪位帮我写一下这段代码,非常非常感谢.
问题点数:100、回复次数:6Top
1 楼mituzhishi(慎独)回复于 2005-08-28 17:28:36 得分 20
这是数学题目,列出矩形和直线的方程联立求解就行了。
建议用matlab做,解方程可不是C++的强项。Top
2 楼ningzhiyu(凝滞雨)回复于 2005-08-29 12:39:22 得分 0
看有空不,有空帮你看看Top
3 楼ningzhiyu(凝滞雨)回复于 2005-08-29 12:47:40 得分 30
http://staff.science.uva.nl/~jellekok/robocup/2002/trilearn_2002_source.tar.gz
下一份这个代码
里面的Geometry.h、Geometry.C文件里面有一个line的class
基本功能都有了
根据楼主的要求,只剩下判断交点是否在两条线段上的那部分了Top
4 楼yll1986(???)回复于 2005-08-29 14:27:09 得分 10
...
这不就是解方程吗?Top
5 楼now123(hlj)回复于 2005-08-29 15:13:28 得分 20
不用解方程吧,
因为矩形的边界和坐标系平行,得到矩形四条边的方程(x=x0,x=x1,y=y0,y=y1),带入直线方程得到四个交点,删除矩形外边的点即可。
f(x);//只先方程
ABCD//四个顶点
K=f(A.x);L=f(B.y)...MN//四个交点
g(point)//判断是否在矩形外边
。。。。。
Top
6 楼jixingzhong(瞌睡虫·星辰)回复于 2005-08-29 15:39:58 得分 20
这个问题有现成的啊 ...
做一点基本修改就可以了 ...Top




