Rev 406 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 406 | Rev 414 | ||
---|---|---|---|
Line 297... | Line 297... | ||
297 | uint8_t KML_LineStringAddPoint(KML_Document_t *doc) |
297 | uint8_t KML_LineStringAddPoint(KML_Document_t *doc) |
298 | { |
298 | { |
Line 299... | Line 299... | ||
299 | 299 | ||
300 | uint8_t retvalue = 0; |
300 | uint8_t retvalue = 0; |
301 | int8_t string[50]; |
301 | int8_t string[50]; |
Line 302... | Line 302... | ||
302 | int32_t rel_altitude = 0; |
302 | // int32_t rel_altitude = 0; |
Line 303... | Line 303... | ||
303 | 303 | ||
304 | if(doc == NULL) return(0); |
304 | if(doc == NULL) return(0); |
305 | 305 | ||
306 | //if((GPSData.Position.Status != INVALID) && (GPS_HomePosition.Status != INVALID)) |
306 | //if((GPSData.Position.Status != INVALID) && (GPS_HomePosition.Status != INVALID)) |
307 | { |
307 | { |
308 | if(doc->state == KML_DOC_LINESTRING_OPENED) |
308 | if(doc->state == KML_DOC_LINESTRING_OPENED) |
309 | { |
309 | { |
310 | if(doc->file != NULL) |
310 | if(doc->file != NULL) |
311 | { |
311 | { |
312 | int32_t i1, i2; |
312 | int16_t i1, i2, i3; |
313 | uint8_t sign; |
313 | uint8_t sign; |
314 | if(GPSData.Position.Longitude < 0) sign = '-'; |
314 | if(GPSData.Position.Longitude < 0) sign = '-'; |
- | 315 | else sign = '+'; |
|
315 | else sign = '+'; |
316 | i1 = (int16_t)(GPSData.Position.Longitude/10000000L); |
316 | i1 = abs(GPSData.Position.Longitude)/10000000L; |
317 | i2 = abs((int16_t)((GPSData.Position.Longitude%10000000L)/10000L)); |
317 | i2 = abs(GPSData.Position.Longitude)%10000000L; |
318 | i3 = abs((int16_t)(((GPSData.Position.Longitude%10000000L)%10000L)/10L)); |
318 | sprintf(string,"\r\n%c%ld.%07ld,",sign, i1, i2); |
319 | sprintf(string,"\r\n%c%d.%.3d%",sign, i1, i2, i3); |
319 | fputs_(string, doc->file); |
320 | fputs_(string, doc->file); |
320 | if(GPSData.Position.Latitude < 0) sign = '-'; |
321 | if(GPSData.Position.Latitude < 0) sign = '-'; |
- | 322 | else sign = '+'; |
|
321 | else sign = '+'; |
323 | i1 = (int16_t)(GPSData.Position.Latitude/10000000L); |
- | 324 | i2 = abs((int16_t)((GPSData.Position.Latitude%10000000L)/10000L)); |
|
- | 325 | i3 = abs((int16_t)(((GPSData.Position.Latitude%10000000L)%10000L)/10L)); |
|
322 | i1 = abs(GPSData.Position.Latitude)/10000000L; |
326 | sprintf(string,"\r\n%c%d.%.3d%",sign, i1, i2, i3); |
323 | i2 = abs(GPSData.Position.Latitude)%10000000L; |
- | |
324 | sprintf(string,"%c%ld.%07ld,",sign, i1, i2); |
327 | fputs_(string, doc->file); |
325 | fputs_(string, doc->file); |
328 | sprintf(string,"\r\n%c%d.%.3d%",0.0 ); |
326 | 329 | fputs_(string, doc->file); |
|
327 | retvalue = 1; |
330 | retvalue = 1; |