电子地图的比例尺和分辨率的相互换算.md

文章目录

  • 一、重要知识点参数(前提)
  • 二、米为单位的比例尺和分辨率换算
    • 2.1 计算思路和公式
      • 2.1.1 已知比例尺计算像素分辨率
      • 2.1.2 已知像素分辨率计算比例尺
    • 2.2 验证(用谷歌、百度、高德的比例尺进行验证)
  • 三、度为单位的比例尺和像素分辨率换算

由于在工作中经常需要涉及电子地图,一直疑惑电子地图比例尺和分辨率的关系。

一、重要知识点参数(前提)

  • 电子地图比例尺:1:2256.994353中的1通常代表1米,2256.994353的单位也是米。(注意与早期地理课本上对比例尺的解释“图上距离1厘米代表实地距离XX米有所区别哦。”)
  • 像素分辨率: 就是图像1个像素所代表的实际距离了,比如卫片生产过程中的精度指标,0.5米卫片、0.3米卫片指的就是这个了,GIS切图过程中比例尺生成的resolution分辨率也就是这个,不同等级对应不同的resolution。
  • 屏幕分辨率: 通常为 96 DPI(dots per inch),即每英寸 96 个像素。1 英寸等于 0.0254 米,即25.4毫米。为什么要用英寸进行度量?因为英寸在历史上和国际标准中被广泛用于测量屏幕尺寸和分辨率,西方定的标准。
    地图缓存图片生产通常都是按照 96 DPI生产的,纵使有高分屏显示器的屏幕分辨率高于96DPI,但在实际地图瓦片生产过程中还是按照96DPI来计算,在高分屏上的显示由WEB端或PC端程序进行二次缩放适配。

二、米为单位的比例尺和分辨率换算

比如百度高德谷歌地图就是米为单位的,在GIS数据生产中的WEB墨卡托投影数据(EPSG:3857)是米为单位的,高斯克吕格坐标的GIS数据也是米为单位的,总之大部分都是米为单位的。

2.1 计算思路和公式

2.1.1 已知比例尺计算像素分辨率

  • 思路:比例尺分母除以1米对应的屏幕点数量就是通过自定义的比例尺知道了1米对应的实际长度,用这个(实际长度)除以(1米对应的屏幕点数),即可得到每个屏幕点对应的实际长度,即像素分辨率。
  • 1米对应的屏幕点数:

1英寸 = 0.0254 米 = 96DPI
1米=(1米/0.0254米) 英寸 ≈ 39.37 英寸
1米=(1米/0.0254米)*96DPI = 96/0.0254 DPI ≈ 3779.52756 DPI

  • 像素分辨率计算公式:
    比如比例尺1:2256.994353,用参数 scale 代表比例尺的分母2256.994353,像素分辨率用resolution表示,
    resolution=scale/(96/0.0254)=scale*0.0254/96
    所以像素分辨率的计算公式为:
    Resolution = Scale * 0.0254 / 96

2.1.2 已知像素分辨率计算比例尺

  • 同样也可以在已知像素分辨率的情况下计算出比例尺
    Scale = Resolution * 96 / 0.0254

2.2 验证(用谷歌、百度、高德的比例尺进行验证)

以上公式可基于下面 提供的参数进行验证,new LOD(19, 0.298582141647617, 1128.497176) 中,0.298582141647617 代表像素分辨率resolution,1128.497176代表比例尺的分母scale,可自行填入上面的公式进行验证,略微有差异是正常现象,小数位数和四舍五入的原因引起的少许差异,在误差允许范围内。

  • 提供谷歌、百度、高德的比例尺用于自行验证公式
new LOD(0, 156543.033928, 591657527.591555),    
new LOD(1, 78271.5169639999, 295828763.795777),    
new LOD(2, 39135.7584820001, 147914381.897889),    
new LOD(3, 19567.8792409999, 73957190.948944),    
new LOD(4, 9783.93962049996, 36978595.474472),    
new LOD(5, 4891.96981024998, 18489297.737236),    
new LOD(6, 2445.98490512499, 9244648.868618),    
new LOD(7, 1222.99245256249, 4622324.434309),    
new LOD(8, 611.49622628138, 2311162.217155),    
new LOD(9, 305.748113140558, 1155581.108577),    
new LOD(10, 152.874056570411, 577790.554289),    
new LOD(11, 76.4370282850732, 288895.277144),    
new LOD(12, 38.2185141425366, 144447.638572),    
new LOD(13, 19.1092570712683, 72223.819286),    
new LOD(14, 9.55462853563415, 36111.909643),    
new LOD(15, 4.77731426794937, 18055.954822),    
new LOD(16, 2.38865713397468, 9027.977411),    
new LOD(17, 1.19432856685505, 4513.988705),    
new LOD(18, 0.597164283559817, 2256.994353),    
new LOD(19, 0.298582141647617, 1128.497176) 

三、度为单位的比例尺和像素分辨率换算

常见于地理坐标系地图,包括EPSG:4326EPSG:4490
此处的像素分辨率是以度为单位的,就是把上面计算出来的米为单位的分辨率转为度为单位的分辨率了。借助地球半径和圆周计算公式进行计算。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据泄露危机:提升文件安全意识的紧迫性

在当今数字化时代,数据已成为企业最宝贵的资产之一。然而,随着技术的进步,数据泄露事件的频率和规模也在不断攀升。这不仅给企业带来巨大的经济损失,还可能导致声誉受损、客户流失等一系列严重后果。因此,提升文件安全意识,加强数据保护措施,已成为企业管理中不可忽视的重要议题…

【人工智能】Transformers之Pipeline(二十):令牌分类(token-classification)

目录 一、引言 二、令牌分类(token-classification) 2.1 概述 2.2 Facebook AI/XLM-RoBERTa 2.3 pipeline参数 2.3.1 pipeline对象实例化参数 2.3.2 pipeline对象使用参数 2.3.3 pipeline返回参数 ​​​​​​​​​​​​​​ 2.4 pipeline…

Spring Boot 3.3 【八】整合实现高可用 Redis 集群

一、引言 在当今快速发展的软件开发领域,系统的性能和可靠性至关重要。Springboot 3 整合 Redis 7 集群具有多方面的重大意义。 首先,随着业务的不断发展,数据量呈爆炸式增长,单个 Redis 服务器往往难以满足存储和处理需求。Red…

docker-harbor

目录 一、registry 二、harbor 1.部署 harbor 1.1部署Docker-Compose 1.2部署 Harbor 服务 1.3在其他客户端上传镜像 三、维护管理Harbor 1. 创建 Harbor 用户 2.添加项目成员 3. 在客户端上使用普通账户操作镜像 4. 查看日志 5. 修改 Harbor.cfg 配置文件 6. 移除…

给定数组找出出现次数超过数组长度一半的数

🎁👉点击进入文心快码 Baidu Comate 官网,体验智能编码之旅,还有超多福利!🎁 【大厂面试真题】系列,带你攻克大厂面试真题,秒变offer收割机! ❓今日问题:给定…

低代码开发工具与传统开发工具的性能对比

随着信息技术的不断发展,软件开发工具也在不断演进。低代码开发工具近年来逐渐兴起,与传统开发工具相比,它们在性能方面有着不同的特点。 低代码开发工具的特点 易用性高:低代码开发工具通常提供可视化的开发界面,用户…

【Python数据库操作】使用SQLite和MySQL进行数据存储和查询!

【Python数据库操作】使用SQLite和MySQL进行数据存储和查询! 在现代应用程序中,数据存储与管理是至关重要的。Python为开发者提供了多种与数据库进行交互的方式,其中SQLite和MySQL是最常用的两种数据库。本文将深入探讨如何使用Python进行SQ…

ES6 Promise的用法

学习链接:ES6 Promise的用法,ES7 async/await异步处理同步化,异步处理进化史_哔哩哔哩_bilibili 一、同步与异步区别 1.JavaScript代码是单线程的程序,即通过一行一行代码顺序执行,即同步概念。 2.若处理一些简短、…

uploads-labs靶场刷题记录

Pass-01 尝试上传一句话木马 1.php: <?php eval($_POST[cmd]);?>发现设置了白名单且抓包没有记录&#xff0c;说明在前端进行的拦截&#xff08;可以禁用前端的JS从而绕过拦截&#xff0c;达到直接上传木马的目的&#xff09;。 将一句话木马文件加上.jpg后缀1.php.jp…

后端常用安全措施

一、限流 1.简介 限流就是限制流量&#xff0c;但这里的流量是一个比较笼统的概念。如果考虑各种不同的场景&#xff0c;限流是非常复杂的&#xff0c;而且和具体的业务规则密切相关 通过限流&#xff0c;可以控制服务请求的速率&#xff0c;从而提高系统应对突发大流量的能…

ElementPlus中时间选择器配置

看文档老是力不从心&#xff0c;感觉找不到自己想要的样式的选择器记录一下吧 <el-date-pickerv-model"group.timeLimit"type"datetimerange":default-time"DEFAULT_DATE_TIME"range-separator"-"start-placeholder"开始时间&…

计算机组成原理一句话

文章目录 计算机系统概述存储系统 计算机系统概述 指令和数据以同等地位存储在存储器中&#xff0c;形式上没有差别&#xff0c;但计算机应能区分他们。通过指令周期的不同阶段。 完整的计算机系统包括&#xff0c;1&#xff09;软件系统&#xff1a;程序、文档和数据&#xff…

字符串(3)_二进制求和_高精度加法

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 字符串(3)_二进制求和_高精度加法 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目…

2024 四川省大学生信息安全技术大赛 安恒杯 部分 WP

文章目录 一、前言二、MISCunzip-png拓展 第47张图片重要的文件 三、WEB四、CRYPTO五、REVERSE 一、前言 WP不完整&#xff0c;仅供参考&#xff01; 除WEB外&#xff0c;其余附件均已打包完毕&#xff0c;在这里也是非常感谢师傅的附件支持&#xff01; 123网盘下载&#x…

最佳简历--JAVA程序员的项目经验如何写

小熊学Java全能学习+面试指南:https://www.javaxiaobear.cn 首先你要明确,你能干什么,包括你自己编写的专业技能,到底会不会,怎么运用到技术上的? 1、你能干什么? 你能干什么,其实就展现你的能力,这是简历中最重要的部分,你需要证明前面说的你会的东东; 这就有点…

三周精通FastAPI:1 第一步入门

FastAPI是一个非常棒的python web和api框架&#xff0c;准备用三周的时间“精通它” 学习流程参考FastAPI官网的用户教程&#xff1a;教程 - 用户指南 - FastAPI 学前提示 运行代码 所有代码片段都可以复制后直接使用&#xff08;它们实际上是经过测试的 Python 文件&#x…

【前端】如何制作一个自己的网页(14)

当我们还需要对网页中的内容进行局部样式的修改。这时候&#xff0c;就需要用到HTML中的重要元素&#xff1a;span。 span是一个行内元素&#xff0c;可以对HTML文档中的内容进行局部布局。 如图&#xff0c;我们给标题和段落元素的部分内容设置了各种样式。 接下来&#xff0…

树上启发式合并(详解)

核心思想 借用了一个节点到根的路径上轻边个数不会超过logn条。 故重节点保留&#xff0c;轻节点删去&#xff0c;多重统计。 实际复杂度&#xff08;nlogn&#xff09; 例题 Lomsat gelral - 洛谷 AC 代码 #include<bits/stdc.h> #define int long long using na…

新型电力系统精细化时序模拟分析软件

一、背景意义 在“碳达峰碳中和”及“新型电力系统”战略引领下&#xff0c;新型电力系统电力电量平衡分析成为电力系统规划运行模拟仿真的必要环节。近年来&#xff0c;随着电网新能源渗透率逐渐提升&#xff0c;储能等灵活性调节资源大幅增加&#xff0c;传统的基于典型曲线…

qiankun 应用之间数据传递

qiankun 应用之间数据传递 全局共享 initGlobalState qiankun initGlobalState API 单击前往 qiankun 内部提供了 initGlobalState 方法用于注册 MicroAppStateActions 实例用于通信&#xff0c;该实例有三个方法&#xff0c;分别是onGlobalStateChange、setGlobalState、of…