《SketchUp与ArcGIS的校园设计》由会员分享,可在线阅读,更多相关《SketchUp与ArcGIS的校园设计(10页珍藏版)》请在金锄头文库上搜索。
1、基于 Sktech-UP 与 Arcgis 的校园3DGIS 的设计与实现摘要:三维可视化与空间分析相结合是虚拟现实研究发展的一个趋势。通过利用Sktech-up 三维建模技术和 arcgis9.3 的 Geodatabase 数据模型、 Arcsecene 的三维应用环境和空间分析功能,采用 Arcgis engine 9.3 和 visual studio 2005(c#)的二次开发技术,设计与开发了西北农林科技大学南校区三维地理信息系统,并对相关技术和实现过程进行了探讨。系统实现了校园二维数据的图层管理、编辑管理、符号设计、空间查询、最优路径动态分析、长度面积量算和专题制图等功能;三维模
2、型的导入和导出、图层管理、三维场景浏览(导航、飞行、缩放、漫游等) 、三维地物空间查询、三维交互测量以及二维矢量图形和三维场景的互动等功能。该系统的设计与开发是校园 3DGIS 理论和技术的有益探索。关 键 词 Sktech-up;Arcgis;三维建模;3DGIS 引 言 三维地理信息系统(3DGIS)研究从 1998 年提出的“数字地球”开始至今,一直得到广泛的关注和应用。与常规的二维 GIS 相比,3DGIS 运用三维 虚拟景观实现了对地理信息的多维表达与逼真可视化,取代了二维 GIS 抽象化的地图符号,打破了地图信息符号化、 空间平面化及对象空间关系简单化状态,进入多维化和复杂化;3D
3、GIS 强调自然灵活的人机交互界面,通过“逼真”的多维图形分析环境、 “直觉”的交互手段,实现对多维地理信息的观察、查 询、分析和决策功能。目前,专业的 GIS 软件侧 重于强大的二维空间信息处理和空间分析功能,三维场景建模、可视化和空间分析功能相对薄弱,而专业的三维建模软件,如 Mulitigen Creator、3DMax、Maya、Goole sketchup、 Java3D 等能够进行虚拟景观模拟,但在功能上仅限于场景的再现和普通地图的常规显示操作,无法实现深层次的空间分 析功能。总体上讲,目前的研究还是侧重于三维 可视化, 仍缺乏传统意义上真三维空间的分析管理功能,更难以满足不同领域
4、一些特定的需求。因此,将 GIS 软件和专业建模软件有机结合,对于实现三维场景的可视化、场景动态漫游、信息查询和空间分析功能等具有重要的意义。 本文通过将 ArcGIS 9.3 与三维建模软件 Goole sketchup 进行结合,构建了校园三维模型,并在此基础上利用 Arcgis engine 9.3 和 Visual Studio2005()的二次开发技术,设计与开发了西北农林科技大学南校区三维地理信息系统。系统同时具备二维 GIS 和 3DGIS 应用功能。该系统的设计与开发是校园 3DGIS 理论和技术的有益探索,也是促进数字校园建设和学校环境规划、加速学校教学资源管理和办公自动化、
5、提高学校管理水平和效率、实现信息和资源共享的重要举措。 研究平台和研究思路 研究平台 目前,三维 GIS 的研究还不够成熟,其应用领域还不够广阔,主要问题是由于三维GIS 数据类型和数据模型复杂,数据量较大且难以集成,因而在实现三维模型构建、 存储、处理、空间分析和显示时,不仅要求具备较高性能的硬件设备和采用高新技术、方法,而且必须在各个环节中克服数据量较大的严重影响。 本文采用的硬件设备主要有:高性能的计算机、分辨率较高的数码照相机、GPS、全站仪等。采用的核心软件平台有 Goole sketchup、ArcGis Desk-top9.3 和 ArcEngine9.3,辅助软件有AutoCA
6、D、PhotoShop、Google Earth。Goole sketchup 主要用于实现三维模型构建,ArcGis Desktop 主要用于二维矢量数据和三维模型场景的存储、编辑、显示和空间分析,ArcEngine 主要实现三维校园信息系统的开发;AutoCAD 用于绘制校园规划图,Photo-Shop用于地物纹理图片处理,如裁剪、锐化和自由变换等,Google Earth 配合 GPS 用于确定校园地物的精确坐标位置。 研究思路 GIS 软件(ArcGIS)和专业建模软件(Goole sketchup)相结合,研究校园 3DGIS 系统是本文的核心思想。首先以 AutoCAD 制作的校园
7、规划图为基础,在 ArcGis Desktop中进行数据格式转换、图形和属性数据编辑处理、精确配准地理坐标,并存入 Geodatabase,建立拓扑关系;通过 Goole sketchup PorGISPlug-in 插件将二维 GIS数据导入 Sketchup 中实现三维场景建模,对模型表面进行纹理映射,建模结果以MultiPatch 数据结构存入 Geodatabase 数据库,并利用 ArcScene 对三维场景进行浏览、编辑和动画输出等;最后基于 Geoda-tabase 数据模型,利用 ArcGIS Engine 和 Visual Studio2005(C#)工具进行三维校园信息系统
8、的设计与开发。系统设计流程如图所示。 基于 Goole sketchup 和 ArcGIS 的三维建模与可视化 ArcGIS 三维建模技术ArcGIS.以前的版本都不支持三维数据,几何图形均以点、线、面的形式存在。之后,ArcGIS 中出现了一种专门描述三维实体表面的新的要素类 MultiPatch(多片) 。这一新要素类是一系列几何对象组成的、可以表示效果的对象实体,并且带有高程值。但 ArcGIS 本身并没有提供建模工具,一般通过 Arc Ojects 使用 IConstruct MultiPatch接口进行 MultiPatch 的创建工作,同时也可以用 IGeneral MultiPa
9、tch Creator 接口创建具有纹理信息的 MultiPatch 对象,依据以上接口创建好 Multi-Patch 要素类后,可用IGeneralMultiPatch接口查询所创建要素类的信息,包括组成 MultiPatch 的几何图形信息、个数和类型等。模型建好之后,就可以根据实际需要,通过ArcScene、Arc进行可视化,但是这种方法有很大局限性,而且比较复杂,一般不适合大量数据的场景构建。其他的建模软件,如 VRML、3Ds Max 等虽然也可以转成Mul-tiPatch 要素类,但过程较为复杂,需要通过高级语言编程实现。Goole sketchup 的出现,使得三维建模及可视化变
10、得简化,而且在大场景建模中具有突出的优越性,更重要的是,它可以很好地与 Arc GIS 进行交互。 Goole sketchup 三维场景建模 三维场景建模主要在 Goole sketchup 软件中实现。Goole sketchup 是由 Goole 公司发布的一款简单易用且功能强大的三维建模软件,称之为建筑草图大师,它直接面向设计过程,可以为表面赋予材质、贴图,进行多方位的剖面生成和准确定位的日照阴影分析,在大场景建模中具有突出的优越性。尤为重要的是,Goole sketchup 与Goole、ArcGIS 实现有机结合。Goole sketchup 能够免费利用 Google Earth
11、 的地形和影像数据,且构建的三维场景能够在 Google Earth 上无缝运行 。Goole sketchup 通过其 Sketchup 插件(包括 GIS Plug-in 和3DAnalyst Sketchup 3DSymbol Support)能够很好地与 ArcGIS 实现交互。本文方法是首先安装 Goole sketchup ProGISPlug-in 控件,然后将 Sketchup6Tools 工具条添加到ArcGIS 相应程序的界面上,从而可以将通过编辑处理的且具有正确地理坐标的二维矢量数据导入到 Sketchup,在 Sketchup 中建立三维模型。将建好的三维模型存储为 M
12、ultiPatch()格式数据,通过 ArcScene 进行三维场景的浏览、编辑、属性查询和空间分析 。 建模数据的获取和处理基础数据的获取和处理是三维建模的前提。建立校园三维模型主要用到的数据有二维矢量数据(空间位置和平面数据) 、建筑物高度数据、地物纹理数据以及各类型地物的属性数据 。 ()二维矢量数据的获取与编辑处理。二维矢量数据是实现三维建模的重要数据基础,它不仅可以作为三维场景中的基础图层,而且反映了各个地物的平面真实尺寸,能为各类型地物提供准确的空间位置。本文基于 AutoCAD 制作的西北农林科技大学南校区校园规划图,利用 ArcGIS 将其转化为 Shapefile 格式,并对
13、其进行相应的编辑,包括图形编辑和属性编辑。图形编辑包括删除不必要的图层和内容(如标注、高程点) ,删除重叠、多余的线划,增加原图中不存在的点状要素(独立地物) ,检查线状地物空间位置关系是否正确,检查块状地物是否闭合等;属性编辑主要包括对各个地物的属性进行添加、修改等操作。在此基础上,对编辑处理好的 Shape 文件进行配准并加入正确的坐标系。将具有坐标系统的各要素的 Shape 文件存入 Geodatabase 数据库,建立正确拓扑关系,并进行拓扑编辑。 ()建筑物高度数据的获取。根据研究区域面积大小的差异、成本和精度的不同,建筑物高度的获取可以通过建筑设计资料、建筑物层数和层高、实地量测(
14、全站仪或经纬仪、三角测量、GPS 实测、车载或机载的激光扫描方法) 、遥感影像(遥感卫星和航空影像) 等方式获取。本文研究区域小,选用全站仪测量获得建筑物高度数据,这种方法比较常用,而且数据精度也较高。先由全站仪测出平距和倾角,再 根据简单的数学公式即可计算出建筑物高度 。 ( )地物纹理图片的获取与处理。地物纹理数据主要用于提供逼真的视觉表示,增强对地物本身及其相互之间空间关系的感知和识别。纹理数据通过地面摄影方法获得。在天气晴朗时,利用像素较高的数码相机, 选择合适拍摄角度,把控好纹理相片的分辨率或极数,对校园中的建筑物、道路、草地、花园、操场等进行实地拍摄。采集到的纹理图片,由于受各种因
15、素的影响, 如透视关系和光照条件,照片不可能从完全垂直建筑物表面的角度拍摄等,这些图片并不能直接应用于三维建模中, 需要进行相应的处理 。本研究利用 PhotoShop 软件对纹理图片进 行处理,包括图片的正射纠正(拉伸、旋转) 、部分裁剪、无缝拼接(镶嵌) 、图片质量的改善(调整图片的颜色、亮度、对比度等) 、图片格式的转化、图片尺寸的调整和数据量压缩, 从而获得满足要求的高质量的地物纹理图片。值得注意的是, 用数码相机拍摄获取的大量建筑物侧面照片, 其优点是所建模型的真实感强,缺点是获取速度慢且数据量大,涉及后续三维模型的存储、显示、处理和分析的工作量也很大 。因此,一定要尽可能将纹理数据
16、量控制到最 小,以便在三维系统中,三维模型能够流畅运行。 三维模型的构建 在三维地理虚拟环境中,地理要素可以分为点状要素、线状要素、面状要素和体要素。建模工作主要涉及在 Sketchup 中导入二维矢量数据、建立三维模型以及存储三维模型等。 ( )点状地物建模。校园中的树木、路灯、雕像、旗杆、垃圾桶等被抽象成点状要素。其中,路灯、雕像、旗杆、垃圾桶等具有规则的几何形状,与面状要素的建模类似;而树木的建模相对比较困难和复杂,很多采用两个十字交叉面再通过贴透明纹理图来实现,但效果仍然不是很理想。在 Sketchup 中通过 Freehand 工具能够实现树木的精确建模,另外,可免费下载网络上丰富的格式的常见树种的模型资源。 ( )线状地物建模。主要包括道路、河流、三维管道等的建模。在 Sketchup 软件中没有单纯的“线”建模,把