引言

地图的作用

数千年来,地图在人类活动中发挥了重要作用。世界由彼此具有地理(即空间)关系的事物组成,虽然地图可以是世界的精确复制品,但通常情况下并不是。地图是包含世界事物表示的模型,但这些模型的表达方式不需要与它们所代表的事物相似,甚至也不必具备相同的空间关系。现实世界是地理学家和地理学的领域,在这个平面上表示现实世界的东西的过程就是制图。地理学家生活在一个大的,近似扁圆形的椭球体的表面上,具有地形,是在三维空间中;地图是制图师生活与工作的地方,它的范围很小,而且是平面的。

地图和制图的黄金时代对应于探索时代,这个时代地图是获取巨额财富的关键。推动这个黄金时代的工具是指南针,六分仪和精确的钟表。数字地图,地理信息系统(GIS)和基于位置的服务代表了地图和制图的下一个黄金时代。推动这个时代的工具是计算机,互联网和全球定位系统(GPS)。

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

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

从历史上看,准确的地图很难制作,并且地图制作完成后是静态的,难以维护和更新。在没有其他竞争技术的情况下,这些地图制图的本身特征限制了纸质地图的作用。在十年以前,交通路线地图提供了纸质地图限制的一个很好的例子。很多人都把它们放在汽车里,尽管它们总是过时了。为了在很小的页面中呈现更多的信息,字体通常都很小,这使得它们很难被阅读。如果不想看到街道,而是想看到镇上餐馆的位置,则通常需要购买不同类型的地图。换句话说,地图往往是针对某种主题的单一用途的文件,充当过去地点的档案。

数字地图的应用

数字地图确保方便有效地呈现图形图像。因此,它们也可以动态、实时地显示当前信息。但是,硬拷贝制图工作一直(并且仍然)是基础信息的收集和维护的主页方面。事实上,数字地图的动态特性加剧了维护工作,因为性能和数据要求非常高。

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

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

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

当无线技术无处不在,带宽更加便宜时,杀手级应用会是什么?在互联网存在之前,没有人会预测像谷歌这样的公司的受欢迎程度和盈利能力 - 互联网上数千万台计算机的内容目录,任何人都可以免费使用。这个特殊的应用是两个大学生的发明,他们有一个好主意和获得廉价技术的机会。虽然我不会试图预测杀手级移动应用程序将会是什么,但它将是移动应用程序的事实表明,地图功能将是必要的辅助手段。

开源GIS的作用

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

但是,如果你进入市场是试探性的,有一套动态的系统要求(或根本没有);或者如果您缺少经费,或只是尝试使用该技术,应该调查了解一下 MapServer , 这是本教程的主题。MapServer是一个地图渲染引擎,可以通过可从多种编程语言访问的API在Web环境中作为CGI脚本或作为独立应用程序运行。引用MapServer主页中的说明,“MapServer是一个OpenSource开发环境,用于构建空间上启用的Internet Web应用程序。” 在明尼苏达大学、NASA和明尼苏达州自然资源部的帮助下,MapServer现在由来自世界各地的近20名开发人员。

您可能会考虑使用MapServer的原因有很多:也许您的老板拒绝以商业产品的价格将地图放入他的宠物项目中,并告诉您在互联网上找到一些东西; 也许你有一个包含一些空间信息的数据集,你想在网上以图形方式分享它; 也许你想扩展你自己的宠物项目,你觉得提供在线地图会产生很大的影响; 或者你可能只是喜欢地图,而想想从数字源制作美丽的地图让你感到高兴。但在查看MapServer以查看它是否是您需要的之前,您必须了解它不是什么。MapServer是一种用于将地理数据呈现给Web的工具 - 它不是一个功能齐全的GIS(尽管它可以用于构建一个)。

MapServer的应用

这份教程会介绍一些开源GIS工具,但在服务器端用的是MapServer。

以下是可以使用MapServer API开发的三种应用程序的简要说明。(它们也可以通过CGI完成,但是这个过程很慢,很麻烦,很丑陋。) 通过添加MySQL数据库和像PHP这样的编程语言,这些应用程序可以提供相当大的功能而无需大量的开发工作,因为这很困难 ,空间感知部分由MapServer完成。这些都不是特别具有创新性,但它们确实证明了可以完成的任务。

房地产销售工具

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

实时跟踪和跟踪

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

实时交通咨询和拥堵避免

通过电子方式或通过手动输入GPS坐标,街道地址或交叉路口收集交通水平 - MapServer可以实时显示交通水平,通过网络提供,并建议替代路线。