c#中 utm坐标转换经纬度坐标
c#代码 utm坐标转换经纬度坐标
根据地球半径计算经纬度
public static void UTMToLatLon(double utmX, double utmY, out double latitude, out double longitude)
{bool isNorthHemisphere = true;var diflat = 4.00372863181963E-07;var diflon = -6.88086842459646E-08;var zone = 51;var c_sa = 6378137.000000;var c_sb = 6356752.314245;var e2 = Math.Pow((Math.Pow(c_sa, 2) - Math.Pow(c_sb, 2)), 0.5) / c_sb;var e2cuadrada = Math.Pow(e2, 2);var c = Math.Pow(c_sa, 2) / c_sb;var x = utmX - 500000;var y = isNorthHemisphere ? utmY : utmY - 10000000;var s = ((zone * 6.0) - 183.0);var lat = y / (c_sa * 0.9996);var v = (c / Math.Pow(1 + (e2cuadrada * Math.Pow(Math.Cos(lat), 2)), 0.5)) * 0.9996;var a = x / v;var a1 = Math.Sin(2 * lat);var a2 = a1 * Math.Pow((Math.Cos(lat)), 2);var j2 = lat + (a1 / 2.0);var j4 = ((3 * j2) + a2) / 4.0;var j6 = ((5 * j4) + Math.Pow(a2 * (Math.Cos(lat)), 2)) / 3.0;var alfa = (3.0 / 4.0) * e2cuadrada;var beta = (5.0 / 3.0) * Math.Pow(alfa, 2);var gama = (35.0 / 27.0) * Math.Pow(alfa, 3);var bm = 0.9996 * c * (lat - alfa * j2 + beta * j4 - gama * j6);var b = (y - bm) / v;var epsi = ((e2cuadrada * Math.Pow(a, 2)) / 2.0) * Math.Pow((Math.Cos(lat)), 2);var eps = a * (1 - (epsi / 3.0));var nab = (b * (1 - epsi)) + lat;var senoheps = (Math.Exp(eps) - Math.Exp(-eps)) / 2.0;var delt = Math.Atan(senoheps / (Math.Cos(nab)));var tao = Math.Atan(Math.Cos(delt) * Math.Tan(nab));longitude = ((delt * (180.0 / Math.PI)) + s) + diflon;latitude = ((lat + (1 + e2cuadrada * Math.Pow(Math.Cos(lat), 2) - (3.0 / 2.0) * e2cuadrada * Math.Sin(lat) * Math.Cos(lat) * (tao - lat)) * (tao - lat)) * (180.0 / Math.PI)) + diflat;
}
c#中 utm坐标转换经纬度坐标相关推荐
- c语言经纬度和大地坐标转换,经纬度坐标与大地坐标转换表
*子午线角度值纬度值b经度值l角度值角度值f2-b2 114114 114114 114114 114114 1 234.565411113.59429634.94836113.9953-0.0047 ...
- Java中如何通过经纬度坐标获取两个点之间的直线距离
前言 现在很多App都需要附带着附近人列表功能,所以我在这里实现2个点之间的距离计算 经纬度的获取需要第三方来支持,高德地图.百度地图.... 附近人功能具体的实现逻辑: 1.获取每个人的经纬度坐标, ...
- ArcGis中已知经纬度坐标转任意坐标系(以点和80坐标系为讲解模板)
文章首发微信公众号:ArcGisdada 一般经纬度都是以度分秒的格式显示的,如图31-1所示. 图31-1: 我们转至WGS-84坐标需要进行十进制的转化,也就是把度分秒换算为以度为单位的一串数字. ...
- wgs84 投影坐标转经纬度 代码_ArcGis中已知经纬度坐标转任意坐标系(以点和80坐标系为讲解模板)...
一般经纬度都是以度分秒的格式显示的,如图31-1所示. 图31-1: 我们转至WGS-84坐标需要进行十进制的转化,也就是把度分秒换算为以度为单位的一串数字.操作步骤:打开excel>选中代表经 ...
- Excel中的的经纬度坐标在地图上显示
Excel中有这样关于经纬度的数据: 22.56614225 113.9808368 22.68620526 113.9405252 22.57651183 113.957198 22.5648408 ...
- java gps经纬度坐标转高德坐标_RN中Geolocation的经纬度坐标转换为高德地图坐标
Geolocation经纬度转换为高德地图经纬度方法 直接调用如下GPS. gcj_encrypt(lat, lon)就行了 var GPS = { PI : 3.14159265358979324, ...
- GIS经纬度坐标转换为unity3D的世界坐标
GIS经纬度坐标代表现实生活中地球的经纬度坐标,具体代码如下: using System.Collections; using System.Collections.Generic; using Un ...
- UTM的XY坐标转换为WGS84经纬度坐标
本文是JAVA代码将UTM的XY坐标转换为WGS84的经纬度坐标.首先我们要知道几个参数. 当初设计的人一定会有以下参数提供,但是这些参数一般很少会去修改. 上图中的UTM Zone 50N代表中国东 ...
- Google Earth Engine——从Python中的经纬度坐标获取Modis正弦图块网格位置
许多 MODIS 数据产品都组织在基于正弦投影的瓦片网格中.您可以在这里找到一个在线计算器,它将从图块转换为纬度和经度坐标.本教程将演示如何在 Python 中执行此转换. 目标 读入 MODIS 瓦 ...
- 在 qiankun 中实现经纬度坐标拾取、点位展示
目录 1. 使用场景 2. 实现过程 2.1 前期准备 2.1.1 申请 百度地图 关联当前项目的 AK 值 2.1.2 在项目中引入 百度地图 资源 2.2 组件开发 -- 坐标拾取 2.2.1 添 ...
最新文章
- mac下找不到.m2文件解决方法
- 容器开启数据服务之旅系列(二):Kubernetes如何助力Spark大数据分析
- tensorflow中张量、常量、变量、占位符
- linux的程序员计算器,linux中的计算器
- iview表单验证不生效问题注意点
- html 并集选择器,HTML+CSS基础 并集选择器
- Mac Pycharm2020 打不开的解决方法
- wordpress迁移以及遇到的一些问题[mysql备份导入导出][固定链接404]
- SPLUS数据库导入导出操作
- macos安装盘第三方工具制作_制作 macOS Mojave U盘USB启动安装盘方法教程 (全新安装 Mac 系统)...
- 开源ESB服务总线记录
- python商业数据分析课程设计_商务数据分析实验室
- 【图像去噪】基于小波变换(中值、硬阙值、软阙值)的图像去噪含Matlab源码
- 《未来简史》的“数据主义”——企业运作就是一套数据算法!
- UTM-wgs84投影坐标系
- 在Markdown中使用Mermaid来绘制流程图
- CentOS 7 安装极点五笔输入法
- 盘点男士们也喜爱的八大女性APP
- 基于dwr2.0的Push推送技术详细解析以及实例(转)
- webpack 简单配置
热门文章
- qqkey获取原理_【逆向】QQkey盗号木马原理分析
- python读pdf/双层pdf
- 想成为Python高手,必须看这篇爬虫原理介绍!(附29个爬虫项目)
- 一款 Java 开源的 Spring Boot 即时通讯 IM 聊天系统(源码自取)
- 修改Maven本地仓库路径,IDEA修改maven位置
- C语言单片机笔试题,c语言面试题集(单片机
- 机器学习(聚类八)——密度聚类
- maven 打包跳过test的命令
- Mysql开发实践:error while loading shared libraries: libaio解决方案
- Freeimage-3.18.0编译(静态库)