随着GPS定位技术的出现,以及GIS和通信技术的成熟,交通运输高度工作进入了计算机辅助支持的实时管理新阶段。GIS地理信息系统不仅可以管理数据、文字信息和图形,而且是以空间时间为研究对象,以计算机为工具,交不同来源、不同类型的数据和相关的忏悔信息进行有机结合、分析查询,实现计算机信息处理,是综合处理和分析空间数据的一种有效的技术系统。西方主要基于MapXtreme for Java地理软件平台的WebGPS系统的设计与实现方法[1,2,4]。
1. 系统模型选择 目前,GPS信息在网上发布主要有两种方式:C/S方式和B/S方式。
(1)与C/S模式相比,B/S模式主要具有以下优点:①它简化了客户端,只需要安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便。②B/S特别适用于网上信息发布。B/S软件往往在客房端采用微软独家支持的ActiveX技术来解决浏览器和HTML页面的交互性差问题。③浏览器/Web服务体系的跨系统、跨平台的能力,使它可以在一个公共的相互配合的网络中使用各种不同的系统,如PC,Mac和基于UNIX的工作站,使得它们可以共存。
(2)与B/S模式相比,交互性强是C/S固有的一个优点。B/S虽然由JavaScript,VBScript提供了一定的交互能力,但与C/S的一整套客户应用相比是太有限了。其次,采用C/S模式将降低网络通信量。B/S采用了逻辑上的三层结构,而C/S只有两层结构,网络通信量只包括Client与Server之间的通信量,所以,C/S处理大量信息的能力是B/S所无法比拟的。
(3)综合结论:整修系统采用以Browser/Server方式为主,Client/Server方式为畏的混合体系结构。其中,B/S方式用于查询和浏览,因为B/S方式具有广泛的信息发布能力。它对前端的用户数目没有限制,客户端只需要普通的浏览器即可,不需要其他任何特殊软件;另外对网络也没有特殊要求。而C/S方式主要用于数据维护,同时也具有与B/S方式相同的查询功能,因为C/S方式具有良好的交互性,这点是B/S方式所不具备的。
2. 地图服务平台的选择 构建一个WebGPS系统,必须要有一个提供地图应用服务的平台,选择MapInfo公司的MapXtreme for Java作为地图服务器,主要基于以下原因:
(1)MapXtremeJava采用的是三层结构,包括客户机、客户机/服务器以及服务器。在MapXtreme的工作方式下,所有的地图数据和应用程序都放在服务器端,客户端只是提出请求,所有的响应都在服务端完成,只需在服务器端进行系统维护即可,客户端无需任何维护,大大降低了系统的工作量。由于是采用的B/S方式,不仅可满足现在各点的需求,以后用户数可以任意增加。对数据的修改更新可由服务器端集中处理,则可由各分站修改后通过C/S结构传输上报。
(2)MapXtremeJava与其它地理服务平台(如MapX)相比,它对客户端的要求最少,客户端上只需有支持Java的浏览器就可以完成地理信息的浏览和查询。MapXtreme不仅可以胜任B/S广域网架构、也同样可以支持C/S架构,而且经过比较,在这两种结构下,系统的运行速度相差并没有想象中那么大。
(3)MapXtremeJava是一个100%的Java产品,具有很好的跨平台特性,可以将应用和数据发布在不同平台不同计算机上(如UNIX,Linux,Windows平台)。此外,MapXtremeJava可扩展性好,它基于组件的设计、可靠性和多线程等,为不断扩展应用程序提供了保证。
(4)使用MapXtremeJava,开发人员能集中地控制和维护地图和数据库数据,并集中实现应用程序功能,避免了以往系统的维护、同步困难的问题,尤其适合信息量大、用户多的单位的实际情况。
(5)使用MapXtremeJava平台可以做到将网络发布与数据库相隔离,同时运用Web发布服务器和数据库服务器。这样,既啬了网络安全性,也便于对数据库进行维护。
3. MapXtremeJava的开发方法[3] (1)初始化地图对象
执行:myMap=new MapJ()。
(2)加载地图数据
MapXtreme没有默认的地图数据,所以必须人工加载地图数据,可以打开GeoSet(*.gst)或MapDefinition(*.mdf)文件加载地图数据。
①加载GeoSet:myMap.LoadGeoset(geosetName,dataDir,servletURL)。
其中,geosetName:geoset完整文件名(包括路径);dataDir:geoset中引用的tab地图文件的位置;servletURL:MapXtremeServlet的路径,如果MapJ使用LocalDataProviderRef,servletURL则可为NULL。
②加载MapDefinition
首先加载数据库中的地图定义记录,并创建MapDefContainer,如MapDefContainer mdc=new JDBCMapDefContainer(driver,url,user,password)。其中,driver,url,user,password都是数据库连接的参数。
(3)设置地图尺寸
输出地图图像前需要设置地图尺寸,设置方法为:MapJ.setDeviceBounds(),如myMap.SetDeviceBounds(new DoubleRect(0,0,800,600))。
①指定MapXtremeServlet的地址
String mapxtremeServletUrl=http://localhost:8080/mapxtreme40/servlet/mapxtreme;
②创建ImageRequestComposer
imageRC=imageRequestComposer.create(myMap,256,Color.green,"image/gif");
表示图片是256色背景为绿色的GIF图。
③创建ImageRender
MapXtremeImageRender renderer=new MapXtremeImageRenderer(mpaxtremeServletURL);
④生成图片
Renderer.render(imageRc);
Renderer.toImage("comp.gif");
(5)地图显示
①地图视野设置(Zoom)
Zoom值是地图的横向跨度,单位由地图的距离单位决定。设置Zoom可放大、缩小地图。当地图被加载时,Zoom值就被设定了。用myMap.setZoom(100),可以将地图的横向跨度设置到100千米(若当前的单位是千米)。
②地图中心设置
把地图中心定位在找到的目标上或将中心定位到鼠标所点击的图像上某一点。下面程序实现将地图中心定位在鼠标点击的某一点处:
//创建屏幕坐标的Point对象
screenpoint = new DoublePoint(event.getX(),event.getY());
//将屏幕坐标转换为地理坐标
worldpoint=myMap.TransformScreenToNumeric(screenpoint);
//设置地图中心
myMap.setCenter(worldpoint);
③地图鹰眼功能
鹰眼窗口和地图主窗口都使用一个Applet容器放置地图对象MapJ。创建两个MapJ对象,并session.putValue("mapinfo.mapj",myMap);用的时候再:MapJ myMap=(MapJ)session.getValue("mapinfo.mapj")。这样,对两个MapJ控制不同Zoom和Center即可。
因为鹰眼和主地图是连动关系,并且鹰眼并没有使用固定视野的方式,所以鹰眼对象后台需要重新初始化一个MapJ对象,并使用简易版的gst或者mdf地图集合。连动机理如下:①MainApplet上的地图操作→MapJ重新渲染返回新图片地址→MainApplet捕捉新图片刷新命令重画地图→OverViewApplet自动刷新。②OverViewApplet上的地图操作→MainApplet重画→主MapJ重新渲染返回新图片地址→MainApplet捕捉新图片刷新命令重画地图→OverViewApplet自动刷新。另外,在MainApplet上的地图操作只有放大、缩小、平移操作会导致鹰眼地图刷新,其他地图重画不会造成鹰眼地图刷新。
4. MapXtreme的应用实现
WebGPS车辆监控管理系统,是一个将矢量地图和属性关系数据库紧密结合起来的网络化的GPS地理信息系统。在MapXtreme的工作方式下,所有的地图数据和应用程序都放在服务器端,客户端只是提出请求,所有的响应都在服务器端完成,只需在服务器端进行系统维护即可,客户端无须任何维护,大大降低了系统的工作量。
通过在后台服务器端运行MapXtreme,响应Internet用户对空间信息及与图形相关联的属性信息的访问请求,实现了以下功能:
(1)利用浏览器浏览地图图片,并能进行各种地图操作(放大、缩小、漫游、图层控制等);
(2)地理信息(GIS)查询,如地名、街道、企事业单位等;
(3)车辆位置的在线查询和跟踪监控,用户输入车辆终端号码后,从数据库中取出该用户最新的位置和时间信息,在地图上用选择的图标显示出来,并在车辆信息栏中显示出该车辆的档案信息、时间以及所处的街道;
(4)车辆及车主信息查询、轨迹回放;
(5)车队的管理和调度,授权用户可将不同任务的车辆进行编组、命名,分别管理(添加新的车辆或减少、删除组等)。
图形信息及相关数据查询结果如图1所示。(图略)
5. 结束语 WebGPS车辆监控管理系统的发展和建立是21世纪城市交通发展的趋势。作为实现WebGPS的一个重要环节--地图服务器MapXtreme的研究,将在越来越多的应用领域得到应用。
分享到:
相关推荐
#### 四、系统设计与实现 在本文中,开发团队采用了MapXtreme2005平台来设计并实现了一款旅游WebGIS应用系统。该系统的主要特点包括: 1. **数据管理**:采用Oracle Spatial作为空间数据库管理系统,有效地管理GIS...
蜂窝移动通信中使用的直放站作为一种中继产品,可以在不增加基站数量的前提下保证无线网络覆盖,并且具有结构简单、投资少、安装方便等优点,可广泛用于...基于MapXtreme建设直放站集中监控管理系统是实现这一目标的
### 基于MapXtreme_NET的WebGIS面向对象设计与实现 #### 一、引言 随着信息技术的快速发展,尤其是操作系统、数据库技术、网络通信技术的进步,地理信息系统(GIS)的应用范围和功能也在不断扩大。传统的GIS系统...
基于MapXtreme和Oracle的耕地资源WebGIS系统是一个集成地理信息系统(GIS)与Web技术的平台,旨在高效管理和监测耕地资源。系统采用MapXtreme Java Edition 4.7作为核心组件,这是一种流行的网络地理信息发布产品,...
### 基于MapXtreme2004的WebGIS系统研发 #### MapXtreme2004概述 MapXtreme2004是MapInfo公司在2004年发布的一款地理信息系统(GIS)软件产品,该产品基于微软的.NET框架构建而成。MapXtreme2004融合了MapInfo ...
为了实现一个高效、灵活且易于维护的WebGIS系统,本文选择MapXtreme for Java作为地图服务器,并采用以下设计方案: - **客户端**:使用Java Applet和JavaScript为用户提供图形界面,便于用户进行交互式操作。 - **...
基于MapXtreme的地理信息发布技术不仅极大地扩展了地理信息系统的应用范围,而且提高了其在Web环境下的可用性和易用性。随着技术的不断进步,WebGIS将继续发展成为更加高效、便捷的空间数据分析工具,为企业和个人...
介绍了系统采用的分布式网络结构、分层式通信协议结构和模块式管理功能结构,分析和设计了基于MapXtreme的应用方案,针对开发中的关键问题给出了解决方法。系统的实现大大提高了运营商的资产利用率和工作效率,降低...
通过《C#环境下基于MapXtreme的电子地图开发实例》这个资源,你可以逐步学习并掌握MapXtreme在C#平台上的应用技巧,从而开发出功能丰富、用户体验优秀的电子地图应用。这个PDF文档会详细解释每个步骤,提供实例代码...
### 基于MapXtreme的WebGIS解决方案 #### 1. 引言 地理信息系统(Geographic Information System,GIS)是一种集成了多种功能,包括数据采集、管理、查询、分析、操作以及地理相关数据可视化展示的计算机系统。...
### 基于MapXtremeJava的WebGIS研究与应用 #### 一、WebGIS的概念与发展背景 随着互联网技术的飞速发展和人们对地理信息日益增长的需求,传统的基于局域网的地理信息系统(Geographic Information System, GIS)...
在本文中,我们将深入探讨如何使用C#编程语言与MapXtreme 2005进行集成,构建一个功能丰富的GIS(地理信息系统)系统。MapXtreme 2005是一款强大的地图开发工具,提供了丰富的API和控件,允许开发者创建具有地图基本...
针对动态生成和发布GIS图幅的WebGIS应用系统以及多用户并发访问问题,提出了一种基于负载平衡方法的解决方案。用户动态生成和发布GIS图幅过程需消耗大量的服务器系统资源...设计并实现了B/S模式的基于WebGIS的地质图幅
基于WEBGIS的网络GPS车辆监控系统设计 本文总结了基于WEBGIS的网络GPS车辆监控系统设计的关键技术点,并对其进行了深入分析和研究。 GPS技术 GPS(Global Positioning System),即全球定位系统,是一种基于卫星...
基于MapXtreme的Web GIS开发物流车辆监控系统