总第245期2010年第3期
计算机与数字工程
Computer&Digital Engineering
Vol.38No.3
146
G oogle地图开发研究3
纪念品英文
王 芳
(江苏联合职业技术学院连云港中医药分院 连云港 222006)
摘 要 WEB GIS应用逐渐普及,但独立开发和运营WEB GIS系统对中小企业负担太重。在开放的G oogle Map s平台进行具体的行业应用开发既经济又可行。文章对G oogle地图开发进行研究,并讨论如何基于G oogle map A PI使用DOM自定义GMA P类开发企业WEB GIS。
关键词 WEB GIS;G oogle地图;开发
中图分类号 TP399
Rearch a nd Develop ment of Google Maps
Wang Fa ng
(College of Lianyungang Chine Medicine,Jiangsu Union Technical College,Lianyungang 222006)
Abs t rac t WEB GIS application becoming more common,but the independent development and operation of WEB GIS system to the heavy burden on SM Es.G oogle map s in an open platform for application development for specific industries and they are economical and practicable.This article on the G oogle maps development of rearch,and discuss how to u the DOM bad on the G oogle map A PI to customize GMA P class development enterpri WEB GIS.
Ke y Words WEB GIS,G oogle map s,development
Class Nu m ber TP399
1 引言
当前的信息社会,人们需求获取大量的多种类别的信息,其中包括地理信息,于是Web GIS应运而生。Web GIS是将Web技术和GIS技术相结合的新技术,以常见的网页方式提供地理信息服务,在现实生活中的许多行业有着广泛的应用。例如,交通、旅游、商业、金融、电信、天气等行业。许多企业希望拥有自己的Web GIS,但独立开发和运营WEB GIS系统对中小企业负担太重。于是借助开放的地理信息系统平台进行二次开发,既可行又经济。当前开放的地理信息系统平台有很多,有G oogle Map s、51地图、百度地图、搜狗地图、mapabc等。
本文讨论如何在G oogle Map s平台,基于G oogle map A PI、DOM、自定义GMA P类,根据自己企业的特点进行二次开发,例如增加用户交互、地图修正。
目的地英文
2 G oogle Map s简介
2005年4月,G oogle正式推出G oogle Map s,它以矢量地图、卫星影像、混合3种服务模式向全球提供地图搜索和逐级缩放功能的地图服务。为了使G oogle地图服务得到更广泛的应用,2005年6月29日,G oogle对外提供了便于二次开发的开放式地图服务应用程序接口(G oogle Map s A PI),允许开发者在程序中嵌入G oogle Map s强大功能,从而让全世界对G oogle Map s有兴趣的人能够自行开发G oogle Map s服务[1]。
G oogle Map s的特点如下:
1)地图操作。G oogle Map s的地图操作简单,主要有移动、自由缩放。
3收稿日期:2009年11月5日,修回日期:2009年12月10日作者简介:王芳,女,硕士,副教授,研究方向:网络应用。
2010年第3期计算机与数字工程147
2)地图预生成。地图并不是根据用户的请求动态生成,而是预先处理成图片金字塔,切块后做四叉树编码,存放在服务器端。当地图窗口发生移动、缩放时,只需要下载新的图片来填充新的区域,在此充分利用了浏览器的多线程同时下载的功能。另外,下载过的图片无需再次访问服务器重新下载。
3)分析功能。G oogle Map s可以实现距离测量、最近分析、路径分析等空间分析功能。
3 G oogle Map s开发研究基础
G oogle Map s提供的地图服务并不能满足所有行业的具体要求,所以需要对G oogle Map s二次开发。G oogle Map s二次开发就是在G oogle地图服务的基础上,使用G oogle map A PI和DOM,加载企业地理信息、增加用户交互、修正G oogle地理信息[2]。以达到满足企业具体需求的目的。
G oogle Map s二次开发模型如图1所示,下面介绍二次开发需要使用的G oogle map A PI和DOM 。
图1 二次开发模型
3.1 G oogle Maps API
G oogle Map s A PI按照其具有的功能分为两部分,一部分为地图显示功能,如GMap2、GPoint、GIcon、G LatL ng等[3];一部分为A PI的扩展功能,比如想开发自己的控件、标注和地图类型等,类或函数包括GCont rol、GMap Pane、GMap Type、GOverlay等。常用的G oogle Map A PI对象:
1)GMap s对象。用于实现创建和控制地图等最基本的功能,是G oogle Map A PI中最重要的一个对象,该对象包含的类方法相当丰富,如t2 Center()、pan To()、tMap Type()等;
2)GCont rol控件。对地图进行操控的一组对象的总称,包括:G LargeMapCont rol、GSmallMap2 Control、GSmallZoomCo nt rol、GMap TypeControl 和GScaleCont rol;
3)GMarker地标。用于标记地图位置的对象,是除GMap2对象外A PI中最重要的一个对象,许多基本功能,如指示位置、显示信息等都必须依赖GMarker对象;
4)GInfo Window对象。用于提供信息窗口的对象,信息显示内容不仅可以使用简单的文本,还可以使用H TML;
5)GPolyline和GPolygon对象。GPolyline 折线对象和GPolygon多边形对象分别用于地图标记指定的路线和区域,这两个对象的类属性和类方法极为相似,主要应用方向也相同。
3.2 DOM
DOM表示文档对象模型(Document Object Model),是一个规范,是一种World Wide Web Consortium(W3C)标准。因此,所有现代Web浏览器都支持DOM。虽然不同的浏览器有一些区别,但如果使用DOM核心功能并注意少数特殊情况和例外,DOM代码就能以同样的方式用于任何浏览器[4]。
G oogle Map s二次开发使用的是H TML DOM,H TML DOM把H TML文档呈现为带有元素、属性和文本的树结构(如图2所示)。
图2 H TML DOM树
W3C为DOM定义了几种语言绑定。一种语言绑定就是为特定语言定义的让您使用DOM的A PI[5]。比如,可以使用为C、J ava和J avaScript定义的DOM语言绑定。因此可以从这些语言中使用DOM。因为多数异步应用程序开发都需要编写在Web浏览器中运行的J avaScript代码,所以G oogle Map s二次开发使用J avaScript的DOM绑定[6]。使用J avaScript和DOM可以即时修改用户界面、响应用户事件和输入等等。
4 G oogle Map s开发研究实例
4.1 修正G oogle Map s
G oogle Map s地理信息需要间隔一定的时间才能更新,有些区域的地图甚至是3、4年前的,明
148
王 芳:G oogle地图开发研究第38卷
显和现实不符,这就需要对G oogle Map s修正。
G oogle地图分多个层次,自下到上分为G_MAP _MAP_PANE(最底部的地图),G_MAP_MAR KER_ SHADOW_PANE(地标的影子),G_MAP_MAR K2 ER_PANE(地标),G_MAP_FLOAT_SHADOW_ PANE(信息窗口的影子),G_MAP_MAR KER_ MOUSE_T ARGET_PANE(捕捉鼠标响应层),G_ MAP_FLOAT_PANE(信息窗口层)[7]。
对于G oogle Maps修正,我们通过自定义G_ USER_MAP类将正确的地理图片放到G_MAP_ MAP_PANE层,并覆盖到原来的地理位置。
类G_U SER_MA P的定义如下:
f unction G_USER_MA P(point,url){
this.point_=point;
data什么意思
this.url_=url;
}
G_USER_MA P.prototype=new GOverlay();
G_USER_MA P.prototype.initialize=f unction (map){
……
Pane(G_MAP_MAP_PAN E).appendChild (ur);
this.map_=map;
this.ur_=ur;
……
}
G_USER_MA ve=f unction(){
this.ur_.veChild(this.ur_);
}
……
下面是G oogle Map s修正实例,图3是某市区的矢量地图,有一条步行街没有标出,我们通过G_ U SER_MA P类将正确的地图图片叠加到GOO G L E地图上,效果如图4所示。
图3 修正前的地图
4.2 增加用户交互
初一英语辅导报答案
G oogle卫星地图有立体感和真实感,
但是缺
图4 修正后的地图独到见解
乏用户的交互。通过二次开发,可以在G oogle卫星地图上添加表单、提示、链接、滚动字慕、flash 等。方法是通过G oogle map A PI定义G_U SER_ IN F类,继承GOverlay类,并放于G_MA P_ MAR KER_MOU SE_TAR GET_PAN E层。在G_ U SER_IN F实例容器中放置交互元素[8]。图5是一个带链接的滚动字慕的实例。
图5 G oogle地图增加用户交互
1)定义G_U SER_IN F类:
Function G_USER_INF(point,inner){
really的用法 this.inner=point;
this.inner=inner;
}
G_USER_INF.prototype=new GOverlay();
……
Pane(G_MA P_FLOA T_SHADOW_PAN E). appendChild(inf);
……
2)调用:
……
pets成绩查询Shtml=”<marquee><a href=’hualian’>华联商厦</a></marquee>”//交互元素的html代码
your song
var point=new G LatL ng(34.5999,119.1874);
Inf=new G_USER_IN F(point,Shtml);
map.addOverlay(Inf);
发布亚洲大学排名5 结语
借助开放的地理信息系统平台,开发特殊应用的WEB GIS,既可行又经济。文章讨论在G oogle
2010年第3期计算机与数字工程149
masp平台,如何基于G oogle map A PI、DOM、自定义GMA P类,并根据自己企业的特点进行二次开发。最后给出了地图修正、增加用户交互的2个实例。
参考文献
[1]G oogle map.A PI文档[EB/le.
com/intl/zh2CN/apis/maps/documentation/index.html [2]江宽,龚小鹏.G oogle Map s与G oogle Earth双剑合璧
[M].北京:电子工业出版社,2008
[3]刘迎春,严萍,刘伟民.基于J ava技术的高教园区教育
资源Web GIS研究与开发[J].计算机应用与软件,
2007,24(3):177~179
biuret[4][美]安德・勒维斯.G oogle Map s应用程序Rails和
Ajax开发指南[M].北京:机械工业出版社,2008 [5][美]戴维斯.GIS for Web应用开发之道[M].北京:电
子工业出版社,2008
[6]孙晓茹,赵军.G oogle Maps A PI在Web GIS中的应用
[J].微计算机信息,2006,22(19):224~226
[7]Wong K.Around the World:G oogle Introduces3D
G eography for Everyone[J].Catalyst,2005,22(9):16
~17
[8]Mueller J P.Mining G oogle Web Services:Building
Applications with the G oogle API[M].San Francisco: Sybex Books,2004
(上接第111页)
v TPM功能,另外还可以在创建虚拟机时根据具体需要在xm命令中加入其它配置参数,比如使用禁用U SB接口的参数可以防止敏感数据在客户端的拷贝。
Client={Client1,Client2,…,Client n}
RS:Remote Server
VS:Validation Server
Cv:完整性度量值
VSv:Validation data
IF Client Request(Online Services)OR Request(Access Sensi2 tive Data)
Client Send(Request)to RS
RS respon(Request)
RS ret urn(Configuration File)
Client Create(DomainU)
Client Send(Cv)
RS Validate(VSv,Cv)
IF Validate(VSv,Cv)is True
Continue;
Ele
Error;
End IF
End IF
图6 基于Xen的信任虚拟机访问流程图
4 结语
本文结合虚拟机技术与可信技术的优点提出了一种基于Xen的信任虚拟机安全访问模型。既解决了远程通讯终端节点的脆弱性,保证了终端信息的完整性和可信性,又解决了因为用户机上应用软件过多,不利于构建信任链的问题。但是安全访问不仅仅对终端节点的可信性认证,同时还包括终端节点的信息防泄漏。今后我们将对终端节点的信息防泄漏进行进一步的研究,继续完善安全访问模型。
参考文献
[1]P.M.Chen,B.D.Noble.When virtual is better than
real[C]//Proceedings of the8th Workshop on Hot Topics in Operating Systems,Washington,DC,USA, IEEE Computer Society,2001:133
[2]Tal Garfinkel,Ben Pfaff,Jim Chow,et al.Terra:A
Virtual Machine2Bad Platform for Trusted Computing
[C]//Proc.of ACM Symposium on Operating Systems
Principles(SOSP),2003
[3]P.Barham,B.Dragovic,K.Frar,et al.Xen and
the Art of Virtualization[C]//Proceedings of the19th ACM SOSP,2003(8):164~177
[4]张焕国,罗捷,金刚,等.可信计算研究进展[C]//第二
届中国可信计算与信息安全学术会议论文集,武汉大学学报(理学版),2006,52(5)
[5]Trusted Computing Group.TPM Main Specification
Level2Version1.2,Revision103Part32Commands [EB/OL].ustedcomputinggroup, 2005