1557,8 → 1557,11 |
break; |
case 10: //heading |
Dispatcher.Invoke((Action)(() => tbHeading.Text = sAnalogData[index] + "°")); |
Dispatcher.Invoke(() => ArtHor.rotate = iAnalogData[index]); |
//Dispatcher.Invoke(() => ((CustomMarkerCopter)(copter.Shape)).rotate = iAnalogData[index]); |
if (!_Simulate) //use NavData for simulation |
{ |
Dispatcher.Invoke(() => ArtHor.rotate = iAnalogData[index]); |
Dispatcher.Invoke(() => ((CustomMarkerCopter)(copter.Shape)).rotate = iAnalogData[index]); |
} |
break; |
case 12: // SPI error |
Dispatcher.Invoke((Action)(() => tbSPI.Text = sAnalogData[index])); |
1612,7 → 1615,8 |
break; |
case 21: //GroundSpeed |
Dispatcher.Invoke((Action)(() => tbSpeed.Text = ((double)iAnalogData[index] / (double)100).ToString("0.00 m/s"))); |
Dispatcher.Invoke((Action)(() => tbTopSpeed.Text = ((double)iAnalogData[index] / (double)100).ToString("0.00 m/s"))); |
if (!_Simulate) |
Dispatcher.Invoke((Action)(() => tbTopSpeed.Text = ((double)iAnalogData[index] / (double)100).ToString("0.00 m/s"))); |
break; |
|
///********** needs testing --> not sure what position this is *************** |
1762,6 → 1766,7 |
Dispatcher.Invoke(() => { drGPX[1] = d; }); |
Dispatcher.Invoke(() => { drGPX[4] = DateTime.UtcNow.ToString("u", System.Globalization.CultureInfo.InvariantCulture); }); //2011-01-14T01:59:01Z }); |
p.Lat = d; |
|
if (data[50] > 4)//if more than 4 sats in use . otherwise the map would jump and scroll insane at beginning |
{ |
_bSatFix = true; _iSatsJitter = 0; _bVoiceSatFixActive = false; |
1824,10 → 1829,12 |
} |
} |
|
//Distance to next WP |
i_16 = data[28]; |
i_16 = (Int16)(i_16 << 8); |
iVal = data[27] + i_16; |
Dispatcher.Invoke((Action)(() => tbWP.Text = ((double)iVal / (double)10).ToString("0.0 m"))); //Distance to next WP |
Dispatcher.Invoke((Action)(() => tbWP.Text = ((double)iVal / (double)10).ToString("0.0 m"))); |
Dispatcher.Invoke((Action)(() => lblWPRouteDistanceWP.Content = ((double)iVal / (double)10).ToString("0.0 m"))); |
|
i_16 = data[45]; |
i_16 = (Int16)(i_16 << 8); |
1837,7 → 1844,7 |
|
Dispatcher.Invoke((Action)(() => tbWPIndex.Text = data[48].ToString())); //Waypoint index |
Dispatcher.Invoke((Action)(() => lblWPIndexNC.Content = data[48].ToString())); |
if(data[48] > 0 && _wpIndex != data[48] -1 && wpList.Count > 0) |
if(data[48] > 0 && _wpIndex != data[48] -1 && wpList.Count >= data[48] -1) |
{ |
_setActiveWP(data[48]-1); |
if((data[67] & 2) == 2) |
1896,7 → 1903,9 |
i_16 = data[59]; |
i_16 = (Int16)(i_16 << 8); |
iVal = data[58] + i_16; |
Dispatcher.Invoke((Action)(() => tbNCGrSpeed.Text = ((double)(iVal)/100).ToString("0.00 m/s"))); |
Dispatcher.Invoke((Action)(() => tbNCGrSpeed.Text = ((double)(iVal)/100).ToString("0.00 m/s"))); |
if(_Simulate) |
Dispatcher.Invoke((Action)(() => tbTopSpeed.Text = ((double)(iVal)/100).ToString("0.00 m/s"))); |
|
//--------------- Heading north ------------------------ |
i_16 = data[61]; |
1909,8 → 1918,11 |
i_16 = (Int16)(i_16 << 8); |
iVal = data[62] + i_16; |
Dispatcher.Invoke((Action)(() => tbHeadingCompass.Text = iVal.ToString() + " °")); |
//Dispatcher.Invoke(() => ArtHor.rotate = iVal); |
Dispatcher.Invoke(() => ((CustomMarkerCopter)(copter.Shape)).rotate = iVal); |
if (_Simulate) |
{ |
Dispatcher.Invoke(() => ArtHor.rotate = iVal); |
Dispatcher.Invoke(() => ((CustomMarkerCopter)(copter.Shape)).rotate = iVal); |
} |
//--------------- Flying time ------------------------ |
i_16 = data[56]; |
i_16 = (Int16)(i_16 << 8); |
1954,6 → 1966,9 |
} |
} |
|
//Target hold time |
Dispatcher.Invoke((Action)(() => lblWPHoldTime.Content = data[73].ToString()+ " s")); |
|
//--------------- NC Error ------------------------ |
Dispatcher.Invoke((Action)(() => tbNCErr.Text = data[69].ToString())); //NC Errornumber |
if (data[69] > 0) |
3779,6 → 3794,9 |
_sendWayPoint(dr, -1, 'w', false); |
else |
_sendWayPoint(dr, 1, 'w', false); |
|
if(_wpIndex > -1 && _wpIndex < dtWaypoints.Rows.Count) |
_sendWayPoint(dtWaypoints.Rows[_wpIndex], _wpIndex + 1, 's', false); |
} |
} |
private void btnWPSimulateStart_Click(object sender, RoutedEventArgs e) |