江 西 师 范 大 学 本科生毕业论文
第五章 不同实现方式的对比分析
我们知道,在ArcGIS Desktop中,可用于三维场景展示的程序只有ArcGlobe和ArcScene ,由于 Engine与Desktop底层技术都是基于AO的,因此两者比较结果在功能性和整体效率方面同样适用与GlobeControl和SceneControl,换句话说,GlobeControl和SceneControl的对比在某种意义上,其实就是ArcGlobe和ArcScene的对比。下面本文将简单的分析一下两者的对比。
5.1性能对比
5.1.1显示效果对比
在注记方面:在ArcGlobe中,用户可以选择将注记(Annotation)附着显示于地球表面或像广告牌一样面向当前用户,而ArcScene中不支持注记(Annotation)数据的显示。
在显示方面:ArcGlobe在显示场景时,用户可以选择是否将矢量数据栅格化后显示,这样,在ArcGlobe中矢量数据栅格化后可以大幅提高显示效率。ArcScene在显示场景时,会将所有数据加载到场景中,矢量数据以矢量形式显示,栅格数据会自动降低分辨率来显示,以提高效率,并将所有数据投影到当前场景所定义的空间参考中[10]。
在支持场景方面:ArcGlobe只有一个高程表面,需要将数据正确投影到globe上,只能显示地形以上的场景,而ArcScene在这点上就更灵活,是可以支持地下场景展示。
以上的各个方面,就其相同点来说,两者都需要ArcGIS Desktop和3D Analyst许可。
5.1.2 响应速度对比
在数据读入方面:ArcScene是一次将所有数据读入内存,所以操作起来比较快,但是同样的数据加载在ArcGlobe里面速度就明显变慢,因为它事先要进行一个缓存。
在导出图片方面:GlobeControl中将当前视图导出为图片的时候挺快,只是将当前场景中录制好的动画导出来就特别慢,有时候可能会导致系统假死。同样,在SceneControl中将当前视图导出为图片的时候挺快,而将当前场景中录制好的动画导出来时,也会变得很慢,但比GlobeControl要略快一点,主要数据量的问题,因为它的数据量始终小于GlobeControl。
在画面的流畅方面:在进行缩小和放大时会有1秒左右的延迟,主要表现在影像数据的显示上。使用飞行漫游工具进行漫游时,整个过程表现非常流畅,没有出现画面卡的现象[9]。这主要是因为DEM图层在ArcGlobe中不支持建立缓存,我们知道一般建立了缓存后,整个3D场景在ArcGlobe中打开后立即完全显示了,感觉不到有访问延迟。在ArcScene中,不会出现上述问题,经本文分析,认为应该还是数据量的问题,ArcGlobe偏大。就拿本文做的的那个系统来说,一个纹理的数据量有50多M。
21 地理与环境学院
江 西 师 范 大 学 本科生毕业论文
5.2功能对比
5.2.1编程和控制的方便性对比
两者的编程的方便性是相同的,就看操作人员对两个控件的熟悉程度了,越是熟悉的人,编程速度越快;
5.2.2主体功能的对比
两者之间的所实现的主体功能差不多,详细的可以参照第二章所进行的比较。
5.3所需的要求对比
5.3.1对电脑配置要求对比
两者对电脑配置的要求最主要还是体现在缓存与内存管理机制[10],因为ArcGlobe设计用于海量数据展示,所以为提高显示效率而进行数据缓存是很必要的。ArcGlobe将数据分块并按级别建立缓存和索引,并只加载当前视图范围场景到内存,从而使得在ArcGlobe中显示海量数据仍可以高速的展示与漫游。因此,ArcGlobe对电脑的CPU要求比较高。
ArcScene会将所有数据读入场景中完全显示,因此会占用大量显存,物理内存和虚拟内存,由于内存的限制,ArcScene只能浏览小范围的3维场景,这就是为什么ArcScene适于小数据量小场景精细展示的原因。因此,ArcScene对电脑的显卡和电脑内存要求比较高。 另外,如果使用ArcGlobe(作为三维分析的一部分),更多的磁盘空间可能是必需的。 ArcGlobe将创建缓存文件时使用,而ArcScene则不需要。
就目前来说,一般电脑的CPU和内存、显卡什么的都能满足我们目前的需求,因为即便你想买更低的还真没地方买的到。相对的,电脑配置越低,系统的反应速度越慢。
下面列举一些硬件上的要求: 硬件需求[11]
CPU速度 :推荐1.6 GHz或更高
处理器 : 英特尔酷睿,奔腾4或Xeon处理器 ,见双或双核心的支持政策
内存/ RAM :至少1 GB,建议2 GB或更高 ,如果使用微软SQL Server Express的软件
ArcSDE的个人版,2 GB内存是必需的。
显示属性 :24位颜色深度
屏幕分辨率 :1024 × 768建议或正常大小(96dpi)高等教育 交换空间 :确定由操作系统,500 MB的最低水平。
磁盘空间 :3.2 GB的,此外,高达50 MB的磁盘空间可能需要在Windows系统目录(通
常是C:\\的Windows \\ System32)。您可以查看在安装程序中的每个组件9.3 磁盘空间要求。
视频/图形适配器: 检查你的计算机上运行ArcGIS的3D分析 – ArcGlobe,24位的图形
加速器 ,一个OpenGL 1.3或更高版本兼容的视频卡是必需的,至少有32 MB的视频内存,但是64 MB的视频内存或更高的建议。
22 地理与环境学院
江 西 师 范 大 学 本科生毕业论文
5.3.2 对数据要求的对比
在数据来源方面:
ArcGlobe程序所支持的数据来源:地图数据,测量数据,遥感数据,其中数据必须要有参考系,且只能是WGS84。
ArcScene程序所支持的数据来源:地图数据,测量数据,遥感数据,其中数据必须要有参考系,但具体不限。
因此,在数据预处理过程中,ArcScene只要是两者或两者以上的数据具有相同的投影就行,而ArcGlobe则将需要的所有数据的坐标系统都转化为 WGS 84 地理坐标系,其原因是只有采用的 WGS 84 地理坐标系,才能将所有数据投影在球体表面上。 在数据类型要求方面:
ArcGlobe程序所支持的数据类型包括: 1、ArcGIS栅格数据,包括栅格目录; 2、ArcGIS要素数据,包括文本注记;
3、支持TIN数据的加载,但不支持TIN的显示。 ArcScene程序所支持的数据类型包括: 1、ArcGIS栅格数据,包括栅格目录; 2、ArcGIS要素数据,包括文本注记; 3、ArcIMS图层;
4、ArcGIS Server中的MapServer图层; 在数据格式要求方面:
ArcGlobe程序所支持四种三维数据格式有:*.3ds;*.flt; *.skp; *.wrl ArcScene程序所支持四种三维数据格式有:*.3dd;*.flt; *.skp; *.wrl。
5.4 其他对比
5.4.1分析功能
ArcGlobe可以极好的展示大数据的场景,同时提供高速的漫游,但ArcScene对传统的三维分析功能支持的更好。例如Desktop中3D Analyst工具条在ArcScene中被很好的支持,并支持Tin模型的显示,ArcGlobe不支持Tin的显示,但支持其作为高程数据加入场景,另外ArcGlobe支持Terrain数据集,但ArcScene不支持[12]。
5.4.2适用性
由于ArcGlobe适于海量数据量大范围场景的展示,尤其是大数据量的栅格数据展示,因此很适合于很多关注大范围的项目,在军事、林业、水利、交通、测绘、石油等很多行业均有明显优势[13]。而ArcScene中场景表现为平面投影,适合于小范围内精细场景刻画。 为方便进行一个比较,一下据些例子,以作参考: 如果数据流量高,需要缓存将在全分辨率使用,并在广泛的范围内需要用到所在地区的地球曲率,那么我们可以最好选择ArcGlobe。
如果数据体积小,可视化是限制在小范围内,那么ArcScene是最好的选择
23 地理与环境学院
江 西 师 范 大 学 本科生毕业论文 如果数据量不大,需要支持适用符号选项和3D视图装饰图形,对作为高程数据源应用程序没有要求,那么ArcGlobe和ArcScene都是可行的选择。
5.4.3效果展示
我们这次展示的是两个系统都可以用的数据。其中,在ArcGlobe中一共有三个数据,地形数据,水面数据和纹理数据,而在ArcScene中却一共只有两个数据,分别是地形数据和水面数据,正如本文前面所说的,ArcScene不支持纹理贴图。
下面是他们效果展示的对比:
图 5.1 ArcScene淹没前的示意图
图 5.2 ArcScene淹没后的示意图
24 地理与环境学院
江 西 师 范 大 学 本科生毕业论文
图5.3 ArcGlobe中的淹没前的示意图
图5.4 ArcGlobe中淹没后的演示意图
通过对比前后两个控件的效果展示,经本文分析,发现在电脑配置还行的情况下,可以使用GlobeControl控件来实现系统的开发,因为其效果更接近于真实,但同时,工作量也较大,因为需要花一定的时间做纹理贴图的数据预处理工作。
25 地理与环境学院