解读SuperMap矢量瓦片应用

2024-02-25 08:18

本文主要是介绍解读SuperMap矢量瓦片应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

矢量瓦片诞生的意义在于互补栅格瓦片的不足,栅格瓦片是目前使用最广、技术成熟的底图技术。随着应用的不断升级,栅格瓦片的局限性越来越凸显。

栅格瓦片面临的问题:

  1. 栅格瓦片体积大
  2. 栅格瓦片创建效率低
  3. 更改配图方案需要重新创建栅格瓦片
  4. 栅格瓦片底图对高分辨率显示屏支持不足

矢量瓦片的优势:

  1. 矢量瓦片创建效率高
  2. 矢量瓦片传输和渲染速度快
  3. 矢量瓦片数据和风格样式独立,更改配图方案无需重新创建瓦片
  4. 矢量瓦片具有高显示质量,能够很好地支持高分辨率显示屏

下面附上SuperMap栅格瓦片和矢量瓦片的各自特点,方便您合理选择瓦片类型用作底图。

 

矢量瓦片

栅格瓦片

瓦片形式

mvt文件

图片文件

瓦片格式

Google Protocol Buffers数据序列化格式

png、jpg、png8等

瓦片内容

瓦片对应范围的地图矢量数据的坐标和字段

瓦片对应范围的地图内容输出的图片

基于MapBox样式规范的瓦片风格

瓦片结构

瓦片按照层级和行列号分文件夹存储

采用全球剖分层级比例尺创建瓦片

可自定义层级比例尺创建瓦片

瓦片大小

大小与瓦片对应范围的矢量地图数据量的大小有关,数据量大,瓦片文件就大

图片文件大小

瓦片存储

支持原始缓存、紧凑缓存以及存储在MongoDB数据库

矢量瓦片底图是一种结合了栅格瓦片底图和矢量底图优势的底图技术,具有客户端灵活绘制、渲染,分块加载减少请求数量的优点。目前,已经采用矢量瓦片底图技术的组织有ESRI、MapBox、MAPZEN、OpenStreetMap、百度地图、SuperMap。

下面就来说一说SuperMap的矢量瓦片解决方案。

                                                                                        图:SuperMap矢量瓦片结构

SuperMap的矢量瓦片使用全球剖分网格,像建金字塔的方式,对矢量地图数据进行分层分块,然后,使用 .mvt自定义文件格式(遵循MapBox MVT规范的矢量瓦片描述文件)存储分块内的数据描述信息,并生成瓦片风格文件,如上图所示。矢量瓦片发布到服务端后,客户端请求到矢量瓦片后,通过解析样式来动态渲染矢量瓦片并拼接成底图。完成上述矢量瓦片的生成、发布和使用的全过程,需要多个SuperMap系列产品相互配合。

                                                                            图:矢量瓦片应用相关的SuperMap系列产品

首先,将矢量数据加载到SuperMap iDesktop中进行矢量地图制作,或者使用已有的地图数据。不过,地图风格的一些设置需要注意,原因是:SuperMap根据MapBox GL 版本 8的样式规范生成矢量瓦片风格文件,而MapBox风格显示表达与SuperMap存在差异,所以个别SuperMap的系统符号以及图层风格MapBox不支持,在地图配图时,建议您采用替代方案规避。

除此之外,矢量地图的复杂度将会影响创建矢量瓦片的性能,如要素包含的子对象过多等,建议制作矢量地图时尽量降低数据的复杂度。

关于如何制作一幅适合高效创建矢量瓦片底图的地图,请参见《创建矢量瓦片之制图最佳实践》。

准备好矢量地图后,在SuperMap iDesktop直接可以创建矢量瓦片,只需简单地设置层级比例尺、范围等参数。这里,您可以使用多进程高效创建矢量瓦片,矢量瓦片的存储类型也支持多种:原始缓存、紧凑缓存,也可以将矢量瓦片写入MongoDB数据库。

创建的矢量瓦片可以通过SuperMap iDesktop提供的入口浏览,也可以通过SuperMap iServer 发布为地图服务,再通过SuperMap iClient客户端显示浏览。

目前,SuperMap iClient支持MapBox GL和OpenLayers两种渲染显示效果。其中,OpenLayers支持多种投影的矢量瓦片渲染显示,而MapBox GL只支持渲染显示EPSG3857投影的矢量瓦片。

                                                                       图:MapBox GL EPSG3857投影矢量瓦片显示

                                                                             图:OpenLayers EPSG3857投影矢量瓦片显示

                                                                          图:OpenLayers EPSG4326投影矢量瓦片显示

矢量瓦片的最大特点之一就是瓦片数据与风格独立,因此,能够通过修改瓦片的风格来改变矢量瓦片底图的配图方案,无需重新创建矢量瓦片。

矢量瓦片的风格文件style.json位于“矢量缓存目录/Styles/”目录下,所使用的点、线、面符号等资源存储在“矢量缓存目录/ sprites”目录下。

修改矢量瓦片风格可以通过以下途径:

一、直接修改style.json样式文件,此方式并不易用,不建议使用。

二、通过SuperMap iDesktop重新创建矢量瓦片风格,然后将新创建的矢量瓦片风格内容替换到待更新风格的矢量缓存目录即可。

                                                                                           图:重新创建矢量瓦片风格

三、SuperMap Online目前提供了矢量瓦片底图服务,您也可以通过SuperMap Online,使用SuperMap iPortal内置的矢量瓦片风格修改WebApp在线修改矢量瓦片风格。

                                                                       图:iPortal内置的修改矢量瓦片风格的WebApp

这篇关于解读SuperMap矢量瓦片应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

亮相WOT全球技术创新大会,揭秘火山引擎边缘容器技术在泛CDN场景的应用与实践

2024年6月21日-22日,51CTO“WOT全球技术创新大会2024”在北京举办。火山引擎边缘计算架构师李志明受邀参与,以“边缘容器技术在泛CDN场景的应用和实践”为主题,与多位行业资深专家,共同探讨泛CDN行业技术架构以及云原生与边缘计算的发展和展望。 火山引擎边缘计算架构师李志明表示:为更好地解决传统泛CDN类业务运行中的问题,火山引擎边缘容器团队参考行业做法,结合实践经验,打造火山

自制的浏览器主页,可以是最简单的桌面应用,可以把它当成备忘录桌面应用

自制的浏览器主页,可以是最简单的桌面应用,可以把它当成备忘录桌面应用。如果你看不懂,请留言。 完整代码: <!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><ti

Python应用开发——30天学习Streamlit Python包进行APP的构建(9)

st.area_chart 显示区域图。 这是围绕 st.altair_chart 的语法糖。主要区别在于该命令使用数据自身的列和指数来计算图表的 Altair 规格。因此,在许多 "只需绘制此图 "的情况下,该命令更易于使用,但可定制性较差。 如果 st.area_chart 无法正确猜测数据规格,请尝试使用 st.altair_chart 指定所需的图表。 Function signa

气象站的种类和应用范围可以根据不同的分类标准进行详细的划分和描述

气象站的种类和应用范围可以根据不同的分类标准进行详细的划分和描述。以下是从不同角度对气象站的种类和应用范围的介绍: 一、气象站的种类 根据用途和安装环境分类: 农业气象站:专为农业生产服务,监测土壤温度、湿度等参数,为农业生产提供科学依据。交通气象站:用于公路、铁路、机场等交通场所的气象监测,提供实时气象数据以支持交通运营和调度。林业气象站:监测林区风速、湿度、温度等气象要素,为林区保护和

PyTorch模型_trace实战:深入理解与应用

pytorch使用trace模型 1、使用trace生成torchscript模型2、使用trace的模型预测 1、使用trace生成torchscript模型 def save_trace(model, input, save_path):traced_script_model = torch.jit.trace(model, input)<

哺乳细胞重组表达人鼠嵌合抗体:制备与应用

重组抗体是一类具有广泛应用价值的蛋白质,在药物研发和生物医学研究中发挥着重要作用。本文将介绍重组抗体的表达方式,重点关注嵌合抗体制备和哺乳细胞重组表达人鼠嵌合抗体的技术原理和应用。 重组抗体表达的原理和方法 重组抗体表达是通过将人或动物源的免疫球蛋白基因导入表达宿主细胞,并使其表达出特异性抗体蛋白质。常用的表达系统包括细菌、哺乳细胞和真核微生物等。 嵌合抗体制备的步骤和优势 选择适当的抗原

【Qt6.3 基础教程 16】 掌握Qt中的时间和日期:QTimer和QDateTime的高效应用

文章目录 前言QTimer:定时任务的强大工具QTimer的基本用法高级特性:单次定时器 QDateTime:处理日期和时间获取当前日期和时间日期和时间的格式化输出日期和时间计算 用例:创建一个倒计时应用结论 前言 在开发桌面应用程序时,处理时间和日期是一个常见且重要的任务。Qt框架提供了强大的工具来处理与时间相关的功能,其中QTimer和QDateTime是最核心的类。本

基于Spring Boot的企业级应用架构设计

基于Spring Boot的企业级应用架构设计 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天,我想和大家分享一下基于Spring Boot的企业级应用架构设计,希望对大家有所帮助。 一、Spring Boot概述 Spring Boot是由Pivotal团队提供的全新框架,它简化了Spring应用程序的创建和开发过程。

LoRaWAN在嵌入式网络通信中的应用:打造高效远程监控系统(附代码示例)

引言 随着物联网(IoT)技术的发展,远程监控系统在各个领域的应用越来越广泛。LoRaWAN(Long Range Wide Area Network)作为一种低功耗广域网通信协议,因其长距离传输、低功耗和高可靠性等特点,成为实现远程监控的理想选择。本文将详细介绍LoRaWAN的基本原理、应用场景,并通过一个具体的项目展示如何使用LoRaWAN实现远程监控系统。希望通过图文并茂的讲解,帮助读

一二三应用开发平台应用开发示例(4)——视图类型介绍以及新增、修改、查看视图配置

调整上级属性类型 前面为了快速展示平台的低代码配置功能,将实体文件夹的数据模型上级属性的数据类型暂时配置为文本类型,现在我们调整下,将其数据类型调整为实体,如下图所示: 数据类型需要选择实体,并在实体选择框中选择自身“文件夹” 这时候,再点击生成代码,平台会报错,提示“实体【文件夹】未设置主参照视图”。这是因为文件夹选择的功能页面,同样是基于配置产生的,因为视图我们还没有配置,所以会报错。