GeoTools 地理信息系统开发
上QQ阅读APP看书,第一时间看更新

GeoTools始于1996年,最初是英国利兹大学的一个研究生课程项目,主要用于将空间数据可视化。不久之后,利兹大学将空间数据可视化独立为一门课程,并开始研究如何将地理信息系统应用于公众领域,之后使用1.0版本的GeoTools制作了一个地图网页,当地居民可在这个地图网页上讨论本地城乡规划方案。随着实际需求的不断增多,GeoTools的功能逐渐完善,并成为一个独立的地理信息工具类库。需要说明的是,早期的GeoTools开发过程中并没有参考任何OGC规范,而是直接使用了当时流行的Java Applet接口。1.0版本的GeoTools主要用于构建能够交互式展示空间数据的客户端。

1.0版本的GeoTools的开发团队中仅有两位是来自利兹大学的开发者,随着功能的不断增加,代码变得凌乱和难以维护。因此在2002年,开发者们对GeoTools进行了全新的设计与重构,此时GeoTools的开发团队已变成一个去中心化的全球团队,并在这次重构中明确了一套开源的软件设计、决策与实现体系,成立了GeoTools项目管理委员会。2.0版本的GeoTools新增了坐标系转换、栅格数据读取与渲染等功能,并开始明确将自身作为一个Java标准的空间数据类库的开发方向。当时,有很多使用Java程序设计语言的地理信息系统开发者,为了统一这些开发者的成果,GeoTools开始参考OGC规范,并实现了一套被称为GeoAPI的开放地理空间接口。之后的多年里,GeoTools的版本从2.1发展到2.7,GeoAPI已经开发完成,整体结构也与我们今天见到的代码库接近,并在2012年发布了里程碑版本,即GeoTools 8.0。现在版本的GeoTools的软件架构与8.0版本的软件架构相比没有太多改动,即在多年迭代中保持了稳定。