早教吧 育儿知识 作业答案 考试题库 百科 知识分享

java取得线段与矩形的交点RT,现有两个点A(X1,Y1),B(X2,Y2)组成的线段,另有一个矩形的四个点D(X3,Y3),E(X4,Y4),F(X5,Y5),G(X6,Y6),矩形不是和X轴,Y轴平行的(即可旋转的)求线段与矩形相交的点的坐标应

题目详情
java取得线段与矩形的交点
RT,现有两个点A(X1,Y1), B(X2,Y2)组成的线段, 另有一个矩形的四个点D(X3,Y3), E(X4,Y4), F(X5,Y5), G(X6,Y6), 矩形不是和X轴,Y轴平行的(即可旋转的)
求线段与矩形相交的点的坐标
应该有四种情况:
①不相交
②一个交点
③两个交点
④与某条边重合(此时按①处理)

要求:纯数学计算

PS:算法我会, 代码不愿写, 只求有轮子拿来就用
有满意答案追加悬赏200
▼优质解答
答案和解析
解法一:
可以把矩形看成是4条直线相交段构成的,把这4条直线的方程写出来,在把直线AB的方程也写出来。把直线AB的方程和分别和这4条边的直线的某一条组成方程组求
1、若都无解,肯定不相交。
2、有1个或2个解,可能相交。看求得的横坐标和纵坐标是否同时在线段DE(或EF或FG或GD)和线段AB的范围内。
3、计算过程中x、y的系数完全抵消,这是重合情况。
解法二:AB和矩形DEFG相交,有两种情况:
(1)有一个点在矩形内部,另一个点在矩形外部,这时候只有一个交点。
(2)两个点都在矩形外部,这时候有两个交点。
(1)和(2)不同时满足。
对于(1)通过判断A、B相对于矩形4条边的位置就可以确定。
对于(2)先计算出AB、DE、EF、FG、GD这5条直线的斜率,然后可以根据斜率判断是否相交,若斜率相同可能是重合或平行要排除。若只与其中一条相交,归结为情况(1),排除。然后,求出相交点,看求得的横坐标和纵坐标是否同时在线段DE(或EF或FG或GD)和线段AB的范围内。
看了 java取得线段与矩形的交点...的网友还看了以下:

矿泉水瓶变形问题:有一个矿泉水瓶,我拿去接全热的水可是严重变形,另外一个人也是全热,但是只是变小了  2020-05-16 …

一道分式题(请写出过程:哥哥姐姐快帮忙,我会太感谢的)有四块小场地:一块边长为a米的正方形,一块边  2020-05-20 …

有四块小场地:第一块是边长为a米的正方形,第二块是边长b米的正方形,其余两块地都是长a米宽b米的长  2020-06-15 …

有两块小场地,第一块是边长(a-b)米的正方形,第二块地的长4a米,宽b米的长方形.另有一块大长方  2020-06-15 …

有4块小场地:一块边长为a米的正方形,一块边长为b米的正方形,两块长为a米,一块宽为b米的长方形,  2020-06-15 …

有三块小场地,第一块是边长为a的正方形,第二块是边长为2的正方形,第三块是长为a,宽为5的长方形另  2020-06-15 …

数学题急马上就要拜托啦谢谢如图,两张全等的等边三角形(△ABD与△BCD)一边重合后拼成一个四边形  2020-06-25 …

求思考题.蚊子和拍子…谢谢!一共五根火柴,其中四根组成一个正方形,另外一根在正方行的外面组成一个蚊  2020-07-12 …

如图所示,四张三角形纸片中有三个完全相同的直角三角形,另外一个有一边与直角三角形的斜边相等,把这四  2020-07-21 …

如图所示,四张三角形纸片中有三个完全相同的直角三角形,另外一个有一边与直角三角形的斜边相等,把这四  2020-07-21 …