Paparazzi UAS
v5.8.2_stable-0-g6260b7c
Paparazzi is a free software Unmanned Aircraft System.
|
Data Structures | |
struct | EcefCoor_d |
vector in EarthCenteredEarthFixed coordinates More... | |
struct | LlaCoor_d |
vector in Latitude, Longitude and Altitude More... | |
struct | NedCoor_d |
vector in North East Down coordinates Units: meters More... | |
struct | EnuCoor_d |
vector in East North Up coordinates Units: meters More... | |
struct | UtmCoor_d |
position in UTM coordinates Units: meters More... | |
struct | LtpDef_d |
definition of the local (flat earth) coordinate system More... | |
Functions | |
void | lla_of_utm_d (struct LlaCoor_d *out, struct UtmCoor_d *in) |
void | ltp_def_from_ecef_d (struct LtpDef_d *def, struct EcefCoor_d *ecef) |
void | lla_of_ecef_d (struct LlaCoor_d *out, struct EcefCoor_d *in) |
void | ecef_of_lla_d (struct EcefCoor_d *out, struct LlaCoor_d *in) |
void | enu_of_ecef_point_d (struct EnuCoor_d *ned, struct LtpDef_d *def, struct EcefCoor_d *ecef) |
void | ned_of_ecef_point_d (struct NedCoor_d *ned, struct LtpDef_d *def, struct EcefCoor_d *ecef) |
void | enu_of_ecef_vect_d (struct EnuCoor_d *ned, struct LtpDef_d *def, struct EcefCoor_d *ecef) |
void | ned_of_ecef_vect_d (struct NedCoor_d *ned, struct LtpDef_d *def, struct EcefCoor_d *ecef) |
void | ecef_of_enu_point_d (struct EcefCoor_d *ecef, struct LtpDef_d *def, struct EnuCoor_d *enu) |
void | ecef_of_ned_point_d (struct EcefCoor_d *ecef, struct LtpDef_d *def, struct NedCoor_d *ned) |
void | ecef_of_enu_vect_d (struct EcefCoor_d *ecef, struct LtpDef_d *def, struct EnuCoor_d *enu) |
void | ecef_of_ned_vect_d (struct EcefCoor_d *ecef, struct LtpDef_d *def, struct NedCoor_d *ned) |
void | enu_of_lla_point_d (struct EnuCoor_d *enu, struct LtpDef_d *def, struct LlaCoor_d *lla) |
void | ned_of_lla_point_d (struct NedCoor_d *ned, struct LtpDef_d *def, struct LlaCoor_d *lla) |
double | gc_of_gd_lat_d (double gd_lat, double hmsl) |
struct EcefCoor_d |
vector in EarthCenteredEarthFixed coordinates
Origin at center of mass of the Earth. Z-axis is pointing north, the x-axis intersects the sphere of the earth at 0° latitude (Equator) and 0° longitude (Greenwich). Y-axis completes it to right-hand system. Units: meters
Definition at line 49 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
double | x | in meters |
double | y | in meters |
double | z | in meters |
struct LlaCoor_d |
vector in Latitude, Longitude and Altitude
Definition at line 58 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
double | alt | in meters above WGS84 reference ellipsoid |
double | lat | in radians |
double | lon | in radians |
struct NedCoor_d |
vector in North East Down coordinates Units: meters
Definition at line 67 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
double | x | in meters |
double | y | in meters |
double | z | in meters |
struct EnuCoor_d |
vector in East North Up coordinates Units: meters
Definition at line 76 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
double | x | in meters |
double | y | in meters |
double | z | in meters |
struct UtmCoor_d |
position in UTM coordinates Units: meters
Definition at line 85 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
double | alt | in meters above WGS84 reference ellipsoid |
double | east | in meters |
double | north | in meters |
uint8_t | zone | UTM zone number. |
struct LtpDef_d |
definition of the local (flat earth) coordinate system
Defines the origin of the local coordinate system in ECEF and LLA coordinates and the roation matrix from ECEF to local frame
Definition at line 97 of file pprz_geodetic_double.h.
Data Fields | ||
---|---|---|
struct EcefCoor_d | ecef | origin of local frame in ECEF |
double | hmsl | height in meters above mean sea level |
struct LlaCoor_d | lla | origin of local frame in LLA |
struct DoubleRMat | ltp_of_ecef | rotation from ECEF to local frame |
void ecef_of_enu_point_d | ( | struct EcefCoor_d * | ecef, |
struct LtpDef_d * | def, | ||
struct EnuCoor_d * | enu | ||
) |
Definition at line 144 of file pprz_geodetic_double.c.
References LtpDef_d::ecef, LtpDef_d::ltp_of_ecef, MAT33_VECT3_TRANSP_MUL, and VECT3_ADD.
Referenced by ecef_of_ned_point_d().
void ecef_of_enu_vect_d | ( | struct EcefCoor_d * | ecef, |
struct LtpDef_d * | def, | ||
struct EnuCoor_d * | enu | ||
) |
Definition at line 157 of file pprz_geodetic_double.c.
References LtpDef_d::ltp_of_ecef, and MAT33_VECT3_TRANSP_MUL.
Referenced by ecef_of_ned_vect_d().
void ecef_of_lla_d | ( | struct EcefCoor_d * | out, |
struct LlaCoor_d * | in | ||
) |
Definition at line 96 of file pprz_geodetic_double.c.
References LlaCoor_d::alt, LlaCoor_d::lat, LlaCoor_d::lon, EcefCoor_d::x, EcefCoor_d::y, and EcefCoor_d::z.
Referenced by ecef_of_lla_i(), enu_of_lla_point_d(), and ned_of_lla_point_d().
void ecef_of_ned_point_d | ( | struct EcefCoor_d * | ecef, |
struct LtpDef_d * | def, | ||
struct NedCoor_d * | ned | ||
) |
Definition at line 150 of file pprz_geodetic_double.c.
References ecef_of_enu_point_d(), and ENU_OF_TO_NED.
void ecef_of_ned_vect_d | ( | struct EcefCoor_d * | ecef, |
struct LtpDef_d * | def, | ||
struct NedCoor_d * | ned | ||
) |
Definition at line 162 of file pprz_geodetic_double.c.
References ecef_of_enu_vect_d(), and ENU_OF_TO_NED.
void enu_of_ecef_point_d | ( | struct EnuCoor_d * | ned, |
struct LtpDef_d * | def, | ||
struct EcefCoor_d * | ecef | ||
) |
Definition at line 116 of file pprz_geodetic_double.c.
References LtpDef_d::ecef, LtpDef_d::ltp_of_ecef, MAT33_VECT3_MUL, and VECT3_DIFF.
Referenced by enu_of_lla_point_d(), and ned_of_ecef_point_d().
void enu_of_ecef_vect_d | ( | struct EnuCoor_d * | ned, |
struct LtpDef_d * | def, | ||
struct EcefCoor_d * | ecef | ||
) |
Definition at line 130 of file pprz_geodetic_double.c.
References LtpDef_d::ltp_of_ecef, and MAT33_VECT3_MUL.
Referenced by ned_of_ecef_vect_d().
Definition at line 170 of file pprz_geodetic_double.c.
References ecef_of_lla_d(), and enu_of_ecef_point_d().
double gc_of_gd_lat_d | ( | double | gd_lat, |
double | hmsl | ||
) |
Definition at line 186 of file pprz_geodetic_double.c.
References c2.
void lla_of_ecef_d | ( | struct LlaCoor_d * | out, |
struct EcefCoor_d * | in | ||
) |
Definition at line 59 of file pprz_geodetic_double.c.
References LlaCoor_d::alt, LlaCoor_d::lat, LlaCoor_d::lon, Q, EcefCoor_d::x, EcefCoor_d::y, and EcefCoor_d::z.
Referenced by lla_of_ecef_i(), and ltp_def_from_ecef_d().
Definition at line 248 of file pprz_geodetic_double.c.
References LlaCoor_d::alt, UtmCoor_d::alt, CSin, DELTA_EAST, DELTA_NORTH, E, UtmCoor_d::east, inverse_isometric_latitude_d(), isometric_latitude_fast_d(), LambdaOfUtmZone, LlaCoor_d::lat, LlaCoor_d::lon, N, UtmCoor_d::north, serie_coeff_proj_mercator, VECT2_SMUL, VECT2_SUB, DoubleVect2::x, DoubleVect2::y, and UtmCoor_d::zone.
void ltp_def_from_ecef_d | ( | struct LtpDef_d * | def, |
struct EcefCoor_d * | ecef | ||
) |
Definition at line 34 of file pprz_geodetic_double.c.
References LtpDef_d::ecef, LlaCoor_d::lat, LtpDef_d::lla, lla_of_ecef_d(), LlaCoor_d::lon, LtpDef_d::ltp_of_ecef, DoubleRMat::m, and VECT3_COPY.
Referenced by gps_feed_value().
void ned_of_ecef_point_d | ( | struct NedCoor_d * | ned, |
struct LtpDef_d * | def, | ||
struct EcefCoor_d * | ecef | ||
) |
Definition at line 123 of file pprz_geodetic_double.c.
References enu_of_ecef_point_d(), and ENU_OF_TO_NED.
Referenced by ned_of_lla_point_d().
void ned_of_ecef_vect_d | ( | struct NedCoor_d * | ned, |
struct LtpDef_d * | def, | ||
struct EcefCoor_d * | ecef | ||
) |
Definition at line 135 of file pprz_geodetic_double.c.
References enu_of_ecef_vect_d(), and ENU_OF_TO_NED.
Referenced by gps_feed_value().
Definition at line 177 of file pprz_geodetic_double.c.
References ecef_of_lla_d(), and ned_of_ecef_point_d().