GeoTools和JTS还有GeoAPI之间的关系

分类:计算机 | GIS | 综合 208
更新:2021-06-11 10:19:55
编辑

转载地址

https://blog.csdn.net/snailjava/article/details/4270698?spm=1001.2101.3001.6650.5&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-5.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-5.pc_relevant_default&utm_relevant_index=10

GeoTools和JTS还有GeoAPI之间的关系

回答这个问题的前提首先是知道它们分别是什么?

JTS

JTS是加拿大的Vivid Solutions做的一套开放源码的Java API。它提供了一套空间数据操作的核心算法,为在兼容OGC标准的空间对象模型中进行基础的几何操作提供2D空间谓词API。

GeoAPI

GeoAPI为OpenGIS规范提供一组Java接口。

GeoTools

GeoTools是一个开源的Java GIS工具包,可利用它来开发符合标准的地理信息系统。GeoTools提供了OGC(Open Geospatial Consortium)规范的一个实现来作为他们的开发。

GeoTools的目标是致力于开发一个符合规范的GIS工具包,既然是工具包,那么就要有很多工具用来对付构建一个完整的地理信息系统时会碰到的问题,常见的问题比如:投影的转换,基准面的设定,空间数据对象的渲染和样式,各种数据源的支持,各种GIS文件格式支持,空间数据过滤与搜索。。。等等的问题。在开发这些工具的时候,恰好在处理空间数据图形关系的时候,有一个非常好的解决方案,那就是JTS,JTS解决了对象与对象之间拓扑关系的判定和计算,并提供很多有用的算法来解决对象的面积、长度。。。等等的问题。这样而言,JTS就相当于GeoTools中的一个子模块。但因为这个模块本身不是GeoTools工程的,所以在javadoc中找不到JTS的API,需要到JTS官网上面另外下载。至于GeoAPI则是GeoTools符合标准的模板。它制定了地理信息系统中所有的数据类型应该是什么,投影转换的方式有哪几种诸如此类的规范。这样兼容GeoAPI接口的GeoTools才是一个符合规范的地理信息系统工具包。