近期公司有个项目,实现卫星六根数实现计算出经纬度坐标,因为在网上找不到java资源。翻阅了大量的文章。然后自己着手去根据matlab代码实现了java语言的转换。

卫星轨道6根数主要有半长轴a、离心率e、轨道倾角i、近心点辐角ω、升交点经度Ω和真近点角φ

注图中 红框中98.790,60.00,30.00并不是轨道倾角i、近心点辐角ω、升交点经度,还需要具体运算。得出具体的数值

输入参数:
miu = 3.9860047e14;  %地球引力常数(m^3/s^2)
a_o = 6862.8; %轨道半长轴 (km)
e_o = 0.001884; %偏心率 
i_o = 98.79*pi/180 ;   %轨道倾角 (度)
w_o = 60*pi/180 ;  %近地点幅角(度)
Omiga_o = 30*pi/180; %升交点赤经(度)
t0=[2022 5 1 0 0 0];%过近地点时刻
t=[2022 5 1 17 10 0];%当前时刻

最后用java代码计算的经纬度以及高度值分别为-92.25672304173123, 31.882691687797774, 479170.1556135472。经过验证和真实数值差别不是很大。真实数值为:-92.256756315892990,31.882400836824583,4.791700736332247e+05

具体java代码实现截图如下:

 以上只截了部分的java代码

所有的加减乘除都利用bigdecimal实现,防止用double运算 出现精度丢失,计算有误差。

实现的原理为:通过轨道6根数计算出j2000坐标系,然后把j2000坐标系转换成地心地固坐标系(ECFF)。然后再把ECFF转成具体的经纬度。

j2000坐标系转ECFF其实还是有点复杂的。这个在网上也很难找到资源。我通过翻阅国外博客,看到了相关的处理,引用过来的。如果需求可以私我!!!这里不做解析和讲解。如果有不懂的地方也可以联系我!代码我放到这个文章java 实现EME2000(国家大地坐标系)转ECEF坐标系(地心地固坐标系)_王威振的csdn的博客-CSDN博客_java 大地2000

java版通过轨道6根数实现计算出经纬度坐标相关推荐

  1. java版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离 public class GoogleMapHelper {private static double EARTH_RADIUS = 6378.137; //地球半径//将 ...

  2. 经纬度计算距离html,js版谷歌地图计算两经纬度坐标点的距离

    球面上两点间大圆劣弧的距离html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. mysql 计算gps坐标距离_mysql、sqlserver和php计算GPS经纬度坐标距离

    摘要:mysql.sqlserver.oracle和php计算GPS经纬度坐标距离 mysql计算GPS经纬度距离DELIMITER $$ CREATEDEFINER=`root`@`localhos ...

  4. python计算两经纬度坐标距离和角度以及给定第一个坐标、距离和航向角计算第二个坐标

    总结三个坐标相关公式 因为需要用到三角函数,导入math库 import math 两个坐标计算距离的函数 def distance(Alongitude, Alatitude, Blongitude ...

  5. php 计算一年中周数,php 计算出一年中每周的周一日期

    最近接到一个任务,归纳起来,就是:要算出每年当中,每周的周一日期.想了一会,看了下date函数,深入了解了一下date函数各个参数的含义之后,终于把这道题做出来了! 在date()函数中,有一个参数对 ...

  6. 批量计算两经纬度点间的距离、方位角、中点坐标

    前言 如何批量计算两点间距离,下面介绍一个简单的方法.不需要编写代码,不需要专业GIS软件.下面详细介绍过程. 首先,在EXCEL软件中整理需要计算的经纬度坐标,如下图格式. 计算过程 新建任务 启动 ...

  7. javascript 计算两个坐标的距离 米_EXCEL VBA曲线坐标计算程序在工程测量中的应用...

    在具有曲线段的公路,铁路线形中,如何计算中桩.边桩坐标,计算竖曲线高程等是一个繁琐的过程,需要进行大量的.复杂的计算,且容易出错.为此,就需要借用相关软件来提高速度和准确性,而excelvba计算程序 ...

  8. 使用TLE(双行)根数计算出轨道数据以供Cesium使用

    使用TLE(双行)根数计算出轨道数据以供Cesium使用 资源: satellite.js:https://download.csdn.net/download/qq_41176306/1936095 ...

  9. 腾讯开放平台接口鉴权(计算签名)工具类 java版

    腾讯开放平台 接口鉴权(签名)工具类 java版 用到了Hutool工具类 package top.seasmall.platform.core.config.nettyws.util;import ...

最新文章

  1. 存储mysql数据存在特殊字符时处理_转义 存储数据时特殊符号的处理
  2. 数据蒋堂 | 还原分组运算的本意
  3. C语言 链表的创建--打印--逆置--新增--删除--排序--释放
  4. 图解VC++工具栏和状态栏编程实例
  5. “开店办厂,去望城!” ——望城区市场主体总量突破十万户
  6. IO流--buffer
  7. 归并排序的时间复杂度为什么为nlogn
  8. 如何设置linux端口桥接,怎么在linux下配置桥接?
  9. html5光标进去默认值消失,html点击input没有出现光标怎么办
  10. 决策树系列(一)——基础知识回顾与总结
  11. 勒索病毒c语言源代码,勒索病毒原理解析
  12. CUDA编程-02: 初识CUDA编程
  13. 易语言怎么给手机发短信
  14. 第六讲:AD、DA的工作原理及实现(郭天祥)
  15. 让 Directory Opus 支持 Windows 10 的暗色主题
  16. 联想用u盘重装系统步骤_联想电脑怎样重新安装系统方法步骤详细教程 - 系统家园...
  17. ZZNU17级新生周赛第六场
  18. python 在线编译器
  19. java 读取 doc_java如何读取doc文件
  20. “零代码”写爬虫下载自己全部的豆瓣影评

热门文章

  1. h5新增标签和表单属性
  2. 如何有效开展小组教学_如何有效的开展小组合作  用小组合作活动推进教学...
  3. ospf避免环路_多进程OSPF发布LSA形成路由环路的规避办法
  4. rt-thread4.1.0和nk-980iot bsp开发记录
  5. 光立方原理讲解_基于杠杆平衡的防汛挡水板设计原理分析
  6. 计算机原理及接口技术题目,微机原理及接口技术-习题答案
  7. 如何计算近似纳什均衡_大角度单摆的运动近似(4):级数近似
  8. [ctf逆向001]:逆向工程体系化入门
  9. 职工食堂报餐系统源码java,企业食堂报餐消费管理系统
  10. 谷歌新技术:神经优化器搜索,自动找到可解释的优化方法