coord_system.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2010 Swift Navigation Inc.
00003  * Contact: Fergus Noble <fergus@swift-nav.com>
00004  *
00005  * This source is subject to the license found in the file 'LICENSE' which must
00006  * be be distributed together with this source. All other rights reserved.
00007  *
00008  * THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
00009  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
00010  * WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
00011  */
00012 
00013 #ifndef LIBSWIFTNAV_COORD_SYSTEM_H
00014 #define LIBSWIFTNAV_COORD_SYSTEM_H
00015 
00027 #define WGS84_A 6378137.0
00028 
00030 #define WGS84_IF 298.257223563
00031 
00032 #define WGS84_F (1/WGS84_IF)
00033 
00034 #define WGS84_B (WGS84_A*(1-WGS84_F))
00035 
00036 #define WGS84_E (sqrt(2*WGS84_F - WGS84_F*WGS84_F))
00037 /* \} */
00038 
00039 /* \} */
00040 
00041 void llhrad2deg(const double llh_rad[3], double llh_deg[3]);
00042 
00043 void llhdeg2rad(const double llh_deg[3], double llh_rad[3]);
00044 
00045 void wgsllh2ecef(const double llh[3], double ecef[3]);
00046 
00047 void wgsecef2llh(const double ecef[3], double llh[3]);
00048 
00049 void wgsecef2ned(const double ecef[3], const double ref_ecef[3],
00050                  double ned[3]);
00051 void wgsecef2ned_d(const double ecef[3], const double ref_ecef[3],
00052                    double ned[3]);
00053 
00054 void wgsned2ecef(const double ned[3], const double ref_ecef[3],
00055                  double ecef[3]);
00056 void wgsned2ecef_d(const double ned[3], const double ref_ecef[3],
00057                    double ecef[3]);
00058 
00059 void wgsecef2azel(const double ecef[3], const double ref_ecef[3],
00060                   double* azimuth, double* elevation);
00061 
00062 #endif /* LIBSWIFTNAV_COORD_SYSTEM_H */
00063 


swiftnav
Author(s):
autogenerated on Sat Jun 8 2019 18:55:32