Paparazzi UAS
v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
|
Data Structures | |
struct | EcefCoor_i |
vector in EarthCenteredEarthFixed coordinates More... | |
struct | LlaCoor_i |
vector in Latitude, Longitude and Altitude More... | |
struct | NedCoor_i |
vector in North East Down coordinates More... | |
struct | EnuCoor_i |
vector in East North Up coordinates More... | |
struct | UtmCoor_i |
position in UTM coordinates More... | |
struct | LtpDef_i |
definition of the local (flat earth) coordinate system More... | |
Macros | |
#define | CM_OF_M(_m) ((_m)*1e2) |
#define | M_OF_CM(_cm) ((_cm)/1e2) |
#define | MM_OF_M(_m) ((_m)*1e3) |
#define | M_OF_MM(_mm) ((_mm)/1e3) |
#define | EM7RAD_OF_RAD(_r) ((_r)*1e7) |
#define | RAD_OF_EM7RAD(_r) ((_r)/1e7) |
#define | EM7DEG_OF_DEG(_r) ((_r)*1e7) |
#define | DEG_OF_EM7DEG(_r) ((_r)/1e7) |
#define | EM7DEG_OF_RAD(_r) (DegOfRad(_r)*1e7) |
#define | RAD_OF_EM7DEG(_r) (RadOfDeg(_r)/1e7) |
#define | HIGH_RES_TRIG_FRAC 20 |
#define | VECT3_ENU_OF_NED(_o, _i) |
#define | VECT3_NED_OF_ENU(_o, _i) VECT3_ENU_OF_NED(_o,_i) |
#define | INT32_VECT3_NED_OF_ENU(_o, _i) VECT3_ENU_OF_NED(_o,_i) |
#define | INT32_VECT3_ENU_OF_NED(_o, _i) VECT3_ENU_OF_NED(_o,_i) |
#define | ECEF_BFP_OF_REAL(_o, _i) |
#define | ECEF_FLOAT_OF_BFP(_o, _i) |
#define | ECEF_DOUBLE_OF_BFP(_o, _i) |
#define | LLA_BFP_OF_REAL(_o, _i) |
#define | LLA_FLOAT_OF_BFP(_o, _i) |
#define | LLA_DOUBLE_OF_BFP(_o, _i) |
#define | NED_BFP_OF_REAL(_o, _i) |
#define | ENU_BFP_OF_REAL(_o, _i) NED_BFP_OF_REAL(_o, _i) |
#define | NED_FLOAT_OF_BFP(_o, _i) |
#define | ENU_FLOAT_OF_BFP(_o, _i) NED_FLOAT_OF_BFP(_o, _i) |
#define | INT32_VECT2_ENU_OF_NED(_o, _i) |
#define | INT32_VECT2_NED_OF_ENU(_o, _i) INT32_VECT2_ENU_OF_NED(_o,_i) |
#define | HIGH_RES_RMAT_BFP_OF_REAL(_ei, _ef) |
#define | HIGH_RES_RMAT_FLOAT_OF_BFP(_ef, _ei) |
#define | HIGH_RES_RMAT_DOUBLE_OF_BFP(_ef, _ei) |
#define | UTM_FLOAT_OF_BFP(_o, _i) |
#define | UTM_DOUBLE_OF_BFP(_o, _i) |
#define | UTM_BFP_OF_REAL(_o, _i) |
Functions | |
void | lla_of_utm_i (struct LlaCoor_i *lla, struct UtmCoor_i *utm) |
Convert a UTM to LLA. More... | |
void | utm_of_lla_i (struct UtmCoor_i *utm, struct LlaCoor_i *lla) |
Convert a LLA to UTM. More... | |
void | ltp_of_ecef_rmat_from_lla_i (struct Int32RMat *ltp_of_ecef, struct LlaCoor_i *lla) |
void | ltp_def_from_ecef_i (struct LtpDef_i *def, struct EcefCoor_i *ecef) |
void | ltp_def_from_lla_i (struct LtpDef_i *def, struct LlaCoor_i *lla) |
void | lla_of_ecef_i (struct LlaCoor_i *out, struct EcefCoor_i *in) |
Convert a ECEF to LLA. More... | |
void | ecef_of_lla_i (struct EcefCoor_i *out, struct LlaCoor_i *in) |
Convert a LLA to ECEF. More... | |
void | enu_of_ecef_point_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Convert a point from ECEF to local ENU. More... | |
void | ned_of_ecef_point_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Convert a point from ECEF to local NED. More... | |
void | enu_of_ecef_pos_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Convert a ECEF position to local ENU. More... | |
void | ned_of_ecef_pos_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Convert a ECEF position to local NED. More... | |
void | enu_of_ecef_vect_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Rotate a vector from ECEF to ENU. More... | |
void | ned_of_ecef_vect_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct EcefCoor_i *ecef) |
Rotate a vector from ECEF to NED. More... | |
void | enu_of_lla_point_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct LlaCoor_i *lla) |
Convert a point from LLA to local ENU. More... | |
void | ned_of_lla_point_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct LlaCoor_i *lla) |
Convert a point from LLA to local NED. More... | |
void | enu_of_lla_pos_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct LlaCoor_i *lla) |
Convert a point from LLA to local ENU. More... | |
void | ned_of_lla_pos_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct LlaCoor_i *lla) |
Convert a point from LLA to local NED. More... | |
void | enu_of_lla_vect_i (struct EnuCoor_i *enu, struct LtpDef_i *def, struct LlaCoor_i *lla) |
void | ned_of_lla_vect_i (struct NedCoor_i *ned, struct LtpDef_i *def, struct LlaCoor_i *lla) |
void | ecef_of_enu_point_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct EnuCoor_i *enu) |
Convert a point in local ENU to ECEF. More... | |
void | ecef_of_ned_point_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct NedCoor_i *ned) |
Convert a point in local NED to ECEF. More... | |
void | ecef_of_enu_pos_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct EnuCoor_i *enu) |
Convert a local ENU position to ECEF. More... | |
void | ecef_of_ned_pos_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct NedCoor_i *ned) |
Convert a local NED position to ECEF. More... | |
void | ecef_of_enu_vect_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct EnuCoor_i *enu) |
Rotate a vector from ENU to ECEF. More... | |
void | ecef_of_ned_vect_i (struct EcefCoor_i *ecef, struct LtpDef_i *def, struct NedCoor_i *ned) |
Rotate a vector from NED to ECEF. More... | |
struct EcefCoor_i |
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: centimeters
Definition at line 50 of file pprz_geodetic_int.h.
Data Fields | ||
---|---|---|
int32_t | x | in centimeters |
int32_t | y | in centimeters |
int32_t | z | in centimeters |
struct LlaCoor_i |
vector in Latitude, Longitude and Altitude
Definition at line 59 of file pprz_geodetic_int.h.
Data Fields | ||
---|---|---|
int32_t | alt | in millimeters above WGS84 reference ellipsoid |
int32_t | lat | in degrees*1e7 |
int32_t | lon | in degrees*1e7 |
struct NedCoor_i |
vector in North East Down coordinates
Definition at line 68 of file pprz_geodetic_int.h.
Data Fields | ||
---|---|---|
int32_t | x | North. |
int32_t | y | East. |
int32_t | z | Down. |
struct EnuCoor_i |
vector in East North Up coordinates
Definition at line 77 of file pprz_geodetic_int.h.
Data Fields | ||
---|---|---|
int32_t | x | East. |
int32_t | y | North. |
int32_t | z | Up. |
struct UtmCoor_i |
struct LtpDef_i |
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 98 of file pprz_geodetic_int.h.
Data Fields | ||
---|---|---|
struct EcefCoor_i | ecef | Reference point in ecef. |
int32_t | hmsl | Height above mean sea level in mm. |
struct LlaCoor_i | lla | Reference point in lla. |
struct Int32RMat | ltp_of_ecef | Rotation matrix. |
#define CM_OF_M | ( | _m | ) | ((_m)*1e2) |
Definition at line 131 of file pprz_geodetic_int.h.
#define DEG_OF_EM7DEG | ( | _r | ) | ((_r)/1e7) |
Definition at line 138 of file pprz_geodetic_int.h.
#define ECEF_BFP_OF_REAL | ( | _o, | |
_i | |||
) |
Definition at line 154 of file pprz_geodetic_int.h.
Referenced by ecef_of_lla_i(), stateCalcPositionEcef_i(), and stateCalcPositionLla_i().
#define ECEF_DOUBLE_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 166 of file pprz_geodetic_int.h.
Referenced by lla_of_ecef_i().
#define ECEF_FLOAT_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 160 of file pprz_geodetic_int.h.
Referenced by ins_float_invariant_update_gps(), lla_of_ecef_i(), stateCalcPositionEcef_f(), and stateCalcPositionLla_f().
#define EM7DEG_OF_DEG | ( | _r | ) | ((_r)*1e7) |
Definition at line 137 of file pprz_geodetic_int.h.
#define EM7DEG_OF_RAD | ( | _r | ) | (DegOfRad(_r)*1e7) |
Definition at line 139 of file pprz_geodetic_int.h.
#define EM7RAD_OF_RAD | ( | _r | ) | ((_r)*1e7) |
Definition at line 135 of file pprz_geodetic_int.h.
#define ENU_BFP_OF_REAL | ( | _o, | |
_i | |||
) | NED_BFP_OF_REAL(_o, _i) |
Definition at line 194 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionEnu_i(), mission_element_convert(), nav_survey_poly_run(), nav_survey_rectangle_rotorcraft_run(), nav_survey_rectangle_rotorcraft_setup(), stateCalcPositionEnu_i(), stateCalcPositionLla_i(), stateCalcPositionNed_i(), stateCalcSpeedEnu_i(), and waypoint_set_enu().
#define ENU_FLOAT_OF_BFP | ( | _o, | |
_i | |||
) | NED_FLOAT_OF_BFP(_o, _i) |
Definition at line 202 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionEnu_f(), stateCalcPositionEnu_f(), stateCalcPositionNed_f(), stateCalcPositionUtm_f(), stateCalcSpeedEnu_f(), waypoint_localize(), and waypoint_set_enu_i().
#define HIGH_RES_RMAT_BFP_OF_REAL | ( | _ei, | |
_ef | |||
) |
Definition at line 211 of file pprz_geodetic_int.h.
#define HIGH_RES_RMAT_DOUBLE_OF_BFP | ( | _ef, | |
_ei | |||
) |
Definition at line 235 of file pprz_geodetic_int.h.
#define HIGH_RES_RMAT_FLOAT_OF_BFP | ( | _ef, | |
_ei | |||
) |
Definition at line 223 of file pprz_geodetic_int.h.
#define HIGH_RES_TRIG_FRAC 20 |
Definition at line 142 of file pprz_geodetic_int.h.
Referenced by ecef_of_enu_vect_i(), enu_of_ecef_point_i(), enu_of_ecef_vect_i(), and ltp_of_ecef_rmat_from_lla_i().
#define INT32_VECT2_ENU_OF_NED | ( | _o, | |
_i | |||
) |
Definition at line 204 of file pprz_geodetic_int.h.
#define INT32_VECT2_NED_OF_ENU | ( | _o, | |
_i | |||
) | INT32_VECT2_ENU_OF_NED(_o,_i) |
Definition at line 209 of file pprz_geodetic_int.h.
Referenced by guidance_h_from_nav(), and guidance_h_nav_enter().
#define INT32_VECT3_ENU_OF_NED | ( | _o, | |
_i | |||
) | VECT3_ENU_OF_NED(_o,_i) |
Definition at line 152 of file pprz_geodetic_int.h.
Referenced by stateCalcPositionEnu_i(), and stateCalcSpeedEnu_i().
#define INT32_VECT3_NED_OF_ENU | ( | _o, | |
_i | |||
) | VECT3_ENU_OF_NED(_o,_i) |
Definition at line 151 of file pprz_geodetic_int.h.
Referenced by stateCalcPositionNed_i(), and stateCalcSpeedNed_i().
#define LLA_BFP_OF_REAL | ( | _o, | |
_i | |||
) |
Definition at line 171 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionLla_i(), ins_vectornav_propagate(), lla_of_ecef_i(), lla_of_utm_i(), parse_xsens_msg(), sim_use_gps_pos(), and stateCalcPositionLla_i().
#define LLA_DOUBLE_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 183 of file pprz_geodetic_int.h.
Referenced by ecef_of_lla_i(), and utm_of_lla_i().
#define LLA_FLOAT_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 177 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionLla_f(), ecef_of_lla_i(), mission_point_of_lla(), stateCalcPositionEcef_f(), stateCalcPositionEnu_f(), stateCalcPositionEnu_i(), stateCalcPositionLla_f(), stateCalcPositionNed_f(), stateCalcPositionNed_i(), stateCalcPositionUtm_f(), and utm_of_lla_i().
#define M_OF_CM | ( | _cm | ) | ((_cm)/1e2) |
Definition at line 132 of file pprz_geodetic_int.h.
#define M_OF_MM | ( | _mm | ) | ((_mm)/1e3) |
Definition at line 134 of file pprz_geodetic_int.h.
#define MM_OF_M | ( | _m | ) | ((_m)*1e3) |
Definition at line 133 of file pprz_geodetic_int.h.
#define NED_BFP_OF_REAL | ( | _o, | |
_i | |||
) |
Definition at line 188 of file pprz_geodetic_int.h.
Referenced by stateCalcPositionEnu_i(), stateCalcPositionLla_i(), and stateCalcPositionNed_i().
#define NED_FLOAT_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 196 of file pprz_geodetic_int.h.
Referenced by ins_float_invariant_update_gps(), stateCalcPositionEnu_f(), stateCalcPositionLla_f(), stateCalcPositionNed_f(), and stateCalcPositionUtm_f().
#define RAD_OF_EM7DEG | ( | _r | ) | (RadOfDeg(_r)/1e7) |
Definition at line 140 of file pprz_geodetic_int.h.
Referenced by ltp_of_ecef_rmat_from_lla_i().
#define RAD_OF_EM7RAD | ( | _r | ) | ((_r)/1e7) |
Definition at line 136 of file pprz_geodetic_int.h.
#define UTM_BFP_OF_REAL | ( | _o, | |
_i | |||
) |
Definition at line 261 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionUtm_i(), and utm_of_lla_i().
#define UTM_DOUBLE_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 254 of file pprz_geodetic_int.h.
Referenced by lla_of_utm_i().
#define UTM_FLOAT_OF_BFP | ( | _o, | |
_i | |||
) |
Definition at line 247 of file pprz_geodetic_int.h.
Referenced by acInfoCalcPositionUtm_f(), lla_of_utm_i(), and utm_float_from_gps().
#define VECT3_ENU_OF_NED | ( | _o, | |
_i | |||
) |
Definition at line 144 of file pprz_geodetic_int.h.
Referenced by stateCalcPositionEnu_f(), and stateCalcSpeedEnu_f().
#define VECT3_NED_OF_ENU | ( | _o, | |
_i | |||
) | VECT3_ENU_OF_NED(_o,_i) |
Definition at line 150 of file pprz_geodetic_int.h.
Referenced by parse_gps_datalink_small(), stateCalcPositionNed_f(), and stateCalcSpeedNed_f().
void ecef_of_enu_point_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct EnuCoor_i * | enu | ||
) |
Convert a point in local ENU to ECEF.
[out] | ecef | ECEF point in cm |
[in] | def | local coordinate system definition |
[in] | enu | ENU point in cm |
Definition at line 238 of file pprz_geodetic_int.c.
References LtpDef_i::ecef, ecef_of_enu_vect_i(), and VECT3_ADD.
Referenced by ecef_of_ned_point_i(), parse_gps_datalink_small(), and send_gps_dw1000_small().
void ecef_of_enu_pos_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct EnuCoor_i * | enu | ||
) |
Convert a local ENU position to ECEF.
[out] | ecef | ECEF position in cm |
[in] | def | local coordinate system definition |
[in] | enu | ENU position in meter << INT32_POS_FRAC |
Definition at line 263 of file pprz_geodetic_int.c.
References LtpDef_i::ecef, ecef_of_enu_vect_i(), INT32_POS_FRAC, INT32_VECT3_RSHIFT, VECT3_ADD, and VECT3_SMUL.
Referenced by ecef_of_ned_pos_i(), stateCalcPositionLla_i(), and waypoint_globalize().
void ecef_of_enu_vect_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct EnuCoor_i * | enu | ||
) |
Rotate a vector from ENU to ECEF.
[out] | ecef | vector in ECEF coordinate system |
[in] | def | local coordinate system definition |
[in] | enu | vector in ENU coordinate system |
Definition at line 199 of file pprz_geodetic_int.c.
References HIGH_RES_TRIG_FRAC, LtpDef_i::ltp_of_ecef, Int32RMat::m, EcefCoor_i::x, EnuCoor_i::x, EcefCoor_i::y, EnuCoor_i::y, EcefCoor_i::z, and EnuCoor_i::z.
Referenced by ecef_of_enu_point_i(), ecef_of_enu_pos_i(), ecef_of_ned_vect_i(), and parse_gps_datalink_small().
void ecef_of_lla_i | ( | struct EcefCoor_i * | out, |
struct LlaCoor_i * | in | ||
) |
Convert a LLA to ECEF.
[out] | out | ECEF in cm |
[in] | in | LLA in degrees*1e7 and mm above ellipsoid |
Definition at line 392 of file pprz_geodetic_int.c.
References ECEF_BFP_OF_REAL, ecef_of_lla_d(), ecef_of_lla_f(), LLA_DOUBLE_OF_BFP, and LLA_FLOAT_OF_BFP.
Referenced by enu_of_lla_point_i(), enu_of_lla_pos_i(), enu_of_lla_vect_i(), ins_float_invariant_init(), ins_gps_passthrough_init(), ltp_def_from_lla_i(), ned_of_lla_point_i(), ned_of_lla_pos_i(), ned_of_lla_vect_i(), stateCalcPositionEcef_i(), stateCalcPositionEnu_f(), and stateCalcPositionNed_f().
void ecef_of_ned_point_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct NedCoor_i * | ned | ||
) |
Convert a point in local NED to ECEF.
[out] | ecef | ECEF point in cm |
[in] | def | local coordinate system definition |
[in] | ned | NED point in cm |
Definition at line 250 of file pprz_geodetic_int.c.
References ecef_of_enu_point_i(), and ENU_OF_TO_NED.
Referenced by gps_sim_hitl_event().
void ecef_of_ned_pos_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct NedCoor_i * | ned | ||
) |
Convert a local NED position to ECEF.
[out] | ecef | ECEF position in cm |
[in] | def | local coordinate system definition |
[in] | ned | NED position in meter << INT32_POS_FRAC |
Definition at line 283 of file pprz_geodetic_int.c.
References ecef_of_enu_pos_i(), and ENU_OF_TO_NED.
Referenced by stateCalcPositionEcef_f(), stateCalcPositionEcef_i(), and stateCalcPositionLla_i().
void ecef_of_ned_vect_i | ( | struct EcefCoor_i * | ecef, |
struct LtpDef_i * | def, | ||
struct NedCoor_i * | ned | ||
) |
Rotate a vector from NED to ECEF.
[out] | ecef | vector in ECEF coordinate system |
[in] | def | local coordinate system definition |
[in] | ned | vector in NED coordinate system |
Definition at line 225 of file pprz_geodetic_int.c.
References ecef_of_enu_vect_i(), and ENU_OF_TO_NED.
Referenced by gps_sim_hitl_event(), nmea_parse_perdcrv(), stateCalcAccelEcef_i(), and stateCalcSpeedEcef_i().
void enu_of_ecef_point_i | ( | struct EnuCoor_i * | enu, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Convert a point from ECEF to local ENU.
[out] | enu | ENU point in cm |
[in] | def | local coordinate system definition |
[in] | ecef | ECEF point in cm |
Definition at line 90 of file pprz_geodetic_int.c.
References LtpDef_i::ecef, HIGH_RES_TRIG_FRAC, LtpDef_i::ltp_of_ecef, Int32RMat::m, VECT3_DIFF, EcefCoor_i::x, EnuCoor_i::x, EcefCoor_i::y, EnuCoor_i::y, EcefCoor_i::z, and EnuCoor_i::z.
Referenced by enu_of_ecef_pos_i(), enu_of_lla_point_i(), and ned_of_ecef_point_i().
void enu_of_ecef_pos_i | ( | struct EnuCoor_i * | enu, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Convert a ECEF position to local ENU.
[out] | enu | ENU position in meter << INT32_POS_FRAC |
[in] | def | local coordinate system definition |
[in] | ecef | ECEF position in cm |
Definition at line 129 of file pprz_geodetic_int.c.
References enu_of_ecef_point_i(), INT32_POS_FRAC, INT32_VECT3_LSHIFT, and VECT3_SDIV.
Referenced by enu_of_lla_pos_i(), ned_of_ecef_pos_i(), stateCalcPositionEnu_f(), and stateCalcPositionEnu_i().
void enu_of_ecef_vect_i | ( | struct EnuCoor_i * | enu, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Rotate a vector from ECEF to ENU.
[out] | enu | vector in ENU coordinate system |
[in] | def | local coordinate system definition |
[in] | ecef | vector in ECEF coordinate system |
Definition at line 162 of file pprz_geodetic_int.c.
References HIGH_RES_TRIG_FRAC, LtpDef_i::ltp_of_ecef, Int32RMat::m, EcefCoor_i::x, EnuCoor_i::x, EcefCoor_i::y, EnuCoor_i::y, EcefCoor_i::z, and EnuCoor_i::z.
Referenced by enu_of_lla_vect_i(), ned_of_ecef_vect_i(), and stateCalcSpeedEnu_i().
Convert a point from LLA to local ENU.
[out] | enu | ENU point in cm |
[in] | def | local coordinate system definition |
[in] | lla | LLA point in 1e7deg and mm |
Definition at line 295 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and enu_of_ecef_point_i().
Referenced by acInfoCalcPositionEnu_f(), acInfoCalcPositionEnu_i(), mission_point_of_lla(), and waypoint_localize().
Convert a point from LLA to local ENU.
[out] | enu | ENU point in meter << INT32_POS_FRAC |
[in] | def | local coordinate system definition |
[in] | lla | LLA point in 1e7deg and mm |
Definition at line 319 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and enu_of_ecef_pos_i().
Referenced by stateCalcPositionEnu_i().
Definition at line 338 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and enu_of_ecef_vect_i().
void lla_of_ecef_i | ( | struct LlaCoor_i * | out, |
struct EcefCoor_i * | in | ||
) |
Convert a ECEF to LLA.
[out] | out | LLA in degrees*1e7 and mm above ellipsoid |
[in] | in | ECEF in cm |
Definition at line 363 of file pprz_geodetic_int.c.
References ECEF_DOUBLE_OF_BFP, ECEF_FLOAT_OF_BFP, LLA_BFP_OF_REAL, lla_of_ecef_d(), and lla_of_ecef_f().
Referenced by ltp_def_from_ecef_i(), parse_gps_datalink_small(), send_gps_dw1000_small(), stateCalcPositionLla_i(), and waypoint_globalize().
Convert a UTM to LLA.
[out] | lla | in degrees*1e7, alt is directly copied from utm |
[in] | utm | in cm, alt in mm |
Definition at line 452 of file pprz_geodetic_int.c.
References LLA_BFP_OF_REAL, lla_of_utm_d(), lla_of_utm_f(), UTM_DOUBLE_OF_BFP, and UTM_FLOAT_OF_BFP.
Referenced by acInfoCalcPositionLla_f(), acInfoCalcPositionLla_i(), and set_ac_info_utm().
void ltp_def_from_ecef_i | ( | struct LtpDef_i * | def, |
struct EcefCoor_i * | ecef | ||
) |
Definition at line 60 of file pprz_geodetic_int.c.
References LtpDef_i::ecef, LtpDef_i::lla, lla_of_ecef_i(), LtpDef_i::ltp_of_ecef, ltp_of_ecef_rmat_from_lla_i(), and VECT3_COPY.
Referenced by gps_skytraq_read_message(), ins_float_invariant_init(), ins_gps_passthrough_init(), ins_reset_local_origin(), and nmea_parse_perdcrv().
Definition at line 72 of file pprz_geodetic_int.c.
References LtpDef_i::ecef, ecef_of_lla_i(), LtpDef_i::lla, LLA_COPY, LtpDef_i::ltp_of_ecef, and ltp_of_ecef_rmat_from_lla_i().
Referenced by dw1000_arduino_init(), gps_datalink_init(), ins_init_origin_i_from_flightplan(), and ins_reset_altitude_ref().
Definition at line 34 of file pprz_geodetic_int.c.
References BFP_OF_REAL, HIGH_RES_TRIG_FRAC, LlaCoor_i::lat, LlaCoor_i::lon, Int32RMat::m, and RAD_OF_EM7DEG.
Referenced by ltp_def_from_ecef_i(), and ltp_def_from_lla_i().
void ned_of_ecef_point_i | ( | struct NedCoor_i * | ned, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Convert a point from ECEF to local NED.
[out] | ned | NED point in cm |
[in] | def | local coordinate system definition |
[in] | ecef | ECEF point in cm |
Definition at line 116 of file pprz_geodetic_int.c.
References enu_of_ecef_point_i(), and ENU_OF_TO_NED.
Referenced by gps_cb(), ins_float_invariant_update_gps(), ins_int_update_gps(), ins_module_update_gps(), and ned_of_lla_point_i().
void ned_of_ecef_pos_i | ( | struct NedCoor_i * | ned, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Convert a ECEF position to local NED.
[out] | ned | NED position in meter << INT32_POS_FRAC |
[in] | def | local coordinate system definition |
[in] | ecef | ECEF position in cm |
Definition at line 149 of file pprz_geodetic_int.c.
References enu_of_ecef_pos_i(), and ENU_OF_TO_NED.
Referenced by ned_of_lla_pos_i(), stateCalcPositionNed_f(), and stateCalcPositionNed_i().
void ned_of_ecef_vect_i | ( | struct NedCoor_i * | ned, |
struct LtpDef_i * | def, | ||
struct EcefCoor_i * | ecef | ||
) |
Rotate a vector from ECEF to NED.
[out] | ned | vector in NED coordinate system |
[in] | def | local coordinate system definition |
[in] | ecef | vector in ECEF coordinate system |
Definition at line 186 of file pprz_geodetic_int.c.
References enu_of_ecef_vect_i(), and ENU_OF_TO_NED.
Referenced by gps_cb(), gps_skytraq_read_message(), ins_int_update_gps(), ins_module_update_gps(), ned_of_lla_vect_i(), parse_gps_datalink(), stateCalcAccelNed_i(), stateCalcHorizontalSpeedNorm_i(), and stateCalcSpeedNed_i().
Convert a point from LLA to local NED.
[out] | ned | NED point in cm |
[in] | def | local coordinate system definition |
[in] | lla | LLA point in 1e7deg and mm |
Definition at line 307 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and ned_of_ecef_point_i().
Convert a point from LLA to local NED.
[out] | ned | NED point in meter << INT32_POS_FRAC |
[in] | def | local coordinate system definition |
[in] | lla | LLA point in 1e7deg and mm |
Definition at line 331 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and ned_of_ecef_pos_i().
Referenced by stateCalcPositionNed_i().
Definition at line 345 of file pprz_geodetic_int.c.
References ecef_of_lla_i(), and ned_of_ecef_vect_i().
Convert a LLA to UTM.
[out] | utm | in cm, alt is directly copied from lla |
[in] | lla | in degrees*1e7, alt in mm |
Definition at line 423 of file pprz_geodetic_int.c.
References LLA_DOUBLE_OF_BFP, LLA_FLOAT_OF_BFP, UTM_BFP_OF_REAL, utm_of_lla_d(), utm_of_lla_f(), UtmCoor_f::zone, UtmCoor_d::zone, and UtmCoor_i::zone.
Referenced by acInfoCalcPositionUtm_f(), acInfoCalcPositionUtm_i(), set_ac_info_utm(), utm_float_from_gps(), and utm_int_from_gps().