SuperMap GIS的TIN地形数据优化

news2024/11/24 9:26:18

目录

一、优化背景

二、数据优化

2.1 去除无效值

2.1.1 栅格数据

2.1.2 瓦片数据

2.2 镶嵌数据集

2.3 生成优化

2.3.1 块存储瓦片

2.3.2 高精度

2.4 创建空间索引


一、优化背景

       TIN指不规则三角网,是针对连续三维空间的不规则划分,其最小单元为不规则三角形。TIN 可以减少数据冗余,表达经度更高,同时在计算效率方面比较有优势,在地理信息系统中有广泛应用。 如交通,道路、桥梁、隧道设计、施工;水利,水利设施、水利发电等;城市建筑,施工、填挖方等。TIN地形数据是项目中最基础的底图数据,用户对地形处理效率及加载性能都有比较高的要求,因此,本文总结了一些TIN地形数据优化的经验,供用户参考。

二、数据优化

2.1 去除无效值

2.1.1 栅格数据

       TIN地形是栅格数据集生成三维瓦片而来,如果栅格数据集存在无效值会导致生成TIN缓存崩溃或者合并TIN缓存后会出现黑块这种现象(见下图)。

那么针对这个问题我们可以对栅格数据集去除无效值,具体思路如下:

(1)导入 TIF 文件时,选择栅格数据集类型,勾选创建影像金字塔;

(2)选中栅格数据集,右键查看栅格数据集的属性,发现其空值并不是-9999;

(3)在该项目中,要对多个栅格生成的 TIN 地形进行合并,要求其空值统一为-9999,因此直接修改属性中的空值为-9999;

(4)将栅格数据集添加到地图中,查询无效区域的栅格值,发现其空值不是-9999,需要将其转变为新的空值:-9999;

(5)通过代数运算里面的 con 函数进行重新赋值,得到一个新的栅格数据集,并重新计算新栅格数据集的极值。此处 con 函数的作用是把小于-9999 的值(浅绿色区域)改为-9999,其它地方不变。

主要操作步骤:在菜单【数据】-【数据处理】-【栅格】-【代数运算】,通过代数运算Con函数实现,如Con([test.grid]<-9999,-9999,[test.grid]),意思是将test数据源下grid数据集值小于-9999的栅格全部赋值为-9999,其它栅格保持栅格值不变。

2.1.2 瓦片数据

       有时编辑后的高精度TIN与低精度TIN合并之后,会出现塌陷的现象(见下图),这时候就需要用到TIN地形的去除无效值操作。去除无效值是去除设置的TIN地形缓存高程极值范围之外的数据。该功能可应用于交通工程领域,如在具体的项目中,经常需要使用两套精度不同的地形数据,其中低精度作为项目背景,高精度满足工程需要。

那么针对这个问题我们可以对TIN地形数据去除无效值,具体操作步骤如下

(1)打开高精度栅格数据集的属性框,查看其高度范围,即属性框-栅格栏中的极值。

(2)选择【三维数据】——【TIN工具】——【去除无效值】功能,根据数据本身的高度范围,填写高程值范围(即步骤1中的极值)。此操作是为了将高程值范围之外的数据在后面的 TIN 合并过程中,被视为无效值处理。

(3)使用三维数据下TIN工具栏中TIN合并缓存工具,将处理后的高精度 TIN 与原来的低精度 TIN 合并。

注意:TIN合并缓存工具时一定要注意,需要将高精度地形缓存放到TIN缓存1的位置,低精度地形缓存放到TIN缓存2的位置。

2.2 镶嵌数据集

       将两个或两个以上栅格数据集以地理坐标为参照组合成一个栅格数据集。下面分别展示了两种栅格数据集镶嵌的示例。

       对于多幅边界相邻的栅格数据集,通过栅格镶嵌操作可直接将其拼接起来,镶嵌效果如上图1所示;对于有重叠部分的栅格数据集,系统会提供多种方法处理栅格数据集的重叠部分,具体参见参数设置中的“重叠区域取值”参数说明,镶嵌效果如上图2所示。

功能入口

【数据】选项卡->【数据处理】->【栅格】->【栅格镶嵌】,弹出“栅格数据集镶嵌”窗口。

  • 在列表框中添加需要进行镶嵌操作的栅格数据集

镶嵌数据集类型:可参与镶嵌的数据集类型有栅格数据集(GRID)和影像数据集(IMAGE)两类,栅格数据集多用来进行栅格分析,影像数据集多用来进行显示或作为底图。栅格数据集镶嵌只能在同一类数据集之间进行,因此,在添加数据集之前需要确定想要镶嵌的栅格数据集类型,这里默认为栅格数据集。选择数据集类型后,系统会根据所选的栅格数据集类型进行自动过滤。此外,将数据集添加至列表框以后,选择数据集类型的下拉列表框变为灰色,呈只读状态,如果用户想改变镶嵌数据集的类型,需要先将列表框内的数据集移除后方可选择。

  1. 进行栅格数据集镶嵌的参数设置。由于栅格数据集和影像数据集自身的差异性,二者的参数设置也略有不同。下面将详细介绍栅格数据集和影像数据集的各项参数。
  • 栅格数据参数设置

重叠区域取值:系统提供的对地理范围上有重叠区域的待镶嵌数据集的处理方法,通过处理该区域像元值来完成数据集的镶嵌。对于栅格数据集,其像元值为地物的属性值,如高程、降水量等。取值方式包括以下五种:

\bigstar同第一个数据集:取列表框中排在最前的栅格数据集的像元值作为重叠区域的值。

\bigstar同最后一个数据集:取列表框中排在最后的栅格数据集的像元值作为重叠区域的值。

\bigstar所有数据集的最大值:取参与镶嵌的所有栅格数据集其相应位置的像元值的最大值。

\bigstar所有数据集的最小值:取参与镶嵌的所有栅格数据集其相应位置的像元值的最小值。

\bigstar所有数据集的平均值:取参与镶嵌的所有栅格数据集其相应位置的像元值的平均值。

像素格式:设置结果数据集的像素格式。

\bigstar同第一个数据集:取列表框中排列最前的栅格数据集的像素格式。

\bigstar同最后一个数据集:取列表框中排在最后的栅格数据集的像素格式。

\bigstar精度最高:选择参与镶嵌的所有栅格数据集中最大的像素格式。

\bigstar精度最低:选择参与镶嵌的所有栅格数据集中最小的像素格式。

\bigstar出现频率最高:选择参与镶嵌的所有栅格数据集中出现频率最高的像素格式,如果像素格式出现的频率相同,则按照数据集在列表框中的存放顺序由上到下选择。

自定义像素格式:勾选“自定义像素格式”前面的复选框后,上方“像素格式”参数将变灰不可用。自定义的像素格式包括:1位、4位、单字节、双字节、整型、长整型、单精度浮点型、双精度浮点型8种。像素格式的具体说明请参见。

无值:这里设定的是镶嵌后数据集为空值的值,即参与镶嵌的栅格数据集中单元格的值在无值数据的设置范围内时,这些单元格在结果数据集的相应位置为空值。

容限:设置无值数据的容限,假设无值数据设为 r、容限值设为 a 时,无值数据的范围是 [r-a, r+a]。

  • 结果数据

数据源:结果数据集所在数据源,默认为被镶嵌数据集所在数据源。

数据集:结果数据集的名称。

编码方式:设置结果数据集的编码方式,包括 SGL、DCT、LZW、PNG、复合编码等编码方式,默认为不进行编码。具体编码方式说明请参见。 栅格数据集编码方式的变化参见下表,左侧一列为栅格数据集的原始编码方式,右侧分别列出了在不同像素格式下适用的编码方式。

创建影像金字塔:是否创建影像金字塔,默认为不勾选。在进行大数据量的栅格数据集镶嵌时,建议创建影像金字塔,以提高浏览速度。

  • 进行栅格数据集镶嵌的环境设置

指定结果数据集的范围,默认为“所有数据集的并集”,即为参加镶嵌的所有数据集其范围的并集。此外,也可以选择某一栅格数据集的范围。在指定结果数据集的范围后,用户可对该数据集的范围进行微调,包括结果数据集的四个边界的位置和栅格数据集的分辨率。

  • 完成栅格镶嵌相关参数的设置后,单击“确定”按钮,执行栅格镶嵌操作

2.3 生成优化

2.3.1 块存储瓦片

       如果追求更高的加载性能和体验,建议生成块存储的瓦片。与影像瓦片一样性能最高的是块大文件存储、其次是 MongoDB。

注意事项10.1及后续版本支持块存储,如果是之前版本,选择紧凑存储类型即可。

具体参数详情见SuperMap GIS的TIN地形数据处理Q&A

2.3.2 高精度

       在生成TIN地形时参数里有高精度和保留精度,如果对生成TIN地形不要求保留原始数据精度值的情况下,选择高精度是性能最优的。下面看这两个参数的说明:

高精度:默认勾选“压缩”复选框,仅高精度的TIN数据支持TIN的相关运算操作,例如提取三维数据(TIN)

保留精度:默认不勾选“带法线”复选框,保留原始数据精度值,勾选后结束层和精细层误差都会改变。主要是针对精度值比较高的DEM数据。

2.4 创建空间索引

       “创建索引”能够对Tin缓存进行构建可用边界信息和空间索引的操作,该操作针对的是那些不存在可用边界信息和空间索引的Tin缓存。

操作步骤:

(1)在【三维数据】选项卡的【TIN地形】组中的【TIN工具】下拉按钮中,单击【创建索引】按钮,弹出“构建索引”对话框。具体参数设置如下:

(2)Tin缓存(.sct):用于构建索引的Tin地形缓存。单击右侧按钮,在弹出的“打开”对话框中选择Tin地形配置文件(*.sct),单击【打开】按钮即可;也可在文本框中直接输入Tin地形配置文件所在的文件夹路径及名称。

(3)单击【确定】按钮,执行构建索引操作。

注意事项:

  • 可通过查看配置文件(*.sct),看Tin缓存是否具有空间索引和可用边界信息。

具体详见.sct配置文件里以下这两个标签:<sml:HasSpatialIndex>TRUE</sml:HasSpatialIndex>

<sml:HasCalculationData>TRUE</sml:HasCalculationData>

  • 这个是对于TIN地形数据没有空间索引的情况下使用的,一般情况生成TIN时默认会带空间索引。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/90975.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]Python计算机毕业设计高校课程思政案例库系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

【Vue路由】多级路由、路由传参、命名路由、params使用

文章目录多级路由案例实验总结路由传参案例实验总结命名路由路由的params参数多级路由 案例实验 我们尝试做出如下的效果&#xff1a; 首先项目结构&#xff1a; 我们直接看四个路由组件&#xff1a; About.vue <template><h2>我是About的内容</h2> </…

Android 音视频采集那些事

音视频采集 在整个音视频处理的过程中&#xff0c;位于发送端的音视频采集工作无疑是整个音视频链路的开始。在 Android 或者 IOS 上都有相关的硬件设备——Camera 和麦克风作为输入源。本章我们来分析如何在 Android 上通过 Camera 以及录音设备采集数据。 Camera 在 Andro…

web网页设计期末课程大作业:家乡旅游主题网站设计——河北8页HTML+CSS+JavaScript

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法&#xff0c;如盒子的嵌套、浮动、margin、border、background等属性的使用&#xff0c;外部大盒子设定居中&#xff0c;内部左中右布局&#xff0c;下方横向浮动排列&#xff0c;大学学习的前端知识点和布局方式都有…

【爬虫实战项目】Python爬虫批量旅游景点信息数据并保存本地(附源码)

前言 今天给大家介绍的是Python爬虫批量下载旅游景点信息数据&#xff0c;在这里给需要的小伙伴们代码&#xff0c;并且给出一点小心得。 首先是爬取之前应该尽可能伪装成浏览器而不被识别出来是爬虫&#xff0c;基本的是加请求头&#xff0c;但是这样的纯文本数据爬取的人会…

丰立智能在创业板上市:总市值达到33亿元,王友利夫妇为实控人

12月15日&#xff0c;浙江丰立智能科技股份有限公司&#xff08;下称“丰立智能”&#xff0c;SZ:301368&#xff09;在深圳证券交易所创业板上市。本次上市&#xff0c;丰立智能的发行价格为22.33元/股&#xff0c;发行数量为3010万股&#xff0c;募资总额约为6.72亿元&#x…

企业数字化进程中,商业智能 BI 如何降本增效

当下形势&#xff0c;不稳定性已是常态&#xff0c;国际形势复杂多变&#xff0c;疫情对各行各业的企业影响巨大&#xff0c;市场环境日新月异&#xff0c;要想在激烈的竞争中站稳脚跟&#xff0c;实现企业盈利&#xff0c;必须降本增效。你是否考虑过利用数字技术这些新手段让…

关于Revit中门窗插入问题技巧和门窗生成

一、Rvit中门窗插入时需要注意的问题和技巧 1.在平面中插入门窗时&#xff0c;在键盘中输入SM门窗会自动定义在墙体的中心位置&#xff0c;如图1所示。 2.空格键可以快速调整门开启的方向 3.在三维视图中插入门窗时&#xff0c;窗户的位置可以任意插入&#xff0c;而插入的门系…

基于springboot休闲娱乐代理售票系统设计与实现的源码+文档

摘要 网络的广泛应用给生活带来了十分的便利。所以把休闲娱乐代理售票管理与现在网络相结合&#xff0c;利用java技术建设休闲娱乐代理售票系统&#xff0c;实现休闲娱乐代理售票的信息化。则对于进一步提高休闲娱乐代理售票管理发展&#xff0c;丰富休闲娱乐代理售票管理经验…

math_常用放缩不等式及其变形@指数@对数@三角函数@一次函数

文章目录三角函数对数分式x>0x>0x>0x∈(0,12π)x\in(0,\frac{1}{2}\pi)x∈(0,21​π)正弦正切x∈(0,1)x\in(0,1)x∈(0,1)有界性正弦余弦反三角x∈Rx\in{R}x∈R指数和幂三角函数对数分式 x>0x>0x>0 sin⁡x<x(x>0)\sin{x}<x(x>0)sinx<x(x>0)…

[GYCTF2020]Easyphp

打开界面&#xff0c;一个登陆的窗口&#xff0c;想到sql注入 然后查看源码没有多余的提示 然后试了一下常见的www.zip成功下载文件 index.php发现了包含文件 <?php require_once "lib.php";if(isset($_GET[action])){require_once(__DIR__."/".$_…

数据结构 | 红黑树、平衡二叉树旋转、并查集

一、红黑树 1.1、红黑树的定义&#xff08;左根右&#xff0c;根叶黑&#xff0c;不红红&#xff0c;黑路同&#xff09; 前提&#xff0c;对于一棵二叉排序树(或者说二叉搜索树)&#xff0c;如果满足以下定义则是红黑树&#xff1a; ①每个结点或是红色&#xff0c;或是黑色的…

2022-12-15 工作记录--React-用swiper实现多行交错、同速、跑马灯效果的弹幕式轮播(坑)

React-用swiper实现多行交错、同速、跑马灯效果的弹幕式轮播&#xff08;坑&#xff09; 激动的心呀呀呀&#xff01;٩(๑>◡<๑)۶ 历时昨天一下午滴时间昨晚凌晨一点多&#x1f31b;还爬起来思考&#x1f914;这个问题&#xff08;眼睛一闭着&#x1f634;&#xff0c…

2471. 逐层排序二叉树所需的最少操作数目-层次遍历+选择排序

2471. 逐层排序二叉树所需的最少操作数目-层次遍历选择排序 给你一个 值互不相同 的二叉树的根节点 root 。 在一步操作中&#xff0c;你可以选择 同一层 上任意两个节点&#xff0c;交换这两个节点的值。 返回每一层按 严格递增顺序 排序所需的最少操作数目。 节点的 层数…

虚拟机的垃圾收集(一)

虚拟机就好比是一个有限空间的一个房子&#xff0c;在我们生活中&#xff0c;也会产生各种各样的垃圾&#xff0c;虚拟机也不例外&#xff0c;垃圾满了会造成内存溢出等问题&#xff0c;那虚拟机是怎么进行垃圾回收的呢?让我们来揭开这神秘的面纱 1.概述 程序计数器、虚拟机…

融一亿但被质疑的5ire为何大家有分歧

5ire是由印度裔企业家 Pratik Gauri 和 Prateek Dwivedi 以及 Web3 金融家 Vilma Mattila 于 2021 年 8 月创立的区块链项目&#xff0c;官方在2022年7月公布以15亿美元估值获得一亿美元融资&#xff0c;机构为英国企业集团 SRAM & MRAM Group &#xff0c;成为印度的第 10…

[附源码]Python计算机毕业设计高校教材管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

电影《海贼王:红发歌姬》观后感

上周&#xff0c;北京已经开始陆续解封了&#xff0c;电影院也可以进入了&#xff0c;只要持有48小时核算就行&#xff0c;于是去看了这部电影《海贼王&#xff1a;红发歌姬》&#xff0c;去看之前&#xff0c;看了预告片&#xff0c;讲述路飞小时候的玩伴乌塔&#xff0c;长大…

NLP创业破局,如何摘取更高处的果实

点击蓝字关注我们AI TIME欢迎每一位AI爱好者的加入&#xff01;2022年&#xff0c;云从科技、商汤科技先后登陆资本市场&#xff0c;计算机视觉四小龙中的旷视科技、依图科技也在摩拳擦掌。反观NLP领域&#xff0c;相关企业的发展速度、融资规模、上市进程仿佛都要略逊一筹&…

java计算机毕业设计基于安卓Android的二手交易app-闲置物品交易app-ssm

项目介绍 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数据库设…