private void but_getfw_Click(object sender, EventArgs e) { var basedir = Settings.GetDataDirectory() + "History"; Directory.CreateDirectory(basedir); var fw = new Firmware(); var list = fw.getFWList(); var options = new optionsObject(); options.softwares = list; var members = typeof(software).GetFields(); XmlWriterSettings settings = new XmlWriterSettings(); settings.IndentChars = " "; settings.Indent = true; settings.Encoding = Encoding.ASCII; using (var xmlwriter = XmlWriter.Create(basedir + Path.DirectorySeparatorChar + @"firmware2.xml", settings)) { for (int a = 0; a < options.softwares.Count; a++) { Loading.ShowLoading(((a - 1) / (float)list.Count) * 100.0 + "% " + options.softwares[a].name, this); List <Task <bool> > tasklist = new List <Task <bool> >(); foreach (var field in members) { if (field.Name.ToLower().Contains("url")) { var url = field.GetValue(options.softwares[a]).ToString(); if (String.IsNullOrEmpty(url)) { continue; } field.SetValue(options.softwares[a], new Uri(url).LocalPath.TrimStart('/', '\\')); var task = Download.getFilefromNetAsync(url, basedir + new Uri(url).LocalPath); tasklist.Add(task); } } //Task.WaitAll(tasklist.ToArray()); } XmlSerializer xms = new XmlSerializer(typeof(optionsObject), new Type[] { typeof(software) }); xms.Serialize(xmlwriter, options); } Loading.Close(); }
private void but_getfw_Click(object sender, EventArgs e) { var basedir = Settings.GetDataDirectory() + "History"; Directory.CreateDirectory(basedir); var fw = new Firmware(); var list = fw.getFWList(); using ( var xmlwriter = new XmlTextWriter(basedir + Path.DirectorySeparatorChar + @"firmware2.xml", Encoding.ASCII)) { xmlwriter.Formatting = Formatting.Indented; xmlwriter.WriteStartDocument(); xmlwriter.WriteStartElement("options"); int a = 0; foreach (var software in list) { a++; Loading.ShowLoading(((a - 1) / (float)list.Count) * 100.0 + "% " + software.name, this); //if (!software.name.Contains("Copter")) // continue; xmlwriter.WriteStartElement("Firmware"); if (software.url != "") { xmlwriter.WriteElementString("url", new Uri(software.url).LocalPath.TrimStart('/', '\\')); } if (software.url2560 != "") { xmlwriter.WriteElementString("url2560", new Uri(software.url2560).LocalPath.TrimStart('/', '\\')); } if (software.url2560_2 != "") { xmlwriter.WriteElementString("url2560-2", new Uri(software.url2560_2).LocalPath.TrimStart('/', '\\')); } if (software.urlpx4v1 != "") { xmlwriter.WriteElementString("urlpx4", new Uri(software.urlpx4v1).LocalPath.TrimStart('/', '\\')); } if (software.urlpx4v2 != "") { xmlwriter.WriteElementString("urlpx4v2", new Uri(software.urlpx4v2).LocalPath.TrimStart('/', '\\')); } if (software.urlpx4v4 != "") { xmlwriter.WriteElementString("urlpx4v4", new Uri(software.urlpx4v4).LocalPath.TrimStart('/', '\\')); } if (software.urlpx4v4pro != "") { xmlwriter.WriteElementString("urlpx4v4pro", new Uri(software.urlpx4v4pro).LocalPath.TrimStart('/', '\\')); } if (software.urlvrbrainv40 != "") { xmlwriter.WriteElementString("urlvrbrainv40", new Uri(software.urlvrbrainv40).LocalPath.TrimStart('/', '\\')); } if (software.urlvrbrainv45 != "") { xmlwriter.WriteElementString("urlvrbrainv45", new Uri(software.urlvrbrainv45).LocalPath.TrimStart('/', '\\')); } if (software.urlvrbrainv50 != "") { xmlwriter.WriteElementString("urlvrbrainv50", new Uri(software.urlvrbrainv50).LocalPath.TrimStart('/', '\\')); } if (software.urlvrbrainv51 != "") { xmlwriter.WriteElementString("urlvrbrainv51", new Uri(software.urlvrbrainv51).LocalPath.TrimStart('/', '\\')); } if (software.urlvrbrainv52 != "") { xmlwriter.WriteElementString("urlvrbrainv52", new Uri(software.urlvrbrainv52).LocalPath.TrimStart('/', '\\')); } if (software.urlvrcorev10 != "") { xmlwriter.WriteElementString("urlvrcorev10", new Uri(software.urlvrcorev10).LocalPath.TrimStart('/', '\\')); } if (software.urlvrubrainv51 != "") { xmlwriter.WriteElementString("urlvrubrainv51", new Uri(software.urlvrubrainv51).LocalPath.TrimStart('/', '\\')); } if (software.urlvrubrainv52 != "") { xmlwriter.WriteElementString("urlvrubrainv52", new Uri(software.urlvrubrainv52).LocalPath.TrimStart('/', '\\')); } if (software.urlbebop2 != "") { xmlwriter.WriteElementString("urlbebop2", new Uri(software.urlbebop2).LocalPath.TrimStart('/', '\\')); } if (software.urldisco != "") { xmlwriter.WriteElementString("urldisco", new Uri(software.urldisco).LocalPath.TrimStart('/', '\\')); } xmlwriter.WriteElementString("name", software.name); xmlwriter.WriteElementString("desc", software.desc); xmlwriter.WriteElementString("format_version", software.k_format_version.ToString()); xmlwriter.WriteEndElement(); if (software.url != "") { Download.getFilefromNet(software.url, basedir + new Uri(software.url).LocalPath); } if (software.url2560 != "") { Download.getFilefromNet(software.url2560, basedir + new Uri(software.url2560).LocalPath); } if (software.url2560_2 != "") { Download.getFilefromNet(software.url2560_2, basedir + new Uri(software.url2560_2).LocalPath); } if (software.urlpx4v1 != "") { Download.getFilefromNet(software.urlpx4v1, basedir + new Uri(software.urlpx4v1).LocalPath); } if (software.urlpx4v2 != "") { Download.getFilefromNet(software.urlpx4v2, basedir + new Uri(software.urlpx4v2).LocalPath); } if (software.urlpx4v4 != "") { Download.getFilefromNet(software.urlpx4v4, basedir + new Uri(software.urlpx4v4).LocalPath); } if (software.urlpx4v4pro != "") { Download.getFilefromNet(software.urlpx4v4pro, basedir + new Uri(software.urlpx4v4pro).LocalPath); } if (software.urlvrbrainv40 != "") { Download.getFilefromNet(software.urlvrbrainv40, basedir + new Uri(software.urlvrbrainv40).LocalPath); } if (software.urlvrbrainv45 != "") { Download.getFilefromNet(software.urlvrbrainv45, basedir + new Uri(software.urlvrbrainv45).LocalPath); } if (software.urlvrbrainv50 != "") { Download.getFilefromNet(software.urlvrbrainv50, basedir + new Uri(software.urlvrbrainv50).LocalPath); } if (software.urlvrbrainv51 != "") { Download.getFilefromNet(software.urlvrbrainv51, basedir + new Uri(software.urlvrbrainv51).LocalPath); } if (software.urlvrbrainv52 != "") { Download.getFilefromNet(software.urlvrbrainv52, basedir + new Uri(software.urlvrbrainv52).LocalPath); } if (software.urlvrcorev10 != "") { Download.getFilefromNet(software.urlvrcorev10, basedir + new Uri(software.urlvrcorev10).LocalPath); } if (software.urlvrubrainv51 != "") { Download.getFilefromNet(software.urlvrubrainv51, basedir + new Uri(software.urlvrubrainv51).LocalPath); } if (software.urlvrubrainv52 != "") { Download.getFilefromNet(software.urlvrubrainv52, basedir + new Uri(software.urlvrubrainv52).LocalPath); } if (software.urlbebop2 != "") { Download.getFilefromNet(software.urlbebop2, basedir + new Uri(software.urlbebop2).LocalPath); } if (software.urldisco != "") { Download.getFilefromNet(software.urldisco, basedir + new Uri(software.urldisco).LocalPath); } } xmlwriter.WriteEndElement(); xmlwriter.WriteEndDocument(); } Loading.Close(); }
public static void Start(string[] args) { Program.args = args; Console.WriteLine( "If your error is about Microsoft.DirectX.DirectInput, please install the latest directx redist from here http://www.microsoft.com/en-us/download/details.aspx?id=35 \n\n"); Console.WriteLine("Debug under mono MONO_LOG_LEVEL=debug mono MissionPlanner.exe"); Console.WriteLine("To fix any filename case issues under mono use export MONO_IOMAP=drive:case"); Console.WriteLine("Data Dir " + Settings.GetDataDirectory()); Console.WriteLine("Log Dir " + Settings.GetDefaultLogDir()); Console.WriteLine("Running Dir " + Settings.GetRunningDirectory()); Console.WriteLine("User Data Dir " + Settings.GetUserDataDirectory()); var t = Type.GetType("Mono.Runtime"); MONO = (t != null); Directory.SetCurrentDirectory(Settings.GetRunningDirectory()); var listener = new TextWriterTraceListener(Settings.GetDataDirectory() + Path.DirectorySeparatorChar + "trace.log", "defaulttrace"); if (args.Any(a => a.Contains("trace"))) { Trace.Listeners.Add(listener); } Thread = Thread.CurrentThread; System.Windows.Forms.Application.EnableVisualStyles(); XmlConfigurator.Configure(LogManager.GetRepository(Assembly.GetCallingAssembly())); log.Info("******************* Logging Configured *******************"); ServicePointManager.DefaultConnectionLimit = 10; System.Windows.Forms.Application.ThreadException += Application_ThreadException; if (args.Length > 0 && args[0] == "/update") { Utilities.Update.DoUpdate(); return; } name = "Mission Planner"; try { if (File.Exists(Settings.GetRunningDirectory() + "logo.txt")) { name = File.ReadAllLines(Settings.GetRunningDirectory() + "logo.txt", Encoding.UTF8)[0]; } } catch { } if (File.Exists(Settings.GetRunningDirectory() + "logo.png")) { Logo = new Bitmap(Settings.GetRunningDirectory() + "logo.png"); } if (File.Exists(Settings.GetRunningDirectory() + "logo2.png")) { Logo2 = new Bitmap(Settings.GetRunningDirectory() + "logo2.png"); } if (File.Exists(Settings.GetRunningDirectory() + "icon.png")) { // 128*128 IconFile = new Bitmap(Settings.GetRunningDirectory() + "icon.png"); } else { IconFile = MissionPlanner.Properties.Resources.mpdesktop.ToBitmap(); } if (File.Exists(Settings.GetRunningDirectory() + "splashbg.png")) // 600*375 { SplashBG = new Bitmap(Settings.GetRunningDirectory() + "splashbg.png"); } try { var file = NativeLibrary.GetLibraryPathname("libSkiaSharp"); var ptr = NativeLibrary.LoadLibrary(file); if (ptr != IntPtr.Zero) { log.Info("SkiaLoaded"); } } catch (Exception ex) { log.Error(ex); } Splash = new MissionPlanner.Splash(); if (SplashBG != null) { Splash.BackgroundImage = SplashBG; Splash.pictureBox1.Visible = false; } if (IconFile != null) { Splash.Icon = Icon.FromHandle(((Bitmap)IconFile).GetHicon()); } string strVersion = File.Exists("version.txt") ? File.ReadAllText("version.txt") : System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); Splash.Text = name + " " + Application.ProductVersion + " build " + strVersion; Splash.Show(); if (Debugger.IsAttached) { Splash.TopMost = false; } Application.DoEvents(); Application.DoEvents(); CustomMessageBox.ShowEvent += (text, caption, buttons, icon, yestext, notext) => { return((CustomMessageBox.DialogResult)(int) MsgBox.CustomMessageBox.Show(text, caption, (MessageBoxButtons)(int)buttons, (MessageBoxIcon)(int)icon, yestext, notext)); }; // setup theme provider MsgBox.CustomMessageBox.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.MainSwitcher.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; MissionPlanner.Controls.InputBox.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.BackstageView.BackstageViewPage.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.MainSwitcher.Tracking += MissionPlanner.Utilities.Tracking.AddPage; Controls.BackstageView.BackstageView.Tracking += MissionPlanner.Utilities.Tracking.AddPage; // setup settings provider MissionPlanner.Comms.CommsBase.Settings += CommsBase_Settings; MissionPlanner.Comms.CommsBase.InputBoxShow += CommsBaseOnInputBoxShow; MissionPlanner.Comms.CommsBase.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; MissionPlanner.Comms.SerialPort.GetDeviceName += SerialPort_GetDeviceName; MissionPlanner.Utilities.Extensions.MessageLoop = new Action(() => Application.DoEvents()); // set the cache provider to my custom version GMap.NET.GMaps.Instance.PrimaryCache = new Maps.MyImageCache(); // add my custom map providers GMap.NET.MapProviders.GMapProviders.List.Add(Maps.WMSProvider.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Custom.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Earthbuilder.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Statkart_Topo2.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Eniro_Topo.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.MapBox.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.MapboxNoFly.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.MapboxUser.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Lake.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1974.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1979.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1984.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1988.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Relief.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Slopezone.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Sea.Instance); GoogleMapProvider.APIKey = "AIzaSyA5nFp39fEHruCezXnG3r8rGyZtuAkmCug"; if (Settings.Instance["GoogleApiKey"] != null) { GoogleMapProvider.APIKey = Settings.Instance["GoogleApiKey"]; } Tracking.productName = Application.ProductName; Tracking.productVersion = Application.ProductVersion; Tracking.currentCultureName = Application.CurrentCulture.Name; Tracking.primaryScreenBitsPerPixel = Screen.PrimaryScreen.BitsPerPixel; Tracking.boundsWidth = Screen.PrimaryScreen.Bounds.Width; Tracking.boundsHeight = Screen.PrimaryScreen.Bounds.Height; Settings.Instance.UserAgent = Application.ProductName + " " + Application.ProductVersion + " (" + Environment.OSVersion.VersionString + ")"; // optionally add gdal support if (Directory.Exists(Application.StartupPath + Path.DirectorySeparatorChar + "gdal")) { GMap.NET.MapProviders.GMapProviders.List.Add(GDAL.GDALProvider.Instance); } // add proxy settings GMap.NET.MapProviders.GMapProvider.WebProxy = WebRequest.GetSystemWebProxy(); GMap.NET.MapProviders.GMapProvider.WebProxy.Credentials = CredentialCache.DefaultCredentials; // generic status report screen MAVLinkInterface.CreateIProgressReporterDialogue += title => new ProgressReporterDialogue() { StartPosition = FormStartPosition.CenterScreen, Text = title }; WebRequest.DefaultWebProxy = WebRequest.GetSystemWebProxy(); WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials; if (name == "VVVVZ") { // set pw Settings.Instance["password"] = "******"; Settings.Instance["password_protect"] = "True"; // prevent wizard Settings.Instance["newuser"] = "******"; // invalidate update url System.Configuration.ConfigurationManager.AppSettings["UpdateLocationVersion"] = ""; } CleanupFiles(); log.InfoFormat("64bit os {0}, 64bit process {1}, OS Arch {2}", System.Environment.Is64BitOperatingSystem, System.Environment.Is64BitProcess, RuntimeInformation.OSArchitecture); log.InfoFormat("Runtime Version {0}", System.Reflection.Assembly.GetExecutingAssembly().ImageRuntimeVersion); try { log.Info(Process.GetCurrentProcess().Modules.ToJSON()); } catch { } Type type = Type.GetType("Mono.Runtime"); if (type != null) { MethodInfo displayName = type.GetMethod("GetDisplayName", BindingFlags.NonPublic | BindingFlags.Static); if (displayName != null) { log.Info(displayName.Invoke(null, null)); //6.6.0.161 (tarball Tue Dec 10 10:36:32 UTC 2019) var match = Regex.Match(displayName.Invoke(null, null).ToString(), @"([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)"); if (match.Success) { if (int.Parse(match.Groups[1].Value) < 6) { CustomMessageBox.Show( "Please upgrade your mono version to 6+ https://www.mono-project.com/download/stable/"); } } } } try { Thread.CurrentThread.Name = "Base Thread"; Application.Run(new MainV2()); } catch (Exception ex) { log.Fatal("Fatal app exception", ex); Console.WriteLine(ex.ToString()); Console.WriteLine("\nPress any key to exit!"); Console.ReadLine(); } try { // kill sim background process if its still running GCSViews.SITL.simulator.ForEach(a => { try { a.Kill(); } catch { } }); } catch { } }
private void BUT_geinjection_Click(object sender, EventArgs e) { var MainMap = new GMapControl(); MainMap.MapProvider = GoogleSatelliteMapProvider.Instance; MainMap.CacheLocation = Settings.GetDataDirectory() + "gmapcache" + Path.DirectorySeparatorChar; var fbd = new FolderBrowserDialog(); try { fbd.SelectedPath = @"C:\Users\hog\Documents\albany 2011\New folder"; } catch { } if (fbd.ShowDialog() != DialogResult.OK) { return; } if (fbd.SelectedPath != "") { var files = Directory.GetFiles(fbd.SelectedPath, "*.jpg", SearchOption.AllDirectories); var files1 = Directory.GetFiles(fbd.SelectedPath, "*.png", SearchOption.AllDirectories); var origlength = files.Length; Array.Resize(ref files, origlength + files1.Length); Array.Copy(files1, 0, files, origlength, files1.Length); foreach (var file in files) { log.Info(DateTime.Now.Millisecond + " Doing " + file); var reg = new Regex(@"Z([0-9]+)\\([0-9]+)\\([0-9]+)"); var mat = reg.Match(file); if (mat.Success == false) { continue; } var temp = 1 << int.Parse(mat.Groups[1].Value); var pnt = new GPoint(int.Parse(mat.Groups[3].Value), int.Parse(mat.Groups[2].Value)); BUT_geinjection.Text = file; BUT_geinjection.Refresh(); //MainMap.Projection. var tile = new MemoryStream(); var Img = Image.FromFile(file); Img.Save(tile, ImageFormat.Jpeg); tile.Seek(0, SeekOrigin.Begin); log.Info(pnt.X + " " + pnt.Y); Application.DoEvents(); GMaps.Instance.PrimaryCache.PutImageToCache(tile.GetBuffer(), Custom.Instance.DbId, pnt, int.Parse(mat.Groups[1].Value)); // Application.DoEvents(); } } MainMap.Dispose(); }
public static void Start(string[] args) { Program.args = args; Console.WriteLine( "If your error is about Microsoft.DirectX.DirectInput, please install the latest directx redist from here http://www.microsoft.com/en-us/download/details.aspx?id=35 \n\n"); Console.WriteLine("Debug under mono MONO_LOG_LEVEL=debug mono MissionPlanner.exe"); Console.WriteLine("Data Dir " + Settings.GetDataDirectory()); Console.WriteLine("Log Dir " + Settings.GetDefaultLogDir()); Console.WriteLine("Running Dir " + Settings.GetRunningDirectory()); Console.WriteLine("User Data Dir " + Settings.GetUserDataDirectory()); var t = Type.GetType("Mono.Runtime"); MONO = (t != null); Thread = Thread.CurrentThread; System.Windows.Forms.Application.EnableVisualStyles(); XmlConfigurator.Configure(); log.Info("******************* Logging Configured *******************"); ServicePointManager.DefaultConnectionLimit = 10; System.Windows.Forms.Application.ThreadException += Application_ThreadException; // fix ssl on mono ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback( (sender, certificate, chain, policyErrors) => { return(true); }); if (args.Length > 0 && args[0] == "/update") { Utilities.Update.DoUpdate(); return; } name = "Mission Planner"; try { if (File.Exists(Settings.GetRunningDirectory() + "logo.txt")) { name = File.ReadAllLines(Settings.GetRunningDirectory() + "logo.txt", Encoding.UTF8)[0]; } } catch { } if (File.Exists(Settings.GetRunningDirectory() + "logo.png")) { Logo = new Bitmap(Settings.GetRunningDirectory() + "logo.png"); } if (File.Exists(Settings.GetRunningDirectory() + "logo2.png")) { Logo2 = new Bitmap(Settings.GetRunningDirectory() + "logo2.png"); } if (File.Exists(Settings.GetRunningDirectory() + "icon.png")) { // 128*128 IconFile = new Bitmap(Settings.GetRunningDirectory() + "icon.png"); } else { IconFile = MissionPlanner.Properties.Resources.mpdesktop.ToBitmap(); } if (File.Exists(Settings.GetRunningDirectory() + "splashbg.png")) // 600*375 { SplashBG = new Bitmap(Settings.GetRunningDirectory() + "splashbg.png"); } Splash = new MissionPlanner.Splash(); if (SplashBG != null) { Splash.BackgroundImage = SplashBG; Splash.pictureBox1.Visible = false; } if (IconFile != null) { Splash.Icon = Icon.FromHandle(((Bitmap)IconFile).GetHicon()); } string strVersion = File.Exists("version.txt") ? File.ReadAllText("version.txt") : System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); Splash.Text = name + " " + Application.ProductVersion + " build " + strVersion; Splash.Show(); Application.DoEvents(); Application.DoEvents(); CustomMessageBox.ShowEvent += (text, caption, buttons, icon) => { return((CustomMessageBox.DialogResult)(int) MsgBox.CustomMessageBox.Show(text, caption, (MessageBoxButtons)(int)buttons, (MessageBoxIcon)(int)icon)); }; // setup theme provider MsgBox.CustomMessageBox.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.MainSwitcher.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; MissionPlanner.Controls.InputBox.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.BackstageView.BackstageViewPage.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; Controls.MainSwitcher.Tracking += MissionPlanner.Utilities.Tracking.AddPage; Controls.BackstageView.BackstageView.Tracking += MissionPlanner.Utilities.Tracking.AddPage; // setup settings provider MissionPlanner.Comms.CommsBase.Settings += CommsBase_Settings; MissionPlanner.Comms.CommsBase.InputBoxShow += CommsBaseOnInputBoxShow; MissionPlanner.Comms.CommsBase.ApplyTheme += MissionPlanner.Utilities.ThemeManager.ApplyThemeTo; // set the cache provider to my custom version GMap.NET.GMaps.Instance.PrimaryCache = new Maps.MyImageCache(); // add my custom map providers GMap.NET.MapProviders.GMapProviders.List.Add(Maps.WMSProvider.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Custom.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Earthbuilder.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Statkart_Topo2.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Eniro_Topo.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.MapBox.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.MapboxNoFly.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Lake.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1974.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1979.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1984.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_1988.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Relief.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Slopezone.Instance); GMap.NET.MapProviders.GMapProviders.List.Add(Maps.Japan_Sea.Instance); GoogleMapProvider.APIKey = "AIzaSyA5nFp39fEHruCezXnG3r8rGyZtuAkmCug"; // optionally add gdal support if (Directory.Exists(Application.StartupPath + Path.DirectorySeparatorChar + "gdal")) { GMap.NET.MapProviders.GMapProviders.List.Add(GDAL.GDALProvider.Instance); } // add proxy settings GMap.NET.MapProviders.GMapProvider.WebProxy = WebRequest.GetSystemWebProxy(); GMap.NET.MapProviders.GMapProvider.WebProxy.Credentials = CredentialCache.DefaultCredentials; // generic status report screen MAVLinkInterface.CreateIProgressReporterDialogue += title => new ProgressReporterDialogue() { StartPosition = FormStartPosition.CenterScreen, Text = title }; WebRequest.DefaultWebProxy = WebRequest.GetSystemWebProxy(); WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials; if (name == "VVVVZ") { // set pw Settings.Instance["password"] = "******"; Settings.Instance["password_protect"] = "True"; // prevent wizard Settings.Instance["newuser"] = "******"; // invalidate update url System.Configuration.ConfigurationManager.AppSettings["UpdateLocationVersion"] = ""; } CleanupFiles(); //LoadDlls(); log.InfoFormat("64bit os {0}, 64bit process {1}", System.Environment.Is64BitOperatingSystem, System.Environment.Is64BitProcess); Device.DeviceStructure test1 = new Device.DeviceStructure(73225); Device.DeviceStructure test2 = new Device.DeviceStructure(262434); Device.DeviceStructure test3 = new Device.DeviceStructure(131874); //ph2 - cube with here Device.DeviceStructure test5 = new Device.DeviceStructure(466441); Device.DeviceStructure test6 = new Device.DeviceStructure(131874); Device.DeviceStructure test7 = new Device.DeviceStructure(263178); // Device.DeviceStructure test8 = new Device.DeviceStructure(1442082); Device.DeviceStructure test9 = new Device.DeviceStructure(1114914); Device.DeviceStructure test10 = new Device.DeviceStructure(1442826); // Device.DeviceStructure test11 = new Device.DeviceStructure(2359586); Device.DeviceStructure test12 = new Device.DeviceStructure(2229282); Device.DeviceStructure test13 = new Device.DeviceStructure(2360330); Device.DeviceStructure test21 = new Device.DeviceStructure(592905); Device.DeviceStructure test22 = new Device.DeviceStructure(131874); Device.DeviceStructure test23 = new Device.DeviceStructure(263178); MAVLink.MavlinkParse tmp = new MAVLink.MavlinkParse(); MAVLink.mavlink_heartbeat_t hb = new MAVLink.mavlink_heartbeat_t() { autopilot = 1, base_mode = 2, custom_mode = 3, mavlink_version = 2, system_status = 6, type = 7 }; var t1 = tmp.GenerateMAVLinkPacket10(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb); var t2 = tmp.GenerateMAVLinkPacket20(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb); tmp.GenerateMAVLinkPacket10(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb); tmp.GenerateMAVLinkPacket20(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb); tmp.GenerateMAVLinkPacket20(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb, true); tmp.GenerateMAVLinkPacket20(MAVLink.MAVLINK_MSG_ID.HEARTBEAT, hb, true); var msg = new MAVLink.MAVLinkMessage(t2); try { //System.Diagnostics.Process.GetCurrentProcess().PriorityClass = System.Diagnostics.ProcessPriorityClass.RealTime; Thread.CurrentThread.Name = "Base Thread"; Application.Run(new MainV2()); } catch (Exception ex) { log.Fatal("Fatal app exception", ex); Console.WriteLine(ex.ToString()); Console.WriteLine("\nPress any key to exit!"); Console.ReadLine(); } try { // kill sim background process if its still running if (Controls.SITL.simulator != null) { Controls.SITL.simulator.Kill(); } } catch { } }
private void xmlaircraft(string filename = "aircraft.xml") { try { using (XmlTextReader xmlreader = new XmlTextReader(Settings.GetDataDirectory() + filename)) { while (xmlreader.Read()) { xmlreader.MoveToElement(); try { switch (xmlreader.Name) { case "Vehicle": { aircraftinfo aircraft = new aircraftinfo(); while (xmlreader.Read()) { bool dobreak = false; xmlreader.MoveToElement(); switch (xmlreader.Name) { case "name": aircraft.name = xmlreader.ReadString(); break; case "turn_rad_m": aircraft.turnrad = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "min_alt_m": aircraft.minalt = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "max_alt_m": aircraft.maxalt = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "min_vel_ms": aircraft.minvel = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "max_vel_ms": aircraft.maxvel = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "Vehicle": aircrafts[aircraft.name] = aircraft; dobreak = true; break; } if (dobreak) { break; } } string temp = xmlreader.ReadString(); } break; case "xml": break; default: break; } } catch (Exception ee) { Console.WriteLine(ee.Message); } // silent fail on bad entry } } } catch (Exception ex) { Console.WriteLine("Bad Aircraft File: " + ex.ToString()); } // bad config file // populate list foreach (var aircraft in aircrafts.Values) { if (!CMB_aircraft.Items.Contains(aircraft.name)) { CMB_aircraft.Items.Add(aircraft.name); } } }
private void xmlcamera(bool write, string filename) { bool exists = File.Exists(filename); if (write || !exists) { try { XmlTextWriter xmlwriter = new XmlTextWriter(filename, Encoding.ASCII); xmlwriter.Formatting = Formatting.Indented; xmlwriter.WriteStartDocument(); xmlwriter.WriteStartElement("Cameras"); foreach (string key in cameras.Keys) { try { if (key == "") { continue; } xmlwriter.WriteStartElement("Camera"); xmlwriter.WriteElementString("name", cameras[key].name); xmlwriter.WriteElementString("flen", cameras[key].focallen.ToString(new System.Globalization.CultureInfo("en-US"))); xmlwriter.WriteElementString("imgh", cameras[key].imageheight.ToString(new System.Globalization.CultureInfo("en-US"))); xmlwriter.WriteElementString("imgw", cameras[key].imagewidth.ToString(new System.Globalization.CultureInfo("en-US"))); xmlwriter.WriteElementString("senh", cameras[key].sensorheight.ToString(new System.Globalization.CultureInfo("en-US"))); xmlwriter.WriteElementString("senw", cameras[key].sensorwidth.ToString(new System.Globalization.CultureInfo("en-US"))); xmlwriter.WriteEndElement(); } catch { } } xmlwriter.WriteEndElement(); xmlwriter.WriteEndDocument(); xmlwriter.Close(); } catch (Exception ex) { CustomMessageBox.Show(ex.ToString()); } } else { try { using (XmlTextReader xmlreader = new XmlTextReader(Settings.GetDataDirectory() + filename)) { while (xmlreader.Read()) { xmlreader.MoveToElement(); try { switch (xmlreader.Name) { case "Camera": { camerainfo camera = new camerainfo(); while (xmlreader.Read()) { bool dobreak = false; xmlreader.MoveToElement(); switch (xmlreader.Name) { case "name": camera.name = xmlreader.ReadString(); break; case "imgw": camera.imagewidth = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "imgh": camera.imageheight = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "senw": camera.sensorwidth = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "senh": camera.sensorheight = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "flen": camera.focallen = float.Parse(xmlreader.ReadString(), new System.Globalization.CultureInfo("en-US")); break; case "Camera": cameras[camera.name] = camera; dobreak = true; break; } if (dobreak) { break; } } string temp = xmlreader.ReadString(); } break; case "Config": break; case "xml": break; default: if (xmlreader.Name == "") // line feeds { break; } //config[xmlreader.Name] = xmlreader.ReadString(); break; } } catch (Exception ee) { Console.WriteLine(ee.Message); } // silent fail on bad entry } } } catch (Exception ex) { Console.WriteLine("Bad Camera File: " + ex.ToString()); } // bad config file // populate list foreach (var camera in cameras.Values) { if (!CMB_camera.Items.Contains(camera.name)) { CMB_camera.Items.Add(camera.name); } } } }