我对双点型多边形有疑问...
我要做的是,给定点,创建多边形,然后测试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 ”类型,而不是“整数”(简单的例子)
Double valoresX[] = { 1000.10, 150.10, 200.10 };
Double valoresY[] = { 100.10, 200.10, 100.10 };

在我的项目中,我真的不需要将其画在applet或类似的小程序上,我只需要计算该点是否在内部。

所以我的问题是:

有没有办法用double coordenates做多边形,从而允许计算point(double)是否在多边形内部?

谢谢大家!!!

舒迪

最佳答案

您可以使用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

10-04 23:43