三维缓存的生产与使用有两种方式,通过 iDesktop 或者 iServer 的分布式切图服务,前者可生产所有常用三维数据的缓存,后者可分布式生产与存储(MongoDB)三维影像、三维地形瓦片。

示例1:三维瓦片的分布式生产与使用

使用分布式切图服务切分三维瓦片并使用的操作步骤如下所示:

  1. 在 SuperMap iDesktop 中制作三维数据,并直接拖动加载到新的三维场景 scene 中,保存工作空间和场景;
  2. 在 SuperMap iDesktop 中直接将上述工作空间发布为 SuperMap iServer 的三维服务,如:http://localhost:8090/iserver/services/3D-sample/rest;
  3. 访问 SuperMap iServer 的分布式切图服务,创建切图任务,并依次选择待切图的上述三维服务组件3D-sample、场景 scene、影像图层 beijing@beijing、存储位置 m2,并设置切图比例尺,即可创建切图任务,详见:创建切图任务-三维瓦片
  4. 待 SuperMap iServer 的分布式切图任务完成后,通过“快速发布服务”,可把 MongoDB 存储位置 m2中的瓦片发布,选择其中的 beijing@beijing,服务类型选择3D-REST 服务即可,发布后服务名如3D-scene/rest;
  5. 点击该服务,并访问 datas 资源,可以看到数据列表中的 beijing@beijing,点击3D 表述,即可在三维场景中浏览该数据。

 

示例2:配置使用整个三维场景的预缓存

在三维服务中使用三维场景预缓存的操作步骤如下所示:

  1. 在 SuperMap iDesktop 中制作三维数据,并直接拖动加载到新的三维场景 scene1中,保存工作空间和场景;
  2. 在 SuperMap iDesktop 中直接将上述工作空间发布为三维服务;
  3. 打开上述工作空间,右击三维场景 scene1,选择“生成场景缓存”,在弹出的对话框中,您也可以采取默认设置直接点“生成”开始生成缓存文件,也可以根据自己的需要对各个类型数据分别设置相应参数,如缓存的“块大小”。缓存生成后,将生成的整个场景的缓存文件拷贝至 SuperMap iServer 的缓存路径(【SuperMap iServer 安装目录】\webapps\iserver\output\scene1),需要保证三维场景缓存文件夹的名称与场景名一致,即为 scene1;
  4. 客户端访问三维服务中的 http://server:8090/iserver/services/3D-sample/rest/realspace/scenes/scene1.realspace,浏览场景时,服务端就可以自动调用 SuperMap iDesktop 预先生成的整个场景缓存,从而提高服务器的响应效率。

 

示例3:配置使用 UGC V5.0的地图缓存

对于三维服务,场景中加载的地图,除了可以使用三维场景缓存外,还可以使用 SuperMap UGC V5.0 全球剖分的地图缓存(*.sci)。配置与使用流程如下:

  1. 在 SuperMap iDesktop 中制作地图 WorldMap,并直接拖动加载到新的三维场景 scene2中,保存工作空间和场景;
  2. 在 SuperMap iDesktop 中直接将上述工作空间发布为三维服务;
  3. 打开上述工作空间,右击地图 WorldMap,选择“生成地图缓存”,在弹出的对话框中,设置缓存的版本号为5.0,选择全球剖分并选择生成的比例尺级别,及其他参数采用默认设置,点击“生成按钮”开始生成缓存文件。缓存生成后,将生成的缓存文件拷贝至 SuperMap iServer 的缓存路径(【SuperMap iServer 安装目录】\webapps\iserver\output\scene2\),需要保证地图缓存名称与地图名一致,即为 WorldMap;
  4. 客户端访问三维服务中的 http://server:8090/iserver/services/3D-sample/rest/realspace/scenes/scene2.realspace,浏览场景时,服务端就可以自动调用预先生成的地图缓存,从而提高服务器的响应效率。