您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页浅谈ArcGIS Server的开发技术

浅谈ArcGIS Server的开发技术

来源:化拓教育网
维普资讯 http://www.cqvip.com 高新技术 SCIENCE&TECHNOLOGY INFORMATION 浅谈ArcG IS Server的开发技术 吕继生, 黄胡华z 朱志军。 (1.奉华市测绘院 浙江奉华 31 5500 2.福州大学空间信息工程研究中心 福建福州 350002 3.东华理工学院 江西抚州 344000) 摘要:本文就ArcGIS Server开发中的相关技术进行了介绍,并举例开发了一个相应的实例,说明了利用此技术开发WebGIS的灵活性, 在很大程度上弥补了ArcIMS构建WebGIS的不足。 关键词:地理信息系统 ArcGIS Se rver。WebGIS 中图分类号:G250.73 文献标识码:A 随着计算机技术和全球信息网络技术的 飞速发展,G1S技术得到大幅度的提升和普 及。从C/S架构到B/S架构再到多层结构。 从单机模式到分布式系统,WebGIS的发展越 Else’如果用户想要连接的事互联网上的 Server,获取URL地址 pC0nnecti0nPr0s、SetProperty ”url”, txtServer、Text .Type=vbPicTypeBitmap hBmp=hBitmap hPal=0 ..End With 来越成熟。然而如何构建一个集中管理的 G1S,从而能在其他桌面系统上应用时节约时 间和开始,以及在一个集中的环境里创建和管 理G1S服务。ArclMS在这点上很难完全满 足用户的要求。 很多组织需要为空间分析创建服务器端 应用程序,分析结果在ArcG1S得以显示。一 些用户需要创建简单的编辑应用程序,通过小 客户端来更新地理数据库。相反地,其他一 些用户则希望登出和登人一个使用胖客户端 (比如ArcEditor)地理数据的版本,来进行 更为复杂的编辑。ArcGIS Sever正好满足 了他们的要求。它是一个基于服务器的 ArcObiects组件函数库(包括扩展模块)的 开发环境。 1.ArcObjects技术 ̄ArcG l S Server技术 1.1ArcObiects技术AO是ESR1公司 ArcG1S家族中应用程序ArcMap,ArcCatalog 和ArcScene的开发平台,它是基于Microsoft (s)COM技术所构建的一系列COM组件集。 因此它的开放性和扩展性很强大。AO可以 写为三种形式。 a使用v B A对已经存在的程序,如 ARCMAP,ARCCATOLOG做定制,这是最 简单的开发方式。在这种情况下,Application 和ThisDocument都已经存在。我们可以使用 AO扩展地图展示和数据管理的功能。 b把AO写为DLL组件或者ACT1VEX组 件形式,方便传播使用,由于DLL组件是二进 制文件,因此可以跨平台和跨语言传播。 c使用AO开发单独的G1S软件。在这种 情况下我们可以使用一个MAP控件方便我们 的地图显示。单独开发自己的G1S,可以使用 自定义的界面,但是这种方法并不被推荐,因为 这种无法使用已经存在的各种程序和功能。 1.2ArcG1S Server技术ArcG1S Server 开发实例主要程序如下分两步:一是连接服务 器,二是显示其内容。关键代码如下: Private Sub cmdLoginClick() Set mpMapServer=Nothing’释放 Server Objects Dim pC0nnPr0pe rtys As lpropertySet Set pC0nnPr0pe rtys=New PropertySet If optLAN.Value=True Then ・如果用户想要连接的是局域网内的 Server,获取机器名 pC on n e ctionP ro s.S etP rop e rt y ”machine”.txtServer.Text End If’通过一个lAGSServerC0nnect Dim result As Long’创建一个新的图 ionFactory接口的对象 片对象 ’创建AGsserverc0nnecti0nFact0rv的 resuh=OleCreatePicturelndirect(Pic, 实例,并通过它连接Server地图服务 liD——IDispatch,True,pPie) Dim pAGSServerC0nnectFact0ry As Set pPersist=DPic 1AGSServerConnectionFactory pPersist、Load pMemoryBlob Set pAGSServerConnectFact0rv=New pieMap.Picture=DPic AGSServerC0nnecti0nFact0rv picMap.Refresh Set m—pAGSSe rverConnection= End Function pAGSS e rv e rCo nn e ctFacto ry.Ope n (p(:0nnPr0pe rtys,0)’连接成功 2.实例结果展示: ’获取这个连接中所有的map server对 当完成编译运行可以后出现如下图l所 象 不: End Sub 以下是显示Server地图服务的内容的关 键代码: P ri v at e F u n cti o n Di s pM a p (pMapDescriptoin As 1MapDescription, pMapServer As 1MapServer) Dim mjmageType As llmageType, m—imageDisp As llmageDisplay D i m p l m a g e D e s c r i p t A s llmageDescription ’首先设定image description为地图服务 的图片输出 Set mimageType=New lmageType —图1 ArcGIS Sever实例图 ’创建一个新的lmageTyo ̄并将其设定为 可以看到在地图服务器和地图对象两个 JPG ComboBox中,我们已经可以看到Server所发 Dim byteMDf 1 As Byte 布的服务已经被拆分并且可以选择。最后我 ’将Mime的数据类型转换成图片 们在最下方的地图显示区域中可以清楚地看 byteMD()=plmageResuh.MimeData 到Server服务中所发布的所有内容。 D i m p M e m o r y B l o b A s lMemorvBlobStreamVariant 3.总结 S e t p M e m o r y B l o b = N e w 本文在简介ArcObiects和ArcG1S Server Memory BloblStream 的基础上,通过ArcG1S Server的一个简单实 pMemoryBlob.1mportFromVariant 例介绍,说明基于ArcG1S Server技术开发 byteMD WebGls的灵活性,在很大程度上弥补了 Dim pPersist As lPersistStream. ArclMS构建WebG1S的不足。作为一个高 hBitmap As Long,pPicture As 1PictureDisp 效的G1S服务器,其面向, 大的用户包括Web Dim Pic As PicDesc.pPic As lPicture. 应用用户、Web应用开发人员、桌面G1S用 1lD lDispatch As Guid 户桌面/Engine G1S开发人员以及G1S服务 With liD一1Dispatch 器管理员。通过构建集中的G1S解决方案,来 .Datal=&H20400,Data4(01=&HCO。 集中管理G1S。在新增的版本中还能进行更 Data4(71-&H46 多灵活的定制。 End With’将GU1D设定为1Dispatch接 口的GUlD 参考文献 With Pic 『11吴功和等.基于ArcG1S Server分布式 .Size=Len(Pic1 G1S的应用,测绘科学,2006.26(1):52—55 科技资讯SCI ENCE&TECHNOLOGY INFORMATION 5 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务