Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 1564 → Rev 1565

/dongfang_FC_rewrite_tool/src/dongfang/mkt/comm/MKInputStream.java
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());