Tag: jts

来自vividsolutions JTS的几何图形在创建JSON时失败

好朋友。 我在我的应用程序中使用了vividsolutions的库JTS(1.13)for Points and Polygons,但是当我尝试将几何对象转换为JSON时,我的应用程序失败了。 有我的来源: @RequestMapping(value = “/test_point”, method = RequestMethod.GET, produces = “application/json;charset=UTF-8”) @ResponseBody public Map testPoint() { Point point = geometryFactory.createPoint(new Coordinate(37.73, 60.45)); return RequestMapBuilder.getInstance() .addAttribute(“point”, point) .build(); } 还有我收到的JSON: {“point”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”:{“envelope”: AND SO ON… 我的应用程序也抛出此exception: java.lang.IllegalStateException: Cannot call sendError() after the response has been committed at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:478) at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:129) at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:129) at […]

计算一个对象是否在一组坐标内?

我有一组X和Y点来构建一个形状,我需要知道一个对象是否在其中,或者它的计算是什么? X和Y坐标示例: 522.56055 2389.885 544.96 2386.3406 554.18616 2369.2385 535.21814 2351.396 497.5552 2355.8396 我对数学并不是很好:(所以我希望得到一些支持,以了解它是如何完成的。 我到目前为止的例子,但似乎不太可靠: private boolean isInsideShape(Zone verifyZone, Position object) { int corners = verifyZone.getCorners(); float[] xCoords = verifyZone.getxCoordinates(); float[] yCoords = verifyZone.getyCoordinates(); float x = object.getX(); float y = object.getY(); float z = object.getZ(); int i, j = corners – 1; boolean inside = […]

有没有办法在JTS中将自相交多边形转换为多面?

取无效多边形POLYGON((0 100, 100 100, 0 0, 100 0, 0 100)) – 一个带有未声明交点的蛋计时器形状 许多指令说JTS可以使用buffer方法创建一个有效版本: Geometry input = new WKTReader().read(“POLYGON((0 100, 100 100, 0 0, 100 0, 0 100))”); Geometry output = geom.buffer(0); return output; 但是,这会产生输出POLYGON ((0 100, 100 100, 50 50, 0 100)) ,其中部分多边形丢失: 有没有办法让JTSvalidation多边形,使其产生输出MULTIPOLYGON(((0 100, 100 100, 50 50, 0 100)), ((0 0, 100 0, […]