地理信息系统ArcGIS开发平台框架
- 格式:pptx
- 大小:14.35 MB
- 文档页数:65
ArcGIS10是ESRI开发的GIS软件,在2010年推出,设计一个统一的地理信息平台,在原有的ArcGIS9的数据服务器ArcSDE和4个基础框架(桌面软件Dasktop、服务器GIS、嵌入式GIS和移动GIS)中添加了ArcGIS Onling功能。
一Desktop GISDesktop GIS包含如ArcMap、ArcCatalog、ArcToobox,以及ArcGlobe等用户界面组件,其功能可分为三个级别:ArcView、ArcEdior和ArcInfo。
ArcReader是一个免费的浏览器组件。
其中,ArcView、ArcEditor和ArcInfo是三个不同的桌面软件系统,共用通用的结构,通用的编码基础,通用的扩展模块和统一的开发环境,功能有简单到复杂。
二Server GISArcGIS10包括三种服务端产品:ArcSDE、ArcIMS、和ArcGIS Server。
ArcSDE是管理地理信息的高级空间数据服务器。
ArcIMS则是一个可伸缩的,通过开放的Internet协议进行GIS地图、数据和元数据发布的地图服务器。
ArcGIS Server是应用服务器,用于构建中式的企业GIS应用,基于SOAP的Web serveices和Web应用,包括在企业和Web构架上建设服务端GIS应用的共性GIS软件对象库。
三Embedded GIS在嵌入式GIS支持方面,ArcGIS10提供了ArcGIS Engine,是应用与ArcGIS Desktop应用框架之外的嵌入式ArcGIS组件。
在使用ArcGIS Engine时,开发者可在C++、COM、.NET和Java环境中使用简单的接口获取任意GIS功能的组合来构建专门的GIS应用解决方案。
四Mobile GIS在移动GIS方面,ArcGIS10提供了实现简单GIS操作的ArcPad 和实现高级GIS复杂操作的Mobile ArcGIS Desktop System。
基于DotNET和ArcGIS Engine的GIS框架的搭建丁圣陶,王磊, 熊伟,孙庆华(中国矿业大学环境与测绘学院,江苏省资源环境信息工程重点实验室,江苏徐州221008)摘要:由于GIS涉及的领域非常广泛,商业公司或者个人想短时间内从基本类库开始编写一个可扩展性强、功能完善的GIS平台成为一件非常困难的事情,其所耗费的人力、物力和成本也非常高昂。
本文在介绍DotNET和GIS框架的基础上,在C#.NET语言环境下应用ArcEngine制作了一个具有常用功能的软件框架。
相比基本类库开发而言,其降低了开发的难度,提高了开发的效率,同时可以在专业模型开发时方便地集成GIS功能。
关键词:DotNET;ArcEngine;框架模型Design and Implementation of DotNet and ArcGIS Engine BasedHouse Property Information SystemDing Sheng-tao, Wang Lei, Xiong Wei, Sun Qing-hua(School of Environment and Spatial Informatics , China University of Mining and Technology , Jiangsu Key Laboratory of Resources and Environmental Information Engineering,Jiangsu Xuzhou 221008,China)Abstract: As a result of the field GIS refers to is very widely,commercial companies or individuals want to start a short period of time from the basic class library to prepare a highly scalable, fully functioning GIS platform has become a very difficult task, which consume human, material and cost also very high. In this paper, base on the Introduction of DotNET and GIS framework, Use ArcEngine produced a common software framework in the C #.NET Application Language Environment. Compared to the basic class library development, it reduces the difficulty of development, improve the efficiency of development and at the same time when in the professional model development can easy integration into the GIS function. Key words:DotNET;ArcEngine;Framework Model引言地理信息系统可定义为:由计算机系统、地理数据和用户组成的,通过对地理数据的集成、存储、检索、操作和分析,生成并输出各种地理信息,从而为土地利用、资源管理、环境监测、交通运输、经济建设、城市规划以及政府各部门行政管理提供新的知识,为工程设计和规划、管理决策服务[1]。
VB+ArcGis Engine开发零基础GIS程序框架教程第一步配置环境和设计界面环境:ArcGisEngine 9.1 + Microsoft Visual Basic 6.0使用Engine控件:ESRI ToolbarControl, ESRITOCControl 、ESRILicenseControl、ESRIMapControl。
(按Ctrl+T调出部件面板,选中以下控件)再从[工程]-[引用]添加一下引用:界面布局(右侧大的MapcControl命名为MapControl1,为显示地图主界面。
左下角的MapcControl命名为MapControl2,作为地图鹰眼。
在工具栏里添加如图的几个按钮即可。
其它再添加一个CommonDialog1和状态栏):在ESRI ToccControl和 ESRIToolbarControl属性里绑定控件EsriMapControl (buddy选择MapControl1)。
这样基本界面就布置好了。
第二步加载地图代码为:'打开地图文档On Error Resume NextDim sFileName As StringWith CommonDialog1.DialogTitle = "Open Map Document".Filter = "Map Documents (*.mxd;*.pmf)|*.mxd;*.pmf".ShowOpenIf .FileName = "" Then Exit SubsFileName = .FileNameEnd WithIf MapControl1.CheckMxFile(sFileName) ThenMapControl1.LoadMxFile sFileNameMapControl1.Extent = MapControl1.FullExtentElseMsgBox sFileName & " is not a valid ArcMap document"Exit SubEnd IfStatusBar1.Panels(3).Text = sFileName ‘状态栏显示文件路径第三步让鹰眼地图跟MapControl1的地图互动1.先在声明里定义几个变量:'地图鹰眼Private m_pEnvelope As IEnvelope ' The envelope drawn on the MapControl Private m_pFillSymbol As ISimpleFillSymbol' The symbol used to draw the Private WithEvents m_pTransformEvents AsdisplayTransformation2.定义如下函数:Private Sub CreateOverviewSymbol() '设置鹰眼图中的红线框'Get the IRgbColor interface.DimpColor As IRgbColorSetpColor = New RgbColor'Set the color properties.pColor.RGB = RGB(255, 0, 0)'Get the ILine symbol interface.Dim pOutline As ILineSymbolSetpOutline = New SimpleLineSymbol'Set the line symbol properties.pOutline.Width = 1.5pOutline.Color = pColor'Get the IFillSymbol interface.Setm_pFillSymbol = New SimpleFillSymbol'Set the fill symbol properties.m_pFillSymbol.Outline = pOutlinem_pFillSymbol.Style = esriSFSHollowEnd SubPrivate Sub MapControl2_OnAfterDraw(ByValdisplay As Variant, ByVal viewDrawPhase As Long)Ifm_pEnvelope Is Nothing Then Exit Sub'If the foreground phase has drawnDimpViewDrawPhase As esriViewDrawPhasepViewDrawPhase = viewDrawPhaseIfpViewDrawPhase = esriViewForeground Then'Draw the shape on the MapControl.MapControl2.DrawShape m_pEnvelope, m_pFillSymbolEndIfEnd SubPrivate Sub m_pTransformEvents_VisibleBoundsUpdated(ByValsender As esriDisplay.IDisplayTransformation, ByVal sizeChanged As Boolean)'Set the extent to the new visible extent.Setm_pEnvelope = sender.VisibleBounds'Refresh the MapControl's foreground phase.MapControl2.RefreshesriViewForegroundEnd Sub3.在Form_Load 事件中调用CreateOverviewSymbol:Private Sub Form_Load()Call CreateOverviewSymbolEnd Sub4.在MapControl1的OnMapReplaced中加入以下代码:Private Sub MapControl1_OnMapReplaced(ByValnewMap As Variant)'当主地图显示控件的地图改变时,鹰眼中的地图也跟随改变'Get the IActiveView of the focus map in the PageLayoutControl. DimpActiveView As IActiveViewSetpActiveView = MapControl1.ActiveView.FocusMap'Trap the ITransformEvents of the PageLayoutControl's focus map. Setm_pTransformEvents =pActiveView.ScreenDisplay.displayTransformation'Get the extent of the focus map.Setm_pEnvelope = pActiveView.Extent'Load the same preauthored map document into the MapControl. MapControl2.LoadMxFile MapControl1.DocumentFilename'Set the extent of the MapControl to the full extent of the data. MapControl2.Extent = MapControl2.FullExtentEnd Sub5.当点击鹰眼中的某个地方时,主窗口的地图跟随着改变:Private Sub MapControl2_OnMouseDown(ByValbutton As Long, ByVal shift As Long, ByVal x As Long, ByVal y As Long, ByValmapX As Double, ByVal mapY As Double)Dim pPt As IPointSet pPt = New PointpPt.PutCoords mapX, mapY'改变主控件的视图范围MapControl1.CenterAt pPtEnd Sub这样地图鹰眼就做好了。
第一章 ESRI全新AM/FM/GIS平台—— ArcGIS体系结构及技术介绍1.ESRI的AM/FM/GIS技术观点ESRI从事AM/FM/GIS理论研究、产品开发及应用拓展已有三十余年的历史,遍及全世界数以百万计的用户,为ESRI的技术进步和自身的壮大提供了庞大的推动力和进展空间。
ESRI以其深厚的理论及工程技术底蕴,加上壮大的技术开发力量,在对广大用户大量的反馈信息进行分析、整理和挖掘的同时,始终踊跃地对各类主流的IT技术加以普遍而深切的关注,并对自己的产品体系结构及技术进行及时的优化和重构。
从而使ESRI得以长期维持GIS领头羊的地位,并为GIS界和广大用户持续地提供各个不同的进展时期中最新、最好、最强有力的技术、效劳和支持。
随着GIS技术在国民经济建设各领域、各部门的应用日趋普及和深切,GIS的潜在价值正在被不断地发觉和挖掘。
GIS系统作为国民经济重要基础设施之一的重要性和不可替代性正在被普遍熟悉和同意。
GIS正在慢慢成为各类各样基于IT的信息系统和应用系统的公共平台。
GIS需要发挥的已不单单是其最传统同时也是最大体的作为空间查询检索和专题制图辅助工具的那些功能和作用,更重腹地,GIS正在慢慢成为一种与咱们的工作、学习、生产和生活密不可分的重要因素。
关于现代IT文明的各个组成部份,如:网络、运算机、操作系统、数据库、人机交互、软件工程和程序设计语言和方式等,GIS应该采取的是一种踊跃借鉴、充分融合的思路。
就FM(公共设施治理)而言,一个单纯为设施治理而成立的一个独立的“纯FM”系统已远远不能知足要求。
设施的前期计划、工程实施、效劳保障、系统保护和客户治理等,都必需充分地利用除各类专业设施数据之外的其它空间数据及相关属性数据,诸如:基础空间定位数据、行政区划数据、城市计划数据、国民经济产值散布数据、人口统计数据、客户及潜在客户散布数据、竞争对手势力及其客户散布数据等,通过对这些数据的综合空间分析以得出能够对FM的计划、治理和效劳等具有科学参考价值的辅助决策信息,从而在效率和质量两方面同步提高公共设施的计划、治理和效劳水平。
《ArcGIS Engine+C#实例开发教程》—————By Daniel 实习二:建立ArcGIS Engine 应用程序框架2.1地图浏览1、新建项目启动VS2010,选择“文件|新建|项目”,在项目类型中选择Visual C#,再选择Windows 应用程序模板,输入名称“MyMap”,点击确定。
在解决方案管理器中将“Form1.cs”重命名为“MyMap.cs”,在设计视图中,选中窗体,将其属性中的“Text”改为“MyArcGIS”。
2、添加控件选择工具箱中的“菜单和工具栏|StatusStrip(状态栏)”,将其拖入到窗体。
选择工具箱中的“ArcGIS Windows Forms”节,将“AxToolbarControl”控件拖入窗体,并将其属性中的Dock设置为Top。
选择工具箱中的“容器|SplitContainer(容器)”拖入窗体,并将其属性中的Dock设置为Fill。
将TabControl控件拖入Panel1,将Alignment属性设置为Bottom,Dock属性设置为Fill。
点击TabPages属性右边的按钮,弹出TabPage集合编辑器,将tabPage1的Name设置为“Layer”,Text设置为“图层”;将tabPage2的Name设置为“Property”,Text设置为“属性”。
如下所示:选择“图层”选项卡,拖入TOCControl控件,设置Dock属性为Fill。
选择“属性”选项卡,拖入所有Windows窗体|PropertyGrid控件,设置Dock属性为Fill。
拖入TabControl控件到Panel2,设置Dock属性为Fill。
并用上述类似的方法,将两个选项卡的Name和Text分别设置为:(Map、地图)和(Layout,制版)。
选择“地图”选项卡,拖入MapControl控件,设置Dock属性为Fill。
选择“制版”选项卡,拖入PageLayoutControl控件,设置Dock属性为Fill。
基于 ArcGIS技术的地理信息系统开发初探摘要:随着我国经济的迅速发展,逐渐步入高质量发展的全新阶段,在这一时代背景下越来越多的先进科技开始涌现。
在信息技术的推助下,地理信息系统也得到广阔的发展空间,用于管理和分析空间数据,绝大多数涉及到空间数据和信息的部门都可以运用地理信息系统来辅助决策。
本文简单介绍了地理信息系统,分析基于ArcGIS技术的地理信息系统开发。
关键词:ArcGIS技术;地理信息系统;空间数据库引言ArcGIS地理信息系统是目前应用非常普遍的空间信息系统管理技术,凭借着ArcGIS技术的功能性与技术性优势,地理信息系统的功能性也得到有效拓展和补充,在许多领域中得到广泛应用。
ArcGIS技术的主要优势在于,免除传统管理下耗时耗力的计算过程,可以实现更大批量数据的更快分析,进一步提高数据分析效率,为决策和管理工作提供更多可靠的解决方案。
一、地理信息系统介绍地理信息系统也就是GIS,属于一类决策支持系统,具备着信息系统的各项特征。
地理信息系统和其他信息系统的差异就在于,地理信息系统可以将现实中的地理要素及现象等直观表现出来,而且存储与处理后的信息也经过了特殊的地里编码,地理位置信息以及区位周边的物的信息也能被记录统计下来,是地理信息检索中的主要条件之一。
地理信息系统可以将地图这类视觉化的地理分析和寻常的数据库操作进行集成化,可以对空间数据信息进行存储、分析、输出等,能够收集各种地质下的事与物的信息,并将其进行成图处理。
地理信息系统可以是一门学科,集结计算机科学、地理学、地图学等多个学科于一身,描述和分析控价内心戏理论与方法,具有明显的交叉性特征。
同时地理信息系统也是一类技术系统,将地理空间数据库作为基本要素,运用地理模型分析法,采集空间与时间信息。
和寻常的信息系统相比,地理信息系统通常分为计算机软件与硬件、空间数据、系统管理操作四个部分,最基本的便是计算机软件与硬件两个部分,空间数据能够将地理信息反馈出来,操作人员可以通过特定的操作来调整系统运作模式以及地理信息表述方式[1]。