【计算几何】点在多边形内部
2016-05-17 09:06
176 查看
@http://blog.csdn.net/z104207/article/details/44997275 转自
问题描述:已知点P(x,y)和多边形Poly,判断点P(x,y)是否在多边形内部。
基本方法:射线法
以点P为端点,向左方作射线L,由于多边形是有界的,所以射线L的左端一定在多边形外部,考虑沿着L从无究远处开始自左向右移动。
遇到和多边形的第一个交点的时候,进入到了多边形的内部,遇到第二个交点的时候,离开了多边形...
因而当L和多边形的交点数目C是奇数的时候,P在多边形内,是偶数,则P在多边形外。
特殊情况分析,如图下图(a),(b),(c),(d)所示。
图(a)中,L和多边形的顶点相交,交点只能计算一个。
图(b)中,L和多边形顶点的交点不应被计算。
图(c)和(d)中,L和多边形的一条边重合,这条边应该被忽略不计。
问题描述:已知点P(x,y)和多边形Poly,判断点P(x,y)是否在多边形内部。
基本方法:射线法
以点P为端点,向左方作射线L,由于多边形是有界的,所以射线L的左端一定在多边形外部,考虑沿着L从无究远处开始自左向右移动。
遇到和多边形的第一个交点的时候,进入到了多边形的内部,遇到第二个交点的时候,离开了多边形...
因而当L和多边形的交点数目C是奇数的时候,P在多边形内,是偶数,则P在多边形外。
特殊情况分析,如图下图(a),(b),(c),(d)所示。
图(a)中,L和多边形的顶点相交,交点只能计算一个。
图(b)中,L和多边形顶点的交点不应被计算。
图(c)和(d)中,L和多边形的一条边重合,这条边应该被忽略不计。
![](http://images.cnitblog.com/blog/414008/201308/01174343-af975bc5961a4b04b726d96e93b5e050.png)
相关文章推荐
- 获取音乐当前播放时间和总时长
- 数组,对象,字典
- [疯狂Java]AIO:
- 解决linux下javac -version和java -version版本显示不一致
- Completely disable mousewheel on a WinForm
- 国家授时中心NTP服务器IP地址
- 微软.NET 正式劈腿成功,横跨所有平台
- AddressBook获取通讯录
- android studio for android learning (二)
- [疯狂Java]NIO多路复用网络通信:Selector、SelectionKey、SelectableChannel(SocketChannel、ServerSocketChannel)
- Eclipse上安装GIT插件
- ubuntu下设置root用户密码
- 为什么你的MySQL跑得很慢?
- 【bzoj3319】【黑白树】【并查集】
- sourceTree安装与使用
- CI框架中redis缓存相关操作文件示例代码
- CoreText实现图文混排
- AddressBookUI获取通讯录
- 扫描二维码
- 团体程序设计天梯赛-练习集 L2-006 树的遍历 根据后序中序建树+BFS