基于MSD标准框架实现制图环境下地图服务资源调用.doc_第1页
基于MSD标准框架实现制图环境下地图服务资源调用.doc_第2页
基于MSD标准框架实现制图环境下地图服务资源调用.doc_第3页
基于MSD标准框架实现制图环境下地图服务资源调用.doc_第4页
基于MSD标准框架实现制图环境下地图服务资源调用.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于MSD标准框架实现制图环境下地图服务资源调用何 伟 程 琦(武汉市测绘研究院,湖北 武汉 430022)摘 要 随着地理信息和地图服务在社会生活中的应用多元化,如何对各类地图资源的整合调用成为需要重点解决的问题。本文采用基于MSD标准框架下的接口方式,能够将发布的地图服务无缝加载到制图环境,同时将地图服务提供的数据资源同制图环境的数据属性进行对接,实现了将包含坐标信息的制图环境和包含属性信息的地图服务资源的一体化整合。基于该技术的系统实现已经应用于日常的城市规划设计服务中,提高了地图服务资源访问的便捷性和安全性,具有一定的推广价值。关键词 地图制图技术;MSD标准框架;AutoCAD;地图服务资源;GISMap Service Resource Call in Mapping EnvironmentBased on the MSD Standard FrameworkHE Wei,CHENG Qi(Wuhan Geomatic Institute, HuBei WuHan,430022)Abstract:With the diversification of the application of geographic information and mapping services in the social life, how to integrate and call the resources of various types of maps becomes to focus on resolving. Under the MSD standard framework interfaces, this paper loads the Published map service seamlessly into the mapping environment, while it could dock the data resource by the map service provided and the data attribute of the mapping environment.It integrates the mapping environment that contains coordinate information and map service resource that contains the attribute information. This technology-based system has been applied to the daily urban planning and design services. It has been improved the convenience and security of the map service resource access.It has a certain promotional value.Key Words:Cartographic Techniques; MSD Standard Framework; AutoCAD; Map Service Resources; GIS1 引言随着城市发展的脚步日益加快,规划设计、工程项目实施部门对基本地形图和影像等地理信息资源的需求日益频繁。传统的数据使用流程是将地形图和影像图作为背景添加到设计工程中使用,然后在现状数据基础进行规划设计。由于地形图和影像数据分幅存放、数据量大,这样的数据调用过程十分繁琐。另一方面,随着GIS网络应用的发展,高速、无缝的地图发布技术已经在互联网中得到广泛应用。因此,如何将地图发布技术运用到制图环境中去,是一项具有实用价值的工作。这样不仅为设计者提供了包含坐标信息的制图环境,并且可以利用地图服务进行属性查询及定位。将制图环境中的制图功能与GIS环境中的查询和空间分析功能进行一体化设计,是本研究的最终目的。2 技术原理由于目前制图环境中使用最多的就是AutoCAD平台,所以该技术的实现依托于AutoCAD平台。AutoCAD制图环境下地图服务资源调用,采用了以MSD标准框架为核心的AutoCAD for ArcGIS API组件,在.NET环境下使用AutoCAD.NET API对AutoCAD应用程序进行开发的方式,将发布的地图服务无缝加载到AutoCAD制图平台,同时能够将地图服务提供的数据资源同DWG数据属性进行挂接,实现了AutoCAD平台下地图服务资源的浏览、要素查询及要素编辑。AutoCAD for ArcGIS API是ESRI公司为了更好的在保持原有的CAD工作流程的同时更好地分享和使用AutoCAD文件中的地理信息内容,而提供的一套开发组件。该组件提供了接口使用户可以按照标准的AutoCAD文件格式去创建和编辑GIS要素类,并为任意AutoCAD实体添加属性,以及搭建基于CAD的GIS应用程序;同时,利用该组件进行开发可以将 AutoCAD 作为GIS方案编辑器,用来将CAD数据组织为可供GIS使用的要素类;此外,利用该组件进行开发能够无需转换底层的GIS数据,就在AutoCAD的环境中直接调用ArcGIS Server发布的企业级数据和影像,同时也能够在AutoCAD中访问ArcGIS Server所发布的地图,并可以把地图服务的内容自动导入到AutoCAD中,它还能够支持ArcGIS Server的缓存地图服务和有安全机制的地图服务。该组件的核心在于ESRI公司最新开发的一套Mapping Specification for DWG(MSD)的数据编码标准,MSD标准的制定是基于DWG/DXF文件格式下的完全开放的资源框架,框架定义了DWG/DXF格式数据挂接GIS的非几何要素属性和地理空间坐标系统的编码方法。MSD数据编码标准在遵循现有的CAD标准的同时,可以让用户像操作GIS数据一样对CAD数据的组织和归属进行创建、操作和定义。用MSD编码方式优化过的AutoCAD文件能够直接以GIS内容的形式用于ArcGIS Desktop、以及定制的AutoCAD应用程序中。该编码规则规定的DWG格式数据和ArcGIS格式数据的非空间要素属性关联的关系结构示意图如图1所示,从图1中可以看出,DWG数据中块表(Block Table)中的实体扩展数据字典(Named Oblect Dictionary)和ArcGIS数据中的要素属性(Feature Class)能够进行有效的关联,所以两者间的数据能够很好的进行互访问。图1 DWG和ArcGIS数据之前非空间要素属性的关联方式3 功能设计为了实现地图资源的调用,需要完成的功能模块主要有权限管理、时效控制、地图加载、地图浏览操作、地图属性查询、数据下载等六个部分。1.权限管理权限管理模块主要是对用户的使用权限进行管理,将地图使用者的使用权限存储在服务器上的数据库中,主要包括对地图服务浏览、地图图片下载、dwg数据下载等的使用权限控制,在用户登录过程中程序根据用户名判断给予该用户何种权限。2.时效控制时效控制模块主要是对用户申请使用地图服务的时间进行控制,将地图服务使用者的使用时效存储在服务器的数据库中,用户在使用地图服务的过程中一旦超过使用时间,将停止提供地图服务,并对用户进行提示,用户可以提交延长使用时间申请。3.地图加载地图加载模块主要包括地图服务加载和地图服务卸载两个功能。地图加载模块主要是程序通过对保存在服务器中用户登陆用户名和密码的判断,同时对使用权限和时效权限进行读取,完成对地图服务的连接并加载。用户登录成功后将登录用户可使用的地图服务以列表形式显示在对话框中,供用户选择加载。其中ArcGIS Server的用户名和密码对用户是不可见的,即用户只能通过程序已定制好的模块直接进行地图服务的连接加载。地图服务卸载则是断开并关闭当前加载的地图服务。4.地图浏览地图浏览操作模块主要包括对加载的地图服务进行各类操作,主要包括地图全屏居中显示、地图框选放大、上一视图重显示、地图是否动态缩放选择、地图是否可见选择等子模块。5.地图属性查询地图属性查询模块包括数据库信息查询和范围选择数据查询两个子模块。数据库信息查询模块是事先将加载地图服务的要素属性数据库存放至服务器,以地图服务提供各属性信息的数据库为例,用户可以通过数据库查询界面采取不同的查询方式对各类属性信息进行查询,并可定位显示用户查询到的属性信息数据范围,范围线用加粗的实线表示;范围选择数据查询模块能够让用户直接在地图界面上选择范围线,实现范围线内的地图服务加载的属性数据的查询操作,以列表形式展现给用户,并且用户可以选择查询到的单条数据进行地图上的定位显示,范围线用加粗的实线表示。6.数据下载该模块根据用户的权限,将当前可视界面下的地图转成的图片保存至本地,还可将该可视界面下的DWG矢量数据保存至本地新建的DWG文件中,以供离线方式下的继续使用。4 功能实现 基于开发组件的适应性和开发效率的考虑,在该功能实现过程中使用了AutoCAD.NET API(基于C#)开发平台。AutoCAD.NET API提供了一系列托管的外包类(Managed Wrapper Class),使开发人员可在.NET框架下,通过编程的方法利用程序集或库显示的AutoCAD和图形文件的对象进行操纵。由于功能实现中最关键的就是地图服务的加载以及属性信息的查询,以下就程序中的该段代码实现进行简要说明:根据输入的URL链接地址,地图资源服务名,用户名和密码,进行地图资源的加载MapServiceList.MapList maplist = new MapServiceList.MapList();ObjectId mapID = maplist.AddNew(/arcgis/services/, 影像11, , );地图资源加载后,通过地图服务的动态列表,获取当前活动文档的地图服务MapServiceList.DocInfo docinfo;docinfo = MapServiceList.DocInfo.ActiveDocData;maplist = docinfo.mapList;MapServiceList.MapService mapservice = maplist0.Map;获取地图服务中属性信息的要素层(Layers)ArcGIS10Types.MapLayerInfo Layers;Layers = mapservice.Layers.LayerInfo;通过AutoCAD中的范围线坐标,获取地图服务中的属性信息集合(results)ArcGIS10Types.MapServerIdentifyResult results;Polyline poly = pEnt as Polyline;Extents3d extend = poly.Bounds.GetValueOrDefault();Point3d max3d = extend.MaxPoint;Point3d min3d = extend.MinPoint;results = mapservice.Identify(min3d.X, min3d.Y, max3d.X, max3d.Y);获取到属性信息集合后,以下用户就可以自行对获得要素信息进行操作系统集成在AutoCAD 2010中,在AutoCAD 2010中加载后提供一系列可视化的操作界面并提供自定义工具,包括菜单、工具栏和对话框等的结合。该程序安装后将随AutoCAD 2010的启动而自行运行。下图是我院设计开发的“地图服务资源调用平台”界面。图2 “地图服务资源调用平台”界面图3 地图服务资源的调用5 成果应用目前,该成果已广泛应用于勘测设计规划行业,主要用于在规划设计中对各类发布的地理信息资源的调用,包括线划地图资源的调用、影像地图资源的调用、专题地图资源的调用、三维地图资源的调用等,并且能够实时获取地图发布资源中的要素属性信息。该成果的实现在对地理信息资源进行更好集成应用的同时,也保证了数据的安全性,即在地图发布的过程中只提供用户需要的资源属性信息,而对不需要提供的信息进行屏蔽。图4展示的是对影像地图资源的调用,图5展示的是线划地图调用中对提供的测绘工程属性信息查询的界面。图4 规划设计调用影像地图服务图5 线划地图服务资源属性信息(测绘工程数据)查询编辑界面6 结束语本文详细介绍了基于MSD标准框架实现AutoCAD制图环境下地图服务资源调用的技术原理、功能设计实现以及相关成果应用。该方法的实现将包含坐标信息的制图环境和包含属性信息的地图服务资源进行一体化整合,满足了地图服务与制图软件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论