GeographicLib::Geocentric 类的参数

SLAM 中地理计算库 GeographicLib 极简入门 (Ubuntu 18.04 c++例子) 地理计算库 GeographicLib 极简入门 时间:20210412 作者:jqf 目录 文章目录1. 文档2. 安装3. 项目集成4. 极简的例子 1. 文档 GeographicLib - 官方文档 GeographicLib::LocalCartesian - 官方文档 2. 安装 克隆源码并编译安装 GeographicLib 。 (码云镜像更快,已有较多人转储,不用自己导入,如需自己导入,参考gitee文档)。 git clone https://gitee.com/masonqi 阅读详情

解释说明:
Geocentric coordinates
Convert between geodetic coordinates latitude = lat, longitude = lon, height = h (measured vertically from the surface of the ellipsoid) to geocentric coordinates (X, Y, Z). The origin of geocentric coordinates is at the center of the earth. The Z axis goes thru the north pole, lat = 90°. The X axis goes thru lat = 0, lon = 0. Geocentric coordinates are also known as earth centered, earth fixed (ECEF) coordinates.
(地心坐标
将大地坐标纬度=纬度,经度=经度,高度= h(从椭球表面垂直测量)转换为地心坐标(X, Y, Z)。地心坐标的原点在地球的中心。Z轴穿过北极,纬度为90度。X轴经纬度为0,经度为0。地心坐标也被称为地球中心,地球固定(ECEF)坐标。)

引用方式
#include <GeographicLib/Geocentric.hpp>
Public Member Functions

	Geocentric (real a, real f)
 	Geocentric ()
void 	Forward (real lat, real lon, real h, real &X, real &Y, real &Z) const
 
void 	Forward (real lat, real lon, real h, real &X, real &Y, real &Z, std::vector< real > &M) const
 
void 	Reverse (real X, real Y, real Z, real &lat, real &lon, real &h) const
 
void 	Reverse (real X, real Y, real Z, real &lat, real &lon, real &h, std::vector< real > &M) const

Static Public Member Functions

static const Geocentric & 	WGS84 ()

Example of use:

// Example of using the GeographicLib::Geocentric class
#include <iostream>
#include <exception>
#include <cmath>
#include <GeographicLib/Geocentric.hpp>
using namespace std;
using namespace GeographicLib;
int main() {
  try {
    Geocentric earth(Constants::WGS84_a(), Constants::WGS84_f());
    // Alternatively: const Geocentric& earth = Geocentric::WGS84();
    {
      // Sample forward calculation
      double lat = 27.99, lon = 86.93, h = 8820; // Mt Everest
      double X, Y, Z;
      earth.Forward(lat, lon, h, X, Y, Z);
      cout << floor(X / 1000 + 0.5) << " "
           << floor(Y / 1000 + 0.5) << " "
           << floor(Z / 1000 + 0.5) << "\n";
    }
    {
      // Sample reverse calculation
      double X = 302e3, Y = 5636e3, Z = 2980e3;
      double lat, lon, h;
      earth.Reverse(X, Y, Z, lat, lon, h);
      cout << lat << " " << lon << " " << h << "\n";
    }
  }
  catch (const exception& e) {
    cerr << "Caught exception: " << e.what() << "\n";
    return 1;
  }
}
【mavros安装】GeographicLib踩坑及解决 mavros安装 阅读详情

相关推荐

【WGS84坐标系】经纬度高度转换为WGS84坐标系对应的坐标值

给定经纬度和海拔高度数据,计算在WGS84坐标系中对应的坐标值数据。

m0_43605481的博客 3833

推荐开源项目:GeographicLib - 地理坐标转换与地理计算的强大工具

推荐开源项目:GeographicLib - 地理坐标转换与地理计算的强大工具 项目地址:https://gitcode.com/gh_mirrors/ge/geographiclib 1、项目介绍 GeographicLib是一个小型的C++库,专为处理各种地理计算任务而设计。它提供了从经纬度到UTM、UPS、MGRS、地心和局部笛卡尔坐标的转换,以及沿大地线和罗盘线的计算功能。此外,该项目还支...

gitblog_00051的博客 2127

GeographicLib库(1.52)

GeographicLib库(1.52)

GeographicLib地理计算库配置及使用

GeographicLib 是一个小型的 C++ 库,用于测地线计算;地理坐标、UTM、UPS、MGRS、地心坐标和局部笛卡尔坐标之间的转换;重力(例如EGM2008)和地磁场(例如WMM2020)计算。

weixin_44272195的博客 4165

geographiclib:C++ 库 GeographicLib 子集的 MATLAB 实现-matlab开发

GeographicLib 工具箱版本 1.50 2019-09-19 这个工具箱提供了一个子集的原生 MATLAB 实现C++ 库,GeographicLib。 此工具箱的关键组件是 *测地线:直接,逆,面积计算。 * 投影:横轴墨卡托、极坐标等。 * 电网系统:UTM、UPS、MGRS。 * 大地水准面查找:支持 EGM84、EGM96、EGM2008 大地水准面。 * 几何变换:地心、局部笛卡尔。 * 大椭圆:直接、逆、面积计算。 这个工具箱和 MATLAB 的 Mapping 有一些重叠工具箱。 但是,此工具箱提供: * 更好的准确性; * 治疗扁长椭球体; * 保证 geoddistance 收敛; * 计算测地线的面积和微分属性; * 等距方位角和标准方位角的椭球体版本预测。 此软件包的子集以前发布为: 旋转椭球体上的测地线(已弃用) 椭球的测地线投影(撤回) 大椭

GeographicLib:http

地理图书馆 一个用于地理投影的C ++库。 安装 使用自动配置工具进行安装 该方法可在包括Linux和Mac OS X在内的大多数类Unix系统上使用。这是编译和安装的步骤: 解压缩源,运行 tar xfpz GeographicLib-1.44.tar.gz 然后输入创建的目录 cd GeographicLib-1.44 创建一个单独的构建目录并输入它,例如, mkdir BUILD cd BUILD 使用以下命令配置软件,指定源目录的路径 ../configure 默认情况下,GeographicLib将安装在/ usr / local下。 您可以使用例如更改此设置 ../configure --prefix=/tmp/geographic 用以下命令编译并安装软件 make make install 标头,库和实用程序安装在前缀下的include / GeographicLib,

基于GeographicLib实现测站地平坐标系(东北天)转地心固定坐标系XYZ

本文介绍了基于GeographicLib库实现的地理坐标转换方法,用于将观测站相对目标的方位信息转换为地心固定坐标系(ECEF)坐标。输入观测站的经纬度、海拔高度及目标的方位角、俯仰角和距离,通过局部ENU坐标系转换,最终输出目标在ECEF坐标系下的三维坐标(X,Y,Z)。代码示例展示了从某观测站计算目标位置的过程,验证了算法的正确性。GeographicLib库专注于大地测量计算、坐标系统转换等地理空间计算,但不包含天球惯性坐标系转换功能。该方案适用于需要精确地理定位的应用场景

piaopiaolanghua的专栏 626

汽车软件工程师必看:ASPICE开发流程全解析(附各阶段交付物清单)

本文全面解析了汽车行业广泛采用的ASPICE开发流程,详细介绍了从需求挖掘到系统架构设计、软件工程及测试验证各阶段的关键操作和交付物清单。针对汽车软件工程师,提供了实用的协作指南和工具推荐,帮助团队提升开发效率并降低项目风险,是掌握ASPICE标准的必备指南。

weixin_30733003的博客 644

ubuntu qt error: undefined reference to

error: undefined reference to 在QT中出现error: undefined reference to 或者在终端出现对‘GeographicLib::Geocentric::Geocentric(double, double)’未定义的引用 这一类的错误是由于程序使用了第三方库,但编译的时候没有声明。 在QT中添加LIBS += -l(第三方库) 在终端使用g++ -o exam exam.cpp -l (第三方库) 即可解决这个问题 ...

qq_45240585的博客 869

VisionMaster字符检测避坑指南:为什么你的缺陷检测总误判?7个参数陷阱详解

本文深入剖析了海康VisionMaster在字符缺陷检测中导致误判的7个关键参数陷阱,包括二值化参数、最小字符面积与宽度、字符极性及缺陷判决参数等。通过药品喷码和PCB丝印等实战案例,提供了系统的调试心法与工作流,帮助工程师精准调参,有效降低误判率,提升检测稳定性。

rust6ferris的博客 1099

避坑指南:Win10安装Docker Desktop时Hyper-V报错的7种解决方案(2024最新版)

本文提供了2024年最新、最全面的Windows 10系统下Docker Desktop安装时Hyper-V报错的解决方案指南。文章深入剖析了Hyper-V与Docker的共生关系,并系统性地给出了从BIOS/UEFI设置、Windows功能启用、bcdedit命令修复到处理多虚拟化环境共存等7种核心解决方案,帮助开发者彻底解决安装困局,顺利部署容器化开发环境。

weixin_28840143的博客 530

【Python】一行代码计算两经纬度点的距离及夹角

通过调用geographiclib包的函数,一行代码即可返回两个经纬度点之间的距离和方位角/夹角,非常快速高效,省去补习立体空间几何之烦恼。本文也详细讲解了求距离和角度的数学原理,有图有公式,适合深入研究者参考。

huanqing2010的专栏 1万+

Zemax非序列模式实战:手把手教你设计光纤耦合圆光斑整形系统(附Thorlabs透镜选型)

本文提供了一份基于Zemax非序列模式的光纤耦合圆光斑整形系统实战设计指南。文章详细讲解了从圆柱体光源建模、Thorlabs商业透镜库选型调用,到系统搭建、光线追迹与优化的完整流程,旨在帮助工程师高效完成从仿真到落地的光束整形系统设计。

weixin_28335283的博客 632

【亲测免费】 TinyTetris 安装和配置指南

### 项目基础介绍 TinyTetris 是一个基于终端的俄罗斯方块游戏,适用于 80x23 的终端窗口。该项目由 taylorconor 开发,代码简洁且高效,适合学习和娱乐。 ### 主要编程语言 该项目主要使用 C++ 编程语言编写,代码结构清晰,易于理解和修改。 ## 2. 项目使用的关键技术和框架 ### 关键技术 - **C++11**: 项目代码使用了 C++11 标准,确保...

gitblog_07824的博客 675

Android 13.0 展讯平台关机充电动画横屏显示修改

在13.0的系统rom定制化开发中,在关于展讯平台的产品中,系统默认的充电动画是竖屏显示的,但是在像平板的产品中竖屏动画肯定不符合规范, 所以需要在平板TV产品中,充电动画同时也是需要修改为横屏显示的,接下来就来分析下充电动画的相关绘制流程,然后实现功能

安卓兼职framework和app工程师的博客 410

全志T527-TP9930-Camera

TP9930 驱动模块主要实现将 4 路的 AHD/TVI/CVBS Camera 的数据转换为 BT656/BT1120 数据,从而实现在 T527 端来对数据进行处理和送显。

Linux驱动开发工程师,熟悉Linux/Android底层驱动、TP、显示、IIC、网络等通用外设调试适配,Linux上层应用开发。常用平台瑞芯微、全志、恩智浦等。 3236

【常用库】GeographicLib 库详解

GeographicLib是一个高精度地理空间计算开源库,由MIT的Charles F. F. Karney开发。它支持多种坐标转换、地图投影和大地测量计算,具有高精度、跨平台和易用性等特点。核心功能包括椭球模型定义、UTM/UPS坐标转换、大地线计算、面积测量等,采用严格的数值算法确保计算精度。该库广泛应用于GIS、导航、测绘等领域,提供C++核心和多种语言绑定,是处理复杂地理计算问题的可靠工具。

Ray Home 1990

基于 YOLO26 的车辆实时检测与计数系统

本文提出了一种基于YOLO26的车辆实时检测与计数系统。系统采用CSPDarknet53作为主干网络,结合特征金字塔和多尺度预测实现高精度车辆检测。通过DeepSORT算法进行目标跟踪,并统计车辆数量、行驶方向和交通流量。实验表明,该系统在保持实时性能的同时,检测精度达到92.3%,可有效应用于智能交通管理。系统采用Python实现,支持GPU加速,适用于多种交通场景下的车辆监测需求。

一键难忘的博客 908

ViSual studio如何安装 并使用GeographicLib

在C++的 Boost.Geometry、GDAL/OGR 和 GeographicLib。这些库都可以用于计算两个经纬度点之间的地面距离。

cat_want_fly的博客 1606

论文必备 - YOLOv8训练前一键扩充数据集,支持9种扩充方法,支持图像和标签同步扩充

在网络模型训练前,大量的数据集是必备的。而对于一些特殊场景中的特殊目标,大量的数据集往往难以获取,无法满足模型训练的基本需求。本文提供了,脚本可一键运行,。

Limiiiing的博客 769

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【ubuntu20.04】安装GeographicLib

ubuntu20.04 ,下载 GeographicLib-2.3.tar.gz 跟着官方步骤安装,会出错!原因请参考我的另一篇blog。

仿生实验室:从0到1,制作人脸表情交互机器人,记录过程,软硬件全部开源,与君共襄盛举! 4175

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

利用GeographicLib库计算wgs84坐标点p2相对于wgs84坐标点p1在enu坐标系下的yaw角

要计算一个经纬度点(假设为p2)相对于另一个经纬度点(假设为p1)在East-North-Up(ENU)坐标系下的偏航角(yaw角),可以使用GeographicLib库的LocalCartesian类。

weixin_43357110的博客 809

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ubuntu下使用GeographicLib库

楼主在使用groundtruth生成imu数据集的时候,需要使用到Geographiclib库,安装过程遇到了一些问题,花了半天时间最终还是成功解决了。     1、下载Geographiclib库。这里我下载的是1.48版本,也可以根据需要下载其他版本;     2、解压            tar xfpz GeographicLib-1.48.tar.g

m_zhangJingDong的博客 1万+

使用GeographicLib在C++中进行地理坐标转换

通过上述步骤,你可以在你的C++项目中轻松使用GeographicLib进行地理坐标转换。GeographicLib提供了简单且高效的方法来处理经纬度与局部直角坐标系之间的转换,为地理信息处理提供了便利。在实际应用中,可以根据需要进行更复杂的坐标转换和计算,满足不同场景下的需求。

Clang’s Blog 1910

GeographicLib编译踩坑笔记

cmake find_package (GeographicLib REQUIRED) include_directories(${GeographicLib_INCLUDE_DIRS}) list(APPEND ALL_TARGET_LIBRARIES ${GeographicLib_LIBRARIES}) 报错 cmake/geographic.cmake:1 (find_package): By not providing "FindGeographicLib.cmake" in CMAKE_

虎哥的铲屎员 9566

[GeographicLib] LocalCartesian用法

本文演示了使用GeographicLib库实现经纬度与局部笛卡尔坐标转换的方法。通过以北京天安门为参考点建立坐标系,将周边地点(如故宫和上海人民广场)的经纬度转换为局部坐标(x东向、y北向、z垂直向),并逆向验证转换精度。该方法适用于无人机导航、机器人定位和工程测量等小范围场景(城市级),能有效简化相对位置计算,但大范围应用时误差会增大。代码展示了Forward()和Reverse()核心转换函数的使用。

Ray Home 382
上一篇: leetcode——图片平滑器
下一篇: 经纬高坐标系-ecef坐标系-enu坐标系
上杉打老虎
博客等级 码龄7年 6粉丝 20原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值