1.1. 地图和WebGIS

1.1.1. 地图的作用

几千年来,地图在人类活动中一直扮演着重要的角色。世界是由彼此具有地理(即空间)关系的事物组成的,虽然地图可以是世界的精确复制品,但它通常不是这样。地图是包含对世界中事物的表示的模型,然而这些模型不需要以与它们所表示事物相似的方式来表示,甚至不需要具有相同的空间关系。现实世界是地理学家和地理学家的领地,在这个平面上表现现实世界事物的过程就是制图。地理学家生活在一个巨大的、近似扁平的椭球体的表面上,具有三维空间中的地形;地图是制图师生活和工作的地方,范围小且平坦。

_images/fig-old-map.jpg

世界地图

地图和制图学的黄金时代与探索时代相对应,当时地图是通往巨大财富的关键。推动这个黄金时代的工具是指南针、六分仪和精密时钟。数字地图、地理信息系统(GIS)和基于位置的服务代表着测绘和制图学的下一个黄金时代。推动这一时代的工具是计算机、互联网和全球定位系统(GPS)。

在现代世界,清晰而有力的信息对于商业、科学和政治活动至关重要。各种自然和人类事件发生在我们赖以生存的地球上,每时每刻都会产生数万亿的海量数据,而且超过``80%`` 的数据中有一些与空间位置有关。无论要传达的信息是人口统计数据、天气预报还是环境监测数据,都有地理分布。正如图表以一种易于理解的方式呈现数字信息一样,地图可以比任何表格格式更清楚地显示信息与位置的关系,使用户能够根据信息的空间方向查看信息。虽然这种分布信息隐含在数字表格中,但如果不在地图上显示,就很难看到它。

地理信息科学通过研究这些与地理空间直接或间接相关的数据的收集、存储、处理、分析、表达和服务的方法,将数据从原来的二维字符状态转化为易于理解的空间可视化语言或知识,从而服务于环境、土地、规划、水利、能源、交通、居民生活等各方面。

从历史上看,准确的地图一直很难绘制,不过一旦绘制出来,它们就是静态的,很难维护和更新。在缺乏其他相互竞争的技术的情况下,这些制图的本质限制了纸质地图的用途。十年前,交通路线图为纸质地图的局限性提供了一个很好的例子。许多人把它们放在车里,即使它们总是过时。为了在较小的页面中显示更多信息,字体通常较小,这使得它们很难阅读。如果不想看到街道,而是想看看城里餐馆的位置,那么通常需要购买不同类型的地图。换言之,地图通常是特定主题的单一用途文件,充当过去位置的档案。

1.1.2. 数字地图的应用

数字地图确保了图形图像的便捷和高效呈现。因此,它们还可以动态和实时地显示当前信息。然而,硬拷贝绘图工作一直是(现在仍然是)收集和维护基本信息的主页方面的工作。事实上,由于性能和数据要求非常高,数字地图的动态特性加剧了维护工作。

数字地图的发展是由工业(如采矿)、自然资源管理人员和研究人员对地理空间信息管理的需求推动的。然而,随着互联网的兴起和硬件的商品化,数字地图已经变得无处不在。数字地图的几个应用程序现在很常见,包括在早上的天气预报中显示的天气地图,从启用GPS的汽车导航系统获得的驾驶指令,以及按需提供街道地图的互联网网站。

然而,这些应用大多不能满足移动用户的需求。例如,启用GPS的汽车导航系统可以确定你的当前位置,并告诉你如何到达其他地方,但由于它只能访问车载数据(充其量),它无法提供需要实时信息的服务。这些服务将包括避免拥堵的最佳路线和基于位置的实时服务(例如,五英里内最低的燃油价格)。

然而,正在开发的应用程序是网络感知和智能的(即,它们是无线的和支持GPS的)。一些示例包括用于GPS垃圾收集的管理工具,向紧急车辆提供驾驶指令的系统,以及允许托运人定位运输中货物的系统。WiFi 2.5和3G蜂窝等移动技术将带来新的可能性。

当无线技术无处不在,带宽变得更便宜时,什么将是杀手级应用?在互联网出现之前,没有人会预测到像谷歌这样的公司会如此受欢迎和盈利。它是互联网上数千万台电脑上的内容目录,任何人都可以免费使用。这个特别的应用程序是两个大学生发明的,他们有很好的想法,并且可以获得廉价的技术。虽然不会试图预测什么将是杀手级的移动应用程序,移动应用程序事实表明,地图功能将是一个必要的帮助。

1.1.3. 开源地理信息系统的作用

但问题是,如果一些聪明的大学生或企业家想要整合杀手级应用程序并致富,那么购买打入该行业所需的数据或服务可能会花费数千美元。商业专有技术虽然功能强大,但非常昂贵。无论是直接购买专有软件、订购空间信息,还是外包完整的应用程序,使用商业软件制作高质量的地图应用程序都是昂贵的。如果有一套稳定的系统要求,银行的一些资金,以及适合的市场机会,那么自营期权可能是一个很好的选择。

然而,如果是试探性地进入市场,带着一组动态的系统需求(或者根本没有);或者如果缺乏资金,又或者只是试图使用这项技术,则应该考虑 MapServer ,这是本教程的主题。MapServer是一个地图渲染引擎,可以作为CGI脚本,或通过从多种编程语言访问的API作为独立应用程序在Web环境中运行。引用MapServer主页的描述,“MapServer是一个用于构建空间支持的Internet Web应用程序的开放源码开发环境。”在明尼苏达大学、NASA和明尼苏达自然资源部的帮助下,MapServer由来自世界各地的近20名开发人员托管。

考虑使用MapServer的原因可能有很多:也许你的老板拒绝以商业产品的价格将地图放入他的宠物项目中,并告知你在互联网上寻找一些东西;也许你有一个包含一些空间信息的数据集,想在互联网上以图形的形式分享;也许你想扩大宠物项目,认为提供在线地图会有很大的影响;或者你只是喜欢地图,并考虑用数字资源制作美丽的地图,但在查看MapServer以确定它是否是您所需要的之前,必须了解它不是什么。MapServer是一个将地理数据呈现到Web上的工具它不是一个功能齐全的地理信息系统(尽管它可以用来建立一个地理信息系统)。

1.1.4. MapServer的应用

本教程介绍一些开源的地理信息系统工具,但在服务器端使用MapServer。

以下是可以使用MapServer API开发的三种类型应用程序的简要说明。(它们也可以通过CGI完成,但过程缓慢、繁琐且令人生厌。)通过添加MySQL数据库和像PHP这样的编程语言,这些应用程序可以提供相当多的功能,而不需要大量的开发工作,因为这很困难,空间感知部分由MapServer完成。所有这些都不是特别具有创新性,但它们确实展示了可以做的事情。

房地产销售工具

通过将每个销售物业的纬度/经度坐标添加到MLS(多列表服务)或类似服务,可以创建一个空间感知的目录,该目录提供用户期望从图形界面中获得的功能(例如,当鼠标悬停在热点上时,单击并拖动空间以弹出查询和信息框)。

实时跟踪和跟踪

通过实时收集GPS位置并通过2.5和3G蜂窝技术将它们转发回主机,MapServer可以帮助构建面向客户的应用程序,实时显示负载的实际位置。MySQL数据库非常适合存储这种类型的数据。

实时交通咨询和拥堵避免

以电子方式或通过手动输入GPS坐标、街道地址或十字路口来收集交通级别-MapServer可实时显示交通级别,通过网络提供服务,并建议替代路线。