Subversion Repositories Projects

Rev

Rev 2194 | Go to most recent revision | Blame | Last modification | View Log | RSS feed

//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//############################################################################
//# HISTORY  gps.h
//#
//# 20.06.2014 OG - NEU
//############################################################################


#ifndef GPS_H_
#define GPS_H_



GPS_PosDev_t gps_Deviation( GPS_Pos_t pos1, GPS_Pos_t pos2 );

/**
 * Position data in fractional degrees or radians
 */

typedef struct _nmeaPOS
{
    int32_t lat;         /**< Latitude */
    int32_t lon;         /**< Longitude */

} nmeaPOS;

extern nmeaPOS NMEApos;
extern nmeaPOS NMEATarget;


int nmea_move_horz(
    const nmeaPOS *start_pos,   /**< Start position in radians */
    nmeaPOS *end_pos,           /**< Result position in radians */
    double azimuth,             /**< Azimuth (degree) [0, 359] */
    double distance             /**< Distance (km) */
    );


int nmea_move_horz1(
    const nmeaPOS *start_pos,   /**< Start position in radians */
    nmeaPOS *end_pos,           /**< Result position in radians */
    double azimuth,             /**< Azimuth (degree) [0, 359] */
    double distance             /**< Distance (km) */
    );


int followme_calculate_offset(
    const nmeaPOS *pkt_pos,     /**< Start position in radians */
    nmeaPOS *target_pos,        /**< Result position in radians */
    int d_lat,                  /**< Distance lat(m) */
    int d_lon                   /**< Distance long(m) */
    );



#endif // #define GPS_H_