一文讲透!请收下这份“完美”地图贴图的制作攻略

news2024/11/27 21:57:41

3D渲染中,我们称传入材质的纹理为贴图。贴图一词强调其用途,当某个纹理用于在材质中实现法线效果时,我们称之为法线贴图。而在EasyV中,我们地图组件填充样式中的自定义上传的图片称之为「地图贴图」,主要用于地图表面/顶面的样式设置,因此也称之为「顶面贴图」。

在使用EasyV地图组件时,我们常常通过配置顶面贴图,加深地图的真实感和美观度,让大屏效果更精美。但在实际配置中,我们经常遇到制作好的贴图上传后无法和地图组件轮廓融合,出现我们所说的“对不齐”的问题。

一张对不齐顶面贴图的地图

在这里插入图片描述

接下来我们将具体从问题原因分析入手,再到具体顶面贴图制作实操,带大家详细了解顶面贴图的配置技巧及注意事项。

一、原因分析

出现顶面贴图误差的原因通常主要存在三类原因:贴图和地图的坐标系不一致、贴图存在旋转、边距参数设置不合适。

(一)贴图和地图的坐标系不一致

EasyV的地图组件通常包含墨卡托和WGS 84这两种坐标系投影方式。墨卡托坐标系是在墨卡托投影(是一种圆柱投影)的基础上的一种平面直角坐标系,适用于大部分区域,整体接近正方形,尤其在赤道附近的区域具有较好的保真性(形状保持),但在高纬度地区会出现面积变形,在QGIS中的代号为EPSG: 3857。而WGS84是全球卫星定位系统(如GPS)所采用的标准坐标系统,接近于长方形布局,也被广泛用于地图、测量和地理信息系统(GIS)中,适用于各种地理信息应用,在QGIS中的代号为EPSG: 4326。因此我们在进行贴图制作前,需要确认好最终组件选择投影方式,以便于最后贴图的对齐。

在这里插入图片描述

同时,在我们原始地图数据获取时,不同的地图信息平台提供数据的坐标系也会不同,获取到的数据也会与平台本身的坐标系不匹配,导致最终贴图上传后出现误差。因此我们在进行贴图制作前,需要确认好最终组件选择投影方式与原始数据的坐标系的匹配,以便于最后贴图的对齐。
在这里插入图片描述

(二)贴图存在旋转

这里我们所说的旋转主要是指贴图中内容的展示角度与原有组件数据或者自定义上传的goejson数据效果不一致,也会出现很明显的偏差,导致无法与地图边界对齐。在制作贴图时,我们也需要提前确定好最后地图的展示角度,做好数据区域的调整。
在这里插入图片描述

(三)边距参数设置不合适

这里贴图边距的配置往往最容易被忽略,一般来说这里我们的边距设置需要很小,如0.08,如果边距数据过大,就会导致对应的偏移过大,甚至偏离画面区域。
在这里插入图片描述

为了规避这类问题,我们也给大家梳理了三个技巧,让大家无需调节边距就可以精准展示贴图效果

• 制作正方形的贴图,由于开发本身组件的设置逻辑是正方形贴图,如果使用长方形贴图,就会出现一定的畸变。

• 贴图处理时地图内容的「最长边」要顶到正方形画布边缘,作为正方形贴图的边长,这里我们以甘肃省为例制作了贴图画布的选择效果。

• 制作2的整数次方的贴图,减少平台计算损耗,例如 128、512、1024、2048、4096。
在这里插入图片描述

二、制作流程

如果我们想要制作一张完美对齐、有卫星纹理的顶面贴图,我们需要怎么做呢?首先这里给大家展示一下我们最终的效果。
在这里插入图片描述

(一)工具与数据准备

考虑到大家前期贴图实际操作配置的便捷性,我们选取了以下在线免费使用或者开源的产品进行实操演示:

1、EasyMap(免费使用):用于下载地图轮廓数据

2、QGIS(开源软件):坐标处理 + 卫星纹理生成 + 导出SVG

3、Pixso/MasterGo等(在线):处理贴图样式效果

4、EasyV(免费试用):使用贴图应用于对应地图组件

额外在QGIS的配置操作中,需要加载在线服务地图并进行详细卫星地图数据的处理配置。

• 高德地图URL:

https://webst01.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}

• arcgis:

https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}

(二)实操配置

1、基本贴图获取

第一步:在EasyMap中下载对应省份的轮廓数据以及市级轮廓数据,并解压文件。
在这里插入图片描述

第二步:打开QGIS(建议使用QGIS-LTR版本),根据不同的使用场景(是否需要详细市级轮廓)选择对应的轮廓数据拖拽上传。
在这里插入图片描述

第三步:将地图服务对接到QGIS,并在右下角中确认对应的地图投影方式。

在这里插入图片描述

第四步:调成轮廓图层的颜色样式,导出合适的 2 的整数次方的正方形图片。

在这里插入图片描述

第五步:在EasyV中选择对应投影模式后进行贴图上传,到这里就可以制作出完美对齐的顶部贴图。
在这里插入图片描述

2、贴图效果优化

第一步:进入QGIS中,隐去轮廓部分,导出对应区域卫星地图(无轮廓)的贴图。
在这里插入图片描述
第二步:在QGIS中显示对应地图轮廓,隐去其他图层,选择新建画布并选择导出为SVG文件。
在这里插入图片描述
第三步:将区域卫星地图(无轮廓)的贴图、轮廓SVG导入对应的在线设计平台(这里我们以Mastergo为例),将轮廓SVG解除打组,删除空白区域后重新打组,获得最终轮廓图。
在这里插入图片描述
第四步:将轮廓拖入卫星地图(无轮廓)的贴图所在的画布中,按照视频中的操作,根据设计需求制作贴图样式效果(内阴影、内发光、颜色效果…)。(具体操作视频,大家可以前往易知微官网了解详情)

第五步:将最终的调整好的贴图导出并导入EasyV对应地图组件中,可以得到完美对齐的贴图效果。
在这里插入图片描述
第六步:最后根据大屏的整体颜色风格,在EasyV中调整顶线、底线、侧面、倒影及文字的样式效果,获得最终呈现的地图样式。
在这里插入图片描述

三、常见问题

1、为什么在墨卡托投影下对齐了,改成 WGS84 不会自动对齐?

• 投影的改变不是简单的拉伸变形。每种投影方式由自己独特的规则,不是简单的拉伸变形关系。所以改了投影,顶面贴图的对齐不能自动匹配,要重新绘制。

2、为什么还可以上传顶面贴图压缩包?
在这里插入图片描述
• 压缩包主要是为每一个行政区域单独指定贴图,当没有指定 adcode 的时候,建议,下钻后使用同一张通用型贴图,可以在保证效果的基础上快速配置。

3、如何制作和使用“通用型”贴图?

• 即不要求卫星纹理和地图对应,可选择一个没有明显地理特征的区域进行制作,比如:水利行业模板,按照上述步骤隐藏轮廓效果即可。

4、如何制作地图的底面图?

• 整体制作过程步骤较多,可以直接观看回放视频(00:52:10-01:07:00)

5、卫星图出现瓦片缺失怎么办?

• 缩放比例到没有缺失的大小或者直接更换卫星图服务

更多3D地图贴图制作&低代码数字平台欢迎前往易知微官网了解试用

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

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

相关文章

多线程进阶

多线程进阶 本章博客主要是围绕一些多线程相关的面试题,讨论的内容都是往年同学遇到的原题,以后面试也大概率会遇到的!!! 常见的锁策略 锁策略指的不是某个具体的锁,是一个抽象的概念,描述的…

VS2019 设置注释和取消注释选选定内容

Microsoft Visual Studio Professional 2019 由于老是忘记,换了电脑就不行了,原来默认的太繁琐。 每次都去设置选定内容,老是不行。 应该设置在切换块注释 上面这样就可以按一个组合键实现注释和不注释了。

考研408 | 【计算机网络】 传输层

导图 传输层的功能 传输层的两个协议 传输层的寻址与端口 UDP协议 UDP的主要特点 UDP首部格式: UDP校验: TCP协议 TCP协议的特点 TCP报文段首部格式 TCP连接管理 TCP的连接建立 SYN洪泛攻击 TCP的连接释放 TCP可靠传输 序号: 确认&#xff1…

【Rust】Rust学习 第十二章一个 I/O 项目:构建一个命令行程序

本章既是一个目前所学的很多技能的概括,也是一个更多标准库功能的探索。我们将构建一个与文件和命令行输入/输出交互的命令行工具来练习现在一些你已经掌握的 Rust 技能。 Rust 的运行速度、安全性、单二进制文件输出和跨平台支持使其成为创建命令行程序的绝佳选择…

回归预测 | MATLAB实现基于LSSVM-Adaboost最小二乘支持向量机结合AdaBoost多输入单输出回归预测

回归预测 | MATLAB实现基于LSSVM-Adaboost最小二乘支持向量机结合AdaBoost多输入单输出回归预测 目录 回归预测 | MATLAB实现基于LSSVM-Adaboost最小二乘支持向量机结合AdaBoost多输入单输出回归预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.Matlab实现L…

C++ 动态规划经典案例解析之最长公共子序列(LCS)_窥探递归和动态规划的一致性

1. 前言 动态规划处理字符相关案例中,求最长公共子序列以及求最短编辑距离,算是经典中的经典案例。 讲解此类问题的算法在网上一抓应用一大把,即便如此,还是忍不住有写此文的想法。毕竟理解、看懂都不算是真正掌握,唯…

侯捷 C++ part2 兼谈对象模型笔记——6 多态 虚机制

6 多态 虚机制 6.1 虚机制 当类中有虚函数时(无论多少个),其就会多一个指针—— vptr 虚指针,其会指向一个 vtbl 虚函数表,而 vtbl 中有指针一一对应指向所有的虚函数 有三个类依次继承,其中A有两个虚函…

​LeetCode解法汇总617. 合并二叉树

目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 描述: 给你两棵二…

智能制造感知产品在工业4.0中的应用

在工业4.0时代,智能制造已经成为制造行业的重要发展方向。智能制造感知产品作为智能制造的核心组成部分,对于提高制造效率、降低成本、提升产品质量等方面具有重要的作用。本文将详细介绍智能制造感知产品在工业4.0中的应用。 智能制造感知产品在工业4.…

磁场是灵魂散发出来的力量

为什么有些人的思维很敏捷,但是,到了另外一个人面前,他的思维会突然错乱或停顿了呢? 每一个人的磁场都有一种释放和吸收的功能,如果经常和磁场比较污浊的人接触,他也会把我们的磁场给染污了。如果跟一个磁场…

IDEA部署配置Maven项目教程,IDEA配置Tomcat(2019.3.3)(2023.1.3)

我们往往会用到多版本的IDEA进行一个Maven项目配置部署,还有tomcat的配置,这里就有你需要的,有低版本的,也有高版本的,根据自己的情况来进行一个操作 一、前言 当涉及到软件开发和项目管理时,使用一个可靠的…

iPhone恢复备忘录的4种方法!超好用!

iPhone备忘录能够帮助我们记录一些重要的事务或者个人事项,帮助减少遗漏和失误。小编也常常使用iPhone备忘录来记录事情,避免自己忘记。但有时候可能会因为自己的操作失误,导致备忘录误删除或丢失,那么这时候该怎么办呢&#xff1…

电子行业精密空调监控,这个方法非常全面!

在电子行业,精密空调监控扮演着至关重要的角色。电子设备的制造、储存和运行过程中,恒定的环境条件如温度、湿度和空气质量对于确保设备的高效运行和稳定性至关重要。 由于许多电子元件对环境变化极为敏感,因此精密空调监控成为了维护产品质量…

使用UDP协议实现—翻译服务器

目录 前言 1.设计思路: 2.词库设计 3.设计客户端 4.设计服务端 5.编译客户端和服务端 6.测试结果 7.总结 前言 上一篇文章中,我们使用UDP协议编码完成了一个简单的服务器,实现数据通信,服务器设计出来后目的不仅仅只是实现…

C#软件外包开发框架

C# 是一种由微软开发的多范式编程语言,常用于开发各种类型的应用程序,从桌面应用程序到移动应用程序和Web应用程序。在 C# 开发中,有许多框架和库可供使用,用于简化开发过程、提高效率并实现特定的功能。下面和大家分享一些常见的…

VeraCard已经上线了 — 快来领取你的吧!

VeraCard现在已经可以订购,并为英国居民积极发货!VeraCard是一张Visa借记卡,是我们与DAMEX合作推出的。Verasity是在DAMEX上列出的第一个替代币,并且是第一个拥有自己品牌卡片的代币。有了VeraCard,Verasity社区成员现…

OpenCV图像处理——形态学操作

目录 连通性形态学操作腐蚀和膨胀开闭运算礼帽和黑帽 连通性 形态学操作 形态学转换是基于图像形状的一些简单操作。它通常在二进制图像上执行。腐蚀和膨胀时两个基本的形态学运算符。然后它的变体形式如开运算,闭运算,礼帽黑帽等 腐蚀和膨胀 cv.erode…

OSI七层模型和TCP/IP四层模型

OSI七层模型和TCP/IP四层模型 七层模型(OSI) OSI七层模型(Open Systems Interconnection Reference Model)是一个用于计算机网络体系结构的标准化框架,旨在定义网络通信中不同层次的功能和协议。 各个层次具体如下: 物理层&am…

【Spring专题】Spring之Bean的生命周期源码解析——阶段一(扫描生成BeanDefinition)

目录 前言阅读准备阅读指引阅读建议 课程内容一、生成BeanDefinition1.1 简单回顾*1.2 概念回顾1.3 核心方法讲解 二、方法讲解2.1 ClassPathBeanDefinitionScanner#scan2.2 ClassPathBeanDefinitionScanner#doScan2.3 ClassPathScanningCandidateComponentProvider#findCandid…

中国电子学会2021年09月C++语言等级考试试卷一级真题及(参考答案)

一, 解析:主要考察变量类型的转换。 #include<iostream> using namespace std;int main() {int a,b;cin>>a>>b;cout<<a*(long long)b;return 0; }二, 解析:输入输出 #include<iostream> using namespace std;int main() {int a;