我试图通过从3个或更多坐标绘制一个多边形来设置我的逻辑geoFence来提取一个地理点区域,但事实是我认为LinearRing需要所有点来关闭对象,任何人都可以给我一个深刻的认识我究竟做错了什么
Coordinate[] coordinates = vertices;
GeometryFactory geometryFactory = new GeometryFactory(new PrecisionModel(PrecisionModel.FIXED), 4326);
LinearRing linearRing = geometryFactory.createLinearRing(coordinates);
Polygon polygon = geometryFactory.createPolygon(linearRing, null);
setGeometry(polygon);
最佳答案
没错,LinearRing(和多边形)必须为closed ring-它至少需要4个点,并且第一个点和最后一个点必须相同。所以我会做类似的事情:
Coordinate[] coordinates = new Coordinate[vertices.length+1];
for(int i=0;i<vertices.length;i++){
coordinate[i] = vertices[i];
}
coordinate[vertices.length] = coordinate[0];
.....
关于java - 使用geootools指向多边形,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12203439/