近期公司有个项目,实现卫星六根数实现计算出经纬度坐标,因为在网上找不到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. R,python(pandas)以及linux shell 常见命令对比
  2. 北斗定位2.0版来了!普通人手机可用,全免费!
  3. apache配置反向代理(通过不同端口访问不同目录)
  4. aria-required属性学习笔记
  5. apache mesos_Apache Mesos + Marathon和Java EE
  6. HashMap底层理解(下)
  7. C++ 变量初始化规则
  8. 巧用开源软件做好企业管理
  9. 【codejam_Round1B_C】Mousetrap
  10. 织梦列表页list标签调用支持flag属性方法
  11. AAE结合resnet的生成器搭建(失败)
  12. 天河区办理水电、管道煤气、有线电视过户手续所需资料及地址 ...
  13. 逻辑与计算机设计基础实验报告,逻辑和计算机设计基础--课实验报告.doc
  14. Vue解决导出pdf文件图片展示不全问题
  15. Scrapy中对xpath使用re
  16. JavaSEDemo33
  17. SpringBoot返回的 JSON 带有斜杠 转义
  18. 计算机领域cip是什么意思,版权页上的CIP数据是什么意思?
  19. Touchpad驱动分析——转载
  20. JS高级编程笔记归总

热门文章

  1. IT服务公司经理专栏:小公司管理(1)
  2. 实现数据库的跨库join联表查询
  3. 手机物流详情页面模板.
  4. 记录有关Https、443、SSL、百度地图、云服务器、网易有数BI 等相关知识
  5. UIKit基础:16-小游戏之舒尔特表
  6. (二百) omnipeek抓包复习
  7. 雷达相机融合(四)--点云着色
  8. PHP网站seo优化
  9. 计算机病毒及其防治 Computer Virus Analysis and Antivirus
  10. iPad越狱是什么?iPad越狱有什么好处和坏处