Please note, that the string is not \0-terminated. The length of the string is found in the header itself. The route header has a variable length since it contains the name of the route. a 2nd header and a list of additional but currently unknown data,Įach of those sub-blocks is prepended by a separate header.A route header and a list of GUIDs (of the waypoints),.The internal block structure is basically split into three parts: At first, the block format of type 0x21 (a route) is described. There are two types of waypoint list blocks: 0x21 and 0x22. Waypoints are similar to track points but contain more information than track points. The second pair of coordinates ( north and east, found in the common data structure fsh_wpt_data_t) are in the same format as in the track points (see #Coordinates of Track Points). Thus, the geographic coordinates in degrees are found by the following formula:ĭouble latitude = (double) fsh_wpt_t.lat / 1E7 In the first case (in fsh_wpt_t) both are simply scaled by the factor 1E7. Interestingly, the latitude and longitude is found in two different formats. waypoint 0x01, length 8 bytes sizeof wpt_data_t (See C90W note 6) } _attribute_ ((packed)) fsh_route_wpt_t ![]() Int64_t guid //!< the guid of the waypointįsh_wpt_t wpt //!< rest of the waypoint data from above is 8 bytes sizeof fsh_wpt = 56 bytes name_len cmt_len route (0x21) waypoint is simply a GUID followed by the waypoint data, length Int32_t lat, lon //!< latitude/longitude * 1E7 waypoint as used int block type 0x22, 8 bytes sizeof fsh_wpt_data_t #define COMMENT(x) ((x).txt_data (x).name_len) The waypoint of 'name_len' number of charactersĭirectly followed by a comment of 'cmt_len'Ĭharacters. Uint16_t tempr //!< temperature in Kelvin * 100Ĭhar name_len //!< length of name array (See C90W note 5)Ĭhar txt_data /*!< this is a combined string field. Int32_t north, east //!< prescaled ellipsoid Mercator northing and easting common waypoint data, length 40 bytes name_len cmt_len } _attribute_ ((packed)) fsh_timestamp_t Uint32_t timeofday //!< time of day in seconds timestamp used in FSH data, length 6 bytes In the following the exact definition of these four structures is depicted. Static double phi_iterate_merc(const ellipsoid_t *el, double N)įor (phi = 0, phi0 = M_PI, i = 0 fabs(phi - phi0) > IT_ACCURACY
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |