社区
图形处理/算法
帖子详情
如何判断一线段是否与以封闭多边形相交 在线等。。
dijianhua
2007-09-24 07:04:59
如何判断一线段是否与以封闭多边形相交 在线等。。多谢
急啊
...全文
671
16
打赏
收藏
如何判断一线段是否与以封闭多边形相交 在线等。。
如何判断一线段是否与以封闭多边形相交 在线等。。多谢 急啊
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhangyaojie8818
2007-09-26
打赏
举报
回复
manbaum(砸锅上网) 说的方法虽然是不对的,不过很有指导意义,呵呵
我觉得可以把他说的内容改一改,先判断线段所在的直线与多边形有多少个交点
然后再判断交点是否在线段上.
dijianhua
2007-09-26
打赏
举报
回复
jhjhgkjhgkjhkjhkjgjhfghfhgfjlgh
liuxiuk
2007-09-26
打赏
举报
回复
算法多种
如区域编码
拿四边形来说:
7| 8 | 9
--|-----------|---
| |
2 | 0 | 1
__|___________|___
4| 5 | 6
对线段的端点进行区域判断:
1.端点有一个在区域0 => 相交
2.两个端点都在区域0 =>不相交
3.两个端点在同侧 =>不相交
4.两个端点在异侧 =>求与多边行边界线的焦点, 然后判断该点是否在区域内?
1).在 ==> 相交
2).不在=>不相交
dijianhua
2007-09-25
打赏
举报
回复
唉 快要放弃了 。。。。。
lyg_zy
2007-09-25
打赏
举报
回复
mark,学习一下。
ToperRay
2007-09-25
打赏
举报
回复
很多图形算法库对实体相交有现成的算法,你可以研究一下autocad的算法库
dijianhua
2007-09-25
打赏
举报
回复
没有其它简单些的方法吗?大侠们帮忙啊
manbaum
2007-09-25
打赏
举报
回复
最直接的办法就是用线段和多边形的每条边去比,如果线段的和边有交点就相交。
dijianhua
2007-09-24
打赏
举报
回复
帮忙啊。。。。。。。。。。
manbaum
2007-09-24
打赏
举报
回复
哦。我想错了。呵呵。sorry。再想想——
dijianhua
2007-09-24
打赏
举报
回复
什么是凸包啊? 你说的对吗? 要是一个线段穿过一个三角形,两个端点都在外,那也是相交的啊
manbaum
2007-09-24
打赏
举报
回复
其实很简单:你就判断线段的两个端点和凸包的关系,如果两个端点都在凸包内或者都在凸包外,那就不相交,如果一个在内,一个在外,那就一定相交。
这里要求是凸包,要是有凹进去的,那这个说法是错的。你自己考虑一下吧。不过,对于凹进去的多边形,可以先分解为若干凸包,这样也是可以解的。
dijianhua
2007-09-24
打赏
举报
回复
我搜了啊 没有找到啊? 我说的是线段,和直线不一样吧? 你那里有吗?
多谢啊
manbaum
2007-09-24
打赏
举报
回复
封闭多边形是凸包的话,有现成算法,自己搜一下吧,很多。
dijianhua
2007-09-24
打赏
举报
回复
帮忙啊aaaaaaaaaaaaa
dijianhua
2007-09-24
打赏
举报
回复
up 没人帮忙啊 有个思路也好 多谢了
多边形
相交
计算
用vc + mapobjects开发的源代码,用鼠标对
多边形
进行操作,实现了
多边形
的
相交
计算功能。
点与
多边形
的关系
计算原理: (1)
是否
为凸
多边形
:前三个点计算三角形(
封闭
线的面积,用积分方式计算),以后每加一个点面积均应增加或至少相等。 (2)最后一个点
是否
在凸
多边形
内:同上方式计算加上这个点的
多边形
的面积,相等或减少表示在内 !
C#
判断
是否
是简单
多边形
用C#实现了简单多变形的
判断
,全称为可视化操作,在画布上绘制
多边形
,依次
判断
点点、点线、线线
是否
相交
,从而
判断
是否
为简单多变形。答疑邮箱
ue4,c++,平面最小
封闭
区域识别
程序思路: ①:得到线
段
我们的线
段
集合S(本次项目鼠标点击得到线
段
(p1,p2两点)已经在ue4蓝图里面实现,这一步就不过多阐述) ②:移除孤立的线
段
(两端的点都是孤立的); ③:拆分所有的线
段
(就是将所有的
相交
线线
段
拆分开,得到新的线
段
集合S) ④:移除一个端点孤立的线
段
(一个端点孤立的线
段
是不构成
多边形
的) ⑤:找出所有的大区域线
段
集合M,M是线
段
集合的集合,二维数组;(这里的大区域指的是:以任意一条线为起点找到和它
相交
的其他线
段
,再找到和这些线
段
相交
的其他线
段
,直到找不到
相交
线
段
,那么这些线
段
的集合就是一个大区域Mi。然后找完所有的大区域) ⑥:分别对每一个大区域进行
封闭
区域的提取。
点与
多边形
的位置关系
判断
一个点与
多边形
的位置关系,这里主要
判断
内部与外部
图形处理/算法
19,471
社区成员
50,678
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章