ArcGlobe是ArcGIS9.0之后出现的新产品,设计用于展示大数据量的场景,基于全球视野,所有数据均投影到全球立方投影(World Cube Projection)下,并对数据进行分级分块显示。

一、什么是ArcGlobe?

ArcGlobe是ArcGIS桌面应用——3D Analyst扩展的一部分(像ArcScene.)、其提供了海量地理数据的交互式可视化,允许全球数据、本地数据和街道级数据间的无缝过渡,使用标准的ArcGIS数据源和图层

二、ArcGlobe数据源

ArcGlobe支持的数据类型包括:1、ArcGIS栅格数据,包括栅格目录; 2、ArcGIS要素数据,包括文本注记; 3、ArcIMS图层;4、ArcGIS Server中的MapServer图层;

注意:所有的数据源都必须有空间参考

三、ArcGlobe图层类型

高程图层:定义globe的表面

纹理图层:贴于globe表面的图层

漂浮图层:位于globe图层之上或下的图层

四、ArcGlobe显示管理

数据内部在不同细节等级处(比例)被自动分为许多块(tiles)。

创建多分辨率的数据表达(矢量要素只有一个细节等级),即使是很大的数据,也只需有限量的块即可满足显示一个3D视图。

五、ArcGlobe提供了数据缓存机制

为了提高显示性能,ArcGlobe为每个图层保留一个块的缓存。块存储在内在缓存中(可立即使用)或磁盘缓存中(供后来使用),其分别对应两种缓存机制:按需缓存和显示缓存。

按需缓存

动态交互过程中必需的数据块才会被缓存,其提高了3D数据浏览的平滑度。数据源的位置、格式以及投影方式等都会影响缓存的性能。

显式缓存

可以为所有图层在特定细节等级处创建缓存;

避免了按需缓存的性能和内在代价;

可能需要较长时间创建缓存,但只需建立一次;

六、其与ArcScene的简单比较

ArcScene

ArcScene是一个适合于展示三维透视场景的平台,可以在三维场景中漫游并与三维矢量与栅格数据进行交互。ArcScene是基于OpenGL的,支持TIN数据显示。显示场景时,ArcScene会将所有数据加载到场景中,矢量数据以矢量形式显示,栅格数据默认会降低分辨率来显示以提高效率。

ArcGlobe和ArcScene的主要区别:

ArcGlobe将所有数据投影到球体表面上,使场景显示更接近现实世界。适合于全市,全省,全国甚至全球大范围内的数据展示。

ArcScene将所有数据投影到当前场景所定义的空间参考中,默认情况下,场景的空间参考由所加入的第一个图层空间参考决定。ArcScene中场景表现为平面投影,适合于小范围内精细场景刻画。

缓存与内存管理机制

ArcGlobe和ArcScene最重要的区别在于此。ArcGlobe设计用于海量数据展示,所以为提高显示效率而进行数据缓存是很必要的。ArcGlobe将数据分块并按级别建立缓存和索引,才使得即使在ArcGlobe中显示海量数据仍可以高速的展示与漫游。

ArcScene会将所有数据读入场景中完全显示,因此会占用大量显存,物理内存和虚拟内存,这也是ArcScene适于小数据量小场景精细展示的原因之一。

分析功能

ArcGlobe可以极好的展示大数据的场景,同时提供高速的漫游。但ArcScene对传统的三维分析功能支持的更好。例如Desktop中3D Analyst工具条在ArcScene中被很好的支持,并支持Tin模型的显示。ArcGlobe不支持Tin的显示,但支持其作为高程数据加入场景。ArcGlobe支持Terrain数据集但ArcScene不支持。

显示差别

ArcGlobe中用户可以选择是否将矢量数据栅格化后显示,该功能对注记数据的显示也有很大帮助。用户可以选择将注记(Annotation)附着显示于地球表面或像广告牌一样面向当前用户。ArcScene中不支持注记(Annotation)数据的显示。在ArcGlobe中矢量数据栅格化后

可以大幅提高显示效率,我们在ArcGlobe 场景建设中采取“能够栅格化的矢量数据尽量栅格化”的策略也来自于此。

参考资料:

[1]、2004年第六届ArcGIS暨ERDAS中国用户在全

[2]、南京大学小百合站:ArcGlobe与ArcScene功能比较与简单说明:http://bbs.nju.edu.cn/bbscon?board=GIS&file=M.1182522462.A&num=1

posted @ 2009-04-14 16:38 大胡子青松 阅读(76) | 评论 (0) | 编辑

SketchUp构建GIS三维模型方法研究(转)

SketchUp构建GIS三维模型方法研究 (1)
2009-02-25 15:25:29  作者:网络搜集  来源:网络搜集  文字大小:【大】【中】【小】
摘 要 Google SketchUp软件是智能化建模系统的工具集合,简化了建模工作。通过对SketchUp中三维模型创建及在传统GIS软件中的应用方法研究可大大减少和丰富3DGIS中三维建模的工作量。本文从SketchUp的建模技术 ...
摘   要 Google SketchUp软件是智能化建模系统的工具集合,简化了建模工作。通过对SketchUp中三维模型创建及在传统GIS软件中的应用方法研究可大大减少和丰富3DGIS中三维建模的工作量。本文从SketchUp的建模技术、各地理要素的建模方法以及模型应用于GIS的方法等入手讨论SketchUp中数据转换方法,以将这一可视化工具与GIS软件结合起来,为3DGIS服务。

关键词 3DGIS;Google SketchUp;建模

1  引言

三维地理信息系统(3DGIS)是当今GIS发展的一个新趋势,相比于二维GIS,对客观世界的表达能给人以更真实的感受,它以立体造型技术展现地理空间现象,不仅能表达空间对象间的平面关系,而且能描述和表达它们之间的垂向关系。
专业的GIS软件侧重于强大的空间分析功能,三维可视化功能相对薄弱;而专业的建模软件,如MultiGen Creator、3ds Max、Maya、SketchUp等,与之恰恰相反[1,2]
Google SketchUp是由Google公司于2006年推出。它是一套直接面向设计方案创作过程的设计工具集合,简单易学,完全避免了其它设计软件的复杂性;可以直接为表面赋予材质、贴图,使得设计过程的交流完全可行;与Google Earth有机结合,能够免费利用GoogleEarth的地形和影像数据等[3-5]
本文研究SketchUp中各地理要素的三维构建及其在GIS软件中的如何应用。

2  SketchUP的三维建模方法

2.1几何建模方法

要建立真实的三维场景,准确的几何建模是必不可少的。SketchUp可以通过用户交互地设置和输入数值很好地控制几何精度,在3DGIS中这一点非常关键。GIS中地理要素分为地形要素、点状要素、线状要素、面状要素,下面分别针对每种要素的建模方法进行讨论。
2.1.1  三维地形建模
要实现三维景观的比较真实的虚拟,对于起伏大的地区,地形的三维构建十分重要。SketcUp中的扩展工具栏---沙盒(SandBox)能实现创建类似TIN(不规则三角网)的地形。
地形的创建通常有五种方式:①引入已有的等高线或手动创建具有不同高度的等高线,用From Contours直接生成;②导入目标区域的图像或等高线地图,使用Freehand工具跟踪绘制等高线,然后调整所绘等高线到合适的高度位置,采用同上的方法生成三维地形;③从外部导入DTM文件(USGS DEM或SDTS格式)创建;④利用SketchUp6 ESRI插件,从ArcGIS软件中导入TIN数据创建;⑤使用From Scratch工具绘制网格地形,在网格地形的基础上拉伸生成起伏的效果。根据已有数据的种类和要表达地形的精确度选择合适的建模方式,前四种创建的地形比较精确,如果侧重于表达大体的地形空间意向,第五种方式就可满足需要[6]
2.1.2点状要素建模
地理环境中,行道树、路灯、垃圾桶等往往被抽象成点状要素。路灯和垃圾桶等具有规则的几何形状,与面状要素的建模类似。而树木的建模相对来讲比较困难。其它的建模软件如MultiGen Creator采用BillBoard技术对树木建模,将树木抽象成两个交叉的十字面,通过透明贴图来模拟,效果不是很理想。SketchUp中通过Freehand工具能够实现树木的精确建模(如图1所示)。另外,网络上有丰富的skp格式的树模型资源,常见的树种可以免费下载直接或稍加编辑后使用。
图1  SketchUp所建的树模型
2.1.3  线状要素建模
线状要素包括河流、航线、道路等要素,建模时认为这些线要素是具有一定面积的立体面,需要依据实际宽度进行扩展。对于位于起伏地形上的道路建模,使用Sandbox工具栏中的Drape工具,便可实现平面道路到起伏地形曲面的投影[7]。与道路不尽相同的是,河流一般低于周围地形。这时需要沿Z轴反向拉伸。
2.1.4  面状要素建模
地理环境中的建筑物、草坪、空旷的场地等通常以面状要素表示,具有面积、周长等特征。以建筑物建模为例,模型的创建是在确定了底面的基础上,通过挤压或拉伸底面,绘制屋顶等步骤实现。构建过程中可自动捕捉线条及其特征

SketchUp构建GIS三维模型方法研究 (2)
2009-02-25 15:25:29  作者:网络搜集  来源:网络搜集  文字大小:【大】【中】【小】
摘 要 Google SketchUp软件是智能化建模系统的工具集合,简化了建模工作。通过对SketchUp中三维模型创建及在传统GIS软件中的应用方法研究可大大减少和丰富3DGIS中三维建模的工作量。本文从SketchUp的建模技术 ...
,对建筑物进行精确建模。
图2中的建筑物模型,首先利用导入的遥感图片作为参照,勾勒出底面,再将面沿竖直方向向上拉伸(拉伸高度值可交互输入),得到建筑物的粗糙框架,在此基础上对细部进行调整,包括柱子、门、窗户等的绘制。最后对各部分贴上对应的纹理图片实现真实模拟。本例中所用图片均是由数码相机实际拍摄的jpg格式照片,用PhotoShop软件处理所得。
图2  华师大大学生活动中心实体景观图

2.2 纹理映射技术

纹理映射技术在建模过程中起着十分重要的作用,一方面能增强模型的逼真度,同时也有利于模型的简化和减少多边形面,这对应用程序的实时性是十分重要的。
SketchUp提供了强大的纹理映射功能。按照使用需要,贴图分为三种:普通贴图、包裹贴图、投影贴图。
普通贴图是最普遍的,即为平面赋予材质,贴图单元在此平面上可以重复n次,也可以比平面大,主要通过调整贴图坐标来实现。如图5中的建筑物大多采用这一方式。
包裹贴图类似于一个盒子进行外包装。需要先给一个平面赋予贴图,用贴图坐标将大小位置调整好,再用吸管将此材质赋予其它面,实现贴图的无缝拼接。

 
 
图3  投影贴图效果(圆窗部分)

投影贴图主要用于对曲面进行纹理映射,如起伏的地形、圆形或弧形的建筑物及其细部等。实现贴近真实和过度自然的效果(如图3所示)。
SketchUp支持的纹理图片格式包括JPG、BMP、TIF,PNG等。其中PNG格式的图片带有Alpha通道,即我们常说的透明贴图。为减小数据量,其它图片一般保存为jpg格式,并且最大不超过100KB[8]
SketchUp中贴图的另一独特之处为根据材质可以计算出某种对象的面积[6,7]。

2.3  建模过程中应注意的问题

利用SketchUp对地理要素进行建模过程中应注意以下几个问题:
(1)应选择正确的坐标系,也可导入CAD数据或通过SketchUp6 ESRI插件导入shp格式的二维矢量数据,在此基础上直接建模;或者导入遥感或航空像片作为参照创建模型。总之,创建的三维模型应该有与GIS一致的坐标。
(2)大范围三维场景建立时,所建模型数据量不能太大,否则会影响运行速度。尽可能地简化模型,减少边和面的数量;尽量用纹理图片来代替模型细部;纹理图片的分辨率不宜太高,最大不超过100KB。  

3  三维模型应用于GIS中的方法

SketchUp三维模型在GIS中的应用有两个方面:一是作为三维符号;二是作为三维模型。以ArcGIS为例具体探讨。

3.1  作为三维符号应用

ArcGIS支持*.skp格式三维模型作为三维标注符号(3D Maker Symbol)对点、线、多边形三类地图数据进行显示。显示时,如果用于表示的地物是多边形,还需通过旋转、放大、缩小、平移等操作将符号调整到合适位置。此时,模型仅作为图形显示,并不能对其进行分析等操作。

3.2  作为三维模型应用

*.skp模型作为三维模型应用主要是转换为ArcGIS支持的三维模型格式三维数据格式-----Multipatch,然后在ArcScene中直接加载加以应用。转换方法有两种:
3.2.1 通过ArcObject开发实现
示例代码如下
SketchUp构建GIS三维模型方法研究 (3)
2009-02-25 15:25:29  作者:网络搜集  来源:网络搜集  文字大小:【大】【中】【小】
摘 要 Google SketchUp软件是智能化建模系统的工具集合,简化了建模工作。通过对SketchUp中三维模型创建及在传统GIS软件中的应用方法研究可大大减少和丰富3DGIS中三维建模的工作量。本文从SketchUp的建模技术 ...
Dim p3DF As IImport3DFile
Set p3DF=New Import3DFile
/*定义sPath存放已有三维模型的存储路径,创建一个新的FeatureClass,其Shape类型为新的记录(pFeatureBuffer)*/
If p3DF.IsValidFile(sPath)Then
p3DF.CreateFromFile sPath
Dim pGeom As IGeometry
Set pGeom=p3DF.Geometry
End If
Set pFeatureBuffer.Shape=pGeom
IImport3DFile这个接口目前对*.skp模型是支持的,通过此方法可以将模型转换为Multipatch,存储在GeoDatabse中,并可对其进行进一步的分析[9]
3.2.2 利用SketchUp6 ESRI插件转换
SketchUpESRI插件是专门为ArcGIS结合推出的。包括两部分:GIS Plugin和3D Analyst SketchUp 3D Symbol Support,需要将这两部分分别装在SU和ArcGIS的安装目录下。二者交互操作的流程为:ArcMap中加载并导出矢量数据;SketchUp中三维建模;SketchUp模型转换成Multipatch数据;对模型进行编辑、分析等操作。具体路线与涉及到的软件和数据如图4所示。
由于SketchUp中的一个Group对应ArcGIS中的一个Multipatch,因此转换过程应根据3DGIS的需要设置Group[10]
以建筑物为例,如果对整栋建筑物进行编辑和分析,则按整栋为整体设置成一个Group;如果需要对楼层进行查询,则应以楼层为整体设置成Group,转为对应的Multipatch。

4  结语

SketchUp在建模方面有很多优势,并且与ArcGIS等GIS软件平台能够很好地结合,但是它缺乏其它专业建模软件中的一些高级技术,如LOD,mipmap、BSP、OCTREE、occlusion等技术[2-3],势必会增加空间存储,因此如何减少数据量,更好地为3DGIS服务成为今后研究的一个方向。

转载于:https://www.cnblogs.com/cuiguanghe/archive/2013/04/01/2993566.html

ArcGIS三维分析之ArcGlobe简要说明相关推荐

  1. ArcGIS二次开发基础教程(10):三维分析

    ArcGIS二次开发基础教程(10):三维分析 坡度分析 请务必学会使用帮助文档!!! //DEM数据的坡度分析 将分析结果添加到地图上 //首先获取DEM数据,方法有很多例如从个人地理数据库获取,也 ...

  2. Arcgis 三维场景模拟

    三维建模,主要进行地形分析和景观视域分析. 第一讲完成高程分析吧,高程(elevation) 坡向(face aspects),坡度(face slope) ArcScene  ArcGlobe两种三 ...

  3. ArcGIS空间分析要点学习

    缓冲区分析 缓冲区分析是针对点.线.面等地理实体,自动在其周围建立一定宽度范围的缓冲区多边形. 邻近度描述了地理空间中两个地物距离相近的程度. 交通沿线或河流沿线的地物有其独特的重要性. 公共设施的服 ...

  4. [ArcGIS] 空间分析(零)分类图

    ArcGIS空间分析分类图: GIS空间分析分类体系图: 参考文献:翟健,金晓春. 城市规划中的GIS空间分析方法[J]. 城市规划,2014,38(S2):130-135. 传送门 空间数据预处理 ...

  5. ArcGIS水文分析实战教程(9)雨量计算与流量统计

    ArcGIS水文分析实战教程(9)雨量计算与流量统计 本章导读:降水是水文循环中重要的一环,降水包括雨.雪.雾.露.雹等,本章介绍的是降雨的环节.通过雨量站与插值的方式,实现雨量的空间分布就算,为水文 ...

  6. R语言效用分析 ( 效能分析、Power analysis)、除了pwr包之外还有其它包、例如、基因研究中的效能分析、MBESS包可用于各种形式的效能分析和最少样本量确定、其他效用分析包的简要介绍

    R语言效用分析 ( 效能分析.Power analysis).除了pwr包之外还有其它包.例如.基因研究中的效能分析(power analysis).MBESS包可用于各种形式的效能分析(power ...

  7. ArcGIS水文分析实战教程(18) 河段桩号与线性参考

    ArcGIS水文分析实战教程(18) 河段桩号与线性参考 本章导读:在很多线性要素的应用中,桩号扮演着非常重要的角色.例如高速公路,使用桩号可以快速的描述某个事件在该路段的大概位置.同样是线性要素的河 ...

  8. ArcGIS水文分析实战教程(14)提取水库湖泊等面状水系

    ArcGIS水文分析实战教程(14)提取水库湖泊等面状水系 本章导读:如果说前面章节一直都是针对河流.河网.流域等进行论述,围绕的都是从基本理论到实践操作,那么湖泊.水库等面状水系的提取,就是对水文分 ...

  9. ArcGIS水文分析实战教程(13)流域提取流程

    ArcGIS水文分析实战教程(13)流域提取流程 本章导读:这里的流域是一个自然概念,而不是行政概念,或者称之为集水区更加合理一些.在流域提取中,其过程都是先定义河流然后才能通过河流定义流域.其中流域 ...

最新文章

  1. CSS样式----标记选择器
  2. xib中Autolayout的使用
  3. Java Socket 教程
  4. java 注解_怎样理解 Java 注解和运用注解编程?
  5. 人脸检测源码facedetection
  6. request_threaded_irq()
  7. mysql float64_'numpy.float64'对象没有属性'translate'在Python中插入值到Mysql
  8. 数学建模系列--拟合算法
  9. PADS Layout 滴泪、敷铜和删除
  10. 如何保证战略落地_企业战略如何实现落地
  11. 动手学深度学习(pytorch)中d2lzh_pytorch包的安装(附资源)
  12. 消除VMware启动虚拟机时的floppy0提示的方法
  13. docker 配置国内镜像源不起作用
  14. 湖南文理学院第十六届程序设计竞赛_题解
  15. office(Excel)里面如何提取身份证中的出生日期
  16. A - Rooms and Passages Gym - 102215A
  17. Android开发高性能之 (崩溃优化)
  18. 谷歌浏览器记住密码功能 input框黄色背景
  19. 软考中级--软件设计师
  20. 压缩解压zip文件包

热门文章

  1. 一个简单的JS(盒子移动)
  2. 人口流向数据_中国各地人口净流入流出示意图
  3. 调试python程序---pdb
  4. RStudio启动报错(fatal error)
  5. TFBGA240+25封装尺寸图
  6. MySQL ('root'@'%') does not exist的问题
  7. [python]的functools.partial(偏函数)
  8. macOS开启高性能模式
  9. tornado完成一个简单的登录界面/图片的上传
  10. 9月24号面试总结(康拓普1面)