欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于GoogleMapAPI的校园地图的设计与实现.doc

    • 资源ID:842363       资源大小:2.44MB        全文页数:37页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于GoogleMapAPI的校园地图的设计与实现.doc

    1、 摘 要随着计算机及计算机网络的普及和全国各院校的校园网络的日益完善、健全。各大高校的扩招合并, 学校规模越来越大,以及众多的机构地理位置信息的分散。有必要开发基于校园地理信息的电子地图。本系统以Google Maps 以及ArcGIS为基础,整个系统采用 B/S 的体系结构,以Google Map 为底图,同时在底图上叠加通过ArcMap自己制作的校园地图。利用Google Map提供的编程接口、以及ArcGIS提供的针对Google Map的扩展编程接口,实现地图信息的基本浏览功能。服务器端脚本解释语言主要采用javascript,以及基于javascript编写的类库语言包jquery、

    2、dojo。地图信息的发布通过 IIS Web 服务器,以及ArcGIS的专门地图服务器。信息的管理使用ArcGIS自带的 SQL Server2005 数据库管理系统,系统开发工具主要是DreamweaverCs5、ArcMap、ArcCatalog。该系统支持用户任意时间、地点通过学校内部网络或广域网来进行操作。以实现校园地理信息的浏览、查询;路径规划;面积、距离测量功能。关键词:Google Map;ArcGIS地理信息系统;校园地图;javascriptABSTRACTWith the popularity of computer and computer network, also t

    3、he campus networks increasing and perfect of all the colleges and universities. With the merging and expansion, school scale is bigger and bigger and many institutions scattered. It is necessary to develop electronic map based on campus geographic information.This system is based on Google Maps and

    4、ArcGIS, the whole system adopts B/S architecture. Its based map is Google Maps. At the same time, the campus map which was created by ArcMap software was overlayed on the Google Maps to make your own Map of campus more particular. Using the programming interface provided by Google, and extension pro

    5、gramming interface for Google Map provided by ArcGIS. It can realize the basic browsing capabilities of Map information. Server-side scripting mainly uses the Javascript language, and Jquery, Dojo the libraries written with the Javascript language pack. Map information released through the IIS Web s

    6、erver, and ArcGIS map of dedicated server. Information management using the SQL Server2005 database management system, and system development tools are mainly DreamweaverCs5, the ArcMap and ArcCatalog. This system support users at any time and place through the school internal network or wide area n

    7、etwork to operate. In order to realize the campus geographic information browsing, inquiry; Path planning; Area and distance measurement function.Key words: Google maps API; ArcGIS geographic information system; The campus map; JavaScript目 录第1章 引 言11.1 选题背景11.2 选题意义1第2章 系统需求分析22.1 目标22.2 性能及运行需求22.3

    8、 功能需求22.4 系统E-R图2第3章 基础知识简介43.1 Google Map API 及ArcGIS for Google Map API介绍43.2 设计中常用的Google Map API类,ArcGIS for Google Map扩展类及其方法43.3 IIS服务器53.4 ArcGIS 相关软件介绍63.4.1 ArcGIS Desktop63.4.2 ArcGIS Server7第4章 系统设计84.1概要设计84.1.1 系统数据流程设计84.1.2 数据字典84.1.3 系统结构设计94.1.4表结构设计104.2 详细设计114.2.1 系统概述114.2.2 系统流

    9、程图13第5章 系统实现155.1 地图制作155.1.1 底图制作155.1.2 地图整改155.1.3 地图发布175.2系统各功能及实现效果图175.2.1地图放大、缩小、拖动功能及效果图175.2.2叠加ArcGIS地图及效果图185.2.3建筑物搜索及效果图195.2.4面积、距离测量及效果图195.2.5路径规划功能及效果图215.2.6鼠标滑动、点击建筑显示信息及效果图225.3 应用中出现的问题与解决方法22第6章 系统测试246.1测试方法的介绍246.2测试环境246.3测试对象246.3.1地图放大、缩小、拖动功能246.3.2建筑物搜索功能246.3.3面积、距离测量功

    10、能246.3.4路径规划功能256.3.5鼠标滑动、点击建筑显示信息功能256.4测试用例及结果256.4.1地图放大、缩小、拖动功能256.4.2建筑物搜索功能256.4.3面积、距离测量功能276.4.4路径规划功能286.4.5鼠标滑动、点击建筑显示信息功能29总结31致谢32参考文献33第1章 引言第1章 引言1.1 选题背景随着计算机及计算机网络的普及和全国各院校的校园网络的日益完善、健全,各大高校的扩招合并, 学校规模越来越大, 校园设施与环境也在不断的改善,以及众多的机构地理位置信息的分散。而网络信息的普及,及浏览应用的便利,为了快速、准确获取校园的地理信息, 以及为校园的管理、

    11、规划、设计提供准确而详细的数据, 对校园导航的要求越来越迫切,有必要开发基于校园地理信息的电子地图。1.2 选题意义毕业设计是学生在校期间的最后一个教学环节,是学习深化和提高的一个重要过程,也是综合检验所学理论知识的一个重要环节。本系统提供图形化的界面,在普通电子地图上,用户可以进行对地图进行任意的放大缩小,地图漫游等;用户还可以进行地理信息的查询;路径的查询;用户还可以进行期望信息的查询、浏览。33第2章 系统需求分析第2章 系统需求分析2.1 目标1.便捷的界面操作性能,详细的信息显示性能;系统交互性强,信息显示速度快,安全性高。2.实现建筑物信息的浏览、搜索、建筑平面显示、面积详细信息浏

    12、览。3.辅助功能面积测量、距离测量、出行路径规划。4.系统尽量给用户提供一个良好的操作环境。2.2 性能及运行需求要求系统便捷的操作方式,详细的信息显示。且系统运行稳定,交互速度较快,界面美观。运行环境:要求Windows系统下运行,已安装IIS信息网站发布服务、以及ArcGIS Server地图服务器。ArcMap、ArcCatalog地图编辑软件,及相配套数据库系统。2.3 功能需求系统面向所有浏览用户,主要完成如下功能:1)电子地图放大、缩小、平移;2)地图快速定位;3)显示重要的建筑; 5)查询路程信息;6)显示地点查询信息;7)辅助功能面积测量、距离测量。2.4 系统E-R图建筑物实

    13、体如图2-1所示:图2-1 建筑物实体图绿化实体如图2-2所示:图2-2 绿化实体图第3章 基础知识简介第3章 基础知识简介3.1 Google Map API 及ArcGIS for Google Map API介绍Google 地图API以及 ArcGIS API分别是Google 公司及ESRI公司发布的地图服务调用类库。都是以Javascript语言为基础、采用B/S架构网页浏览的方式。前者提供基础的地图服务,在Google提供的地图的基础上,实现地图的浏览、基本信息标注。但区域地图信息不够完善详尽,且很难实现后期更改。后者则是主要将ArcGIS制作的地图与Google地图进行叠加整合

    14、,提供更加详细的网页地理信息服务。3.2 设计中常用的Google Map API类,ArcGIS for Google Map扩展类及其方法1GMap2类GMap2类是对Google地图进行实例化的API中心类,其它都是辅助类。通过GMap2类可以在指定的 HTML 容器中创建新的地图,该容器通常是一个DIV 元素。通过构造函数可以指定地图的大小、类型、背景色、拖放光标类型等信息。 GMap2类常用的方法有:addControl(control:GControl, position?:GControlPosition),将自定义控件添加到地图中,并指定控件位置;getCenter(),返回地

    15、图视图的中心点坐标;setCenter (center:GLatLng, zoom?:Number, type?:GMapType),设置地图中心点坐标,并指定缩放级别,改变地图类型;addOverlay (overlay:GOverlay),添加自定义叠加层;openInfoWindow(latlng: GLatLng, node:Node, opts?:GInfoWindowOptions),在地图上指定点处打开信息窗口。fromContainerPixelToLatLng(pixel:GPoint),在含有页面地图的 DOM 元素中计算指定像素坐标点的地理坐标。2GLatLng类GLat

    16、Lng是以经度和纬度表示的地理坐标点。主要方法:lat(),lng()返回经纬度坐标。3Gevent命名空间该命名空间主要用于触发自定义事件。GEvent.addListener (source:Object, event:String,handler:Function) 为源对象的自定义事件注册事件处理程序,如鼠标点击、鼠标移动。返回一个可用于最终注销处理程序的句柄。可使用源对象的this集合调用事件处理程序。4接口GOverlay地图 API 库中的 GMarker、GPolyline、GTileLayerOverlay 和 GInfoWindow 类都是通过此接口实现的。此接口是ArcG

    17、IS叠加地图层与Google Map层进行数据交换的通道。ArcGIS对Google地图的扩展接口返回的数据全部归为这一接口,可以通过此接口的方法获取相应信息然后进行GoogleMap对象的重构,实现Google Map相关功能。5esri.arcgis.gmaps.MapExtension类该类创建一个新实例,将一个MapExtension对象绑定到google地图上。通过arcmap制图软件制作的校园地图就是通过这个类中addToMap(results, overlayOptions?, infoWindowOptions?)方法添加到google map底图中。6esri.arcgis.

    18、gmaps.QueryTask(url)该类通过指定的地图服务器图层地址访问图层数据,对图层进行查询。用execute(parameters, asGeoXml?, callback?)方法执行查询语句,并且将查询结果放回给回调函数继续执行。7esri.arcgis.gmaps.Query()该类是查询语句,该类中通过各个属性指定查询参数。Where指定查询条件、outFields指定查询内容、returnGeometry指定是否返回几何信息。3.3 IIS服务器IIS是Internet Information Services(互联网信息服务)的简称,主要用于网站解析。虽然对于静态网站不需特

    19、定的服务器就能打开,但是测试时发现对于一些网络地址及本地文件不能正确打开,无法使用文件绝对及相对地址,需要IIS进行解析。同时对于ArcGIS Server地图服务器也需要事先安装IIS才能正确运行。Windows xp及以后系统默认已经集成了IIS,只是默认情况下没有安装打开。需要请进入“控制面板”, “添加/删除程序添加/删除Windows组件”,选择“Internet信息服务(IIS)”。然后在“管理工具Internet信息服务”中对其进行启动、停止等操作。3.4 ArcGIS 相关软件介绍ArcGIS是美国环境系统研究所开发的新一代GIS软件,是一个统一的地理信息系统平台,由数据服务器

    20、ArcSDE及4个基础框架组成:桌面软件Desktop、服务器GIS、嵌入式GIS和移动GIS。ArcGIS系统结构如图3-1所示:图3-1 ArcGIS系统结构图 这里主要用到ArcGIS Desktop 以及 ArcGIS Server。3.4.1 ArcGIS Desktop桌面客户端产品主要包括ArcInfo、ArcEditor、ArcView、ArcReader和基于ArcGIS Engine组件二次开发的产品。是用户创建、编辑、设计和使用地理信息的主要应用程序。每个产品不再叙述,这里主要用到其桌面应用:ArcCatalog、ArcMap和ArcToolBox。ArcCatalog:

    21、主要用于空间数据浏览、Geodatabase结构定义、空间数据导入导出、网络模型生成、对象关系和规则的定义、元数据的定义和编辑修改等。ArcMap:这里主要将CAD的空间数据导入然后进行编辑制作地图,其全面支持空间数据的可视化交互操作,可以随心所欲的生成任意复杂的点线面符号。可以制作很多建筑地貌信息效果,支持3D渲染。ArcToolBox:主要进行空间数据格式转换、叠加处理、空间分析、坐标转换。软件安装不再详述。3.4.2 ArcGIS ServerArcGIS Server 是一个分布式的系统,为创建和管理给予服务器的GIS应用提供了一个高效的框架平台。这里主要用于地图的发布,以实现网页调用

    22、、图层的分层显示、地图上各要素的查询。软件安装不再详述。这里简述服务器用户权限配置。ArcGIS Server 安装完成后管理组账户、两个本地组账户会被自动创建,其中Agsadmin应包含所有的管理server的账户,Agsuuers应包含所有将访问serverobject是的账户。打开计算机管理中的本地用户和组,确保Administrators组中包含:Administrato,ArcGISSOC,ArcGISSOM,ArcGISWebServices用户;agsusers组中包含:Administrator,ArcGISSOC,ArcGISWebServices及本机用户;agsadmin

    23、组中包含:Administrato,ArcGISSOM,ArcGISWebServices及本机用户。ArcGIS Server系统结构如图3-2所示:图3-2 ArcGIS Server系统结构图第4章 系统设计第4章 系统设计4.1 概要设计4.1.1 系统数据流程设计本系统面向所有浏览用户,不需登陆,主要实现地图的浏览功能。而且由于信息变更较小,后期更改也比较麻烦。因此不设后台,没有管理员。前期的基本任务就是网页框架的设计,以及技术资料的搜集,功能的实现方式。由于之前解除Javascript较少,而且没有完全看手册写代码的经历,不知道该如何实现效果,以及实现怎样的效果。系统以国立台湾大学

    24、校园地图(http:/map.ntu.edu.tw/ntu.html)为模板,进行了系统大致设计以及初步设想。在功能上主要实现五大功能:地图的放大缩小、拖动;地理信息的查询、显示,主要是建筑物地理位置,后期酌情增加效果;地理面积的测量;距离测量;以及校园路径规划。其中最主要的功能是地理信息的显示与浏览。使得用户进入系统后,通过放大缩小可以很直观的看到校园的地理位置信息。并且放大后可以很清楚的观看校园平面图,查找建筑位置。由于google地图对于本校显示信息较少,基本没有建筑信息,仅有部分道路显示,整个校园都为空白。后来在指导老师的帮助下,知道了可以用ArcGIS软件进行地图的制作,或者图片的矢

    25、量转换。因此前期逐渐完成基本功能的同时,主要进行地图的制作。系统数据流如图4-1所示: 图4-1 系统数据流图4.1.2 数据字典建筑物信息数据字典如表4-1所示:表4-1 建筑物信息数据字典名字:建筑物信息别名:building描述:建筑物的相关信息定义:建筑物信息=建筑物id+建筑物名称+建筑物图片地址+建筑物面积+建筑物 中心经度+建筑物中心纬度位置:存于数据库,在查询、显示时应用绿化带信息数据字典如表4-2所示:表4-2 绿化带信息数据字典名字:绿化带信息别名:green描述:绿化带的相关信息定义:绿化带信息=绿化带id+绿化带名称+绿化带图片地址+绿化带面积+绿化带中心经度别+绿化带

    26、中心纬度位置:存于数据库,在查询、显示时应用4.1.3 系统结构设计系统层次如图4-2所示:图4-2 系统层次图系统结构如图4-3所示:图4-3 系统结构图4.1.4 表结构设计各个表的结构如下:建筑物表如表4-3所示:表4-3 建筑物表(building)列名数据类型长度是否可为空说明Idlong10是建筑物IdNamestring10是建筑物名称AREAlong10是建筑物面积Image_urlstring50是图片地址Center_xdouble10是建筑物中心点经度Center_ydouble10是建筑物中心点纬度说明:该表存储建筑物相关的信息 绿化带表如表4-4所示:表4-4 绿化带

    27、表(green)列名数据类型长度是否可为空说明Idlong10是绿化带IdNamestring10是绿化带名称AREAlong10是绿化带面积Image_urlstring50是图片地址Center_xdouble10是绿化带中心点经度Center_ydouble10是绿化带中心点纬度说明:该表存储绿化带相关的信息4.2 详细设计4.2.1 系统概述详细设计阶段的关键任务是确定怎样具体地实现用户需要的软件系统,也就是要设计出程序的“蓝图”。除了应该保证软件的可靠性之外,使将来编写出的程序可读性好、容易理解、容易测试和维护,是详细设计阶段最重要的目标。系统主要涉及五个模块,地图的放大缩小、拖动;

    28、地理信息的查询、显示,主要是建筑物地理位置,后期酌情增加效果;地理面积的测量;距离测量;以及校园路径规划。1.系统不涉及权限问题,所有浏览者都可以使用系统进行校园地图的浏览、搜索、查看。对于地图放大、缩小、拖动、列表查看,流程基本一样。打开系统后即可进行操作。地图基本浏览功能流程如图4-4所示:图4-4 地图基本浏览功能流程图2.对于地图搜索功能必须确定输入内容不为空时才继续查询,然后判断查询结果是否为空,不为空即查询成功。 搜索流程如图4-5所示:图4-5 搜索流程图3.面积测量、距离测量,首先要检查是否允许;不同功能之间不能有叠加。因此对于两个功能设置开关状态参数,只有监听到允许后在底图上

    29、的测量操作才有效。面积、距离测量流程如图4-6所示: 图4-6 面积、距离测量流程图4.路径规划由于监听的是鼠标右击,对于各个功能没有冲突,因此不设开关。仅对起始点进行判断,只有选择起点之后才能选择终点,在起始点都存在的情况下才能进行路径规划。路径规划流程如图4-7所示:图4-7 路径规划流程图4.2.2 系统流程图 系统流程如图4-8所示:图4-8 系统流程图第5章 系统实现第5章 系统实现5.1 地图制作5.1.1 底图制作校园地图的制作是一个较为复杂的步骤,首先需要精确的CAD图纸然后将其转换为地图。感谢同学的帮助提供了已有的校园地图,下图为本校学弟学妹花了几周时间,在校园内进行测绘得出

    30、的图纸,而且已经生成为地图。部分内容不够完整,为了不破坏地图的精确度与美观,后期未做修改,仅仅对显示样式、部分建筑物做了修改。初始ArcMap校园地图如图5-1所示:图5-1 初始ArcMap校园地图5.1.2 地图整改为了叠加显示效果的美观,对地图进行了显示效果的更改。同时由于基本地图样式Shapefile对于数据查询的支持比较缓慢,因此要新建数据库并且对全部图层添加要素类。这里使用了ArcCatalog工具,进行数据库的建立以及图层类型的转换。转换后发现由于底图由多人完成,部分样式比较繁琐且很多建筑物图形比较分散,单个建筑被分成了好多几何体,因此需对数据库数据以及建筑样式进行合并以及删除。

    31、对于转换为要素类的图层,为了增加建筑物的阴影效果,这里需要对建筑物图层制作制图表达,简单步骤如下:1.在内容列表中,右键要素类图层,点击“Convert Symbology to Representation”。将需要制作阴影的图层,增加制图表达。2.右键点击转为制图表达的图层,打开属性框,在符号选项卡上,在“Solid color pattern”将颜色改为期望的阴影颜色。3.点击右上角的加号按钮添加几何效果并选择Move,点击OK。4.将X、Y的偏移值分别改为3pt,-3pt,点击OK。整改后的地图如5-2所示:图5-2 整改后ArcMap校园地图5.1.3 地图发布制作完成后的地图必须经

    32、过服务器发布才能在网页中正常调用,打开ArcGIS Server Manager输入安装时设置的用户名和密码。然后选择Add New Services进行设置,选择自己制作的地图,根据默认选项直接点击下一步完成配置。需要指出对于存放地图的文件夹必须对拥有权限进行更改,添加现在使用用户,并可以具有读写权限。对于ArcCatalog服务器的配置跟Server Manager基本一样,不做详述,需要注意的是对于域名的填写,IIS对于本地默认为localhost。地图服务器发布效果如图5-3所示:图5-3 地图服务器发布效果图5.2 系统各功能及实现效果图5.2.1 地图放大、缩小、拖动功能及效果图G

    33、oogle Map API的简易性直接将地图服务进行了很好的封装,基本的地图服务只需要进行必要的参数设置既可以实现。不过对于企业级的应用必须在google网站进行注册,申请密钥之后才能使用,而且访问次数也有限制。地图放大、缩小、拖动功能效果如5-4所示:图5-4 地图放大、缩小、拖动功能效果图可以看到在未叠加ArcGIS地图之前google地图上对于校园信息的显示几乎为空。5.2.2 叠加ArcGIS地图及效果图对于ArcGIS地图的叠加代码量很少只用参考ArcGIS Extension API接口库即可,但是在项目测试过程中发现始终叠加不上,后来发现时ArcGIS地图未添加地理坐标的原因。经

    34、过查询及搜索,发现网上有一款ArcMap地图制作软件插件ArcBruTile,可以将google地图添加到ArcMap中作为参考底图。ArcBruTile插件安装后效果如图5-5所示:图5-5 ArcBruTile插件安装后效果图然后对地图进行坐标系的转换为WGS 1984 web标准后,发现校园地图位于非洲几内亚湾,这可能是对于未添加地理坐标的地图默认位置。然后将地图全部选中进行位移之后,基本可以与google地图上的校园轮廓重合,但是比例大小却不对。后查看资料后找到地图等比例放大缩小工具。在视图、工具、自定义标签中选中编辑器,然后将按比例缩放按钮拖放到编辑工具条。然后选中整个地图进行放大后

    35、重新定位,基本能实现与google地图中校园轮廓的重合。再调用API接口函数进行地图的叠加。地图按比例缩放功能按钮位置如图5-6所示:图5-6 地图按比例缩放功能按钮位置图ArcGIS地图与Google地图叠加后效果如图5-7所示:图5-7 ArcGIS地图与Google地图叠加后效果图5.2.3 建筑物搜索及效果图对于搜索功能的实现,主要效果是显示建筑物轮廓并进行高亮显示。需注意的是对于ArcGIS地图,shapefile对于查询效果不好,需新建数据库转为要素类。这个在前边制图表达,制作地图阴影是已经实现。建筑物搜索功能实现效果如图5-8所示:图5-8 建筑物搜索功能效果图对于列表导航进行显

    36、示,功能的实现跟搜索基本一样,不做赘述。5.2.4 面积、距离测量及效果图面积距离的测量终点是如何动态的取多边形,因为google已经给出了多边形取面积以及距离的函数,因此只需根据鼠标的点击构造多边形,根据选择点进行刷新即可。算法思想:监听鼠标左击操作,如果有左击时记录坐标点位置,将其封装为marker添加到marker数组中。然后监听marker是否被拖动,如果被拖动进行polygon的重绘。同时监听marker是否被点击如果被点击则将其从marker数组中移除,继续polygon的重绘。对于polygon的重绘,首先要判断是否已存在polygon,若存在清除后还要讲坐标数组清除。然后将ma

    37、rker数组中的坐标全部重新提取为经纬度坐标数组,封装为polygon,根据polygon对象进行面积的获得。面积测量功能实现效果如图5-9所示:图5-9 面积测量功能效果图距离测量功能实现效果如图5-10所示:图5-10 距离测量功能效果图5.2.5 路径规划功能及效果图对于路径规划本来想对于校园,因为内容较少,google地图上的道路信息匮乏,使用google api接口不能实现,还需要自己去添加路径,写路径算法。但后来发现仅用其接口就能很好地实现路径规划功能,还算省了不少事。API中涉及到路径规划的类主要是GDirections(map?:GMap2, panel?:Element)。这

    38、里主要是些效果的显示,涉及到了在地图上添加自定义控件,右击选择起始点。还涉及到了jquery即用javascript写了另一套代码库,以实现渐入渐出效果。路径规划功能实现效果如图5-11所示:图5-11 路径规划功能效果图5.2.6 鼠标滑动、点击建筑显示信息及效果图对于鼠标滑动显示效果,因为ArcGIS提供的API接口最终只提供了一个接口跟Google Map有关。而对于接口不能直接添加鼠标监听,还好根据接口中的方法可以将有用的信息进行提取,然后重新封装为Google地图中的对象类型。从而实现用Google API的方法实现监听。鼠标滑动点击建筑物,信息显示效果如图5-12所示:图5-12

    39、鼠标滑动点击建筑物,信息显示效果图5.3 应用中出现的问题与解决方法1.之前在做网站的过程中也遇到过这样的问题,网页中对于一些本地路径无法完成解析,如果改成网络路径后就可以。可是自定义信息是存储在本地的,无法解析即不能完成相应的功能。例如用到对XML文件的读取操作, javascript一直无法读取本地文件。解决办法:配置服务器即可。由于对于静态网站,开始无需服务器即可浏览器打开,没有添加IIS服务。但对于一些相对及本地路径,处于安全的考虑浏览器默认不解析。当将网页添加到服务器的网站管理目录中时即可实现解析功能。2.这次开发的地图用的是老版本的API类库。而老版本的类库中没有直接的函数实现对鼠

    40、标右键监听获取地理坐标,因此无法获取鼠标右键点击后的弹出菜单选择路径规划中的起点和终点。而用鼠标左击获取坐标实现路径规划,又跟面积、路径测量功能相冲突。解决办法:经过仔细查看API手册,发现GMap2类中提供了一个函数可以实现地图中屏幕像素到地理坐标的转化。因此可以首先获取屏幕坐标,然后再转为地理坐标即可实现地理坐标的获取。3.上文中提到过的地图叠加问题,由于地图的制作过程中没有添加地理经纬度坐标,导致ArcGIS地图无法与Google地图进行叠加。由于地理坐标系统规范的差异,无法实现不同坐标规范的重合。解决办法:对制作的地图添加于Google地图相同的WGS 1984坐标系。然后使用网上提供

    41、的插件ArcBruTile,即可实现在ArcMap制作软件中添加Google地图。然后对照地图将自己制作的校园地图移动到正确的位置,即可实现地图叠加功能。4.从ArcGIS服务器调用数据时速度特别慢。由于CAD导入进行修改后的地图图层类型为shapefile几何类型。而shapefile类型对于数据库的查询支持较差,因而查询速度很慢。解决办法:在ArcCatalog中新建数据库与元素集,同时将shapefile图层转换为元素类图层,即可解决查询速度问题。同时还可以实现制图表达,建筑物阴影效果。5.对于ArcGIS叠加的图层无法实现对建筑物的监听,由于ArcGIS提供的扩展API只提供接口与Go

    42、ogle地图交互。如果不能生成Google API中的对象无法实现监听。解决方法:对象重构,用接口中的方法,依次将ArcGIS地图中的几何点取出。然后将几何点重新封装为Google API中的对象。6.将重构后的新对象叠加到Google地图上后发现鼠标移动到建筑上后,无法获取坐标点,监听无效。即无法实现点击重构后的建筑,以显示信息窗口。解决办法:在数据库中新建字段存储建筑几何体的中心点坐标,重构Google API对象时将其一起封装。不根据鼠标位置新建信息窗,根据数据库中的建筑几何中心点坐标,新建信息窗。7.对于事件的监听,由于只有当监听事件发生时才触发,导致全局及局部变量无法使用,全部建筑物

    43、监听失败。 解决办法:循环外对每个监听对象单独建立函数由程序后台处理即可。第6章 系统测试第6章 系统测试6.1 测试方法的介绍黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。黑盒法是穷举输入测试,只有把

    44、所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。白盒测试按照程序内部的逻辑对程序进行测试,检查程序中的每条通路是否能按预定要求正确工作。白盒测试又称为结构测试。在这里主要采用的是黑盒测试,并以白盒测试为辅助测试。6.2 测试环境硬件:cup:Core M 2.0Ghz 内存:2G 硬盘:320G软件:Microsoft windows7 Windows IIS ArcMap ArcCatalog ArcGIS Server 服务器 Sql Server 2005数据库6.3

    45、 测试对象6.3.1 地图放大、缩小、拖动功能滑动鼠标滑轮,是否能实现地图的放大缩小。点击地图进行拖动,地图是否随鼠标移动。6.3.2 建筑物搜索功能点击导航条的建筑物列表,是否能在地图上高亮显示建筑物轮廓。在搜索框中输入正确的建筑物信息是否能在地图上正确显示。输入错误的信息是否进行提示。6.3.3 面积、距离测量功能在未开启功能时,点击地图是否进行标注开始测量。开启功能后,点击地图开始测量,是否能显示正确地测量信息。点击标注点拖动,是否能够随意移动标注。点击标注,删除标注点后是否能正确显示测量信息。6.3.4 路径规划功能在为选择起点的情况下,选择终点,是否给予提示。在未给出起始点的情况下,

    46、进行路径规划是否给予提示。给出起始点后,能否进行正确的路径规划。6.3.5 鼠标滑动、点击建筑显示信息功能鼠标移动到建筑物上,是否能显示出建筑物名称。当鼠标点击建筑物是能够,显示详细信息框。6.4 测试用例及结果6.4.1 地图放大、缩小、拖动功能1滑动鼠标滑轮,是否能实现地图的放大缩小。1)操作:滑动鼠标滑轮预期结果:地图进行放大缩小2)操作:鼠标点击地图拖动预期结果:地图随鼠标的拖动而移动以上测试用例经过验证功能实现正确的6.4.2 建筑物搜索功能1点击导航条的建筑物列表,是否能在地图上高亮显示建筑物轮廓。1)操作:点击导航条建筑物名称预期结果:地图上高亮显示对应建筑物轮廓以上测试用例经过验证功能可以正确实现2搜索框中输入信息时是否能检测信息输入正确 1)错误


    注意事项

    本文(基于GoogleMapAPI的校园地图的设计与实现.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922