Rev 51 | Rev 70 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 51 | Rev 53 | ||
---|---|---|---|
Line 313... | Line 313... | ||
313 | { |
313 | { |
314 | s32 i1, i2; |
314 | s32 i1, i2; |
315 | u8 sign; |
315 | u8 sign; |
316 | if(pGPS_Position->Longitude < 0) sign = '-'; |
316 | if(pGPS_Position->Longitude < 0) sign = '-'; |
317 | else sign = '+'; |
317 | else sign = '+'; |
318 | i1 = abs(pGPS_Position->Longitude/10000000L); |
318 | i1 = abs(pGPS_Position->Longitude)/10000000L; |
319 | i2 = abs(pGPS_Position->Longitude%10000000L); |
319 | i2 = abs(pGPS_Position->Longitude)%10000000L; |
320 | sprintf(string,"\r\n%c%ld.%07ld,",sign, i1, i2); |
320 | sprintf(string,"\r\n%c%ld.%07ld,",sign, i1, i2); |
321 | fputs_(string, doc->file); |
321 | fputs_(string, doc->file); |
322 | if(pGPS_Position->Latitude < 0) sign = '-'; |
322 | if(pGPS_Position->Latitude < 0) sign = '-'; |
323 | else sign = '+'; |
323 | else sign = '+'; |
324 | i1 = abs(pGPS_Position->Latitude/10000000L); |
324 | i1 = abs(pGPS_Position->Latitude)/10000000L; |
325 | i2 = abs(pGPS_Position->Latitude%10000000L); |
325 | i2 = abs(pGPS_Position->Latitude)%10000000L; |
326 | sprintf(string,"%c%ld.%07ld,",sign, i1, i2); |
326 | sprintf(string,"%c%ld.%07ld,",sign, i1, i2); |
327 | fputs_(string, doc->file); |
327 | fputs_(string, doc->file); |
328 | // calculate relative altitude with respect to the altitude of the home position |
328 | // calculate relative altitude with respect to the altitude of the home position |
329 | rel_altitude = pGPS_Position->Altitude - GPS_HomePosition.Altitude; |
329 | rel_altitude = pGPS_Position->Altitude - GPS_HomePosition.Altitude; |
330 | if(rel_altitude < 0) rel_altitude = 0; // avoid negative altitudes in log |
330 | if(rel_altitude < 0) rel_altitude = 0; // avoid negative altitudes in log |
331 | i1 = rel_altitude/1000L; |
331 | i1 = rel_altitude/1000L; |
332 | i2 = abs(rel_altitude%1000L); |
332 | i2 = rel_altitude%1000L; |
333 | sprintf(string," %ld.%03ld",i1, i2); |
333 | sprintf(string," %ld.%03ld",i1, i2); |
334 | fputs_(string, doc->file); |
334 | fputs_(string, doc->file); |
335 | retvalue = 1; |
335 | retvalue = 1; |
336 | } |
336 | } |
337 | } |
337 | } |