基于ArcGIS Engine的三维地理信息系统开发及应用
- 格式:doc
- 大小:21.00 KB
- 文档页数:5
3DGIS系统地理信息系统研发解决方案3DGIS(三维地理信息系统)是目前应用广泛的地理信息系统(GIS)
技术。
它可以将GIS中的地图数据成像为一个三维模型,从而提供更全面、更准确的地图分析和可视化,为地理信息系统的发展提供更多的空间跨度。
3DGIS主要应用于地质勘察、科学研究、工程设计、管理统一等多个
领域,帮助企业和用户可视化管理和研究地球物理的地质结构。
3DGIS系
统不仅能够提供更为精确的定位管理,更能够便于理解地质结构和分析地
质环境的变化,有效的提升科学研究的效率和质量。
一、数据采集。
3DGIS系统的有效性与数据的准确性及覆盖度有关。
收集和处理有效的数据是系统建设的首要任务,需要对数据形式、源、格式、位置等有多方面的要求,从而得到高质量和准确的地图数据。
二、地理信息建模。
建模是3DGIS系统中的核心步骤,是将地图数据
编码为一个连续的可视化对象,从而实现了普适应用平台。
基于ArcGIS的地理信息系统设计与实现地理信息系统(Geographic Information System,简称GIS)是一种基于地理位置信息管理、分析和可视化的技术系统。
ArcGIS是由Esri(环球信息参考系统公司)开发的一套用于地理数据处理和分析的软件平台。
本文将介绍基于ArcGIS的地理信息系统的设计与实现。
一、引言地理信息系统(GIS)是一种集地理空间数据获取、存储、处理、管理、分析、可视化于一体的技术系统。
GIS 在城市规划、资源管理、环境保护、农业等领域都有广泛的应用。
而ArcGIS作为目前最主流的GIS软件平台,可以帮助用户进行各种地理数据的处理和分析,为决策提供科学依据。
二、地理信息系统设计与实现的基本步骤1.需求分析:首先需要明确地理信息系统的设计目标和用户需求。
这包括确定系统的功能模块、数据来源、数据需求、空间分析方法等。
2.数据采集与处理:地理信息系统的基础是地理空间数据,包括矢量数据和栅格数据。
数据的采集可以通过GPS测量、遥感影像解译、数据库导入等方式进行。
采集到的数据需要进行处理,包括数据清洗、数据转换等,以满足系统需求。
3.数据库设计:GIS系统需要建立相应的地理数据库,用于存储和管理地理空间数据。
数据库设计需要考虑数据模型、数据结构、数据表等方面,以保证数据的有效性和一致性。
4.系统架构设计:地理信息系统的架构设计是指确定系统的模块组成、模块之间的关系、数据流程等。
常用的架构设计包括单一服务器架构、分布式架构等。
5.系统开发与编程:使用ArcGIS平台进行系统开发与编程,包括界面设计、数据处理、空间分析等功能的实现。
开发过程需要使用ArcGIS自身的API和开发工具,如ArcObjects、ArcPy等。
6.系统测试与优化:完成系统开发后,需要进行系统测试,包括功能测试、性能测试、稳定性测试等。
根据测试结果对系统进行优化,提高系统的稳定性和性能。
7.系统部署与应用:将已经开发、测试、优化完毕的GIS系统部署在实际应用环境中,并进行用户培训和技术支持。
基于ArcScene的三维地形可视化及其应用肖海红(神华(北京)遥感勘查有限责任公司北京 100085)【摘要】三维地形可视化是目前众多领域的研究热点,可广泛应用于山地、丘陵、沙漠等领域的各种工程规划和优化设计。
本文主要介绍了基于ArcScene平台的地形三维可视化的技术流程和三维动画制作方法。
以北京市房山区大安山地区为例,论述了三维地形场景在北京市矿产资源开发状况遥感动态监测和调查项目中的应用和作用。
【关键词】三维地形可视化DEM TIN 三维动画1 引言三维地形可视化技术是指在计算机上对数字地形模型中的地形数据进行逼真的三维显示、模拟仿真、简化、多分辨率表达和网络传输等内容的一种技术[1],它可用直观、可视、形象、多时角、多层次的方法,快速逼真的模拟出三维地形的二维图像,使地形模型和用户有很好的交互性,使用户有身临其境的感觉。
三维地形逼真模拟在地形漫游、土地规划、三维地理信息系统等众多领域都有着广泛的应用[2]。
结合项目的实际需求,我们制作了北京市密云县潮白河中上游区和房山区大安山两地区的三维地形场景,并按照一定比例尺和飞行路线生成了研究区域的虚拟三维影像动画,对项目的深入研究和完善都起到了重要作用。
2 项目介绍北京市矿产资源开发状况遥感动态监测项目,是北京市国土资源局委托我公司充分应用遥感技术、地理信息技术和全球定位技术搭建可视化平台,对北京市密云县潮白河中上游区砂石开采现状、房山区大安山地区煤矿开采现状,及其对矿山环境的影响,进行试点调查和监测。
其目的在全市范围内进行推广,以矿产资源的非法开采和矿山环境严重破坏现象监测为主题,采用形象的图形图像语言和简便的计算机表达方式,为北京市国土资源局及其相关处室进行矿产资源的开发和管理,提供科学依据。
本项目的主要研究方法:(1)收集2004 年10月、2005年10月、2006年4月和2006年11月的不同时相、不同种类和不同比例尺的遥感图像,包括法国高分辨率SPOT5卫星数据、美国高分辨率QuickBird数据、IKONOS数据以及航空遥感数据。
基于ArcEngine的过断层巷道开拓角度三维模拟方法研究及应用我国煤矿资源极为丰富,但适于露天开采的煤炭资源比例较少,约占总存量的7%左右。
巷道开拓作为井下开采的重要环节,直接影响着我国煤矿的安全水平及生产能力。
在煤矿井下巷道开拓中,地质构造是影响巷道掘进的首要因素,而断层则是一种常见的地质构造。
当巷道开拓遇到断层时,选择一个合理的开拓角度,对于安全生产,提高开拓效率,减小生产困难程度及制定合适的工作计划,都有非常实际的意义。
(现在的决策方式)ArcEngine是用于构建制定应用的一个完整的嵌入式的GIS组件库。
使用ArcEngine可以对区域地质及巷道三维信息进行模拟并对相关巷道开拓数据信息进行计算,使得工程人员对区域三维空间概况的理解更加直观和形象,这将对生产技术的决策更加准确和方便。
本文探讨了如何使用C#语言开发基于ArcEngine的过断层巷道角度三维模拟的软件,并使用该软件对生产中的一个实例进行了决策。
1 工程需求分析断层是构造运动中广泛发育的构造形态。
在地壳运动中由于强大的压力和张力超过岩层本身强度,从而对岩层产生破坏作用形成微隙,许多微隙连在一起就形成一个断层面。
断层面两侧会产生滑动,根据滑动的方向,可以分为正断层和逆断层。
上盘下降,下盘相对上升的断层称为正断层。
反之,上盘上升,下盘相对下降的断层称为逆断层。
过断层一般要遵循以下几个原则:看顶板的状况,如顶板较好时,不破坏顶板,而以卧底为宜;如果断层以外不宜采取,就改造断层;挑顶与卧底的坡度还应要与辅助运输、皮带运输以及综掘机的使用等相协调适应;最后还要注意顶底板的坚硬程度等。
(《煤矿掘进迎头过断层技术探析》)由于断层两盘的相对运动,相互挤压,使附近的岩石破碎,会形成与断层面大致平行的破碎带,也称断层破碎带。
断层破碎带的宽度有大有小,小者仅几厘米,大者达数公里,甚至更宽,与断层的规模和力学性质有关。
(《构造地质学教程》陆克政 P139)因此在断层附近,煤层会变软,淋水增大,顶板往往比较差,破碎带极易冒落。
基于ArcGIS和Global Mapper软件实现三维地形可视化与测绘的方法及流程摘要:科技的进步和人们生活水平的提高,人们对三维地形可视化技术越来越关注,三维地形可视化技术以地形地貌为研究重点对象,在地理信息系统和测绘工程等领域被广泛地应用。
其中用ArcGIS 和Global Mapper软件来实现地形可视化和测绘因为使用方便和技术的可靠性而受到更广泛的关注,本文先介绍了ArcGIS 和Global Mapper软件的特点和优势,然后对运用该软件如何实现三维的地形可视化与测绘方法和流程进行详细的介绍和说明。
关键词:ArcGIS,Global Mapper,三维地形可视化技术,测绘,方法及流程地形可视化在上世纪60年代随着地理信息系统概念的出现而形成。
随后以研究地形地貌为重点的地形三维可视化技术在虚拟现实技术、地理信息系统和测绘工程以及土地管理和气象水文研究等领域应用逐渐广泛,并受到了人们的普遍关注。
科技的发展使我国的测绘作业从传统模式转向综合化信息获取模式。
现在的地形书记获取量与过去相比较已经扩大到了原来的几十倍。
三维地形不仅要精确地进行地形模拟,还要对有效地对大量数据进行管理,实现高精度,快速度,及时性地显示地形数据,所以,在三维可视化中,三维地形的模拟和显示是重点。
一、ArcGIS 和Global Mapper软件(一)ArcGIS软件ArcGIS是有共享的GIS组件构成的通用组件库来实现三维地形可视化的全面GIS平台。
它由三个主要部分构成:1,ArcSDE。
它是一个高级空间数据服务器,在基于多种关系型数据库管理系统下进行地理信息管理。
2,ArcIMS。
它是地图服务器,特点是可伸缩,工作原理是在开放性的Internet 协议的基础上对GIS 地图,数据和元数据进行发布。
3,ArcGIS Server。
它是在企业和Web 框架上建设成的服务端GIS应用和软件共享的对象库,是一个具体的应用服务器。
基于ArcGIS Engine的三维地理信息系统开发及应用作者:刘阳娜来源:《电脑知识与技术》2018年第03期摘要:在可视化技术、空间技术、计算机图形技术等不断发展过程中,逐渐地转变原有的二维地理信息系统,变为三维地理信息系统。
现阶段,地理信息系统领域中,三维地理信息系统已经成为一个新的发展趋势,不过迄今为止,仍然只是在部分实验性原型系统中实现了部分的三维地理信息系统功能,并未广泛推广,而该项技术的广泛推广对于地理信息系统发展来说,意义重大,因此,该文在ArcGIS Engine基础上,分析了三维地理信息系统的开发及应用。
关键词:ArcGIS Engine;三维地理信息系统;开发;应用中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)03-0005-02相比于二维地图,三维显示地形地物时,不仅利于人们直观的观看,且会给人们营造出身临其境的感觉,还能将人们利用地图的各种需求得到充分满足。
因此,不断有公司推出三维图形显示软件,其中,典型代表之一即为GOOGLE EARTH(GOOGLE公司开发),但由于单位数据具有庞大的数据量,现有三维地理信息系统产品均存在一定的不足之处,如建模复杂、代码众多、浏览速度慢等,导致国内并未普遍的应用三维地理信息系统。
ArcGIS Engine由ESRI公司推出后,有利于将上述问题妥善的解决,由此可见,本文在ArcGIS Engine基础上研究开发三维地理信息系统的方法具有十分重要的现实意义。
1 ArcGIS Engine三维组件ArcGIS Engine属于完整GIS组件库,开发公司为美国ESRI公司,组成为一组核心ArcObject包,用于构建定制应用,不仅能够对多种应用程序接口做出有效支持,且可进行自定义独立独立信息系统应用程序的建立,拥有的高级功能众多。
在ArcGIS Engine中,所提供的应用编程接口有三种,分别为C++、COM、.NET,对于存在二次开发需求的用户,其留有的自由空间非常大,用户可按照自身需求,进行相应级别开发方式的选择,促进开发工作便利的完成。
ArcGIS Engine提供的控件也非常多,如TocComtrol、ToolBarControl、GlobeControl,相比于ArcObject,ArcGIS Engine更易掌握、操作简单,且一定的增强了功能。
ArcGIS Engine 提供的各种控件分别负责实现不同的功能,如ToolBarControl控件,功能按钮主要由其提供,实现打开专题地图、浏览专题地图等操作;再如TocControl控件,实现分层显示、管理专题地图,并将图例提供出来,支持修改地图[1]。
在其众多控件中,核心控件为SceneControl控件,负责三维浏览、漫游、控制显示专题地图,此控件与GlobeControl控件一起,极大的扩展了ArcGIS Engine在三维开发方面的能力。
2 基于ArcGIS Engine的三维地理信息系统的设计与实现2.1 系统开发原则地理信息系统具有较强的专业性、综合性及复杂性,必须要以软件工程规范程序为依据,严格开展系统建设工作,保证系统结构框架科学合理,并兼具高效性与先进性,使用户需求最大限度地满足。
此外,三维地理信息系统设计过程中还应坚持以下几方面原则:第一,面向对象,面向对象抽象归纳了实体,封装实体属性及操作,形成类,本研究开发系统时,工具采用ArcGIS Engine和Visual C++6.0;第二,应用程序与数据分离,程序代码分离图形及属性数据库后,可使系统的可维护性及可移植性增强;第三,实用性,三维地理信息系统是一个应用软件,只有具备实用性时,才能提升其运行效率,并延长运行寿命;第四,先进性,开发技术要选择国际上先进的、成熟的,采用国际最新的软硬件平台及设备,使系统与当前发展相适应,并与今后发展方向相符合;第五,高效性,提高工作效率为开发软件的一个重要目的,因而系统开发中必须要坚持此项原则,才能保证软件开发成功;第六,规范性,标准化、规范化与统一化是系统设计过程中所着重强调的,只有如此,系统才可以正常运行,实现共享系统内的数据信息[2]。
2.2 系统开发环境开发三维地理信息系统时,操作系统选择为Windows XP,基础为ArcGIS地理信息系统处理平台,开发环境为Microsoft Visual C++ 6.0,集成二次开发中调用ArcGIS Engine组件,数据库采取Oracle 9i,调度管理空间数据通过ArcGIS空间数据引擎ArcSDE实现。
2.3 总体结构设计系统体系结构采用C/S结构,即客户端/服务器结构,所有系统数据均存储在服务器中,客户发送请求后,以此为依据,将相应数据发送给客户;客户端负责特定数据的接收,并进行数据的计算、分析及统计,显示结果。
在服务器端,包含Oracle综合数据库和数据库引擎ArcSDE,二者协同完成空间数据的存取,并由数据库引擎ArcSDE管理Oracle综合数据库内的空间数据,使三维显示、空间分析等实现。
2.4 系统数据管理在三维地理信息系统中,具有基础性作用的为组织、管理数据库,直接对用户使用效果、工作效率产生影响。
空间数据库要想高性能的建立,关键在于空间数据模型恰当选择。
本文中,以Gocdatbaase数据模型作为空间数据模型。
ESRI公司提供了三种Geodatebase数据库的创建方法:第一种是向Geodatebase数据库内转换已经存在的数据,第二种是利用ArcCatalog、ArcTool提供的工具进行Geodatebase数据库创建,第三种利用UML、Case工具进行Geodatebase数据的创建[3]。
现阶段,Geodatebase结构包含三种,这三种基本具有相同的功能,只是通过版本控制由其中的ArcSDE Geodatebase支持,允许一个地理数据库同时被多个用户访问、编辑。
对于三维地理信息系统开说,空间数据及属性数据为两类主要涉及的数据,因此,Geodatebase数据创建过程中,本文采用第二种方法,而管理操作数据采用ArcMap 等三维建模软件。
2.5 系统功能设计开发三维地理信息系统过程中,重要环节之一即为功能设计。
本文所设计的系统中,包含四个基本功能模块(数据管理、数据库访问、三维显示、打印输出)和四个高级功能模块(生成DEM、场景设置、三维空间分析、信息查询),每个功能模块下设多种细化功能。
2.6 系统实现2.6.1 数据访问模块开发数据量及需求不同情况,Geodatebase结构可采用不同的,因此,数据访问方式也存在差异,本系统中,Personal Geodatebase、File Geodatebase、ArcSDE Geodatebase数据结构的数据加载方法均已提供,其中,无需通过ArcSDE数据库引擎即可实现数据加载的为前两种数据结构,数据类型直接加载。
在数据类型方面,ArcGIS提供的数据类型有两种,一种为RASTER,与GRID数据对应,一种为TIN,与TIN数据对应。
另外,ArcGIS中,可以利用feature class数据类型表达矢量数据,因此,以空间数据为依据,表达方式包含矢量数据模型、TIN数据模型及栅格数据模型三种,设计了能够将feature class数据类型、DEM数据类型加载实现的方法。
2.6.2 三维显示模块包含三维浏览及图层管理两项功能。
三维浏览方式设计为多种,如放大浏览、缩小浏览、全幅显示等,实质上,观察者改变自己的视点位置及视野范围时,即会引起三维地图可视范围的变化。
ArcObject提供Camera对象,其可对可视范围变化做出控制。
图层管理功能主要通过ArcGIS Engine提供的tocContorl空间实现,通过该项功能,用户可对整个场景的某些属性做出直接控制,也可利用特征属性,实现对场景内某些位置的选取,另外,也可对三维场景做出任意视角的浏览[4]。
2.6.3 生成DEM模块生成DEM模块具备三种功能:第一,生成RASTER数据,规则网格模型为数据高程模型DEM类型中的一种,有多种方法可建立规则网络模型,通常,采集到的数据存在形式为离散点,只有在这些采样点上数据才能有效、准确的存在,但在实际应用中,未采样点的值也需要使用,此时,该数据需要通过已采样点来推算,采样点插值后,连续表面由其结果生成,在此表面上,每一点值均可获得,插值方法开发实现后,RASTER数据即可生成;第二,生成TIN 数据,DEN数据生产中,TIN数据经常采用等高线法、离散点的高程点来生成,在ArcGIS 中,将等高线与离散点均看成feature class数据类型,进行相应的处理,由此一来,含高程值字段的feature class数据集可被获取,该数据集即为TIN数据生成的数据源;第三,提取等高线,DEM表面加载后,程序将其高程范围计算出来,定义输入后,等高线两个参数输出,利用这两个参数,等高线信息被计算出来,完成提取等高线[5]。
2.6.4 三维场景设置模块该模块可以实现三维场景基本属性的改变,利用该模块提供的垂直拉伸、叠加纹理、分层设色功能,达到改变的目的。
例如垂直拉伸,是指将应用的地形图层拉伸,将加载表面数据集获取,之后判断得到的表面数据为何种类型,最后,完成图层基准高、垂直拉伸系统的设置,点击刷新,地形改变效果即可呈现出来。
2.6.5 三维空间分析设置完成三维场景之后,即可根据需求进行三维空间分析工作,本文设计的三维空间分析模块中,具体功能包含查询属性、查询空间位置、分析坡度、分析坡向、分析通视、绘制剖面图,满足用户的各种分析需求。
3 三维地理信息系统的应用本节中,以某县为例,利用上述系统开发方法,设计该县的综合三维地理信息系统,设计完成后,将该县的地形、地貌真实地再现出来,同时,通过与多媒体信息相结合,使区域内的政治经济、人文历史、名胜古迹等均展示出来,实现办公系统的信息化与智能化。
3.1 数据构成在该县三维地理信息软件中,包含三种数据,分别为矢量数据、高程数据和正射影像数据,总量约为15G,其中,矢量数据可细分为若干层,如控制点层、居民地层、管线设施层等。
利用ArcSDE,这些数据仅在Oracle数据库中存储,同时,数据索引由ArcSDE自动建立。
通过统一管理及索引,极大地提升了数据库读取数据的效率,确保可以显示出海量数据,不过,并不能直接使用这些数据,需进行相应的处理,使高程信息包含在矢量数据和正射影像数据中。
首先,这两类数据均架加载在ArcScene或ArcGlobe中,之后调出其属性对话框,设置高程信息字段属性值,变为相应的高程数据信息,将三维地形数据逼真的生成。
3.2 系统功能该县三维地理信息系统中,共包含7项功能,分别为基本浏览功能、飞行功能、坡度及坡向计算功能、可视性分析、土方量算、热点区域功能、地图切换功能。