Subversion Repositories NaviCtrl

Rev

Rev 171 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 171 Rev 215
Line 57... Line 57...
57
#include <stdlib.h>
57
#include <stdlib.h>
58
#include <stdio.h>
58
#include <stdio.h>
59
#include "91x_lib.h"
59
#include "91x_lib.h"
60
#include "kml.h"
60
#include "kml.h"
61
#include "kml_header.h"
61
#include "kml_header.h"
-
 
62
#include "uart1.h"
Line 62... Line 63...
62
 
63
 
63
 
64
 
64
//________________________________________________________________________________________________________________________________________
65
//________________________________________________________________________________________________________________________________________
Line 301... Line 302...
301
        s8 string[50];
302
        s8 string[50];
302
        s32 rel_altitude = 0;
303
        s32 rel_altitude = 0;
Line 303... Line 304...
303
 
304
 
Line 304... Line 305...
304
        if(doc == NULL) return(0);
305
        if(doc == NULL) return(0);
305
 
306
 
306
        if((GPSData.Position.Status != INVALID) && (GPS_HomePosition.Status != INVALID))
307
        if((GPSData.Position.Status != INVALID) && (NaviData.HomePosition.Status != INVALID))
307
        {
308
        {
308
                if(doc->state == KML_DOC_LINESTRING_OPENED)
309
                if(doc->state == KML_DOC_LINESTRING_OPENED)
309
                {
310
                {
Line 322... Line 323...
322
                                i1 = abs(GPSData.Position.Latitude)/10000000L;
323
                                i1 = abs(GPSData.Position.Latitude)/10000000L;
323
                                i2 = abs(GPSData.Position.Latitude)%10000000L;
324
                                i2 = abs(GPSData.Position.Latitude)%10000000L;
324
                                sprintf(string,"%c%ld.%07ld,",sign, i1, i2);
325
                                sprintf(string,"%c%ld.%07ld,",sign, i1, i2);
325
                                fputs_(string, doc->file);
326
                                fputs_(string, doc->file);
326
                                // calculate relative altitude with respect to the altitude of the home position
327
                                // calculate relative altitude with respect to the altitude of the home position
327
                                rel_altitude = GPSData.Position.Altitude - GPS_HomePosition.Altitude;
328
                                rel_altitude = GPSData.Position.Altitude - NaviData.HomePosition.Altitude;
328
                                if(rel_altitude < 0) rel_altitude = 0; // avoid negative altitudes in log
329
                                if(rel_altitude < 0) rel_altitude = 0; // avoid negative altitudes in log
329
                                i1 = rel_altitude/1000L;
330
                                i1 = rel_altitude/1000L;
330
                                i2 = rel_altitude%1000L;
331
                                i2 = rel_altitude%1000L;
331
                                sprintf(string," %ld.%03ld",i1, i2);
332
                                sprintf(string," %ld.%03ld",i1, i2);
332
                                fputs_(string, doc->file);
333
                                fputs_(string, doc->file);