247,33 → 247,33 |
f.setVersion(base64InputStream.readByte()); |
|
GPSPosition pos = new GPSPosition(); |
pos.setLongitude(base64InputStream.readSignedDWord()); |
pos.setLatitude(base64InputStream.readSignedDWord()); |
pos.setAltitude(base64InputStream.readSignedDWord()); |
pos.setLongitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setLatitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setAltitude(((double)base64InputStream.readSignedDWord())/1E3); |
pos.setStatus(base64InputStream.readByte()); |
f.setCurrentPosition(pos); |
|
pos = new GPSPosition(); |
pos.setLongitude(base64InputStream.readSignedDWord()); |
pos.setLatitude(base64InputStream.readSignedDWord()); |
pos.setAltitude(base64InputStream.readSignedDWord()); |
pos.setLongitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setLatitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setAltitude(((double)base64InputStream.readSignedDWord())/1E3); |
pos.setStatus(base64InputStream.readByte()); |
f.setTargetPosition(pos); |
|
GPSBearingAndRange rnb = new GPSBearingAndRange(); |
rnb.setDistance(base64InputStream.readWord()); |
rnb.setDistance(((double)base64InputStream.readWord())/10.0); |
rnb.setBearing(base64InputStream.readSignedWord()); |
f.setCurrentToTarget(rnb); |
|
pos = new GPSPosition(); |
pos.setLongitude(base64InputStream.readSignedDWord()); |
pos.setLatitude(base64InputStream.readSignedDWord()); |
pos.setAltitude(base64InputStream.readSignedDWord()); |
pos.setLongitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setLatitude(((double)base64InputStream.readSignedDWord())/1E7); |
pos.setAltitude(((double)base64InputStream.readSignedDWord())/1E3); |
pos.setStatus(base64InputStream.readByte()); |
f.setHomePosition(pos); |
|
rnb = new GPSBearingAndRange(); |
rnb.setDistance(base64InputStream.readWord()); |
rnb.setDistance(((double)base64InputStream.readWord())/10.0); |
rnb.setBearing(base64InputStream.readSignedWord()); |
f.setCurrentToHome(rnb); |
|
281,7 → 281,11 |
f.setWaypointCount(base64InputStream.readByte()); |
f.setNumberOfSatellites(base64InputStream.readByte()); |
|
f.setHeightByPressure(base64InputStream.readSignedWord()); |
// This stunt is a metric unit conversion: The height was supposed (H&I) to be in integral 5cm steps. |
// However there is error factor in the measurement of 24% too much. |
// h[m] = h[int] * 0.05 / 1.24 = h[int] |
f._setHeightByPressure(((double)base64InputStream.readSignedWord()) * 0.05 / 1.24); |
|
f.setVerticalVelocityByPressure(base64InputStream.readSignedWord()); |
f.setFlightTime(base64InputStream.readWord()); |
f.setBatteryVoltage(base64InputStream.readByte()); |
302,7 → 306,7 |
f.setVerticalVelocityByGPS(base64InputStream.readSignedWord()); |
f.setTargetLoiterTime(base64InputStream.readByte()); |
f.setFcFlags2(base64InputStream.readByte()); |
f.setSetpointForAltitude(base64InputStream.readSignedWord()); |
f.setSetpointForAltitude(((double)base64InputStream.readSignedWord()) * 0.05 / 1.24); |
f.setThrottle(base64InputStream.readByte()); |
f.setCurrent(base64InputStream.readWord()); |
f.setCapacityUsed(base64InputStream.readWord()); |