关于多边形点的多边形,我有一些问题... 我需要做的是给定点,创建多边形,然后测试多边形内是否有1个具体点。
所以我知道在Java中有一个叫做Polygon的类,就像这样使用:(三角形)
int valoresX[] = { 100, 150, 200 };
int valoresY[] = { 100, 200, 100 };
int n = valoresX.length;
Polygon city= new Polygon(valoresX,valoresY,n);
但我的“多边形”必须是“双”类型,而不是“int”(简单示例)
Double valoresX[] = { 1000.10, 150.10, 200.10 };
Double valoresY[] = { 100.10, 200.10, 100.10 };
在我的项目中,我真的不需要在小程序或类似程序上绘制它,我只需要计算点是否在内部。
所以我的问题是:
有没有办法用双坐标做多边形,如果点(双)在多边形内是否允许进行计算?
非常感谢!!!
Shudy
答案 0 :(得分:23)
您可以使用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();
另见这个问题: