#pragma once #include "standardglobe_global.h" #include /// /// 经纬高坐标系坐标 /// struct LLAPos { double _lon_deg = 0; double _lat_deg = 0; double _alt_m = 0; }; /// /// 地心坐标系 /// struct ECEFPos { double _x_pos = 0; double _y_pos = 0; double _z_pos = 0; QVector3D getVector() const; }; /// /// 东天北坐标系 /// struct ENUPos { double _e_pos = 0; double _n_pos = 0; double _t_pos = 0; }; /// /// 极坐标 /// struct PolarPos { double _dist_m = 0; double _azimuth_deg = 0; double _pitch_deg = 0; }; /// /// 标准球体坐标转换工具 /// class STANDARDGLOBE_EXPORT StandardGlobe { private: /// /// 标准正球体星球直径 /// static double _radius_m; public: StandardGlobe(); static ECEFPos llaToEcef(const LLAPos &v); static void getDistanceWithin(const LLAPos &base, const LLAPos &target, double dist, double azi); };