目录
一.GeoTools介绍
GeoTools是一套操作和显示地图的开源Java 代码库,提供了一系列符合规范的操作地理空间数据的方法,GeoTools被许多项目使用,在地理信息领域有着广泛的应用。
二.背景
读取shp是进行GIS后端开发的常规操作,如果源shp数据中几何图形存在ZM值,如果不进行处理的话,读取后的几何图形会对几何操作造成影响,甚至出错。因为我们需要对读取后的几何图形对象去除ZM值。
三.实现代码
这里编写了一个重设几何的resetGeometry()方法,每次使用只需要调用resetGeometry()方法传入几何对象,即可实现去除几何图形ZM值。
/** * 重设几何,用于读取shp时,防止存在ZM值 * * @param geom * @return */ public static Geometry resetGeometry(Geometry geom) { try { WKTReader reader = new WKTReader(); Geometry geometry = reader.read(geom.toString()); geometry.setSRID(geom.getSRID()); return geometry; } catch (Exception e) { e.printStackTrace(); } return null; }