热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

GIS数据漫谈(六)—投影坐标系统

本文主要介绍关于物联网,前端,数据库,java,服务器的知识点,对【GIS数据漫谈(六)—投影坐标系统】和【gis地理坐标系如何转换】有兴趣的朋友可以看下由【ThingJS_小锘】投稿的技术文章,希

本文主要介绍关于物联网,前端,数据库,java,服务器的知识点,对【GIS数据漫谈(六)— 投影坐标系统】和【gis地理坐标系如何转换】有兴趣的朋友可以看下由【ThingJS_小锘】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的ThingJS相关技术问题。

gis地理坐标系如何转换

投影坐标系统(PCS)

地球近似为一个“椭球体”,在不考虑高程的情况下其实经纬度坐标就是描述了某点在球面的位置。在没有电脑、没有数字化地图的时代最实用的是纸质地图,但纸质地图是平面的,要把地“球”展开到地图的“平面“上(把地球在一张纸上“画”出来)就需要投影(Projection)

地“球”被投影到“平面”后,还有一个最实际的功能就是便于测量。因为投影后的坐标都是在直角平面坐标系下的坐标了(单位一般为米)。比如计算两点间的距离,直接用勾股定理即可。

已知球面上两点经纬度也是可以计算距离的,准确说是大圆(GreatCircle)距离,后面我们还会提到一般采用 Haversine 公式。

有了基本的概念后,我们来看看目前互联网地图最为常用的投影Web墨卡托投影。Web墨卡托投影墨卡托投影(Mercator)由荷兰地图学家墨卡托 (Gerardus Mercator) 于 1569 年提出。15世纪正是大航海时代的(又称地理大发现)开端,墨卡托投影的创立最初目的就是用于量算航向方位,为海上航行提供保障。

墨卡托投影是正轴等角圆柱投影

假设地球被套在一个圆柱中,赤道与圆柱相切,然后在地球中心放一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,就形成以一幅墨卡托投影的世界地图。

Google基于墨卡托投影设计了 Web墨卡托投影 (Web Mercator)。

首先,将基于椭球体的墨卡托投影简化为“正球体”,半球取WGS84椭球体的长半轴 6378137 m。其次,由于墨卡托圆柱投影的方式必然导致当纬度φ接近两极,即90°时,投影后平面坐标的Y值趋向于无穷大。但沿赤道展开的X轴的范围是固定的,即 [-πr,πr] = [-20037508.342789244,20037508.342789244] 。

为了让投影后的平面能正好在一个正方形内表示,即让投影后的Y轴范围也是[-20037508.342789244,20037508.342789244],反算出纬度的限制范围约为:[-85.06,85.06]。

这样全世界可以在一个正方形里面刚好放下,也为地图切片的四叉树分割和计算提供了便利。但由于Web墨卡托投影是将原本基于椭球体的墨卡托投影“简化”为了“正球体”。因此,Web墨卡托投影又叫伪墨卡托投影(Pseudo Mercator)、球面投影(Spherical Mercator)。也因为正球体的简化,导致Web墨卡托并非和标准的墨卡托投影一样保持严格的等角(Conformal),而是近似等角。那等角到底是什么意思呢?比如下图中已知莫斯科、广州两点的经纬度。

用Web墨卡托投影在平面后( PS:ThingJS API 提供了经纬度转Web墨卡托投影的方法,有兴趣可以自己试试)。

在地“球”上过莫斯科和广州两点以大圆圆弧连接,如下图黄线。这条大圆(Greate Circle)即为球面上两点的最短距离。

那我们在墨卡托投影的平面上连接投影后两点得到的直线(如下图蓝线)又是什么呢?

这条蓝线与各个经线(绿色)的夹角是不变的,在这个例子中约为119.6°。这条线就叫做等角航线(rhumb line)也称恒向线,即地球上两点之间与经线处处保持角度相等(等方位)的曲线。

把大圆航线和等角航线再在地球和墨卡托投影平面上对比观察,尤其观察他们与经线(绿色)的夹角。

可以发现:投影面上两条方向线所夹角度与球面上对应的两条方向线所夹的角度相等。这正是等角(Conformal)的意义。换句话说,球面上的一个图形轮廓经过墨卡托投影后对于局部而言只是“原样放大”了,形状没有变化。因此等角投影也称为正形投影

还可以看到,墨卡托投影虽然能保持等角不变,但投影后的面积变化很大,尤其纬度越高的地区。最典型的就是格陵兰岛,在墨卡托投影上看几乎和非洲大陆的面积差不多了。而真实情况却是:非洲面积约是3020万平方千米,格陵兰岛面积约是217万平方千米;非洲的面积约是格陵兰岛的14倍。

这就引出了地图投影的一类分类体系,即按投影变形的性质,地图投影可分为:

(1)等角投影

投影面上两条方向线所夹角度与球面上对应的两条方向线所夹的角度相等。

(2)等积投影

球面上的面状图形轮廓经投影后,仍保持面积不变。

(3)任意投影

既不等角也不等积,角度、面积、长度三种变形同时存在。在任意投影中,比较常见的一种是等距投影。所谓等距投影,并不是说这类投影不存在长度变形,而是沿某一特定方向的距离,经过投影之后保持不变。

正所谓鱼和熊掌不可兼得,没有既能保持等角又能保持等积的地图投影,需要根据实际的需求和应用情况进行取舍。

工具推荐

森城市:一键生成3D城市,内置多种模板,自由编辑

• 森城市目前提供全国范围内110多个城市的标准三维场景的构建服务,使城市三维场景的构建速度提升至分钟级。

• 森城市支持不同类型城市数据的插入和自动融合,并提供友好而强大的场景编辑能力和性能处理能力,无需具备GIS、建模等专业技能,就可以轻松DIY自己的酷炫城市三维场景。

• 森城市具备开放的城市场景输出能力,无需担心场景后续使用的兼容问题。

低代码ThingJS:低代码灵活开发数字孪生可视化应用

• 低代码ThingJS提供了丰富的3D开发API、完善的开发文档和视频教程,熟悉基础的Javascript前端知识即可上手数字孪生3D可视化应用开发。

• 低代码ThingJS是纯H5的WebGL架构,可在各类主流网页浏览器中自如运行,包括可在移动端直接访问运行。

• 低代码ThingJS提供全生命周期的开发组件,大大提升数字孪生可视化项目开发效率。

本文《GIS数据漫谈(六)— 投影坐标系统》版权归ThingJS_小锘所有,引用GIS数据漫谈(六)— 投影坐标系统需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • 服务器性能优化之网络性能优化
    hi,大家好,今天分享一篇后台服务器性能优 ... [详细]
  • FluxCD、ArgoCD或Jenkins X,哪个才是适合你的GitOps工具?
    GitOps是一种使用基于Git的工作流程来全面管理应用和基础设施的想法,其在最近获得了极大关注。新一代的部署工具更能说明这一点,它们将GitOps作为 ... [详细]
  • 在MirrorAPI中,我们可以使用以下内容: ... [详细]
  • 开发笔记:深度探索!Android之OkHttp网络架构源码解析
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了深度探索!Android之OkHttp网络架构源码解析相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 在 ... [详细]
  • 数据模型:数字化转型的核心能力
    前言业界数字化转型已经进入深水区,数据越来越受到大家重视,由于数据中台等等概念的兴起,大 ... [详细]
  • arcgis for js api 的outStatistics请求遇到的问题Error: Error performing query operation
    Error:Errorperformingqueryoperation这个问题在查询arcgisserver服务的时候可能经常会遇到,大部分时候可能都是因为数据量太大 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • iOS开启Google位置服务器和显示定位权限的方法
    本文介绍了在iOS开发中如何开启Google位置服务器和显示定位权限的方法,包括导入CoreLocation和MapKit库、在界面导入头文件和在info.plist文件中添加授权等步骤。同时还介绍了iOS11中NSLocationAlwaysAndWhenInUseUsageDescription的功能变化。阅读本文可以帮助开发者了解如何在iOS应用中使用Google位置服务器和处理定位权限相关的问题。 ... [详细]
  • 4554:[Tjoi2016&Heoi2016]游戏 ... [详细]
  • 寻求更强大的身份和访问管理(IAM)平台的企业正在转向云,并接受身份即服务(IDaaS)的灵活性。要为IAM选择正确的场外解决方案,业务管理人员和IT专业人员必须在实施之前评估安全 ... [详细]
  • Shodan简单用法Shodan简介Shodan是互联网上最可怕的搜索引擎,与谷歌不同的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan可以说是一款“ ... [详细]
  • Shiro 简单了解
    Shiro简单了解简单用过SpringSecurity安全框架后,再试试另一个安全框架——Shiro。1.Shiro简介ApacheShiro是一个强大且易用的Java安全框架:S ... [详细]
  • BPM是什么软件?1、BPM是BusinessProcessManagement的简称,译为业务流程管理,它是一种以规范化的构造端到端的卓越业务流程为中心以持续的提高组织业务绩效为 ... [详细]
author-avatar
-____Ddddear_534
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有