5

这里有任何 Geotools 开发人员吗?我们发现了 GeometryJSON 的以下奇怪行为:

    Geometry geom = getGeometry();
    System.out.println(geom);

    GeometryJSON g = new GeometryJSON();
    StringWriter sw = new StringWriter();
    try {
        g.write(geom, sw);
    } catch (IOException e) {
        e.printStackTrace();
    }
    System.out.println(sw.toString());

输出:

POLYGON((1.1212121214354352354235235423521 2.1212121121,4.454545454545445 3.454544545454454,10.515545445454 20.1545454654664, 1.1212121214354352354235235423521 2.1212121121))

{"type":"Polygon","coordinates":[[[1.1212,2.1212],[4.4545,3.4545],[10.5155,20.1545],[1.1212,2.1212]]]}

多边形坐标是四舍五入的。这是故意的吗?

4

1 回答 1

7

GeometryJSON有一个构造函数,您可以将小数位数传递给该构造函数。

public GeometryJSON(int decimals)

您正在使用的构造函数将其实例化为 4 位小数。将您的代码更改为:

GeometryJSON g = new GeometryJSON(15);
于 2013-11-09T10:32:31.143 回答