SuperMap精模数据处理流程及注意事项

2023-11-01 05:20

本文主要是介绍SuperMap精模数据处理流程及注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、数据合理分类
  • 二、数据检查
  • 三、生成三维切片缓存
  • 四、注意事项
  • 五、发布服务
  • 六、加载服务


前言

本文主要是针对城市级精细模型数据。为了使数据在前端使用调度更合理,加载速度更快,显示层次更鲜明,本文主要讲述数据生成缓存的参数设置及生成缓存前数据整理的建议。


一、数据合理分类

  1. 精模数据需按照地板(道路和水系也可以归到地板里)、建筑、小品、植被几大类进行区分,并单独存放数据集。
  2. 每份数据大小应在100平方公里左右,且每份数据都是连续的,不要跨区域存放。比如,现有数据160平方公里左右,可以先大块的分成两部分,A部分100平方公里左右,B部分60平方公里左右。
    根据第一项的分类原则,将数据分成地板、建筑、小品、植被四个数据集,这样整个数据就会有8个模型数据集。

二、数据检查

  1. 精细模型导入UDB后,确认数据是否存在重复顶点、重复三角面、重复子对象等情况,若存在,需进行数据校正。
  2. 在三维数据->模型工具->模型校正下有相应功能对数据进行检查并处理。如下图所示:
    在这里插入图片描述

三、生成三维切片缓存

  1. 对模型数据集生成缓存,使用数据集右键-“生成缓存”功能。

  2. 对数据生成缓存,设置缓存参数,可以参考以下述中的参数设置。

  3. 对于地板(包括道路和水系)这类数据结构不复杂,需要初始显示时快速、大片区域的加载,所以可以设置较大瓦片边长,过滤阈值设置小一些甚至可以为0。

  4. 对于建筑这部分数据由于结构复杂、空间分布相较于地板更密集,所以瓦片边长可以适当调小或设置600米。结合项目使用需求,可以对纹理设置及纹理大小限制做一些调整。

  5. 对于小品通常体积不大,在整个大场景可视占比不高,只要在近处时能快速加载出来就行,所以可以设置一个相对较小的瓦片边长(为了设置最大可见距离使用)和设置一个较大的过滤阈值(让细小的构件在相对远处能被过滤掉)。

  6. 对于植被数据会有成片区、密集分布的情况,又数据结构不复杂,所以瓦片边长可以设当设置大些,但可以设置一个较大的过滤阈值,用于过滤远处细小的对象。

四、注意事项

  1. 数据分类时,需要把小品中明显是地块部分的放到地板类型中;把栏杆、围墙等长条状(长超过10米的对象)的对象摘出来放到地板中;把大型的对象(比如建筑施工的吊塔、跨度大的天桥、大型雕塑等)放到建筑分类中。

  2. 加载时,对地板可以不设置可见距离或设置很大的一个可见距离(参考值:80000米)。

  3. 对建筑设置最大可见距离8000米。

  4. 对小品设置最大可见距离300米或600米。

  5. 对植被设置最大可见距离800米或1200米。

  6. 如对山上的植被有特殊显示要求,可以将整个山范围内的植被,单独生成缓存,不设置可见距离或者设置一个较远可见距离,如8000米。

五、发布服务

使用SuperMap iServer将缓存数据发布为三维服务:
方式一:
在SuperMap iDesktop中将缓存添加到场景中保存场景再保存工作空间,iServer选择“快速发布一个或一组服务-工作空间-三维服务”即可。
方式二:
iServer选择“快速发布一个或一组服务-三维切片缓存-REST-三维服务”。

六、加载服务

使用SuperMap iClient3D for WebGL加载发布的三维服务:
方式一:

viewer.scene.open('http://localhost:8090/iserver/services/3D-local3DCache-BuildingCBD/rest/realspace')

方式二:

viewer.scene.addS3MTilesLayerByScp('http://localhost:8090/iserver/services/3D-local3DCache-BuildingCBD/rest/realspace/datas/Building@CBD/config',{name:'build'})

这篇关于SuperMap精模数据处理流程及注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/320770

相关文章

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

MySQL 获取字符串长度及注意事项

《MySQL获取字符串长度及注意事项》本文通过实例代码给大家介绍MySQL获取字符串长度及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 获取字符串长度详解 核心长度函数对比⚠️ 六大关键注意事项1. 字符编码决定字节长度2

C++链表的虚拟头节点实现细节及注意事项

《C++链表的虚拟头节点实现细节及注意事项》虚拟头节点是链表操作中极为实用的设计技巧,它通过在链表真实头部前添加一个特殊节点,有效简化边界条件处理,:本文主要介绍C++链表的虚拟头节点实现细节及注... 目录C++链表虚拟头节点(Dummy Head)一、虚拟头节点的本质与核心作用1. 定义2. 核心价值二

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

详解MySQL中DISTINCT去重的核心注意事项

《详解MySQL中DISTINCT去重的核心注意事项》为了实现查询不重复的数据,MySQL提供了DISTINCT关键字,它的主要作用就是对数据表中一个或多个字段重复的数据进行过滤,只返回其中的一条数据... 目录DISTINCT 六大注意事项1. 作用范围:所有 SELECT 字段2. NULL 值的特殊处

MySQL 打开binlog日志的方法及注意事项

《MySQL打开binlog日志的方法及注意事项》本文给大家介绍MySQL打开binlog日志的方法及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、默认状态二、如何检查 binlog 状态三、如何开启 binlog3.1 临时开启(重启后失效)

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4