GeoTools-地理数据操作Java库

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

GeoTools结构

  • 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等信息,其表达的是一组具体的空间要素。

GeoUtil的主要流程

使用

Maven引入

<!-- 1. 引入仓库 -->
<repositories>
    <repository>
        <id>osgeo</id>
        <name>OSGeo Release Repository</name>
        <url>https://repo.osgeo.org/repository/release/</url>
        <snapshots><enabled>false</enabled></snapshots>
        <releases><enabled>true</enabled></releases>
    </repository>
</repositories>

<!-- 2. 导入依赖 -->
<dependencies>
    <!-- https://mvnrepository.com/artifact/org.geotools/gt-geojson -->
    <dependency>
        <groupId>org.geotools</groupId>
        <artifactId>gt-geojson</artifactId>
        <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"
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值