当前位置: 首页 > news >正文

使用SuperMap制作地形图的详细教程

一、数据准备

本示例以山东为例,演示如何通过SuperMap iDesktopX制作一个好看的地形图。所有数据均来源于互联网公开数据,如有自己项目真实数据,可直接跳过数据下载进入下一步。

本示例所需数据包括:

数据类别

数据类型

DEM数据

栅格

省级行政区划数据

市级行政区划数据

县级行政区划数据

河流数据(主要河流)

线、面

湖泊数据

1、数据下载

数据下载可以参考该博客内容,下载途径是一样的:

使用SuperMap制作流域分布图的详细教程-CSDN博客

二、数据处理

1、数据导入

2、裁剪矢量数据:河流、湖泊

3、DEM数据拼接、裁剪

4、统一坐标系。

以上4个步骤跟上一篇河流水系中的操作是一样的,这里就不重复了,不清楚的可以直接查看下面博客中对应的这部分内容

使用SuperMap制作流域分布图的详细教程-CSDN博客

三、地图制图

重点内容来了!!

1、配置底图

采用分组图层管理操作也是一样的

将山东省的省级行政区划面添加到地图中,然后新建一个图层组,命名为底图,将山东省_R移动到该图层分组内。每一比例尺层级也按照这样的方式进行管理,一个比例尺层级的所有要素统一放在一个图层分组内,最终结构如下:

分组完成后,我们就来确定底图所需要的要素:

数据图层

作用

DEM数据

底图背景

行政区

行政区表达

边界渲染

突出目标区域

其他

海洋表达

1.1 DEM

本示例用了DEM三次,这里注意一下,

第一层图层混合模式
第二层图层混合模式
第三层三维晕渲图表达

接下来我们图层一层一层的来看由于是从下往上叠加的,我们从最下面开始;

  • 第三层:DEM数据添加到图层中,在图层属性中设置显示方式为“栅格函数显示”,栅格函数设置为“三维晕渲图”,下面的参数具体参考易以下截图:

颜色表链接:通过网盘分享的文件:山东地形图资源
链接: https://pan.baidu.com/s/1B9-sODAnfXYVGg6y-LaNkw?pwd=84ap 提取码: 84ap 

资源中包含以下内容:

下载上面链接的资源后,点击上图中颜色表后的设置按钮,弹出颜色表窗口,点击下图中的导入,导入下载资源中的ColorTable.sctu。

设置后,结果如下:

  • 第二层:

(1)再次添加一个DEM到地图中,注意,图层顺序在刚刚那个DEM的上面,选中图层后,鼠标右键“设置颜色表”,同样的,导入下载资源中的“ColorTable_shandon.sctu”

(2)选中图层,鼠标右键“图层属性”,在图层属性中找到“”混合模式,这里改为“变亮”

这一步得到的效果:

第三层:

(1)再次添加一个DEM到地图中,注意,图层顺序在刚刚那两个DEM的上面,选中图层后,鼠标右键“设置颜色表”,同样的,导入下载资源中的“ColorTable_shandon2.sctu”

(2)选中图层,鼠标右键“图层属性”,在图层属性中找到“”混合模式,这里改为“线性加深”

这一步得到的结果:

通过上面三层DEM的叠加,我们的基础底就搭好了,

1.2 行政区划边界

标准一致:

  • 如果属于内陆省份,则直接对省边界线设置对应的两点线符号风格
  • 如果该省份临海,则需要区分陆地线和海洋线,陆地线一样,采用两点线风格,海洋线则用蓝色线表达。

山东属于沿海城市,所以这里也需要分开设置

具体的操作步骤:

  • “面转线”,将省级面转为线数据集;
  • “对象编辑”中的打断,将线从陆地与海洋的交界处打断。
  • “可视化”,可以分开两个数据集分别设置风格,也可以通过单值专题图,给两个对象设置 不同的风格。

得到的结果如下:

1.3 边界渲染

这里注意,由于山东属于沿海城市,一般加边界晕边,不会加海洋区域,只添加陆地区域。所以我们生成缓冲区直接用上一步得到的陆地线来做单边缓冲区,不再使用整个行政区划面数据了

注意:

(1)这里使用的是平头缓冲,才能支持设置左缓冲或者右缓冲,这里左缓冲右缓冲的标准是根据线的方向来的,注意边界晕边一定是在省边界外。

(2)由于地图做了多级比例尺,如果缓冲区范围设置过大,放大后边界就显示很粗,如果设置过小,缩小地图又看不见。这种情况,想要将地图做的精细,就可以生成多个标准的晕边数据,在不同的比例尺加载不同的数据,本示例采用了两个标准:(小比例尺:2000,4000;大比例尺:1500,3000)

这一步得到的结果:

1.4  海洋渲染

这里演示一种海洋的晕染方式(可视化方向多种多样,本示例只是举例,欢迎大家去尝试更多其他的方案)

  • 用第2步得到海洋线,生成多重缓冲区,生成后,注意需要将接壤的其他省份行政区划数据加进来,与缓冲区结果做擦除操作,不能在本来是其他省份的陆地区域进行海洋渲染。

然后添加到地图中,设置一个如下的图层风格:

  • 新建一个文本数据集,添加上海洋的文本注记:

这一步得到的结果:

1.5 其他

这里我还想表达一个山东从陆地到海洋的一个过渡

添加一个山东省的行政区划面,设置了如下风格:

这一步得到的效果如下:

好啦,到这一步,我们的底图就基础搭建完成,其实地形图到这一步,就已经是初具雏形了。放大看看细节:

2、要素叠加

叠加要素的方法,跟之前做行政区划和水系分布是一样的方法,这里就不做重复的描述了,不清楚如何做的可以参考一下之前的流程方案使用SuperMap制作流域分布图的详细教程-CSDN博客

下面就直接列出本示例每一层级说叠加的要素供大家参考:

  • 第一级比例尺
行政区划_市级别(点、注记)
区域分布(注记)
主要河流(面、线)

  • 第二级比例尺
    行政区划_市级别(点、注记)
    区域分布(注记)
    主要河流(面、线、标记)
    主要山脉

  • 第三级比例尺
    行政区划_县级别(点、注记)
    区域分布(注记)
    主要河流(面、线、标记)
    主要山脉

四、可视化地图案例集

SuperMap Online包含很多省份的行政区划地图,各个省份有细微的调整,可以搜索目标区域查看对应的效果。地址:Online 开发者中心 

五、地形图图集

下面为一些地形分布的案例图集,可供大家参考。均是采用上面的类似方法做的,但是每个地图有细微的调整,大家可以多去尝试不同的效果。也欢迎大家一起交流

相关文章:

使用SuperMap制作地形图的详细教程

一、数据准备 本示例以山东为例,演示如何通过SuperMap iDesktopX制作一个好看的地形图。所有数据均来源于互联网公开数据,如有自己项目真实数据,可直接跳过数据下载进入下一步。 本示例所需数据包括: 数据类别 数据类型 DEM数据…...

PHP Array:精通数组操作

PHP Array:精通数组操作 PHP,作为一门流行的服务器端编程语言,提供了强大的数组处理能力。数组是PHP中非常灵活和强大的数据结构,它可以存储多个相同类型的值。在PHP中,数组不仅可以存储数字,还可以存储字…...

【使用命令配置java环境变量永久生效与脚本切换jdk版本】

java配置环境变量命令与脚本切换jdk版本 新建用户环境变量永久生效 setx JAVA8_HOME "D:\Java\jdk8" setx JAVA17_HOME "d:\Java\jdk-17" setx JAVA_HOME %JAVA8_HOME% setx CLASSPATH ".;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;"…...

STM32-笔记32-ESP8266作为服务端

esp8266作为服务器的时候,这时候网络助手以客户端的模式连接到esp8266,其中IP地址写的是esp8266作为服务器时的IP地址,可以使用ATCIFSR查询esp8266的ip地址,端口号默认写333。 当esp8266作为服务器的时候,需要完成哪些…...

RAG(Retrieval-Augmented Generation,检索增强生成)流程

目录 一、知识文档的准备二、OCR转换三、分词处理四、创建向量数据库五、初始化语言聊天模型1.prompt2.检索链3.对话 完整代码 知识文档的准备:首先需要准备知识文档,这些文档可以是多种格式,如Word、TXT、PDF等。使用文档加载器或多模态模型…...

【Python学习(六)——While、for、循环控制、指数爆炸】

Python学习(六)——While、for、循环控制、指数爆炸 本文介绍了While、for、循环控制、指数爆炸,仅作为本人学习时记录,感兴趣的初学者可以一起看看,欢迎评论区讨论,一起加油鸭~~~ 心中默念:Py…...

解释一下:运放的输入失调电流

输入失调电流 首先看基础部分:这就是同相比例放大器 按照理论计算,输入VIN=0时,输出VOUT应为0,对吧 仿真与理论差距较大,有200多毫伏的偏差,这就是输入偏置电流IBIAS引起的,接着看它的定义 同向和反向输入电流的平均值,也就是Ib1、Ib2求平均,即(Ib1+Ib2)/2 按照下面…...

力扣hot100——二分查找

35. 搜索插入位置 class Solution { public:int searchInsert(vector<int>& a, int x) {if (a[0] > x) return 0;int l 0, r a.size() - 1;while (l < r) {int mid (l r 1) / 2;if (a[mid] < x) l mid;else r mid - 1;}if (a[l] x) return l;else …...

PHP 使用集合 处理复杂数据 提升开发效率

在 PHP 中&#xff0c;集合&#xff08;Collections&#xff09;通常是通过数组或专门的集合类来实现的。 集合&#xff08;Collection&#xff09;是一种高级的数据结构&#xff0c;可以提供比普通数组更强大的操作和功能&#xff0c;特别是当你需要更复杂的数据处理时。 La…...

Unity 对Sprite或者UI使用模板测试扣洞

新建两个材质球&#xff1a; 选择如下材质 设置如下参数&#xff1a; 扣洞图片或者扣洞UI的材质球 Sprite或者UI的材质球 新建一个单独Hole的canvas&#xff0c;将SortOrder设置为0&#xff0c;并将原UI的canvans的SortOrder设置为1 对2DSprite则需要调整下方的参数 hole的O…...

unity学习3:如何从github下载开源的unity项目

目录 1 网上别人提供的一些github的unity项目 2 如何下载github上的开源项目呢&#xff1f; 2.1.0 下载工具 2.1.1 下载方法1 2.1.2 下载方法2&#xff08;适合内部项目&#xff09; 2.1.3 第1个项目 和第4项目 的比较 第1个项目 第2个项目 第3个项目 2.1.4 下载方法…...

PHP后执行php.exe -v命令报错并给出解决方案

文章目录 一、执行php.exe -v命令报错解决方案 一、执行php.exe -v命令报错 -PHP Warning: ‘C:\windows\SYSTEM32\VCRUNTIME140.dll’ 14.38 is not compatible with this PHP build linked with 14.41 in Unknown on line 0 解决方案 当使用PHP8.4.1时遇到VCRUNTIME140.dll…...

CDP集群安全指南-动态数据加密

[〇]关于本文 集群的动态数据加密主要指的是加密通过网络协议传输的数据&#xff0c;防止数据在传输的过程中被窃取。由于大数据涉及的主机及服务众多。你需要更具集群的实际环境来评估需要为哪些环节实施动态加密。 这里介绍一种通过Cloudera Manager 的Auto-TLS功能来为整个…...

【shell编程】报错信息:Undefined Variable(包含6种解决方法)

大家好&#xff0c;我是摇光~ 当Shell脚本报错“Undefined Variable”时&#xff0c;是未定义变量的意思。 以下是对每个可能原因及其对应详细解决方案的详细解释&#xff1a; 原因1&#xff1a;拼写错误 原因&#xff1a; 脚本中变量名的拼写在使用和定义时不一致。例如&…...

Dubbo扩展点加载机制

加载机制中已经存在的一些关键注解&#xff0c;如SPI、©Adaptive> ©Activateo然后介绍整个加载机制中最核心的ExtensionLoader的工作流程及实现原理。最后介绍扩展中使用的类动态编译的实 现原理。 Java SPI Java 5 中的服务提供商https://docs.oracle.com/jav…...

unity学习7:unity的3D项目的基本操作: 坐标系

目录 学习参考 1 unity的坐标系 1.1 左手坐标系 1.2 左手坐标系和右手坐标系的区别 1.3 坐标系的原点(0,0,0) 2 坐标系下的具体xyz坐标 2.1 position这里的具体xyz坐标值 2.2 父坐标 2.3 世界坐标和相对坐标 2.3.1 世界坐标 2.3.2 相对坐标 2.4 父物体&#xff0c;…...

PyTorch框架——基于深度学习EfficientDeRain神经网络AI去雨滴图像增强系统

第一步&#xff1a;EfficientDeRain介绍 EfficientDeRain 是一个针对单张图像去雨的开源项目&#xff0c;该项目由清华大学的研究团队提出&#xff0c;主要用于处理图像中的雨水干扰&#xff0c;恢复图像的真实场景 核心功能 图像去雨&#xff1a;EfficientDeRain 通过学习像素…...

写一个类模板三个模板参数K,V,M,参数是函数(函数参数、lambda传参、函数指针)

cal是类的成员函数。cal的3个入参是func1(K&#xff09;&#xff0c;func2&#xff08;K&#xff0c;V&#xff09;&#xff0c;func3(K&#xff0c;V&#xff0c;M)&#xff0c;请写出cal&#xff0c;并在main函数中调用cal 在您给出的要求中&#xff0c;cal成员函数并不直接…...

国内Ubuntu环境Docker部署Stable Diffusion入坑记录

国内Ubuntu环境Docker部署Stable Diffusion入坑记录 本文旨在记录使用dockerpython进行部署 stable-diffusion-webui 项目时遇到的一些问题&#xff0c;以及解决方案&#xff0c;原项目地址: https://github.com/AUTOMATIC1111/stable-diffusion-webui 问题一览&#xff1a; …...

现代光学基础6

总结自老师的ppt yt6 半导体激光器开卷考试学习资料 目录 半导体激光器边发射半导体激光器垂直腔面发射激光器&#xff08;VCSEL&#xff09;激光产生条件&#xff08;激光原理&#xff09;半导体激光器的水容器模型有源半导体区域类型和载流子注入发光二极管&#xff08;L…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

【2025年】解决Burpsuite抓不到https包的问题

环境&#xff1a;windows11 burpsuite:2025.5 在抓取https网站时&#xff0c;burpsuite抓取不到https数据包&#xff0c;只显示&#xff1a; 解决该问题只需如下三个步骤&#xff1a; 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构&#xff1a;基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中&#xff08;图1&#xff09;&#xff1a; mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...

莫兰迪高级灰总结计划简约商务通用PPT模版

莫兰迪高级灰总结计划简约商务通用PPT模版&#xff0c;莫兰迪调色板清新简约工作汇报PPT模版&#xff0c;莫兰迪时尚风极简设计PPT模版&#xff0c;大学生毕业论文答辩PPT模版&#xff0c;莫兰迪配色总结计划简约商务通用PPT模版&#xff0c;莫兰迪商务汇报PPT模版&#xff0c;…...

AI语音助手的Python实现

引言 语音助手(如小爱同学、Siri)通过语音识别、自然语言处理(NLP)和语音合成技术,为用户提供直观、高效的交互体验。随着人工智能的普及,Python开发者可以利用开源库和AI模型,快速构建自定义语音助手。本文由浅入深,详细介绍如何使用Python开发AI语音助手,涵盖基础功…...

yaml读取写入常见错误 (‘cannot represent an object‘, 117)

错误一&#xff1a;yaml.representer.RepresenterError: (‘cannot represent an object’, 117) 出现这个问题一直没找到原因&#xff0c;后面把yaml.safe_dump直接替换成yaml.dump&#xff0c;确实能保存&#xff0c;但出现乱码&#xff1a; 放弃yaml.dump&#xff0c;又切…...