首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查ArrayList的点在多边形内还是外部

检查ArrayList的点在多边形内还是外部
EN

Stack Overflow用户
提问于 2014-09-13 23:56:35
回答 1查看 184关注 0票数 1

我希望能够检查用户输入的点是在有界点集内还是外部,我知道java中Polygon类的.contains函数,但我想知道如何对< ArrayList >进行这样的操作。

下面是我所尝试的一个例子:

多边形的点是:(-10,0) (-1,-10) (0,10) (1,-10) (10,0)

测试点:5 0

内部

测试点:8 8

外部

任何正确方向的提示都将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2014-09-14 00:07:34

这似乎有点家常便饭,所以我不打算详细讨论,但假设列出的多边形点总是有序的,你可以把多边形中所有点之间的线连接起来,以关闭它的边界,然后从你的样本点向外投射光线。如果光线在离开多边形所在区域之前穿过奇数条线,那就意味着样本点在多边形内部。如果它通过偶数条线,它就在多边形之外。(如果它从未穿过一条线,它也在多边形之外,假设光线足够长,可以从样本点所在的位置到达多边形的边缘。)祝你好运。

更多信息

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25828848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档