GeoTools-地理数据操作Java库

  • User Guide — GeoTools

GeoTools 是一个开源Java库,为地理空间数据的操作提供了方法,其数据结构基于开放地理空间联盟(OGC)规范。

GeoTools-地理数据操作Java库_第1张图片

  • OpenGIS:地理空间支持
  • JTS(Java Topology Suite):空间几何支持

相关解释

数据格式

  1. WKT(Well-known Text):OGC制定的文本标记语言,用于表示适量几何对象、空间参考系统以及空间参照系统之间的转换。如"POINT(2 2)"表示位于坐标(2,2)的点
  2. WKB(Well-known binary):WKT的二进制表示形式,便于传输和数据库存储
  3. GeoJSON:JSON格式的Feature表达格式。

数据模型

  1. Coordinate:坐标,使用长度为N的数字序列表示N维空间的某个位置,其表达的是空间中的哪个位置
  2. Geometry:空间几何,一般有点Point、线LineString、面Polygon、点集MultiPoint、线集MultiLineString、面集MultiPolygon,其表达的是在空间中哪里绘制什么样的图形
  3. FeatureType:要素类型,是对空间要素的定义,其表达的是这一类的要素包含哪些空间信息和非空间信息。
  4. Feature:空间要素,包含空间信息与非空间信息,其表达的是在地图上绘制的东西以及含义
  5. FeatureCollection:要素集合,包含一系列的空间要素,同时还包括CRS等信息,其表达的是一组具体的空间要素。

GeoTools-地理数据操作Java库_第2张图片

使用

Maven引入


<repositories>
    <repository>
        <id>osgeoid>
        <name>OSGeo Release Repositoryname>
        <url>https://repo.osgeo.org/repository/release/url>
        <snapshots><enabled>falseenabled>snapshots>
        <releases><enabled>trueenabled>releases>
    repository>
repositories>


<dependencies>
    
    <dependency>
        <groupId>org.geotoolsgroupId>
        <artifactId>gt-geojsonartifactId>
        <version>${geotools.version}version>
    dependency>
dependencies>

gt-geojson已包含gt-main等包

自定义简单工具类

简单数据类型或格式间的转换,如点、线、GeoJson、WKT等

@Slf4j
public class GeoUtils {
   

    /**
     * 地理数据类型
     * 点、线、面、几何集合
     */
    private static final String[] GEO_TYPE = new String[]{
   "Geometry", "Point", "LineString", "Polygon"

你可能感兴趣的:(java)