APM Planner 1.1.0

firmware setup for apm 2.0
add kml overlay in planner
fix reset to defaults timeout/ firmware upload
This commit is contained in:
Michael Oborne 2011-12-05 06:43:29 +08:00
parent 290363b670
commit 22c8fc7734
19 changed files with 3778 additions and 4205 deletions

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management;
using System.Windows.Forms;
namespace ArdupilotMega
{
@ -55,26 +56,6 @@ namespace ArdupilotMega
System.Threading.Thread.Sleep(500);
//HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_2341&PID_0010\640333439373519060F0\Device Parameters
if (!MainV2.MONO)
{
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_USBControllerDevice");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
foreach (ManagementObject obj2 in searcher.Get())
{
Console.WriteLine("Dependant : " + obj2["Dependent"]);
if (obj2["Dependent"].ToString().Contains(@"USB\\VID_2341&PID_0010"))
{
//return "2560-2";
}
}
}
else
{
int fixme;
}
serialPort.DtrEnable = true;
serialPort.BaudRate = 115200;
serialPort.Open();
@ -94,7 +75,34 @@ namespace ArdupilotMega
if (temp[0] == 6 && temp[1] == 0 && temp.Length == 2)
{
serialPort.Close();
return "2560";
//HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_2341&PID_0010\640333439373519060F0\Device Parameters
if (!MainV2.MONO)
{
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_USBControllerDevice");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
foreach (ManagementObject obj2 in searcher.Get())
{
Console.WriteLine("Dependant : " + obj2["Dependent"]);
if (obj2["Dependent"].ToString().Contains(@"USB\\VID_2341&PID_0010"))
{
return "2560-2";
}
}
return "2560";
}
else
{
if (DialogResult.Yes == MessageBox.Show("APM 2.0", "Is this a APM 2?", MessageBoxButtons.YesNo))
{
return "2560-2";
}
else
{
return "2560";
}
}
}
}
catch { }
@ -103,7 +111,7 @@ namespace ArdupilotMega
serialPort.Close();
Console.WriteLine("Not a 2560");
return "";
}
}
public static int decodeApVar(string comport, string version)
{

View File

@ -172,9 +172,18 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\..\..\..\Program Files (x86)\IronPython 2.7.1\IronPython-2.6.1\Microsoft.Scripting.ExtensionAttribute.dll</HintPath>
</Reference>
<Reference Include="OpenGlobe.Core">
<HintPath>..\..\..\..\..\Desktop\DIYDrones\virtualglobebook-OpenGlobe-ddf1d7e\Source\Examples\Chapter13\ClipmapTerrainOnGlobe\bin\Debug\OpenGlobe.Core.dll</HintPath>
</Reference>
<Reference Include="OpenGlobe.Renderer">
<HintPath>..\..\..\..\..\Desktop\DIYDrones\virtualglobebook-OpenGlobe-ddf1d7e\Source\Examples\Chapter13\ClipmapTerrainOnGlobe\bin\Debug\OpenGlobe.Renderer.dll</HintPath>
</Reference>
<Reference Include="OpenGlobe.Scene">
<HintPath>..\..\..\..\..\Desktop\DIYDrones\virtualglobebook-OpenGlobe-ddf1d7e\Source\Examples\Chapter13\ClipmapTerrainOnGlobe\bin\Debug\OpenGlobe.Scene.dll</HintPath>
</Reference>
<Reference Include="OpenTK, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bad199fe84eb3df4, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\..\Desktop\DIYDrones\opentk\trunk\Binaries\OpenTK\Release\OpenTK.dll</HintPath>
<HintPath>..\..\..\..\..\Desktop\DIYDrones\virtualglobebook-OpenGlobe-ddf1d7e\ThirdParty\OpenTKGL4\Binaries\OpenTK\Release\OpenTK.dll</HintPath>
</Reference>
<Reference Include="OpenTK.GLControl, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bad199fe84eb3df4, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>

View File

@ -11,6 +11,6 @@
<UpdateUrlHistory />
</PropertyGroup>
<PropertyGroup>
<ReferencePath>C:\Users\hog\Desktop\DIYDrones\myquad\greatmaps_e1bb830a18a3\Demo.WindowsForms\bin\Debug\;C:\Users\hog\Desktop\DIYDrones\myquad\sharpkml\SharpKml\bin\Release\;C:\Users\hog\Documents\Visual Studio 2010\Projects\ArdupilotMega\ArdupilotMega\bin\Release\</ReferencePath>
<ReferencePath>C:\Users\hog\Desktop\DIYDrones\myquad\greatmaps_e1bb830a18a3\Demo.WindowsForms\bin\Debug\;C:\Users\hog\Desktop\DIYDrones\myquad\sharpkml\SharpKml\bin\Release\</ReferencePath>
</PropertyGroup>
</Project>

View File

@ -30,8 +30,8 @@
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Configuration));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
this.Params = new System.Windows.Forms.DataGridView();
this.Command = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Value = new System.Windows.Forms.DataGridViewTextBoxColumn();
@ -141,6 +141,8 @@
this.RLL2SRV_P = new System.Windows.Forms.NumericUpDown();
this.label52 = new System.Windows.Forms.Label();
this.TabAC2 = new System.Windows.Forms.TabPage();
this.myLabel1 = new ArdupilotMega.MyLabel();
this.CH7_OPT = new System.Windows.Forms.ComboBox();
this.groupBox17 = new System.Windows.Forms.GroupBox();
this.ACRO_PIT_IMAX = new System.Windows.Forms.NumericUpDown();
this.label27 = new System.Windows.Forms.Label();
@ -403,14 +405,14 @@
this.Params.AllowUserToAddRows = false;
this.Params.AllowUserToDeleteRows = false;
resources.ApplyResources(this.Params, "Params");
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle3.BackColor = System.Drawing.Color.Maroon;
dataGridViewCellStyle3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle3.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Params.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3;
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.Maroon;
dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle1.ForeColor = System.Drawing.Color.White;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Params.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
this.Params.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.Params.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Command,
@ -419,14 +421,14 @@
this.mavScale,
this.RawValue});
this.Params.Name = "Params";
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.ActiveCaption;
dataGridViewCellStyle4.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Params.RowHeadersDefaultCellStyle = dataGridViewCellStyle4;
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.ActiveCaption;
dataGridViewCellStyle2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Params.RowHeadersDefaultCellStyle = dataGridViewCellStyle2;
this.Params.RowHeadersVisible = false;
this.Params.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.Params_CellValueChanged);
//
@ -1087,6 +1089,8 @@
//
// TabAC2
//
this.TabAC2.Controls.Add(this.myLabel1);
this.TabAC2.Controls.Add(this.CH7_OPT);
this.TabAC2.Controls.Add(this.groupBox17);
this.TabAC2.Controls.Add(this.groupBox5);
this.TabAC2.Controls.Add(this.groupBox18);
@ -1104,6 +1108,28 @@
resources.ApplyResources(this.TabAC2, "TabAC2");
this.TabAC2.Name = "TabAC2";
//
// myLabel1
//
resources.ApplyResources(this.myLabel1, "myLabel1");
this.myLabel1.Name = "myLabel1";
this.myLabel1.resize = false;
//
// CH7_OPT
//
this.CH7_OPT.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CH7_OPT.FormattingEnabled = true;
this.CH7_OPT.Items.AddRange(new object[] {
resources.GetString("CH7_OPT.Items"),
resources.GetString("CH7_OPT.Items1"),
resources.GetString("CH7_OPT.Items2"),
resources.GetString("CH7_OPT.Items3"),
resources.GetString("CH7_OPT.Items4"),
resources.GetString("CH7_OPT.Items5"),
resources.GetString("CH7_OPT.Items6"),
resources.GetString("CH7_OPT.Items7")});
resources.ApplyResources(this.CH7_OPT, "CH7_OPT");
this.CH7_OPT.Name = "CH7_OPT";
//
// groupBox17
//
this.groupBox17.Controls.Add(this.ACRO_PIT_IMAX);
@ -2451,5 +2477,7 @@
private System.Windows.Forms.Label label44;
private System.Windows.Forms.NumericUpDown ACRO_RLL_P;
private System.Windows.Forms.Label label48;
private MyLabel myLabel1;
private System.Windows.Forms.ComboBox CH7_OPT;
}
}

View File

@ -380,6 +380,15 @@ namespace ArdupilotMega.GCSViews
}
catch { }
try
{
ComboBox thisctl = ((ComboBox)ctl);
thisctl.SelectedIndex = (int)(float)param[value];
thisctl.Validated += new EventHandler(ComboBox_Validated);
} catch {}
}
if (text.Length == 0)
{
@ -390,6 +399,11 @@ namespace ArdupilotMega.GCSViews
Params.Sort(Params.Columns[0], ListSortDirection.Ascending);
}
void ComboBox_Validated(object sender, EventArgs e)
{
EEPROM_View_float_TextChanged(sender, e);
}
void Configuration_Validating(object sender, CancelEventArgs e)
{
EEPROM_View_float_TextChanged(sender, e);
@ -403,8 +417,16 @@ namespace ArdupilotMega.GCSViews
// do domainupdown state check
try
{
value = float.Parse(((Control)sender).Text);
changes[name] = value;
if (sender.GetType() == typeof(NumericUpDown))
{
value = float.Parse(((Control)sender).Text);
changes[name] = value;
}
else if (sender.GetType() == typeof(ComboBox))
{
value = ((ComboBox)sender).SelectedIndex;
changes[name] = value;
}
((Control)sender).BackColor = Color.Green;
}
catch (Exception)
@ -481,7 +503,14 @@ namespace ArdupilotMega.GCSViews
{
if (row.Cells[0].Value.ToString() == name)
{
row.Cells[1].Value = float.Parse(((Control)sender).Text);
if (sender.GetType() == typeof(NumericUpDown))
{
row.Cells[1].Value = float.Parse(((Control)sender).Text);
}
else if (sender.GetType() == typeof(ComboBox))
{
row.Cells[1].Value = ((ComboBox)sender).SelectedIndex;
}
break;
}
}
@ -516,12 +545,21 @@ namespace ArdupilotMega.GCSViews
{
if (text.Length > 0)
{
decimal option = (decimal)(float.Parse(Params[e.ColumnIndex, e.RowIndex].Value.ToString()));
((NumericUpDown)text[0]).Value = option;
((NumericUpDown)text[0]).BackColor = Color.Green;
if (sender.GetType() == typeof(NumericUpDown))
{
decimal option = (decimal)(float.Parse(Params[e.ColumnIndex, e.RowIndex].Value.ToString()));
((NumericUpDown)text[0]).Value = option;
((NumericUpDown)text[0]).BackColor = Color.Green;
}
else if (sender.GetType() == typeof(ComboBox))
{
int option = (int)(float.Parse(Params[e.ColumnIndex, e.RowIndex].Value.ToString()));
((ComboBox)text[0]).SelectedIndex = option;
((ComboBox)text[0]).BackColor = Color.Green;
}
}
}
catch { ((NumericUpDown)text[0]).BackColor = Color.Red; }
catch { ((Control)text[0]).BackColor = Color.Red; }
Params.Focus();
}

File diff suppressed because it is too large Load Diff

View File

@ -615,7 +615,7 @@ namespace ArdupilotMega.GCSViews
//port = new ArduinoSTK();
port.BaudRate = 57600;
}
else if (board == "2560")
else if (board == "2560" || board == "2560-2")
{
port = new ArduinoSTKv2();
port.BaudRate = 115200;
@ -691,7 +691,7 @@ namespace ArdupilotMega.GCSViews
}
}
lbl_status.Text = "Write Done... Waiting";
lbl_status.Text = "Write Done... Waiting (60 sec)";
}
else
{
@ -704,7 +704,7 @@ namespace ArdupilotMega.GCSViews
Application.DoEvents();
System.Threading.Thread.Sleep(10000); // 10 seconds - new apvar erases eeprom on new format version, this should buy us some time.
System.Threading.Thread.Sleep(60000); // 10 seconds - new apvar erases eeprom on new format version, this should buy us some time.
lbl_status.Text = "Done";
}

View File

@ -31,14 +31,14 @@
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FlightPlanner));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();
this.CHK_altmode = new System.Windows.Forms.CheckBox();
this.CHK_holdalt = new System.Windows.Forms.CheckBox();
this.Commands = new System.Windows.Forms.DataGridView();
@ -89,6 +89,7 @@
this.textBox1 = new System.Windows.Forms.TextBox();
this.panelWaypoints = new BSE.Windows.Forms.Panel();
this.splitter1 = new BSE.Windows.Forms.Splitter();
this.BUT_zoomto = new ArdupilotMega.MyButton();
this.BUT_Camera = new ArdupilotMega.MyButton();
this.BUT_grid = new ArdupilotMega.MyButton();
this.BUT_Prefetch = new ArdupilotMega.MyButton();
@ -120,7 +121,7 @@
this.label11 = new System.Windows.Forms.Label();
this.panelBASE = new System.Windows.Forms.Panel();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.BUT_zoomto = new ArdupilotMega.MyButton();
this.BUT_loadkml = new ArdupilotMega.MyButton();
((System.ComponentModel.ISupportInitialize)(this.Commands)).BeginInit();
this.panel5.SuspendLayout();
this.panel1.SuspendLayout();
@ -152,14 +153,14 @@
//
this.Commands.AllowUserToAddRows = false;
resources.ApplyResources(this.Commands, "Commands");
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Commands.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle9.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.Commands.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle9;
this.Commands.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Command,
this.Param1,
@ -173,17 +174,17 @@
this.Up,
this.Down});
this.Commands.Name = "Commands";
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle5.Format = "N0";
dataGridViewCellStyle5.NullValue = "0";
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
this.Commands.RowHeadersDefaultCellStyle = dataGridViewCellStyle5;
dataGridViewCellStyle6.ForeColor = System.Drawing.Color.Black;
this.Commands.RowsDefaultCellStyle = dataGridViewCellStyle6;
dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle13.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle13.Format = "N0";
dataGridViewCellStyle13.NullValue = "0";
dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
this.Commands.RowHeadersDefaultCellStyle = dataGridViewCellStyle13;
dataGridViewCellStyle14.ForeColor = System.Drawing.Color.Black;
this.Commands.RowsDefaultCellStyle = dataGridViewCellStyle14;
this.Commands.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Commands_CellContentClick);
this.Commands.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.Commands_CellEndEdit);
this.Commands.DataError += new System.Windows.Forms.DataGridViewDataErrorEventHandler(this.Commands_DataError);
@ -195,9 +196,9 @@
//
// Command
//
dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(68)))), ((int)(((byte)(69)))));
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
this.Command.DefaultCellStyle = dataGridViewCellStyle2;
dataGridViewCellStyle10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(68)))), ((int)(((byte)(69)))));
dataGridViewCellStyle10.ForeColor = System.Drawing.Color.White;
this.Command.DefaultCellStyle = dataGridViewCellStyle10;
this.Command.DisplayStyle = System.Windows.Forms.DataGridViewComboBoxDisplayStyle.ComboBox;
resources.ApplyResources(this.Command, "Command");
this.Command.Name = "Command";
@ -263,7 +264,7 @@
//
// Up
//
this.Up.DefaultCellStyle = dataGridViewCellStyle3;
this.Up.DefaultCellStyle = dataGridViewCellStyle11;
resources.ApplyResources(this.Up, "Up");
this.Up.Image = global::ArdupilotMega.Properties.Resources.up;
this.Up.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Stretch;
@ -271,8 +272,8 @@
//
// Down
//
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.Down.DefaultCellStyle = dataGridViewCellStyle4;
dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.Down.DefaultCellStyle = dataGridViewCellStyle12;
resources.ApplyResources(this.Down, "Down");
this.Down.Image = global::ArdupilotMega.Properties.Resources.down;
this.Down.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Stretch;
@ -416,8 +417,8 @@
//
// dataGridViewImageColumn1
//
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.dataGridViewImageColumn1.DefaultCellStyle = dataGridViewCellStyle7;
dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.dataGridViewImageColumn1.DefaultCellStyle = dataGridViewCellStyle15;
resources.ApplyResources(this.dataGridViewImageColumn1, "dataGridViewImageColumn1");
this.dataGridViewImageColumn1.Image = global::ArdupilotMega.Properties.Resources.up;
this.dataGridViewImageColumn1.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Stretch;
@ -425,8 +426,8 @@
//
// dataGridViewImageColumn2
//
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.dataGridViewImageColumn2.DefaultCellStyle = dataGridViewCellStyle8;
dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.dataGridViewImageColumn2.DefaultCellStyle = dataGridViewCellStyle16;
resources.ApplyResources(this.dataGridViewImageColumn2, "dataGridViewImageColumn2");
this.dataGridViewImageColumn2.Image = global::ArdupilotMega.Properties.Resources.down;
this.dataGridViewImageColumn2.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Stretch;
@ -509,6 +510,7 @@
this.panelWaypoints.CaptionFont = new System.Drawing.Font("Segoe UI", 11.75F, System.Drawing.FontStyle.Bold);
this.panelWaypoints.CaptionHeight = 21;
this.panelWaypoints.ColorScheme = BSE.Windows.Forms.ColorScheme.Custom;
this.panelWaypoints.Controls.Add(this.BUT_loadkml);
this.panelWaypoints.Controls.Add(this.BUT_zoomto);
this.panelWaypoints.Controls.Add(this.BUT_Camera);
this.panelWaypoints.Controls.Add(this.BUT_grid);
@ -557,6 +559,14 @@
this.splitter1.Name = "splitter1";
this.splitter1.TabStop = false;
//
// BUT_zoomto
//
resources.ApplyResources(this.BUT_zoomto, "BUT_zoomto");
this.BUT_zoomto.Name = "BUT_zoomto";
this.toolTip1.SetToolTip(this.BUT_zoomto, resources.GetString("BUT_zoomto.ToolTip"));
this.BUT_zoomto.UseVisualStyleBackColor = true;
this.BUT_zoomto.Click += new System.EventHandler(this.BUT_zoomto_Click);
//
// BUT_Camera
//
resources.ApplyResources(this.BUT_Camera, "BUT_Camera");
@ -834,13 +844,13 @@
resources.ApplyResources(this.panelBASE, "panelBASE");
this.panelBASE.Name = "panelBASE";
//
// BUT_zoomto
// BUT_loadkml
//
resources.ApplyResources(this.BUT_zoomto, "BUT_zoomto");
this.BUT_zoomto.Name = "BUT_zoomto";
this.toolTip1.SetToolTip(this.BUT_zoomto, resources.GetString("BUT_zoomto.ToolTip"));
this.BUT_zoomto.UseVisualStyleBackColor = true;
this.BUT_zoomto.Click += new System.EventHandler(this.BUT_zoomto_Click);
resources.ApplyResources(this.BUT_loadkml, "BUT_loadkml");
this.BUT_loadkml.Name = "BUT_loadkml";
this.toolTip1.SetToolTip(this.BUT_loadkml, resources.GetString("BUT_loadkml.ToolTip"));
this.BUT_loadkml.UseVisualStyleBackColor = true;
this.BUT_loadkml.Click += new System.EventHandler(this.BUT_loadkml_Click);
//
// FlightPlanner
//
@ -954,5 +964,6 @@
private System.Windows.Forms.DataGridViewImageColumn Up;
private System.Windows.Forms.DataGridViewImageColumn Down;
private MyButton BUT_zoomto;
private MyButton BUT_loadkml;
}
}

View File

@ -18,6 +18,8 @@ using System.Resources;
using System.Reflection;
using System.ComponentModel;
using System.Threading;
using SharpKml.Base;
namespace ArdupilotMega.GCSViews
@ -440,6 +442,10 @@ namespace ArdupilotMega.GCSViews
trackBar1.Minimum = MainMap.MinZoom;
trackBar1.Maximum = MainMap.MaxZoom + 0.99;
// draw this layer first
kmlpolygons = new GMapOverlay(MainMap, "kmlpolygons");
MainMap.Overlays.Add(kmlpolygons);
routes = new GMapOverlay(MainMap, "routes");
MainMap.Overlays.Add(routes);
@ -452,6 +458,8 @@ namespace ArdupilotMega.GCSViews
drawnpolygons = new GMapOverlay(MainMap, "drawnpolygons");
MainMap.Overlays.Add(drawnpolygons);
top = new GMapOverlay(MainMap, "top");
//MainMap.Overlays.Add(top);
@ -648,6 +656,23 @@ namespace ArdupilotMega.GCSViews
writeKML();
}
void parser_ElementAdded(object sender, SharpKml.Base.ElementEventArgs e)
{
SharpKml.Dom.Polygon polygon = e.Element as SharpKml.Dom.Polygon;
if (polygon != null)
{
GMapPolygon kmlpolygon = new GMapPolygon(new List<PointLatLng>(), "kmlpolygon");
foreach (var loc in polygon.OuterBoundary.LinearRing.Coordinates)
{
kmlpolygon.Points.Add(new PointLatLng(loc.Latitude,loc.Longitude));
}
kmlpolygons.Polygons.Add(kmlpolygon);
}
}
private void ChangeColumnHeader(string command)
{
try
@ -1721,7 +1746,9 @@ namespace ArdupilotMega.GCSViews
// polygons
GMapPolygon polygon;
GMapPolygon drawnpolygon;
//static GMapRoute route;
GMapOverlay kmlpolygons;
// layers
GMapOverlay top;
@ -2070,7 +2097,7 @@ namespace ArdupilotMega.GCSViews
}
private void comboBoxMapType_SelectedValueChanged(object sender, EventArgs e)
{
{
MainMap.MapType = (MapType)comboBoxMapType.SelectedItem;
FlightData.mymap.MapType = (MapType)comboBoxMapType.SelectedItem;
MainV2.config["MapType"] = comboBoxMapType.Text;
@ -2101,7 +2128,8 @@ namespace ArdupilotMega.GCSViews
DataGridViewCell tcell = Commands.Rows[selectedrow].Cells[i];
if (tcell.GetType() == typeof(DataGridViewTextBoxCell))
{
tcell.Value = "0";
if (tcell.Value.ToString() == "?")
tcell.Value = "0";
}
}
}
@ -2625,6 +2653,8 @@ namespace ArdupilotMega.GCSViews
drawnpolygon.Points.Clear();
drawnpolygons.Markers.Clear();
MainMap.Invalidate();
writeKML();
}
private void clearMissionToolStripMenuItem_Click(object sender, EventArgs e)
@ -2640,7 +2670,11 @@ namespace ArdupilotMega.GCSViews
Commands.Rows[selectedrow].Cells[Command.Index].Value = MAVLink.MAV_CMD.LOITER_UNLIM.ToString();
ChangeColumnHeader(MAVLink.MAV_CMD.LOITER_UNLIM.ToString());
setfromGE(end.Lat, end.Lng, (int)float.Parse(TXT_DefaultAlt.Text));
writeKML();
}
private void jumpstartToolStripMenuItem_Click(object sender, EventArgs e)
@ -2655,6 +2689,8 @@ namespace ArdupilotMega.GCSViews
Commands.Rows[row].Cells[Param1.Index].Value = 1;
Commands.Rows[row].Cells[Param2.Index].Value = repeat;
writeKML();
}
private void jumpwPToolStripMenuItem_Click(object sender, EventArgs e)
@ -2671,6 +2707,8 @@ namespace ArdupilotMega.GCSViews
Commands.Rows[row].Cells[Param1.Index].Value = wp;
Commands.Rows[row].Cells[Param2.Index].Value = repeat;
writeKML();
}
private void deleteWPToolStripMenuItem_Click(object sender, EventArgs e)
@ -2717,7 +2755,11 @@ namespace ArdupilotMega.GCSViews
Commands.Rows[selectedrow].Cells[Param1.Index].Value = time;
ChangeColumnHeader(MAVLink.MAV_CMD.LOITER_TIME.ToString());
setfromGE(end.Lat, end.Lng, (int)float.Parse(TXT_DefaultAlt.Text));
writeKML();
}
private void loitercirclesToolStripMenuItem_Click(object sender, EventArgs e)
@ -2731,7 +2773,11 @@ namespace ArdupilotMega.GCSViews
Commands.Rows[selectedrow].Cells[Param1.Index].Value = turns;
ChangeColumnHeader(MAVLink.MAV_CMD.LOITER_TURNS.ToString());
setfromGE(end.Lat, end.Lng, (int)float.Parse(TXT_DefaultAlt.Text));
writeKML();
}
private void BUT_Camera_Click(object sender, EventArgs e)
@ -2768,5 +2814,29 @@ namespace ArdupilotMega.GCSViews
}
}
}
private void BUT_loadkml_Click(object sender, EventArgs e)
{
OpenFileDialog fd = new OpenFileDialog();
fd.Filter = "Google Earth KML (*.kml)|*.kml";
fd.DefaultExt = ".kml";
DialogResult result = fd.ShowDialog();
string file = fd.FileName;
if (file != "")
{
try
{
kmlpolygons.Polygons.Clear();
var parser = new SharpKml.Base.Parser();
parser.ElementAdded += new EventHandler<SharpKml.Base.ElementEventArgs>(parser_ElementAdded);
parser.Parse(File.OpenRead(file));
}
catch (Exception ex) { MessageBox.Show("Bad KML File :" + ex.ToString()); }
}
}
}
}

View File

@ -148,7 +148,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;CHK_altmode.ZOrder" xml:space="preserve">
<value>4</value>
<value>5</value>
</data>
<data name="CHK_holdalt.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -178,7 +178,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;CHK_holdalt.ZOrder" xml:space="preserve">
<value>9</value>
<value>10</value>
</data>
<data name="Commands.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
@ -340,7 +340,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;Commands.ZOrder" xml:space="preserve">
<value>11</value>
<value>12</value>
</data>
<data name="CHK_geheight.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -370,7 +370,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;CHK_geheight.ZOrder" xml:space="preserve">
<value>13</value>
<value>14</value>
</data>
<data name="TXT_WPRad.Location" type="System.Drawing.Point, System.Drawing">
<value>23, 36</value>
@ -394,7 +394,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;TXT_WPRad.ZOrder" xml:space="preserve">
<value>14</value>
<value>15</value>
</data>
<data name="TXT_DefaultAlt.Location" type="System.Drawing.Point, System.Drawing">
<value>154, 36</value>
@ -418,7 +418,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;TXT_DefaultAlt.ZOrder" xml:space="preserve">
<value>12</value>
<value>13</value>
</data>
<data name="LBL_WPRad.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -448,7 +448,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;LBL_WPRad.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="LBL_defalutalt.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -478,7 +478,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;LBL_defalutalt.ZOrder" xml:space="preserve">
<value>10</value>
<value>11</value>
</data>
<data name="TXT_loiterrad.Location" type="System.Drawing.Point, System.Drawing">
<value>89, 36</value>
@ -502,7 +502,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;TXT_loiterrad.ZOrder" xml:space="preserve">
<value>8</value>
<value>9</value>
</data>
<data name="label5.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -532,11 +532,80 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;label5.ZOrder" xml:space="preserve">
<value>7</value>
<value>8</value>
</data>
<data name="panel5.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="&gt;&gt;BUT_write.Name" xml:space="preserve">
<value>BUT_write</value>
</data>
<data name="&gt;&gt;BUT_write.Type" xml:space="preserve">
<value>ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;BUT_write.Parent" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;BUT_write.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;BUT_read.Name" xml:space="preserve">
<value>BUT_read</value>
</data>
<data name="&gt;&gt;BUT_read.Type" xml:space="preserve">
<value>ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;BUT_read.Parent" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;BUT_read.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;SaveFile.Name" xml:space="preserve">
<value>SaveFile</value>
</data>
<data name="&gt;&gt;SaveFile.Type" xml:space="preserve">
<value>ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;SaveFile.Parent" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;SaveFile.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;BUT_loadwpfile.Name" xml:space="preserve">
<value>BUT_loadwpfile</value>
</data>
<data name="&gt;&gt;BUT_loadwpfile.Type" xml:space="preserve">
<value>ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;BUT_loadwpfile.Parent" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;BUT_loadwpfile.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panel5.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 250</value>
</data>
<data name="panel5.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 114</value>
</data>
<data name="panel5.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="&gt;&gt;panel5.Name" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;panel5.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel5.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel5.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="BUT_write.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -645,30 +714,114 @@
<data name="&gt;&gt;BUT_loadwpfile.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panel5.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 250</value>
</data>
<data name="panel5.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 114</value>
</data>
<data name="panel5.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="&gt;&gt;panel5.Name" xml:space="preserve">
<value>panel5</value>
</data>
<data name="&gt;&gt;panel5.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel5.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel5.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="panel1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="&gt;&gt;label4.Name" xml:space="preserve">
<value>label4</value>
</data>
<data name="&gt;&gt;label4.Type" xml:space="preserve">
<value>System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label4.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;label4.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;label3.Name" xml:space="preserve">
<value>label3</value>
</data>
<data name="&gt;&gt;label3.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label3.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;label2.Name" xml:space="preserve">
<value>label2</value>
</data>
<data name="&gt;&gt;label2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label2.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;label2.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;Label1.Name" xml:space="preserve">
<value>Label1</value>
</data>
<data name="&gt;&gt;Label1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Label1.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;Label1.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;TXT_homealt.Name" xml:space="preserve">
<value>TXT_homealt</value>
</data>
<data name="&gt;&gt;TXT_homealt.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_homealt.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;TXT_homealt.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;TXT_homelng.Name" xml:space="preserve">
<value>TXT_homelng</value>
</data>
<data name="&gt;&gt;TXT_homelng.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_homelng.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;TXT_homelng.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;TXT_homelat.Name" xml:space="preserve">
<value>TXT_homelat</value>
</data>
<data name="&gt;&gt;TXT_homelat.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_homelat.Parent" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;TXT_homelat.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 365</value>
</data>
<data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 89</value>
</data>
<data name="panel1.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
</data>
<data name="&gt;&gt;panel1.Name" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;panel1.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel1.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="label4.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@ -852,27 +1005,6 @@
<data name="&gt;&gt;TXT_homelat.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 365</value>
</data>
<data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>117, 89</value>
</data>
<data name="panel1.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
</data>
<data name="&gt;&gt;panel1.Name" xml:space="preserve">
<value>panel1</value>
</data>
<data name="&gt;&gt;panel1.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel1.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="dataGridViewImageColumn1.HeaderText" xml:space="preserve">
<value>Up</value>
</data>
@ -912,6 +1044,111 @@
<data name="panel2.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
<data name="&gt;&gt;label7.Name" xml:space="preserve">
<value>label7</value>
</data>
<data name="&gt;&gt;label7.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label7.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;label7.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;label8.Name" xml:space="preserve">
<value>label8</value>
</data>
<data name="&gt;&gt;label8.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label8.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;label8.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;label9.Name" xml:space="preserve">
<value>label9</value>
</data>
<data name="&gt;&gt;label9.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label9.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;label9.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label10.Name" xml:space="preserve">
<value>label10</value>
</data>
<data name="&gt;&gt;label10.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label10.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;label10.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;TXT_mousealt.Name" xml:space="preserve">
<value>TXT_mousealt</value>
</data>
<data name="&gt;&gt;TXT_mousealt.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_mousealt.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;TXT_mousealt.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;TXT_mouselong.Name" xml:space="preserve">
<value>TXT_mouselong</value>
</data>
<data name="&gt;&gt;TXT_mouselong.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_mouselong.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;TXT_mouselong.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;TXT_mouselat.Name" xml:space="preserve">
<value>TXT_mouselat</value>
</data>
<data name="&gt;&gt;TXT_mouselat.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TXT_mouselat.Parent" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;TXT_mouselat.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 130</value>
</data>
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>114, 79</value>
</data>
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
<value>38</value>
</data>
<data name="&gt;&gt;panel2.Name" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel2.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="label7.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@ -1095,27 +1332,9 @@
<data name="&gt;&gt;TXT_mouselat.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 130</value>
</data>
<data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>114, 79</value>
</data>
<data name="panel2.TabIndex" type="System.Int32, mscorlib">
<value>38</value>
</data>
<data name="&gt;&gt;panel2.Name" xml:space="preserve">
<value>panel2</value>
</data>
<data name="&gt;&gt;panel2.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panel2.Parent" xml:space="preserve">
<value>panelAction</value>
</data>
<data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>172, 17</value>
</metadata>
<data name="comboBoxMapType.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Right</value>
</data>
@ -1128,9 +1347,6 @@
<data name="comboBoxMapType.TabIndex" type="System.Int32, mscorlib">
<value>42</value>
</data>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>172, 17</value>
</metadata>
<data name="comboBoxMapType.ToolTip" xml:space="preserve">
<value>Change the current map type</value>
</data>
@ -1239,11 +1455,44 @@
<data name="&gt;&gt;splitter1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="BUT_loadkml.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BUT_loadkml.Location" type="System.Drawing.Point, System.Drawing">
<value>800, 25</value>
</data>
<data name="BUT_loadkml.Size" type="System.Drawing.Size, System.Drawing">
<value>58, 23</value>
</data>
<data name="BUT_loadkml.TabIndex" type="System.Int32, mscorlib">
<value>54</value>
</data>
<data name="BUT_loadkml.Text" xml:space="preserve">
<value>KML overlay</value>
</data>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>172, 17</value>
</metadata>
<data name="BUT_loadkml.ToolTip" xml:space="preserve">
<value>Get Camera settings for overlap</value>
</data>
<data name="&gt;&gt;BUT_loadkml.Name" xml:space="preserve">
<value>BUT_loadkml</value>
</data>
<data name="&gt;&gt;BUT_loadkml.Type" xml:space="preserve">
<value>ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;BUT_loadkml.Parent" xml:space="preserve">
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_loadkml.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="BUT_zoomto.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BUT_zoomto.Location" type="System.Drawing.Point, System.Drawing">
<value>746, 26</value>
<value>732, 26</value>
</data>
<data name="BUT_zoomto.Size" type="System.Drawing.Size, System.Drawing">
<value>62, 23</value>
@ -1267,13 +1516,13 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_zoomto.ZOrder" xml:space="preserve">
<value>0</value>
<value>1</value>
</data>
<data name="BUT_Camera.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BUT_Camera.Location" type="System.Drawing.Point, System.Drawing">
<value>692, 26</value>
<value>678, 26</value>
</data>
<data name="BUT_Camera.Size" type="System.Drawing.Size, System.Drawing">
<value>48, 23</value>
@ -1297,13 +1546,13 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_Camera.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="BUT_grid.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BUT_grid.Location" type="System.Drawing.Point, System.Drawing">
<value>638, 26</value>
<value>624, 26</value>
</data>
<data name="BUT_grid.Size" type="System.Drawing.Size, System.Drawing">
<value>48, 23</value>
@ -1327,13 +1576,13 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_grid.ZOrder" xml:space="preserve">
<value>2</value>
<value>3</value>
</data>
<data name="BUT_Prefetch.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="BUT_Prefetch.Location" type="System.Drawing.Point, System.Drawing">
<value>576, 26</value>
<value>562, 26</value>
</data>
<data name="BUT_Prefetch.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 23</value>
@ -1357,7 +1606,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_Prefetch.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="button1.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -1366,7 +1615,7 @@
<value>479, 26</value>
</data>
<data name="button1.Size" type="System.Drawing.Size, System.Drawing">
<value>91, 23</value>
<value>77, 23</value>
</data>
<data name="button1.TabIndex" type="System.Int32, mscorlib">
<value>48</value>
@ -1387,7 +1636,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;button1.ZOrder" xml:space="preserve">
<value>6</value>
<value>7</value>
</data>
<data name="BUT_Add.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -1417,7 +1666,7 @@
<value>panelWaypoints</value>
</data>
<data name="&gt;&gt;BUT_Add.ZOrder" xml:space="preserve">
<value>15</value>
<value>16</value>
</data>
<data name="panelWaypoints.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
@ -1473,6 +1722,105 @@
<data name="&gt;&gt;panelAction.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;lbl_distance.Name" xml:space="preserve">
<value>lbl_distance</value>
</data>
<data name="&gt;&gt;lbl_distance.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lbl_distance.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;lbl_distance.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;lbl_homedist.Name" xml:space="preserve">
<value>lbl_homedist</value>
</data>
<data name="&gt;&gt;lbl_homedist.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lbl_homedist.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;lbl_homedist.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;lbl_prevdist.Name" xml:space="preserve">
<value>lbl_prevdist</value>
</data>
<data name="&gt;&gt;lbl_prevdist.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lbl_prevdist.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;lbl_prevdist.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;MainMap.Name" xml:space="preserve">
<value>MainMap</value>
</data>
<data name="&gt;&gt;MainMap.Type" xml:space="preserve">
<value>GMap.NET.WindowsForms.GMapControl, GMap.NET.WindowsForms, Version=1.5.5.5, Culture=neutral, PublicKeyToken=b85b9027b614afef</value>
</data>
<data name="&gt;&gt;MainMap.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;MainMap.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;trackBar1.Name" xml:space="preserve">
<value>trackBar1</value>
</data>
<data name="&gt;&gt;trackBar1.Type" xml:space="preserve">
<value>ArdupilotMega.MyTrackBar, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=38326cb7e06851fc</value>
</data>
<data name="&gt;&gt;trackBar1.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;trackBar1.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;label11.Name" xml:space="preserve">
<value>label11</value>
</data>
<data name="&gt;&gt;label11.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label11.Parent" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;label11.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="panelMap.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="panelMap.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="panelMap.Size" type="System.Drawing.Size, System.Drawing">
<value>878, 313</value>
</data>
<data name="panelMap.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
</data>
<data name="panelMap.Text" xml:space="preserve">
<value>panel6</value>
</data>
<data name="&gt;&gt;panelMap.Name" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;panelMap.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panelMap.Parent" xml:space="preserve">
<value>panelBASE</value>
</data>
<data name="&gt;&gt;panelMap.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="lbl_distance.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@ -1569,93 +1917,6 @@
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="deleteWPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="deleteWPToolStripMenuItem.Text" xml:space="preserve">
<value>Delete WP</value>
</data>
<data name="loiterForeverToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loiterForeverToolStripMenuItem.Text" xml:space="preserve">
<value>Forever</value>
</data>
<data name="loitertimeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loitertimeToolStripMenuItem.Text" xml:space="preserve">
<value>Time</value>
</data>
<data name="loitercirclesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loitercirclesToolStripMenuItem.Text" xml:space="preserve">
<value>Circles</value>
</data>
<data name="loiterToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="loiterToolStripMenuItem.Text" xml:space="preserve">
<value>Loiter</value>
</data>
<data name="jumpstartToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>102, 22</value>
</data>
<data name="jumpstartToolStripMenuItem.Text" xml:space="preserve">
<value>Start</value>
</data>
<data name="jumpwPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>102, 22</value>
</data>
<data name="jumpwPToolStripMenuItem.Text" xml:space="preserve">
<value>WP #</value>
</data>
<data name="jumpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="jumpToolStripMenuItem.Text" xml:space="preserve">
<value>Jump</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>164, 6</value>
</data>
<data name="ContextMeasure.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="ContextMeasure.Text" xml:space="preserve">
<value>Measure Distance</value>
</data>
<data name="rotateMapToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="rotateMapToolStripMenuItem.Text" xml:space="preserve">
<value>Rotate Map</value>
</data>
<data name="addPolygonPointToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>174, 22</value>
</data>
<data name="addPolygonPointToolStripMenuItem.Text" xml:space="preserve">
<value>Add Polygon Point</value>
</data>
<data name="clearPolygonToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>174, 22</value>
</data>
<data name="clearPolygonToolStripMenuItem.Text" xml:space="preserve">
<value>Clear Polygon</value>
</data>
<data name="gridToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="gridToolStripMenuItem.Text" xml:space="preserve">
<value>Grid Polygon</value>
</data>
<data name="clearMissionToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="clearMissionToolStripMenuItem.Text" xml:space="preserve">
<value>Clear Mission</value>
</data>
<data name="contextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>168, 164</value>
</data>
@ -1831,6 +2092,93 @@
<data name="&gt;&gt;MainMap.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="deleteWPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="deleteWPToolStripMenuItem.Text" xml:space="preserve">
<value>Delete WP</value>
</data>
<data name="loiterToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="loiterToolStripMenuItem.Text" xml:space="preserve">
<value>Loiter</value>
</data>
<data name="loiterForeverToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loiterForeverToolStripMenuItem.Text" xml:space="preserve">
<value>Forever</value>
</data>
<data name="loitertimeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loitertimeToolStripMenuItem.Text" xml:space="preserve">
<value>Time</value>
</data>
<data name="loitercirclesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>113, 22</value>
</data>
<data name="loitercirclesToolStripMenuItem.Text" xml:space="preserve">
<value>Circles</value>
</data>
<data name="jumpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="jumpToolStripMenuItem.Text" xml:space="preserve">
<value>Jump</value>
</data>
<data name="jumpstartToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>102, 22</value>
</data>
<data name="jumpstartToolStripMenuItem.Text" xml:space="preserve">
<value>Start</value>
</data>
<data name="jumpwPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>102, 22</value>
</data>
<data name="jumpwPToolStripMenuItem.Text" xml:space="preserve">
<value>WP #</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>164, 6</value>
</data>
<data name="ContextMeasure.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="ContextMeasure.Text" xml:space="preserve">
<value>Measure Distance</value>
</data>
<data name="rotateMapToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="rotateMapToolStripMenuItem.Text" xml:space="preserve">
<value>Rotate Map</value>
</data>
<data name="gridToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="gridToolStripMenuItem.Text" xml:space="preserve">
<value>Grid Polygon</value>
</data>
<data name="addPolygonPointToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>174, 22</value>
</data>
<data name="addPolygonPointToolStripMenuItem.Text" xml:space="preserve">
<value>Add Polygon Point</value>
</data>
<data name="clearPolygonToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>174, 22</value>
</data>
<data name="clearPolygonToolStripMenuItem.Text" xml:space="preserve">
<value>Clear Polygon</value>
</data>
<data name="clearMissionToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 22</value>
</data>
<data name="clearMissionToolStripMenuItem.Text" xml:space="preserve">
<value>Clear Mission</value>
</data>
<data name="trackBar1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Right</value>
</data>
@ -1894,33 +2242,6 @@
<data name="&gt;&gt;label11.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="panelMap.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="panelMap.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="panelMap.Size" type="System.Drawing.Size, System.Drawing">
<value>878, 313</value>
</data>
<data name="panelMap.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
</data>
<data name="panelMap.Text" xml:space="preserve">
<value>panel6</value>
</data>
<data name="&gt;&gt;panelMap.Name" xml:space="preserve">
<value>panelMap</value>
</data>
<data name="&gt;&gt;panelMap.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panelMap.Parent" xml:space="preserve">
<value>panelBASE</value>
</data>
<data name="&gt;&gt;panelMap.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="panelBASE.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>

View File

@ -34,6 +34,7 @@ namespace ArdupilotMega
bool oldlogformat = false;
byte mavlinkversion = 0;
public byte aptype = 0;
byte[] readingpacket = new byte[256];
public PointLatLngAlt[] wps = new PointLatLngAlt[200];
@ -190,6 +191,7 @@ namespace ArdupilotMega
hb = (MAVLink.__mavlink_heartbeat_t)(temp);
mavlinkversion = hb.mavlink_version;
aptype = hb.type;
sysid = buffer[3];
compid = buffer[4];

View File

@ -79,13 +79,12 @@ namespace ArdupilotMega
GCSViews.Firmware Firmware;
GCSViews.Terminal Terminal;
public void testpython()
{
Console.WriteLine("hello world from c# via python");
}
public MainV2()
{
//new temp().ShowDialog();
//return;
Form splash = new Splash();
splash.Show();
@ -108,10 +107,6 @@ namespace ArdupilotMega
//return;
// preload
Python.CreateEngine();
var t = Type.GetType("Mono.Runtime");
MONO = (t != null);
@ -176,6 +171,9 @@ namespace ArdupilotMega
Simulation = new GCSViews.Simulation();
Firmware = new GCSViews.Firmware();
//Terminal = new GCSViews.Terminal();
// preload
Python.CreateEngine();
}
catch (Exception e) { MessageBox.Show("A Major error has occured : " + e.ToString()); this.Close(); }

View File

@ -34,5 +34,5 @@ using System.Resources;
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.99")]
[assembly: AssemblyFileVersion("1.1.0")]
[assembly: NeutralResourcesLanguageAttribute("")]

View File

@ -121,13 +121,11 @@
this.label44 = new System.Windows.Forms.Label();
this.label43 = new System.Windows.Forms.Label();
this.label42 = new System.Windows.Forms.Label();
this.BUT_HS4save = new ArdupilotMega.MyButton();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.label24 = new System.Windows.Forms.Label();
this.HS4_MIN = new System.Windows.Forms.TextBox();
this.HS4_MAX = new System.Windows.Forms.TextBox();
this.label40 = new System.Windows.Forms.Label();
this.BUT_swash_manual = new ArdupilotMega.MyButton();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.label41 = new System.Windows.Forms.Label();
this.label21 = new System.Windows.Forms.Label();
@ -160,6 +158,8 @@
this.HS2_REV = new System.Windows.Forms.CheckBox();
this.HS1_REV = new System.Windows.Forms.CheckBox();
this.label17 = new System.Windows.Forms.Label();
this.BUT_HS4save = new ArdupilotMega.MyButton();
this.BUT_swash_manual = new ArdupilotMega.MyButton();
this.HS4 = new ArdupilotMega.HorizontalProgressBar2();
this.HS3 = new ArdupilotMega.VerticalProgressBar2();
this.Gservoloc = new AGaugeApp.AGauge();
@ -874,9 +874,7 @@
this.tabHeli.Controls.Add(this.label44);
this.tabHeli.Controls.Add(this.label43);
this.tabHeli.Controls.Add(this.label42);
this.tabHeli.Controls.Add(this.BUT_HS4save);
this.tabHeli.Controls.Add(this.groupBox2);
this.tabHeli.Controls.Add(this.BUT_swash_manual);
this.tabHeli.Controls.Add(this.groupBox1);
this.tabHeli.Controls.Add(this.HS4_TRIM);
this.tabHeli.Controls.Add(this.HS3_TRIM);
@ -903,6 +901,8 @@
this.tabHeli.Controls.Add(this.HS2_REV);
this.tabHeli.Controls.Add(this.HS1_REV);
this.tabHeli.Controls.Add(this.label17);
this.tabHeli.Controls.Add(this.BUT_HS4save);
this.tabHeli.Controls.Add(this.BUT_swash_manual);
this.tabHeli.Controls.Add(this.HS4);
this.tabHeli.Controls.Add(this.HS3);
this.tabHeli.Controls.Add(this.Gservoloc);
@ -959,13 +959,6 @@
resources.ApplyResources(this.label42, "label42");
this.label42.Name = "label42";
//
// BUT_HS4save
//
resources.ApplyResources(this.BUT_HS4save, "BUT_HS4save");
this.BUT_HS4save.Name = "BUT_HS4save";
this.BUT_HS4save.UseVisualStyleBackColor = true;
this.BUT_HS4save.Click += new System.EventHandler(this.BUT_HS4save_Click);
//
// groupBox2
//
this.groupBox2.Controls.Add(this.label24);
@ -1002,13 +995,6 @@
resources.ApplyResources(this.label40, "label40");
this.label40.Name = "label40";
//
// BUT_swash_manual
//
resources.ApplyResources(this.BUT_swash_manual, "BUT_swash_manual");
this.BUT_swash_manual.Name = "BUT_swash_manual";
this.BUT_swash_manual.UseVisualStyleBackColor = true;
this.BUT_swash_manual.Click += new System.EventHandler(this.BUT_swash_manual_Click);
//
// groupBox1
//
this.groupBox1.Controls.Add(this.label41);
@ -1262,6 +1248,20 @@
resources.ApplyResources(this.label17, "label17");
this.label17.Name = "label17";
//
// BUT_HS4save
//
resources.ApplyResources(this.BUT_HS4save, "BUT_HS4save");
this.BUT_HS4save.Name = "BUT_HS4save";
this.BUT_HS4save.UseVisualStyleBackColor = true;
this.BUT_HS4save.Click += new System.EventHandler(this.BUT_HS4save_Click);
//
// BUT_swash_manual
//
resources.ApplyResources(this.BUT_swash_manual, "BUT_swash_manual");
this.BUT_swash_manual.Name = "BUT_swash_manual";
this.BUT_swash_manual.UseVisualStyleBackColor = true;
this.BUT_swash_manual.Click += new System.EventHandler(this.BUT_swash_manual_Click);
//
// HS4
//
this.HS4.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(68)))), ((int)(((byte)(69)))));

View File

@ -544,6 +544,8 @@ namespace ArdupilotMega.Setup
}
catch { MessageBox.Show("Invalid input!"); return; }
TXT_declination.Text = dec.ToString();
MainV2.comPort.setParam("COMPASS_DEC", dec * deg2rad);
}
}
@ -786,11 +788,11 @@ namespace ArdupilotMega.Setup
}
catch (Exception ex) { MainV2.givecomport = false; MessageBox.Show("Invalid Comport Settings : " + ex.Message); return; }
BUT_reset.Text = "Rebooting (20 sec)";
BUT_reset.Text = "Rebooting (60 sec)";
BUT_reset.Refresh();
Application.DoEvents();
Sleep(20000, comPortT); // wait for boot/reset
Sleep(60000, comPortT); // wait for boot/reset
comPortT.DtrEnable = false;

File diff suppressed because it is too large Load Diff

View File

@ -4,14 +4,14 @@
<description asmv2:publisher="Michael Oborne" asmv2:product="ArdupilotMegaPlanner" xmlns="urn:schemas-microsoft-com:asm.v1" />
<deployment install="true" />
<dependency>
<dependentAssembly dependencyType="install" codebase="ArdupilotMegaPlanner.exe.manifest" size="23309">
<dependentAssembly dependencyType="install" codebase="ArdupilotMegaPlanner.exe.manifest" size="25308">
<assemblyIdentity name="ArdupilotMegaPlanner.exe" version="0.0.0.1" publicKeyToken="0000000000000000" language="en-US" processorArchitecture="x86" type="win32" />
<hash>
<dsig:Transforms>
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<dsig:DigestValue>QOAVY4eRCMREZxVv8+wq0bmXS7U=</dsig:DigestValue>
<dsig:DigestValue>gEz+riTnX11Gvx+CG6QPheFVPYU=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>

View File

@ -44,6 +44,7 @@
this.BUT_geinjection = new ArdupilotMega.MyButton();
this.BUT_clearcustommaps = new ArdupilotMega.MyButton();
this.BUT_lang_edit = new ArdupilotMega.MyButton();
this.myButton1 = new ArdupilotMega.MyButton();
this.SuspendLayout();
//
// button1
@ -202,11 +203,22 @@
this.BUT_lang_edit.UseVisualStyleBackColor = true;
this.BUT_lang_edit.Click += new System.EventHandler(this.BUT_lang_edit_Click);
//
// myButton1
//
this.myButton1.Location = new System.Drawing.Point(30, 174);
this.myButton1.Name = "myButton1";
this.myButton1.Size = new System.Drawing.Size(75, 23);
this.myButton1.TabIndex = 17;
this.myButton1.Text = "myButton1";
this.myButton1.UseVisualStyleBackColor = true;
this.myButton1.Click += new System.EventHandler(this.myButton1_Click);
//
// temp
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(731, 281);
this.Controls.Add(this.myButton1);
this.Controls.Add(this.BUT_lang_edit);
this.Controls.Add(this.BUT_clearcustommaps);
this.Controls.Add(this.BUT_geinjection);
@ -249,6 +261,7 @@
private MyButton BUT_geinjection;
private MyButton BUT_clearcustommaps;
private MyButton BUT_lang_edit;
private MyButton myButton1;
//private SharpVectors.Renderers.Forms.SvgPictureBox svgPictureBox1;
}

View File

@ -9,12 +9,14 @@ using System.Text.RegularExpressions;
using System.IO.Ports;
using System.IO;
using System.Runtime.InteropServices;
using System.Net;
using GMap.NET.WindowsForms;
using GMap.NET.CacheProviders;
//using SharpVectors.Renderers.Forms;
//using SharpVectors.Converters;
using OpenGlobe.Core;
using OpenGlobe.Renderer;
using OpenGlobe.Scene;
namespace ArdupilotMega
@ -870,6 +872,217 @@ namespace ArdupilotMega
{
new resedit.Form1().Show();
}
GraphicsWindow _window;
SceneState _sceneState;
CameraLookAtPoint _lookCamera;
CameraFly _flyCamera;
ClearState _clearState;
GlobeClipmapTerrain _clipmap;
HeadsUpDisplay _hud;
Font _hudFont;
RayCastedGlobe _globe;
ClearState _clearDepth;
Ellipsoid _ellipsoid;
private void myButton1_Click(object sender, EventArgs e)
{
_window = Device.CreateWindow(800, 600, "Chapter 13: Clipmap Terrain on a Globe");
_ellipsoid = Ellipsoid.Wgs84;
WorldWindTerrainSource terrainSource = new WorldWindTerrainSource();
GMapRestImagery imagery = new GMapRestImagery();
_clipmap = new GlobeClipmapTerrain(_window.Context, terrainSource, imagery, _ellipsoid, 511);
_clipmap.HeightExaggeration = 1.0f;
IList<GridResolution> gridResolutions = new List<GridResolution>();
gridResolutions.Add(new GridResolution(
new Interval(0, 1000000, IntervalEndpoint.Closed, IntervalEndpoint.Open),
new Vector2D(0.005, 0.005)));
gridResolutions.Add(new GridResolution(
new Interval(1000000, 2000000, IntervalEndpoint.Closed, IntervalEndpoint.Open),
new Vector2D(0.01, 0.01)));
gridResolutions.Add(new GridResolution(
new Interval(2000000, 20000000, IntervalEndpoint.Closed, IntervalEndpoint.Open),
new Vector2D(0.05, 0.05)));
gridResolutions.Add(new GridResolution(
new Interval(20000000, double.MaxValue, IntervalEndpoint.Closed, IntervalEndpoint.Open),
new Vector2D(0.1, 0.1)));
_sceneState = new SceneState();
_sceneState.DiffuseIntensity = 0.90f;
_sceneState.SpecularIntensity = 0.05f;
_sceneState.AmbientIntensity = 0.05f;
_sceneState.Camera.FieldOfViewY = Math.PI / 3.0;
_clearState = new ClearState();
_clearState.Color = Color.White;
_sceneState.Camera.PerspectiveNearPlaneDistance = 0.000001 * _ellipsoid.MaximumRadius;
_sceneState.Camera.PerspectiveFarPlaneDistance = 10.0 * _ellipsoid.MaximumRadius;
_sceneState.SunPosition = new Vector3D(200000, 300000, 200000) * _ellipsoid.MaximumRadius;
_lookCamera = new CameraLookAtPoint(_sceneState.Camera, _window, _ellipsoid);
_lookCamera.Range = 1.5 * _ellipsoid.MaximumRadius;
_globe = new RayCastedGlobe(_window.Context);
_globe.Shape = _ellipsoid;
Bitmap bitmap = new Bitmap("NE2_50M_SR_W_4096.jpg");
_globe.Texture = Device.CreateTexture2D(bitmap, TextureFormat.RedGreenBlue8, false);
//_globe.GridResolutions = new GridResolutionCollection(gridResolutions);
_clearDepth = new ClearState();
_clearDepth.Buffers = ClearBuffers.DepthBuffer | ClearBuffers.StencilBuffer;
//_window.Keyboard.KeyDown += OnKeyDown;
_window.Resize += OnResize;
_window.RenderFrame += OnRenderFrame;
_window.PreRenderFrame += OnPreRenderFrame;
_hudFont = new Font("Arial", 16);
_hud = new HeadsUpDisplay();
_hud.Color = Color.Blue;
//_flyCamera = new CameraFly(_sceneState.Camera, _window);
//_flyCamera.MovementRate = 1200.0;
//_flyCamera.InputEnabled = true;
_sceneState.Camera.Target = new Vector3D(115, -35, 100.0);
_window.Run(30);
}
private void OnResize()
{
_window.Context.Viewport = new Rectangle(0, 0, _window.Width, _window.Height);
_sceneState.Camera.AspectRatio = _window.Width / (double)_window.Height;
}
private void OnRenderFrame()
{
Context context = _window.Context;
context.Clear(_clearState);
_globe.Render(context, _sceneState);
context.Clear(_clearDepth);
_clipmap.Render(context, _sceneState);
//_sceneState.Camera.Target = new Vector3D(115000, -350000, 100000.0);
if (_hud != null)
{
//_hud.Render(context, _sceneState);
}
}
private void OnPreRenderFrame()
{
Context context = _window.Context;
_clipmap.PreRender(context, _sceneState);
}
}
public class GMapRestImagery : RasterSource
{
GMapControl MainMap;
public GMapRestImagery()
{
//_baseUri = baseUri;
_levels = new RasterLevel[NumberOfLevels];
_levelsCollection = new RasterLevelCollection(_levels);
double deltaLongitude = LevelZeroDeltaLongitudeDegrees;
double deltaLatitude = LevelZeroDeltaLatitudeDegrees;
for (int i = 0; i < _levels.Length; ++i)
{
int longitudePosts = (int)Math.Round(360.0 / deltaLongitude) * TileLongitudePosts + 1;
int latitudePosts = (int)Math.Round(180 / deltaLatitude) * TileLatitudePosts + 1;
_levels[i] = new RasterLevel(this, i, _extent, longitudePosts, latitudePosts, TileLongitudePosts, TileLatitudePosts);
deltaLongitude /= 2.0;
deltaLatitude /= 2.0;
}
MainMap = new GMapControl();
MainMap.MapType = GMap.NET.MapType.GoogleSatellite;
MainMap.CacheLocation = Path.GetDirectoryName(Application.ExecutablePath) + "/gmapcache/";
}
public override GeodeticExtent Extent
{
get { return _extent; }
}
public int TileLongitudePosts
{
get { return 256; }
}
public int TileLatitudePosts
{
get { return 256; }
}
public override RasterLevelCollection Levels
{
get { return _levelsCollection; }
}
public override Texture2D LoadTileTexture(RasterTileIdentifier identifier)
{
//if (identifier.Level > 4)
//return null;
int level = identifier.Level; // 0 is -180 long
int longitudeIndex = ((_levels[level].LongitudePosts / _levels[level].LongitudePostsPerTile) / 2 / 2) + identifier.X; // (_levels[level].LongitudePosts / _levels[level].LongitudePostsPerTile) -
int latitudeIndex = identifier.Y; // (_levels[level].LatitudePosts / _levels[level].LatitudePostsPerTile) -
int damn = (1 << level) - latitudeIndex - 1;
Console.WriteLine(" z {0} lat {1} lon {2} ", level, damn, longitudeIndex);
GMap.NET.PureImage img = MainMap.Manager.ImageCacheLocal.GetImageFromCache(GMap.NET.MapType.GoogleSatellite, new GMap.NET.GPoint(longitudeIndex, damn), level);
Application.DoEvents();
try
{
Bitmap bitmap = new Bitmap(new Bitmap(img.Data), 256, 256);
Graphics e = Graphics.FromImage(bitmap);
e.DrawString(level + " " +longitudeIndex + "," + damn, new Font("Arial", 20), Brushes.White, new PointF(0, 0));
return Device.CreateTexture2DRectangle(bitmap, TextureFormat.RedGreenBlue8);
}
catch {
try
{
return null;
}
catch { return null; }
}
}
private Uri _baseUri;
private GeodeticExtent _extent = new GeodeticExtent(-0, -90, 360, 90);
private int _tilesLoaded;
private RasterLevel[] _levels;
private RasterLevelCollection _levelsCollection;
private const int NumberOfLevels = 20;
private const double LevelZeroDeltaLongitudeDegrees = 180;
private const double LevelZeroDeltaLatitudeDegrees = 180;
}
}