如何使GML/JTS几何体在Java中有效?

如何使GML/JTS几何体在Java中有效?,java,geospatial,spatial,jts,Java,Geospatial,Spatial,Jts,我使用JTS库处理GML文件中产生的一些几何体对象。但是,我获得的一些几何体对象是无效的。我记得.NET类SqlGeometry有一个用于此目的的MakeValid方法。类似地,我知道PostGIS和许多关系数据库(如PostgreSQL和SQL Server)具有用于验证GML或几何结构的内置功能。遗憾的是,我在JTS或Java世界中找不到任何等效的功能。我遇到的最接近的东西是Geometry#buffer()方法(来自JTS),它以0作为参数,但它似乎并不能解决我的问题。 有人知道某个Jav

我使用JTS库处理GML文件中产生的一些几何体对象。但是,我获得的一些几何体对象是无效的。我记得.NET类SqlGeometry有一个用于此目的的MakeValid方法。类似地,我知道PostGIS和许多关系数据库(如PostgreSQL和SQL Server)具有用于验证GML或几何结构的内置功能。遗憾的是,我在JTS或Java世界中找不到任何等效的功能。我遇到的最接近的东西是
Geometry#buffer()
方法(来自JTS),它以
0
作为参数,但它似乎并不能解决我的问题。
有人知道某个Java库中的MakeValid功能吗?

不幸的是,JTS还没有一个MakeValid等价物。希望这能在某个时候有所帮助。目前,
buffer(0)
是最好的选择,尽管它可能会遇到“figure-8”多边形的问题。

另请参阅此JTS,它有一个指向外部实现的链接,可能会有所帮助。感谢您的回答。但是,您知道JTS的替代方案吗?它可以验证GML或几何体对象?