一、前言

参考文章:使用Matlab对大地测量学中的大地坐标和大地空间直角坐标进行相互转换

相关文章:JavaScript 实现空间直角坐标系转换为大地坐标系(XYZ→BLH)

在相同的坐标基准下,将大地坐标系转换为大地空间直角坐标系的公式为:

上式中:N为卯酉圈曲率半径;a为地球椭球的长半轴;b为地球椭球的短半轴

二、实现代码

// 原始数据:B,L,H (角度制)
var mainData = [[23.10000000,113.1666667,10],[23.11666667,113.1833333,10],[23.13333333,113.2000000,10],[23.15000000,113.2166667,10],[23.16666667,113.2333333,10]
]
// 定义坐标系椭球参数对象
let wgs84 = {a: 6378137,                     //长半径,单位mb: 6356752.3142451795,          //短半径f: 1/298.257223563,             //扁率
}
var square = num => num*num         //快速计算平方
let d2r = Math.PI / 180;            //弧度 = 角度 * Math.PI / 180/*
*   RE:Reference Ellipsoid(参考椭球体)
*   data: 一个存放数据的对象
*/
function BLHtoXYZ (RE,data){let B = data.B;let L = data.L;let H = data.H;let e2 = (square(RE.a)-square(RE.b))/(square(RE.a));let N = RE.a/Math.sqrt(1-e2*square(Math.sin(B*d2r)));let X = (N+H)*Math.cos(B*d2r)*Math.cos(L*d2r);let Y = (N+H)*Math.cos(B*d2r)*Math.sin(L*d2r);let Z = (N*(1-e2)+H)*Math.sin(B*d2r);let result = {X:X,Y:Y,Z:Z};     //将结果保存到result对象中return result;
}
// 读取、处理数据
var outputResult =[];
for (var i=0;i<mainData.length;i++){let BLH = {B: mainData[i][0],L: mainData[i][1],H: mainData[i][2],};let XYZ = BLHtoXYZ(wgs84,BLH);let opXYZ = [XYZ.X,XYZ.Y,XYZ.Z];outputResult.push(opXYZ);
}
// 将结果输出到控制台
for (let i=0;i<outputResult.length;i++){console.log(outputResult[i])
}

得到数据:

三、最后

在计算之后,我将第一条数据在matlab上也算了一次,没有太大的出入。

JavaScript 实现大地坐标系转换为空间直角坐标系(BLH→XYZ)相关推荐

  1. 2000与WGS84大地坐标系转换为空间直角坐标系

    图1中,P点为测量点,P0为其在地球椭球上的投影点.由图1测量点P点大地坐标P(B,L,Hn) 与空间直角坐标P(X,Y,Z)的几何关系,通过简单矢量运算和三角函数运算即可得出大地坐标(B,L,H)转 ...

  2. 大地坐标系与空间直角坐标系的相互转换

    转载http://blog.sina.com.cn/s/blog_7cdaf8b60102wksh.html 1. 大地坐标系转换为空间直角坐标系(BLH→XYZ) 在相同的基准下,将大地坐标系转换为 ...

  3. c语言大地坐标系和空间直角坐标系的转换,空间直角坐标系与大地坐标系转换程序.doc...

    空间直角坐标系与大地坐标系转换程序.doc 空间直角坐标系与大地坐标系转换程序includeiostream includecmathincludeiomanip using namespace st ...

  4. 空间直角坐标系(XYZ)转经纬度(BLH)

    本章首先介绍空间直角坐标系与大地坐标系,然后列出XYZ转换BLH的公式,最后基于C语言完成该部分代码设计. 参考书籍: 董大男,陈俊平,王解先等,GNSS高精度定位原理,科学出版社 黄丁发,熊永良,周 ...

  5. c语言直角坐标系与大地坐标系转换,空间直角坐标系与大地坐标系转换程序

    <空间直角坐标系与大地坐标系转换程序>由会员分享,可在线阅读,更多相关<空间直角坐标系与大地坐标系转换程序(5页珍藏版)>请在人人文库网上搜索. 1.空间直角坐标系与大地坐标系 ...

  6. JavaScript 实现空间直角坐标系转换为大地坐标系(XYZ→BLH)

    一.前言 参考文章:使用Matlab对大地测量学中的大地坐标和大地空间直角坐标进行相互转换 相关文章:JavaScript 实现大地坐标系转换为空间直角坐标系(BLH→XYZ) 在相同的坐标基准下,将 ...

  7. c语言大地坐标转换空间坐标,空间直角坐标系与大地坐标系转换程序

    <空间直角坐标系与大地坐标系转换程序>由会员分享,可在线阅读,更多相关<空间直角坐标系与大地坐标系转换程序(4页珍藏版)>请在人人文库网上搜索. 1.空间直角坐标系与大地坐标系 ...

  8. mysql 大地坐标系_js坐标转换WGS84(大地坐标系BLH)转空间直角坐标系XYZ

    // 坐标转换 WGS84经纬度 => 大地坐标系BLH XYZ var pi_180 = Math.PI / 180; var _180_pi = 180 / Math.PI; var pro ...

  9. 大地坐标系(WGS84)转空间直角坐标系(笛卡尔坐标系XYZ)

    大地坐标系(WGS84)转空间直角坐标系(笛卡尔坐标系XYZ) 以Unity为例 float[] get_coordinate( float lat, float lon,float H1) {//H ...

最新文章

  1. 软件测试自动化的成功经验
  2. IFormattable,ICustomFormatter, IFormatProvider接口
  3. liunx之Centos6.8杀毒软件的安装
  4. HDU-6180 Schedule
  5. python如何获取请求的url_听说你在学习:如何通过代码请求URL地址
  6. vscode eslint 格式化完之后,一个标签多行,看的头疼
  7. yii2.0 读取user表新增字段问题
  8. Java之时间格式转换
  9. roundcube邮箱手机端_用户换了手机号码后,产品该如何应对?
  10. SRAM and DRAM
  11. 【论文精读】Single-Perspective Warps in Natural Image Stitching-自然图像拼接中的单透视扭曲
  12. 使用Office2013打开文档时,弹出“正在与服务器联系以获取信息”对话框问题
  13. 小游戏——满天小星星
  14. 小程序基础知识整理(组件篇)
  15. 读书笔记-在工作中保持充沛的体力
  16. 量子计算到底是个什么鬼?
  17. 【FATE联邦学习】FATE联邦学习使用GPU、指定cuda下标
  18. 解决WORD “未找到引用源”问题
  19. 生产BOM、销售BOM、标准BOM的区别
  20. 目标跟踪实战deepsort+yolov5(上)

热门文章

  1. office 2010 excle不能打开多个窗口
  2. 马的遍历问题—贪心跑图
  3. Semaphore学习
  4. 期货ctp基础知识(合约,开仓,平仓,做多,做空,保证金,手续费)
  5. 用python获取某年某月/(当前)的天数
  6. 产品经理之产品类题目
  7. [转]2016年度通信类 SCI期刊影响因子公布
  8. STANet: 基于时空自注意力的遥感图像变化检测模型,提出一个新的大型变化检测数据集LEVIR-CD
  9. unity与php的交互-图片上传下载
  10. 中国定向公开赛海南昌江站开赛 600余名选手穿越雨林