社区
数据结构与算法
帖子详情
如何判断空间两线段是否相交?
whnchh
2003-04-07 04:16:36
已知空间两条线段的顶点坐标(x1,y1,z1),(x2,y2,z2),如何判断它们是否相交?
...全文
667
5
打赏
收藏
如何判断空间两线段是否相交?
已知空间两条线段的顶点坐标(x1,y1,z1),(x2,y2,z2),如何判断它们是否相交?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alidiedie
2003-04-20
打赏
举报
回复
以前有好多此个问题:
排斥实验 和跨立实验
/* 基本几何结构 */
struct POINT
{
double x;
double y; POINT(double a=0, double b=0) { x=a; y=b;} //constructor
};
struct LINESEG
{
POINT s;
POINT e; LINESEG(POINT a, POINT b) { s=a; e=b;}
LINESEG() { }
};
double multiply(POINT sp,POINT ep,POINT op)
{
return((sp.x-op.x)*(ep.y-op.y)-(ep.x-op.x)*(sp.y-op.y));
}
// 如果线段u和v相交(包括相交在端点处)时,返回true
bool intersect(LINESEG u,LINESEG v)
{
return( (max(u.s.x,u.e.x)>=min(v.s.x,v.e.x))&& //排斥实验
(max(v.s.x,v.e.x)>=min(u.s.x,u.e.x))&&
(max(u.s.y,u.e.y)>=min(v.s.y,v.e.y))&&
(max(v.s.y,v.e.y)>=min(u.s.y,u.e.y))&&
(multiply(v.s,u.e,u.s)*multiply(u.e,v.e,u.s)>=0)&& //跨立实验
(multiply(u.s,v.e,v.s)*multiply(v.e,u.e,v.s)>=0));
}
DNCS
2003-04-20
打赏
举报
回复
有一个比较简单的方法,
建立两条直线方程求解,看解在不在有效范围内即可
liuweiyan
2003-04-08
打赏
举报
回复
都是高手啊,原来自己一直是井底之蛙:(
ZhangYv
2003-04-07
打赏
举报
回复
http://expert.csdn.net/Expert/topic/927/927874.xml?temp=.3757593
寻开心
2003-04-07
打赏
举报
回复
没有时间细想,至少可以这样判断。
两个线段都有自己的方向向量,两个向量差乘,得到公共的垂直
如果垂直向量是零向量,表示两线段平行
否则,使用两个线段的各一个点和这个公共的垂直做点乘,数值相等表示共面,可以继续测试,否则表示不相交了。
如果共面就可以转化成为平面线段来判断了。平面判断的办法就比较成熟了,论坛前面有现成的结论。
C++语言实现一些基本算法(两点距离、点
是否
在直线上、点与直线的关系、两直线的夹角、两直线的交点、两个举行的重合面积等等)
6. 两个矩形的重合面积:首先
判断
矩形
是否
相交
,若
相交
,根据
相交
部分的边界计算重合区域的宽度和高度,最后乘以两者得到面积。C++实现如下: ```cpp double overlapArea(int x1, int y1, int w1, int h1, int x2, ...
立体表面的交线ppt
相贯线是两个回转体表面共有的点集,通常表现为封闭的
空间
曲线,特殊情况下可能是平面图形。求解相贯线的方法包括利用积聚性和辅助平面法,步骤包括求特殊点、一般点,然后顺次连接各点,最终完善图形。 举例来说,...
大学工程制图课件 断面法 截交线 换面法
在工程制图中,当两个或多个立体
相交
时,它们在交界处产生的线被称为截交线。截交线有助于我们描绘出几何体相互切割后所产生的复杂轮廓。例如,在一个圆柱体和一个立方体
相交
的情境下,交界线就是截交线。绘制截交线...
实验三-利用MAPGIS软件建立
空间
拓朴数据文件分享.pdf
在预处理过程中,你可以通过执行一系列操作来优化数据质量,例如编辑线、自动剪断线、自动平差等。这些操作有助于消除数字化误差,如线的重叠和节点不准确等问题。 自动剪断线可以消除线的冗余部分,清除微短线则...
基础知识课件断面PPT课件.pptx
- 多个
相交
剖切面得到的移出断面,中间通常用波浪线断开,以区分不同的断面部分。 3. **移出断面图的标注**: - 断面图通常需要标注名称,如“×-×”,并在视图上用剖切符号表明剖切位置和投影方向。 - 配置在...
数据结构与算法
33,029
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章