具有双坐标的多边形
Posted
技术标签:
【中文标题】具有双坐标的多边形【英文标题】:Polygons with Double Coordinates 【发布时间】:2013-03-15 06:36:57 【问题描述】:我对带有 Double 类型点的多边形有一些疑问... 我要做的是,给定点,创建多边形,然后测试 1 个具体点是否在多边形内。
所以我知道在 Java 中有一个名为 Polygon 的类,它的用法是这样的:(三角形)
int valoresX[] = 100, 150, 200 ;
int valoresY[] = 100, 200, 100 ;
int n = valoresX.length;
Polygon city= new Polygon(valoresX,valoresY,n);
但我的“多边形”必须是“Double”类型,而不是“int”(简单示例)
Double valoresX[] = 1000.10, 150.10, 200.10 ;
Double valoresY[] = 100.10, 200.10, 100.10 ;
在我的项目中,我真的不需要在小程序或类似设备上绘制它,我只需要计算点是否在内部。
所以我的问题是:
有没有办法用双坐标做多边形,允许计算点(双)是否在多边形内?
谢谢大家!!!
舒迪
【问题讨论】:
【参考方案1】:您可以使用Path2D.Double:
Path2D path = new Path2D.Double();
path.moveTo(valoresX[0], valoresY[0]);
for(int i = 1; i < valoresX.length; ++i)
path.lineTo(valoresX[i], valoresY[i]);
path.closePath();
另请参阅此问题:
Implementing Polygon2D in Java 2D
【讨论】:
首先,谢谢大家,快速回答!我会尝试一下,看看它是否适用于我的项目;)谢谢!舒迪以上是关于具有双坐标的多边形的主要内容,如果未能解决你的问题,请参考以下文章
Python Tkinter:如何让画布每帧更新多边形坐标? [解决了]