Supermap iDesktop中三维缓存生成和使用

312 篇文章 79 订阅

Supermap iDesktop中三维缓存生成和使用

作者:翔翔

缓存技术是目前主流地理信息系统中普遍采用的一种图形显示技术手段。该技术大大缩短了用户的等待时间、提高了工作效率、使图形数据的浏览速度变得更加流畅。按照使用场景的不同,可以把缓存分为二维缓存和三维缓存,二维缓存也叫地图缓存,是将一幅地图生成缓存,通俗的说是将一个面生成缓存;三维缓存是场景生成的缓存,可以理解为一个体生成缓存。本文将重点介绍三维缓存。
在SuperMap中将数据按照不同分辨率或比例尺分割成不同的图像集合并保存在相应的文件夹下,然后建立一个空间索引文件,这样对数据的操作叫做生成三维缓存。
根据生成缓存的数据类型不同又可以把缓存分为矢量缓存、模型缓存、地形缓存和影像缓存,下面就来说说这几种缓存。
1、矢量缓存
矢量缓存是由矢量数据集生成的缓存,下图就是生成矢量缓存的对话框。矢量缓存的配置文件格式是*.scv。

![这里写图片描述](https://img-blog.csdn.net/20151113163301641)
矢量缓存对话框

在切矢量缓存的时候有几点需要注意,第一就是剖分方式,剖分方式有两种,一个是平面,另一个是球面。平面是将地球球面展开成平面,将地球球面模拟成一个平面;球面则是模拟地球的表面。当数据的坐标系是投影信息的时候,可以自己手动选择平面和球面,这就需要根据该数据使用的场景来确定选择哪一个剖分方式;当数据的坐标系是平面无投影坐标系的话,就只能选择平面剖分方式;是地理坐标系的时候只能选择球面剖分方式。第二个就是瓦片边长,瓦片边长是和比例尺一一对应的,同时也把每一个比例尺或者瓦片边长作为一个层级,将鼠标放在“瓦片边下”右边的问号可以看到对应的关系图,如下图所示

![这里写图片描述](https://img-blog.csdn.net/20151113162828215)
瓦片边长与比例尺

在生成矢量缓存的时候往往会给你个参考值,根据矢量数据的含义或范围不同选择不同层级的瓦片边长,矢量缓存一般选择层级14-15也就是1222.99-611.50的瓦片边长,这样效果会好点。第三就是存储类型,有两种存储类型,一是紧凑型的,紧凑型的就是对数据进行压缩和加密,数据格式为*.cf;一是原始型的,这保留了数据的原始信息,数据格式是*.scvb和*.scvd构成。
2、模型缓存
模型缓存,模型数据生成的缓存,通常情况下是CAD模型数据生成的缓存,这和矢量数据集有一样的地方,可以通过下图生成模型缓存的对话框来细说差别。模型缓存的缓存配置文件格式是*.scv。

![这里写图片描述](https://img-blog.csdn.net/20151113170021377)
生成模型缓存对话框

其中创建LOD层是矢量缓存中不能设置的,LOD(Levels Of Details)指的是模型显示的细节层次。对于近处的模型采用精细模型效果显示,远处的模型采用简单模型显示。模型简化率,指的是对模型显示的细节按照百分比进行简化,也就是说,模型简化率10%=骨架简化掉90%。
在iDesktop 8C中已经可以生成OSGB格式的模型缓存。缓存索引文件的格式是*.scp。如下图所示:

![这里写图片描述](https://img-blog.csdn.net/20151113170315583)
生成OSGB模型缓存

由上图可知,在选择生成OSGB缓存时,才能设置LOD层级相关参数。而在生成矢量模型缓存时只需要勾选上“创建LOD层”和设置简化率。LOD层级设置中的距离表示的两层之间相机高度切换距离,如上图所示的层级分为了0、1、2、3、4层级,每个层级都有一个距离,当相机高度小于等于200米时显示的层级0的数据;当相机高度大于200小于等于400显示的是层级1的数据;以此类推。将OSGB缓存文件添加到场景中之后,可以通过设置切换距离的缩放倍数来设置切换距离,而切换距离=设置的LOD距离*缩放比例。

![这里写图片描述](https://img-blog.csdn.net/20151113171044070)

3、地形缓存
地形缓存顾名思义就是地形数据生成的缓存,和矢量缓存有类似却又有不同之处,下图就是生成地形缓存的对话框。地形缓存的配置文件格式是*.sct。

![这里写图片描述](https://img-blog.csdn.net/20151113171128480)
生成地形缓存对话框

从上图,可以看出与矢量缓存的生成是不同的,在这里需要注意的有比例尺设置和块大小选择。第一个“比例尺设置”显示的是当前数据的影像金字塔比例尺层级,在这里勾选层级比例尺,即可按照剖分规则,对每一分块对应的区域范围的数据将存储为一个切片文件(缓存图片),从而得到地形缓存数据。剖分规则是采用规则的正方形格网进行数据的分割,分割后的每一块空间区域为一个正方形区域,这里称为分块,每一个分块对应的数据最终存储为一个缓存文件。经纬度坐标系全球剖分规则中,第0层采用180度180度的经纬度范围进行分块,则全球范围共被分割成2块;第1层采用90度90度的经纬度范围进行分块,则全球范围共被分割成8块。依次类推,一直按1/2倍进行剖分,即对分块进行四叉树分割。

![这里写图片描述](https://img-blog.csdn.net/20151113171158944)
剖分规则示意图

第二个,块大小(像素)获取缓存预处理后生成的每个缓存分块文件的采样大小,单位为像素,即pixespixes。应用程序提供了20482048,10241024,512512,256256,128128,6464六种尺寸,每一个尺寸对应比例尺个数不一样,块越大,比例尺越少,块越小,比例尺越多。
4、影像缓存
影像缓存,影像数据集生成的缓存,其参数设置和地形缓存的参数设置是一样的,从下图的生成对话框就可明白。影像缓存的配置文件格式是
.sci。

![这里写图片描述](https://img-blog.csdn.net/20151113171353767)
生成影像缓存对话框

以上就是SuperMap生成这四种缓存的方式和注意事项,在使用缓存的过程中要怎么优化,这就是接下来需要说到的。在图层管理器中,“普通图层”和“地形图层”鼠标右键可以加载生成的缓存。如图所示

![这里写图片描述](https://img-blog.csdn.net/20151113171522688)![这里写图片描述](https://img-blog.csdn.net/20151113171530818)

通过加载缓存配置文件,把缓存加载到场景中。在场景中使用了缓存,也还有一些基本技巧来把场景进一步的优化。设置图层的过滤设置是最基本的一个调优方法,过滤设置包括设置可见高度、设置可见距离和可见像素,通过图层的过滤设置我们可以控制场景中显示对象个数和图层个数的的多少,从而使场景的浏览速度更快,性能更好。可见高度的设置如下图所示:

![这里写图片描述](https://img-blog.csdn.net/20151113171626138)
可见高度设置

可见高度主要是针对图层过过滤,对所有图层都有效的,通过设置可见高度,来控制场景中图层的显示个数。可见距离和可见像素的设置如下图所示:

![这里写图片描述](https://img-blog.csdn.net/20151113171713244)
可见距离和可见像素设置

可见距离和可见像素主要是针对对象过滤,适用于模型和矢量数据。通过设置可见距离和可见像素来控制场景中对象的显示个数,从而达到优化场景性能的目的。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值