加载地形数据操作手册


概述

SuperMap支持对栅格数据集生成三维地形瓦片,即把地形数据处理为瓦片(Tile)文件,以优化地形数据在服务器端发布以及在SuperMap iClient3D for WebGL/WebGPU的浏览性能。

本文主要介绍SuperMap iClient3D for WebGL/WebGPU浏览地形数据的操作流程,主要操作步骤如下:

    1. 生成三维瓦片数据
    2. 发布服务
    3. 在 SuperMap iClient3D for WebGL/WebGPU 中加载

其中涉及的产品有:SuperMap iDesktopX、SuperMap iServer、SuperMap iClient3D for WebGL/WebGPU。

操作流程

下面将以珠峰影像数据为例进行介绍

1、生成三维瓦片数据

本操作步骤通过 SuperMap iDesktopX 桌面产品将地形数据生成Tin类型的三维地形瓦片(*.sct)。

1.1操作步骤

(1)打开SuperMap iDesktopX,在工作空间管理器的数据源处右键打开文件型数据源。

(2)选中想要生成地形瓦片的栅格数据集,右键点击生成三维瓦片...选项。

(3)弹出生成三维瓦片对话框。

(4)数据列表中为将要生成瓦片的数据集,可点击添加数据集或删除图标来管理将要生成瓦片的数据集,对生成瓦片的数据集设置以下:

    • 瓦片类型:选择Tin;
    • 剖分方式:选择球面。

(5)在对话框的参数设置处,设置以下:

    • 瓦片名称:输入瓦片名称,默认为“数据集名称@数据源名称”;
    • 瓦片路径:设置瓦片的输出路径;
    • 开始层:设置开始生成瓦片的层数;
    • 结束层:设置结束生成瓦片的层数;

(6)瓦片范围和比例尺相关信息可不作更改,点击生成按钮,等待生成完成。

如有疑问,详细操作可参考 SuperMap iDesktopX 帮助文档生成地形瓦片(TIN)。

1.2操作结果

瓦片生成完成后,打开目标路径Terrain文件夹,存放着一个info.sct文件,它为地形数据的瓦片配置文件,数字命名的文件夹则存储了不同层级的地形数据。

2、发布服务

将上一步骤中生成地形的瓦片数据以三维服务形式发布到本地或远程服务器上,便于在 SuperMap iClient3D for WebGL/WebGPU 中加载地形服务。

2.1操作步骤

2.1.1发布文件型工作空间

(1)在 SuperMap iDesktopX 桌面产品的工作空间管理器中,在场景下右键点击新建球面场景。

(2)图层管理器下选中地形图层,右键点击添加地形瓦片,选择上一步骤生成的*.sct文件。

(3)添加地形瓦片后,保存场景和工作空间,该工作空间文件将用于发布工作空间类型的三维服务。

(4)保存工作空间后,在 SuperMap iServer_HOME /bin 目录下,点击startup.bat批处理文件,启动SuperMap iServer服务。

(5)打开浏览器,地址栏输入http://localhost:8090/iserver/manager 进入服务管理页面,首页下点击快速发布一个或一组服务按钮。

(6)弹出快速发布服务-选择发布的数据来源对话框,在数据来源处选择工作空间,点击下一步。

(7)弹出快速发布服务-配置数据对话框,点击远程浏览按钮选择前述所保存的工作空间,点击下一步。

(8)弹出快速发布服务-选择发布的服务类型对话框,勾选REST-三维服务,点击下一步。

至此,服务发布已配置完成,按照提示点击完成和关闭按钮。

2.1.2发布三维瓦片

由于SuperMap iServer 支持将 S3M 瓦片、OSGB 模型瓦片 、地形瓦片(cf、terrainz)、影像瓦片(WebP、JPG、PNG)作为数据来源直接发布为三维服务。也可以直接将上一步骤的地形瓦片发布三维服务。

详细操作,请参考SuperMap iServer帮助文档

    • ①发布文件型工作空间
    • ②发布三维瓦片

服务发布完成后,将在服务列表(http://localhost:8090/iserver/services)中显示该三维服务。

3、在SuperMap iClient3D for WebGL/WebGPU中加载

发布三维服务后,在此步骤中便可通过 SuperMap iClient3D for WebGL/WebGPU 浏览地形数据。

提示:在操作前请将产品包存放在 SuperMap iServer_HOME /webapps 目录下。

3.1操作步骤

(1)获取三维数据url地址,按照如下顺序点击获取:

    • 进入服务列表页面(http://localhost:8090/iserver/services),找到并点击上一步骤所发布的三维服务;
    • 进入根目录页面,点击realspace;
    • 进入三维服务根节点(3D)页面,点击datas;
    • 进入三维数据列表(datas)页面,点击三维数据集列表下的链接;
    • 进入三维数据资源(data)页面,复制此时浏览器地址栏的url地址。

(2)进入产品包存放路径( SuperMap iServer_HOME /webapps),在examples文件夹下,文本方式打开terrainAndImagery.html范例,修改如下:

	function onload(SuperMap3D) {
		// 通过config.js中的getEngineType,获取引擎类型(EngineType)用于设置启动方式
		var EngineType = getEngineType();
		//初始化viewer部件,添加SuperMap iServer发布的TIN地形服务
		var viewer = new SuperMap3D.Viewer('Container', {
		terrainProvider: new SuperMap3D.SuperMapTerrainProvider({
			url: URL_CONFIG.ZF_TERRAIN,
			isSct: true//地形服务源自SuperMap iServer发布时需设置isSct为true
		}),
		contextOptions: {
			contextType: Number(EngineType), // Webgl2:2 ; WebGPU:3
		}
	 });		
		viewer.scenePromise.then(function(scene){
			init(SuperMap3D, scene, viewer);
		});
	}

(3)以localhost方式打开terrainAndImagery.html。

如有疑问请参考范例:地形影像。

3.2操作结果

打开网页后,相机飞至地形数据所在位置,显示效果如下图:

图2

注:上图为加载了影像数据和地形数据的效果,加载影像数据相关操作请参考 加载影像数据 操作文档。

版权所有 © 2000-2025 北京超图软件股份有限公司 京ICP备11032883号-8 京公网安备11010502008721 甲测资字11002074