具有双坐标的多边形

我有一些关于具有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); 

但我的“多边形”必须是“双”类型,而不是“int”(简单示例)

 Double valoresX[] = { 1000.10, 150.10, 200.10 }; Double valoresY[] = { 100.10, 200.10, 100.10 }; 

在我的项目中,我真的不需要在applet或类似物上绘制它,我只需要计算点是否在内部。

所以我的问题是:

有没有办法用双coordenates做多边形,如果点(double)在多边形内部,是否可以进行calcultate?

谢谢大家!

Shudy

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

另见这个问题:

在Java 2D中实现Polygon2D