diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/FrmFlagManagers.cs b/FrmFlagManagers.cs index d9d9a5e..e550c4a 100644 --- a/FrmFlagManagers.cs +++ b/FrmFlagManagers.cs @@ -375,6 +375,7 @@ { this.Show(); } + /// /// 位置查看 /// @@ -436,6 +437,5 @@ } } - } } diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/FrmFlagManagers.cs b/FrmFlagManagers.cs index d9d9a5e..e550c4a 100644 --- a/FrmFlagManagers.cs +++ b/FrmFlagManagers.cs @@ -375,6 +375,7 @@ { this.Show(); } + /// /// 位置查看 /// @@ -436,6 +437,5 @@ } } - } } diff --git a/MainFrm.cs b/MainFrm.cs index 944d7a1..a243d3d 100644 --- a/MainFrm.cs +++ b/MainFrm.cs @@ -13,6 +13,7 @@ using System.Threading; using System.Windows.Forms; using Cyberpipe.EMS_Forms; +using Cyberpipe.FormAnalysis; using Cyberpipe.Forms; using DevComponents.DotNetBar; using GeoScene.Data; @@ -4693,6 +4694,31 @@ sideBar1.Refresh(); Refresh(); } + + private GSOFeatures getSelectedFeatures() + { + GSOFeatures feats = new GSOFeatures(); + + if (globeControl1.Globe.SelObjectCount == 0) + { + feats = null; + } + else + { + for (int i = 0; i < globeControl1.Globe.SelObjectCount; i++) + { + GSOLayer resLayer = null; + GSOFeature feat = null; + globeControl1.Globe.GetSelectObject(i, out feat, out resLayer); + if (feat != null && feat.Geometry.Type == EnumGeometryType.GeoPolyline3D) + { + feats.Add(feat); + } + } + } + return feats; + } + /// /// 碰撞审查 /// @@ -4700,30 +4726,16 @@ /// private void buttonItemSH1_Click(object sender, EventArgs e) { - //日志记录 + //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH1.Text); - - dataGridViewX4.Size = new Size(185, 92); - dataGridViewX5.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "碰撞审查"; - trackflag = "collision"; - controlContainerItem5.Control = panel2; - panel2.Dock = DockStyle.Fill; - panel2.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FrmAnalysis frm = new FrmAnalysis(feats, globeControl1); + frm.Show(); } /// /// 覆土审查 @@ -4734,26 +4746,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH2.Text); - - dataGridViewX6.Size = new Size(185, 92); - dataGridViewX7.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "覆土审查"; - trackflag = "ftAnalysis"; - controlContainerItem5.Control = panel4; - panel4.Visible = true; - panel4.Dock = DockStyle.Fill; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormFT frm = new FormFT(feats, globeControl1, layerTemp); + frm.Show(); } /// /// 水平净距审查 @@ -4764,26 +4764,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH3.Text); - - dataGridViewX8.Size = new Size(190, 92); - dataGridViewX9.Size = new Size(190, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "水平净距审查"; - trackflag = "horizontal"; - controlContainerItem5.Control = panel5; - panel5.Dock = DockStyle.Fill; - panel5.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormHor frm = new FormHor(feats, globeControl1); + frm.Show(); } /// /// 垂直净距审查 @@ -4795,33 +4783,15 @@ //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH4.Text); - dataGridViewX2.Visible = true; - dataGridViewX3.Visible = true; - dataGridViewX2.Size = new Size(185, 92); - dataGridViewX3.Size = new Size(185, 120); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormVer frm = new FormVer(feats, globeControl1,layerTemp); + frm.Show(); - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "垂直净距审查"; - trackflag = "vertical"; - //globeControl1.Globe.Action = EnumAction3D.SelectObject; - panel2.Visible = false; - panel3.Visible = false; - panel5.Visible = false; - panel4.Visible = false; - controlContainerItem5.Control = panel1; - panel1.Dock = DockStyle.Fill; - panel1.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); } #endregion diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/FrmFlagManagers.cs b/FrmFlagManagers.cs index d9d9a5e..e550c4a 100644 --- a/FrmFlagManagers.cs +++ b/FrmFlagManagers.cs @@ -375,6 +375,7 @@ { this.Show(); } + /// /// 位置查看 /// @@ -436,6 +437,5 @@ } } - } } diff --git a/MainFrm.cs b/MainFrm.cs index 944d7a1..a243d3d 100644 --- a/MainFrm.cs +++ b/MainFrm.cs @@ -13,6 +13,7 @@ using System.Threading; using System.Windows.Forms; using Cyberpipe.EMS_Forms; +using Cyberpipe.FormAnalysis; using Cyberpipe.Forms; using DevComponents.DotNetBar; using GeoScene.Data; @@ -4693,6 +4694,31 @@ sideBar1.Refresh(); Refresh(); } + + private GSOFeatures getSelectedFeatures() + { + GSOFeatures feats = new GSOFeatures(); + + if (globeControl1.Globe.SelObjectCount == 0) + { + feats = null; + } + else + { + for (int i = 0; i < globeControl1.Globe.SelObjectCount; i++) + { + GSOLayer resLayer = null; + GSOFeature feat = null; + globeControl1.Globe.GetSelectObject(i, out feat, out resLayer); + if (feat != null && feat.Geometry.Type == EnumGeometryType.GeoPolyline3D) + { + feats.Add(feat); + } + } + } + return feats; + } + /// /// 碰撞审查 /// @@ -4700,30 +4726,16 @@ /// private void buttonItemSH1_Click(object sender, EventArgs e) { - //日志记录 + //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH1.Text); - - dataGridViewX4.Size = new Size(185, 92); - dataGridViewX5.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "碰撞审查"; - trackflag = "collision"; - controlContainerItem5.Control = panel2; - panel2.Dock = DockStyle.Fill; - panel2.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FrmAnalysis frm = new FrmAnalysis(feats, globeControl1); + frm.Show(); } /// /// 覆土审查 @@ -4734,26 +4746,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH2.Text); - - dataGridViewX6.Size = new Size(185, 92); - dataGridViewX7.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "覆土审查"; - trackflag = "ftAnalysis"; - controlContainerItem5.Control = panel4; - panel4.Visible = true; - panel4.Dock = DockStyle.Fill; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormFT frm = new FormFT(feats, globeControl1, layerTemp); + frm.Show(); } /// /// 水平净距审查 @@ -4764,26 +4764,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH3.Text); - - dataGridViewX8.Size = new Size(190, 92); - dataGridViewX9.Size = new Size(190, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "水平净距审查"; - trackflag = "horizontal"; - controlContainerItem5.Control = panel5; - panel5.Dock = DockStyle.Fill; - panel5.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormHor frm = new FormHor(feats, globeControl1); + frm.Show(); } /// /// 垂直净距审查 @@ -4795,33 +4783,15 @@ //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH4.Text); - dataGridViewX2.Visible = true; - dataGridViewX3.Visible = true; - dataGridViewX2.Size = new Size(185, 92); - dataGridViewX3.Size = new Size(185, 120); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormVer frm = new FormVer(feats, globeControl1,layerTemp); + frm.Show(); - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "垂直净距审查"; - trackflag = "vertical"; - //globeControl1.Globe.Action = EnumAction3D.SelectObject; - panel2.Visible = false; - panel3.Visible = false; - panel5.Visible = false; - panel4.Visible = false; - controlContainerItem5.Control = panel1; - panel1.Dock = DockStyle.Fill; - panel1.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); } #endregion diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs index 6d402a5..64d68d4 100644 --- a/MainFrm.designer.cs +++ b/MainFrm.designer.cs @@ -38,17 +38,17 @@ { this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainFrm)); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = 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 dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = 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(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = 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 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 dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); this.dotNetBarManager1 = new DevComponents.DotNetBar.DotNetBarManager(this.components); this.dockSite4 = new DevComponents.DotNetBar.DockSite(); this.dockSite1 = new DevComponents.DotNetBar.DockSite(); @@ -239,30 +239,6 @@ this.保存ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.定位ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.ribbonControl1 = new DevComponents.DotNetBar.RibbonControl(); - this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); - this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); - this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel15 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar20 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItemSH = new DevComponents.DotNetBar.ButtonItem(); @@ -317,13 +293,6 @@ this.buttonItemXT4 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_1 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_2 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); - this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel7 = new DevComponents.DotNetBar.RibbonPanel(); this.gxdw_ribbonbar = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem9 = new DevComponents.DotNetBar.ButtonItem(); @@ -332,6 +301,10 @@ this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem14 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); + this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem(); @@ -339,6 +312,33 @@ this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem(); this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); + this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); + this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar(); this.btn_user_info = new DevComponents.DotNetBar.ButtonItem(); @@ -520,14 +520,14 @@ this.contextMenuStrip3.SuspendLayout(); this.contextMenuStripDeleteLayerNode.SuspendLayout(); this.ribbonControl1.SuspendLayout(); + this.ribbonPanel15.SuspendLayout(); + this.ribbonPanel7.SuspendLayout(); + this.ribbonPanel3.SuspendLayout(); + this.ribbonPanel1.SuspendLayout(); this.ribbonPanel12.SuspendLayout(); this.ribbonPanel5.SuspendLayout(); this.ribbonPanel6.SuspendLayout(); - this.ribbonPanel15.SuspendLayout(); this.ribbonPanel4.SuspendLayout(); - this.ribbonPanel3.SuspendLayout(); - this.ribbonPanel7.SuspendLayout(); - this.ribbonPanel1.SuspendLayout(); this.ribbonPanel2.SuspendLayout(); this.panelOfTable.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit(); @@ -711,7 +711,7 @@ this.toolStripDropDownButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripDropDownButton1.Image"))); this.toolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta; this.toolStripDropDownButton1.Name = "toolStripDropDownButton1"; - this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 21); + this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 20); this.toolStripDropDownButton1.Text = "帮助"; this.toolStripDropDownButton1.Visible = false; // @@ -2101,13 +2101,13 @@ this.ribbonControl1.BackgroundStyle.Class = ""; this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.ribbonControl1.Controls.Add(this.ribbonPanel15); + this.ribbonControl1.Controls.Add(this.ribbonPanel7); + this.ribbonControl1.Controls.Add(this.ribbonPanel3); + this.ribbonControl1.Controls.Add(this.ribbonPanel1); this.ribbonControl1.Controls.Add(this.ribbonPanel12); this.ribbonControl1.Controls.Add(this.ribbonPanel5); - this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel6); - this.ribbonControl1.Controls.Add(this.ribbonPanel3); - this.ribbonControl1.Controls.Add(this.ribbonPanel7); - this.ribbonControl1.Controls.Add(this.ribbonPanel1); + this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel2); this.ribbonControl1.Dock = System.Windows.Forms.DockStyle.Top; this.ribbonControl1.ImeMode = System.Windows.Forms.ImeMode.NoControl; @@ -2152,389 +2152,6 @@ this.ribbonControl1.Text = "ribbonControl1"; this.ribbonControl1.UseCustomizeDialog = false; // - // ribbonPanel12 - // - this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel12.Controls.Add(this.ribbonBar18); - this.ribbonPanel12.Controls.Add(this.ribbonBar13); - this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel12.Name = "ribbonPanel12"; - this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel12.Style.Class = ""; - this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseDown.Class = ""; - this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseOver.Class = ""; - this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel12.TabIndex = 34; - this.ribbonPanel12.Visible = false; - // - // ribbonBar18 - // - this.ribbonBar18.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.BackgroundStyle.Class = ""; - this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.ContainerControlProcessDialogKey = true; - this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem133, - this.buttonItem132}); - this.ribbonBar18.Location = new System.Drawing.Point(508, 0); - this.ribbonBar18.Name = "ribbonBar18"; - this.ribbonBar18.Size = new System.Drawing.Size(75, 59); - this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar18.TabIndex = 1; - // - // - // - this.ribbonBar18.TitleStyle.Class = ""; - this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.TitleStyleMouseOver.Class = ""; - this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.TitleVisible = false; - // - // buttonItem133 - // - this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); - this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem133.Name = "buttonItem133"; - this.buttonItem133.SubItemsExpandWidth = 14; - this.buttonItem133.Text = "审核入库"; - this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); - // - // buttonItem132 - // - this.buttonItem132.Name = "buttonItem132"; - // - // ribbonBar13 - // - this.ribbonBar13.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.BackgroundStyle.Class = ""; - this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.ContainerControlProcessDialogKey = true; - this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem127, - this.buttonItem128, - this.sliderItem1, - this.buttonItem134, - this.buttonItem130, - this.btn_check_history}); - this.ribbonBar13.Location = new System.Drawing.Point(3, 0); - this.ribbonBar13.Name = "ribbonBar13"; - this.ribbonBar13.Size = new System.Drawing.Size(505, 59); - this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar13.TabIndex = 0; - // - // - // - this.ribbonBar13.TitleStyle.Class = ""; - this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.TitleStyleMouseOver.Class = ""; - this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.TitleVisible = false; - // - // buttonItem127 - // - this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); - this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem127.Name = "buttonItem127"; - this.buttonItem127.SubItemsExpandWidth = 14; - this.buttonItem127.Text = "打开数据"; - this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); - // - // buttonItem128 - // - this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); - this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem128.Name = "buttonItem128"; - this.buttonItem128.SubItemsExpandWidth = 14; - this.buttonItem128.Text = "一键审核"; - this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); - // - // sliderItem1 - // - this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem1.LabelWidth = 50; - this.sliderItem1.Name = "sliderItem1"; - this.sliderItem1.Text = "地面透明度"; - this.sliderItem1.TextColor = System.Drawing.Color.Black; - this.sliderItem1.Value = 0; - this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); - // - // buttonItem134 - // - this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); - this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem134.Name = "buttonItem134"; - this.buttonItem134.SubItemsExpandWidth = 14; - this.buttonItem134.Text = "模拟设计修改"; - this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); - // - // buttonItem130 - // - this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); - this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem130.Name = "buttonItem130"; - this.buttonItem130.SubItemsExpandWidth = 14; - this.buttonItem130.Text = "导出审核图"; - this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); - // - // btn_check_history - // - this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); - this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_check_history.Name = "btn_check_history"; - this.btn_check_history.SubItemsExpandWidth = 14; - this.btn_check_history.Text = "审核历史"; - this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); - // - // ribbonPanel5 - // - this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel5.Controls.Add(this.ribbonBar2); - this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel5.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel5.Name = "ribbonPanel5"; - this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel5.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel5.Style.Class = ""; - this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseDown.Class = ""; - this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseOver.Class = ""; - this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel5.TabIndex = 37; - this.ribbonPanel5.Visible = false; - // - // ribbonBar2 - // - this.ribbonBar2.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.BackgroundStyle.Class = ""; - this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.ContainerControlProcessDialogKey = true; - this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemHX1, - this.buttonItemHX2, - this.buttonItemDCTP, - this.sliderItem3}); - this.ribbonBar2.Location = new System.Drawing.Point(3, 0); - this.ribbonBar2.Name = "ribbonBar2"; - this.ribbonBar2.Size = new System.Drawing.Size(350, 92); - this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar2.TabIndex = 0; - // - // - // - this.ribbonBar2.TitleStyle.Class = ""; - this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.TitleStyleMouseOver.Class = ""; - this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.TitleVisible = false; - // - // buttonItemHX1 - // - this.buttonItemHX1.AutoExpandOnClick = true; - this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); - this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX1.Name = "buttonItemHX1"; - this.buttonItemHX1.SubItemsExpandWidth = 14; - this.buttonItemHX1.Text = "导入红线"; - this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); - // - // buttonItemHX2 - // - this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); - this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX2.Name = "buttonItemHX2"; - this.buttonItemHX2.SubItemsExpandWidth = 14; - this.buttonItemHX2.Text = "红线审核"; - this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); - // - // buttonItemDCTP - // - this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); - this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemDCTP.Name = "buttonItemDCTP"; - this.buttonItemDCTP.SubItemsExpandWidth = 14; - this.buttonItemDCTP.Text = "导出图片"; - this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); - // - // sliderItem3 - // - this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem3.LabelWidth = 50; - this.sliderItem3.Name = "sliderItem3"; - this.sliderItem3.Text = "地面透明度"; - this.sliderItem3.TextColor = System.Drawing.Color.Black; - this.sliderItem3.Value = 0; - this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); - // - // ribbonPanel6 - // - this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel6.Controls.Add(this.ribbonBar6); - this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel6.Name = "ribbonPanel6"; - this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel6.Style.Class = ""; - this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseDown.Class = ""; - this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseOver.Class = ""; - this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel6.TabIndex = 38; - this.ribbonPanel6.Visible = false; - // - // ribbonBar6 - // - this.ribbonBar6.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.BackgroundStyle.Class = ""; - this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.ContainerControlProcessDialogKey = true; - this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemSPSZ, - this.buttonItem8, - this.buttonItemLocation, - this.sliderItem2, - this.buttonItemGBJC}); - this.ribbonBar6.Location = new System.Drawing.Point(3, 0); - this.ribbonBar6.Name = "ribbonBar6"; - this.ribbonBar6.Size = new System.Drawing.Size(427, 59); - this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar6.TabIndex = 0; - // - // - // - this.ribbonBar6.TitleStyle.Class = ""; - this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.TitleStyleMouseOver.Class = ""; - this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.TitleVisible = false; - // - // buttonItemSPSZ - // - this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); - this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemSPSZ.Name = "buttonItemSPSZ"; - this.buttonItemSPSZ.SubItemsExpandWidth = 14; - this.buttonItemSPSZ.Text = "双屏设置"; - this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); - // - // buttonItem8 - // - this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); - this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem8.Name = "buttonItem8"; - this.buttonItem8.SubItemsExpandWidth = 14; - this.buttonItem8.Text = "双屏分析"; - this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); - // - // buttonItemLocation - // - this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); - this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemLocation.Name = "buttonItemLocation"; - this.buttonItemLocation.SubItemsExpandWidth = 14; - this.buttonItemLocation.Text = "快速定位"; - this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); - // - // sliderItem2 - // - this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem2.LabelWidth = 50; - this.sliderItem2.Name = "sliderItem2"; - this.sliderItem2.Text = "地面透明度"; - this.sliderItem2.TextColor = System.Drawing.Color.Black; - this.sliderItem2.Value = 0; - this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); - // - // buttonItemGBJC - // - this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); - this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemGBJC.Name = "buttonItemGBJC"; - this.buttonItemGBJC.SubItemsExpandWidth = 14; - this.buttonItemGBJC.Text = "国标检测"; - this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); - // // ribbonPanel15 // this.ribbonPanel15.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3006,157 +2623,6 @@ this.buttonItemXT4_2.Text = "人员修改"; this.buttonItemXT4_2.Click += new System.EventHandler(this.buttonItemXT4_2_Click); // - // ribbonPanel4 - // - this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel4.Controls.Add(this.ribbonBar1); - this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel4.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel4.Name = "ribbonPanel4"; - this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel4.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel4.Style.Class = ""; - this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseDown.Class = ""; - this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseOver.Class = ""; - this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel4.TabIndex = 36; - this.ribbonPanel4.Visible = false; - // - // ribbonBar1 - // - this.ribbonBar1.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.BackgroundStyle.Class = ""; - this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.ContainerControlProcessDialogKey = true; - this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_document_info}); - this.ribbonBar1.Location = new System.Drawing.Point(3, 0); - this.ribbonBar1.Name = "ribbonBar1"; - this.ribbonBar1.Size = new System.Drawing.Size(88, 92); - this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar1.TabIndex = 0; - // - // - // - this.ribbonBar1.TitleStyle.Class = ""; - this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.TitleStyleMouseOver.Class = ""; - this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.TitleVisible = false; - // - // btn_document_info - // - this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); - this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_document_info.Name = "btn_document_info"; - this.btn_document_info.SubItemsExpandWidth = 14; - this.btn_document_info.Text = "文档管理"; - this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); - // - // ribbonPanel3 - // - this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel3.Controls.Add(this.ribbonBar4); - this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel3.Name = "ribbonPanel3"; - this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel3.Style.Class = ""; - this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseDown.Class = ""; - this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseOver.Class = ""; - this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel3.TabIndex = 40; - this.ribbonPanel3.Visible = false; - // - // ribbonBar4 - // - this.ribbonBar4.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.BackgroundStyle.Class = ""; - this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.ContainerControlProcessDialogKey = true; - this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_flag, - this.slider4ground}); - this.ribbonBar4.Location = new System.Drawing.Point(3, 0); - this.ribbonBar4.Name = "ribbonBar4"; - this.ribbonBar4.Size = new System.Drawing.Size(634, 59); - this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar4.TabIndex = 0; - // - // - // - this.ribbonBar4.TitleStyle.Class = ""; - this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.TitleStyleMouseOver.Class = ""; - this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.TitleVisible = false; - // - // btn_flag - // - this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; - this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_flag.Name = "btn_flag"; - this.btn_flag.SubItemsExpandWidth = 14; - this.btn_flag.Text = "标识器管理"; - this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); - // - // slider4ground - // - this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.slider4ground.LabelWidth = 50; - this.slider4ground.Name = "slider4ground"; - this.slider4ground.Text = "地面透明度"; - this.slider4ground.TextColor = System.Drawing.Color.Black; - this.slider4ground.Value = 0; - this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); - // // ribbonPanel7 // this.ribbonPanel7.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3278,6 +2744,87 @@ this.buttonItem14.Text = "导出施工图"; this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click); // + // ribbonPanel3 + // + this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel3.Controls.Add(this.ribbonBar4); + this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel3.Name = "ribbonPanel3"; + this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel3.Style.Class = ""; + this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseDown.Class = ""; + this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseOver.Class = ""; + this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel3.TabIndex = 40; + this.ribbonPanel3.Visible = false; + // + // ribbonBar4 + // + this.ribbonBar4.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.BackgroundStyle.Class = ""; + this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.ContainerControlProcessDialogKey = true; + this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_flag, + this.slider4ground}); + this.ribbonBar4.Location = new System.Drawing.Point(3, 0); + this.ribbonBar4.Name = "ribbonBar4"; + this.ribbonBar4.Size = new System.Drawing.Size(634, 59); + this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar4.TabIndex = 0; + // + // + // + this.ribbonBar4.TitleStyle.Class = ""; + this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.TitleStyleMouseOver.Class = ""; + this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.TitleVisible = false; + // + // btn_flag + // + this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; + this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_flag.Name = "btn_flag"; + this.btn_flag.SubItemsExpandWidth = 14; + this.btn_flag.Text = "标识器管理"; + this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); + // + // slider4ground + // + this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.slider4ground.LabelWidth = 50; + this.slider4ground.Name = "slider4ground"; + this.slider4ground.Text = "地面透明度"; + this.slider4ground.TextColor = System.Drawing.Color.Black; + this.slider4ground.Value = 0; + this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); + // // ribbonPanel1 // this.ribbonPanel1.AutoSize = true; @@ -3332,7 +2879,7 @@ this.btnOutputJPG}); this.ribbonBar21.Location = new System.Drawing.Point(3, 0); this.ribbonBar21.Name = "ribbonBar21"; - this.ribbonBar21.Size = new System.Drawing.Size(649, 59); + this.ribbonBar21.Size = new System.Drawing.Size(447, 59); this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.ribbonBar21.TabIndex = 2; this.ribbonBar21.Text = "浏览模式"; @@ -3394,6 +2941,459 @@ this.btnOutputJPG.Text = "导出图片"; this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click); // + // ribbonPanel12 + // + this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel12.Controls.Add(this.ribbonBar18); + this.ribbonPanel12.Controls.Add(this.ribbonBar13); + this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel12.Name = "ribbonPanel12"; + this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel12.Style.Class = ""; + this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseDown.Class = ""; + this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseOver.Class = ""; + this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel12.TabIndex = 34; + this.ribbonPanel12.Visible = false; + // + // ribbonBar18 + // + this.ribbonBar18.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.BackgroundStyle.Class = ""; + this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.ContainerControlProcessDialogKey = true; + this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem133, + this.buttonItem132}); + this.ribbonBar18.Location = new System.Drawing.Point(508, 0); + this.ribbonBar18.Name = "ribbonBar18"; + this.ribbonBar18.Size = new System.Drawing.Size(75, 59); + this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar18.TabIndex = 1; + // + // + // + this.ribbonBar18.TitleStyle.Class = ""; + this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.TitleStyleMouseOver.Class = ""; + this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.TitleVisible = false; + // + // buttonItem133 + // + this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); + this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem133.Name = "buttonItem133"; + this.buttonItem133.SubItemsExpandWidth = 14; + this.buttonItem133.Text = "审核入库"; + this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); + // + // buttonItem132 + // + this.buttonItem132.Name = "buttonItem132"; + // + // ribbonBar13 + // + this.ribbonBar13.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.BackgroundStyle.Class = ""; + this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.ContainerControlProcessDialogKey = true; + this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem127, + this.buttonItem128, + this.sliderItem1, + this.buttonItem134, + this.buttonItem130, + this.btn_check_history}); + this.ribbonBar13.Location = new System.Drawing.Point(3, 0); + this.ribbonBar13.Name = "ribbonBar13"; + this.ribbonBar13.Size = new System.Drawing.Size(505, 59); + this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar13.TabIndex = 0; + // + // + // + this.ribbonBar13.TitleStyle.Class = ""; + this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.TitleStyleMouseOver.Class = ""; + this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.TitleVisible = false; + // + // buttonItem127 + // + this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); + this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem127.Name = "buttonItem127"; + this.buttonItem127.SubItemsExpandWidth = 14; + this.buttonItem127.Text = "打开数据"; + this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); + // + // buttonItem128 + // + this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); + this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem128.Name = "buttonItem128"; + this.buttonItem128.SubItemsExpandWidth = 14; + this.buttonItem128.Text = "一键审核"; + this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); + // + // sliderItem1 + // + this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem1.LabelWidth = 50; + this.sliderItem1.Name = "sliderItem1"; + this.sliderItem1.Text = "地面透明度"; + this.sliderItem1.TextColor = System.Drawing.Color.Black; + this.sliderItem1.Value = 0; + this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); + // + // buttonItem134 + // + this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); + this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem134.Name = "buttonItem134"; + this.buttonItem134.SubItemsExpandWidth = 14; + this.buttonItem134.Text = "模拟设计修改"; + this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); + // + // buttonItem130 + // + this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); + this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem130.Name = "buttonItem130"; + this.buttonItem130.SubItemsExpandWidth = 14; + this.buttonItem130.Text = "导出审核图"; + this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); + // + // btn_check_history + // + this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); + this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_check_history.Name = "btn_check_history"; + this.btn_check_history.SubItemsExpandWidth = 14; + this.btn_check_history.Text = "审核历史"; + this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); + // + // ribbonPanel5 + // + this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel5.Controls.Add(this.ribbonBar2); + this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel5.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel5.Name = "ribbonPanel5"; + this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel5.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel5.Style.Class = ""; + this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseDown.Class = ""; + this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseOver.Class = ""; + this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel5.TabIndex = 37; + this.ribbonPanel5.Visible = false; + // + // ribbonBar2 + // + this.ribbonBar2.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.BackgroundStyle.Class = ""; + this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.ContainerControlProcessDialogKey = true; + this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemHX1, + this.buttonItemHX2, + this.buttonItemDCTP, + this.sliderItem3}); + this.ribbonBar2.Location = new System.Drawing.Point(3, 0); + this.ribbonBar2.Name = "ribbonBar2"; + this.ribbonBar2.Size = new System.Drawing.Size(350, 59); + this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar2.TabIndex = 0; + // + // + // + this.ribbonBar2.TitleStyle.Class = ""; + this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.TitleStyleMouseOver.Class = ""; + this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.TitleVisible = false; + // + // buttonItemHX1 + // + this.buttonItemHX1.AutoExpandOnClick = true; + this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); + this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX1.Name = "buttonItemHX1"; + this.buttonItemHX1.SubItemsExpandWidth = 14; + this.buttonItemHX1.Text = "导入红线"; + this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); + // + // buttonItemHX2 + // + this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); + this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX2.Name = "buttonItemHX2"; + this.buttonItemHX2.SubItemsExpandWidth = 14; + this.buttonItemHX2.Text = "红线审核"; + this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); + // + // buttonItemDCTP + // + this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); + this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemDCTP.Name = "buttonItemDCTP"; + this.buttonItemDCTP.SubItemsExpandWidth = 14; + this.buttonItemDCTP.Text = "导出图片"; + this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); + // + // sliderItem3 + // + this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem3.LabelWidth = 50; + this.sliderItem3.Name = "sliderItem3"; + this.sliderItem3.Text = "地面透明度"; + this.sliderItem3.TextColor = System.Drawing.Color.Black; + this.sliderItem3.Value = 0; + this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); + // + // ribbonPanel6 + // + this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel6.Controls.Add(this.ribbonBar6); + this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel6.Name = "ribbonPanel6"; + this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel6.Style.Class = ""; + this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseDown.Class = ""; + this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseOver.Class = ""; + this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel6.TabIndex = 38; + this.ribbonPanel6.Visible = false; + // + // ribbonBar6 + // + this.ribbonBar6.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.BackgroundStyle.Class = ""; + this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.ContainerControlProcessDialogKey = true; + this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemSPSZ, + this.buttonItem8, + this.buttonItemLocation, + this.sliderItem2, + this.buttonItemGBJC}); + this.ribbonBar6.Location = new System.Drawing.Point(3, 0); + this.ribbonBar6.Name = "ribbonBar6"; + this.ribbonBar6.Size = new System.Drawing.Size(427, 59); + this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar6.TabIndex = 0; + // + // + // + this.ribbonBar6.TitleStyle.Class = ""; + this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.TitleStyleMouseOver.Class = ""; + this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.TitleVisible = false; + // + // buttonItemSPSZ + // + this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); + this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemSPSZ.Name = "buttonItemSPSZ"; + this.buttonItemSPSZ.SubItemsExpandWidth = 14; + this.buttonItemSPSZ.Text = "双屏设置"; + this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); + // + // buttonItem8 + // + this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); + this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem8.Name = "buttonItem8"; + this.buttonItem8.SubItemsExpandWidth = 14; + this.buttonItem8.Text = "双屏分析"; + this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); + // + // buttonItemLocation + // + this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); + this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemLocation.Name = "buttonItemLocation"; + this.buttonItemLocation.SubItemsExpandWidth = 14; + this.buttonItemLocation.Text = "快速定位"; + this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); + // + // sliderItem2 + // + this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem2.LabelWidth = 50; + this.sliderItem2.Name = "sliderItem2"; + this.sliderItem2.Text = "地面透明度"; + this.sliderItem2.TextColor = System.Drawing.Color.Black; + this.sliderItem2.Value = 0; + this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); + // + // buttonItemGBJC + // + this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); + this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemGBJC.Name = "buttonItemGBJC"; + this.buttonItemGBJC.SubItemsExpandWidth = 14; + this.buttonItemGBJC.Text = "国标检测"; + this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); + // + // ribbonPanel4 + // + this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel4.Controls.Add(this.ribbonBar1); + this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel4.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel4.Name = "ribbonPanel4"; + this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel4.Style.Class = ""; + this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseDown.Class = ""; + this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseOver.Class = ""; + this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel4.TabIndex = 36; + this.ribbonPanel4.Visible = false; + // + // ribbonBar1 + // + this.ribbonBar1.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.BackgroundStyle.Class = ""; + this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.ContainerControlProcessDialogKey = true; + this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_document_info}); + this.ribbonBar1.Location = new System.Drawing.Point(3, 0); + this.ribbonBar1.Name = "ribbonBar1"; + this.ribbonBar1.Size = new System.Drawing.Size(88, 59); + this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar1.TabIndex = 0; + // + // + // + this.ribbonBar1.TitleStyle.Class = ""; + this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.TitleStyleMouseOver.Class = ""; + this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.TitleVisible = false; + // + // btn_document_info + // + this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); + this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_document_info.Name = "btn_document_info"; + this.btn_document_info.SubItemsExpandWidth = 14; + this.btn_document_info.Text = "文档管理"; + this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); + // // ribbonPanel2 // this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3736,14 +3736,14 @@ this.dataGridViewX1.AllowUserToAddRows = false; this.dataGridViewX1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; this.dataGridViewX1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle12.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle12; + dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle1; this.dataGridViewX1.Dock = System.Windows.Forms.DockStyle.Fill; this.dataGridViewX1.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX1.Location = new System.Drawing.Point(0, 5); @@ -4019,14 +4019,14 @@ this.dataGridViewLineList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn19, this.dataGridViewTextBoxColumn20}); - dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle13.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle13; + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle2; this.dataGridViewLineList.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewLineList.Location = new System.Drawing.Point(9, 155); this.dataGridViewLineList.Name = "dataGridViewLineList"; @@ -4114,14 +4114,14 @@ this.dataGridViewTextBoxColumn24, this.dataGridViewTextBoxColumn25, this.水平净距}); - dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle14.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle14.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle14.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle14.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle14; + dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle3.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle3; this.dataGridViewAnalysisResult.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewAnalysisResult.Location = new System.Drawing.Point(8, 310); this.dataGridViewAnalysisResult.Name = "dataGridViewAnalysisResult"; @@ -4356,21 +4356,21 @@ this.dataGridViewX2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn10, this.dataGridViewTextBoxColumn11}); - dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle15.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle15; + dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle4.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle4; this.dataGridViewX2.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX2.Location = new System.Drawing.Point(12, 127); this.dataGridViewX2.Name = "dataGridViewX2"; this.dataGridViewX2.ReadOnly = true; this.dataGridViewX2.RowHeadersVisible = false; this.dataGridViewX2.RowTemplate.Height = 23; - this.dataGridViewX2.Size = new System.Drawing.Size(36130, 92); + this.dataGridViewX2.Size = new System.Drawing.Size(184, 92); this.dataGridViewX2.TabIndex = 11; // // dataGridViewTextBoxColumn10 @@ -4450,21 +4450,21 @@ this.Column6, this.Colomn12, this.Column5}); - dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle16.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle16.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle5; this.dataGridViewX3.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX3.Location = new System.Drawing.Point(12, 272); this.dataGridViewX3.Name = "dataGridViewX3"; this.dataGridViewX3.ReadOnly = true; this.dataGridViewX3.RowHeadersVisible = false; this.dataGridViewX3.RowTemplate.Height = 23; - this.dataGridViewX3.Size = new System.Drawing.Size(36129, 127); + this.dataGridViewX3.Size = new System.Drawing.Size(184, 127); this.dataGridViewX3.TabIndex = 5; this.dataGridViewX3.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX3_MouseDoubleClick); // @@ -4678,7 +4678,7 @@ // // textBoxX4 // - this.textBoxX4.Location = new System.Drawing.Point(81, 61); + this.textBoxX4.Location = new System.Drawing.Point(81, 393); this.textBoxX4.Name = "textBoxX4"; this.textBoxX4.Size = new System.Drawing.Size(87, 21); this.textBoxX4.TabIndex = 16; @@ -4692,7 +4692,7 @@ this.labelX24.BackgroundStyle.Class = ""; this.labelX24.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX24.Image = ((System.Drawing.Image)(resources.GetObject("labelX24.Image"))); - this.labelX24.Location = new System.Drawing.Point(7, 403); + this.labelX24.Location = new System.Drawing.Point(7, 735); this.labelX24.Name = "labelX24"; this.labelX24.Size = new System.Drawing.Size(77, 23); this.labelX24.TabIndex = 14; @@ -4708,21 +4708,21 @@ this.dataGridViewX8.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn12, this.dataGridViewTextBoxColumn13}); - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle17.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle6.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle6; this.dataGridViewX8.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX8.Location = new System.Drawing.Point(10, 120); + this.dataGridViewX8.Location = new System.Drawing.Point(10, 452); this.dataGridViewX8.Name = "dataGridViewX8"; this.dataGridViewX8.ReadOnly = true; this.dataGridViewX8.RowHeadersVisible = false; this.dataGridViewX8.RowTemplate.Height = 23; - this.dataGridViewX8.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX8.Size = new System.Drawing.Size(119, 92); this.dataGridViewX8.TabIndex = 11; // // dataGridViewTextBoxColumn12 @@ -4743,7 +4743,7 @@ // this.listBox3.FormattingEnabled = true; this.listBox3.ItemHeight = 12; - this.listBox3.Location = new System.Drawing.Point(8, 429); + this.listBox3.Location = new System.Drawing.Point(8, 761); this.listBox3.Name = "listBox3"; this.listBox3.Size = new System.Drawing.Size(195, 16); this.listBox3.TabIndex = 0; @@ -4758,7 +4758,7 @@ // this.labelX11.BackgroundStyle.Class = ""; this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX11.Location = new System.Drawing.Point(10, 93); + this.labelX11.Location = new System.Drawing.Point(10, 425); this.labelX11.Name = "labelX11"; this.labelX11.Size = new System.Drawing.Size(63, 23); this.labelX11.TabIndex = 1; @@ -4768,7 +4768,7 @@ this.buttonX12.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX12.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX12.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX12.Location = new System.Drawing.Point(8, 217); + this.buttonX12.Location = new System.Drawing.Point(8, 549); this.buttonX12.Name = "buttonX12"; this.buttonX12.Size = new System.Drawing.Size(65, 23); this.buttonX12.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4781,7 +4781,7 @@ this.buttonX13.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX13.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX13.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX13.Location = new System.Drawing.Point(9, 478); + this.buttonX13.Location = new System.Drawing.Point(9, 810); this.buttonX13.Name = "buttonX13"; this.buttonX13.Size = new System.Drawing.Size(75, 23); this.buttonX13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4803,21 +4803,21 @@ this.dataGridViewTextBoxColumn16, this.dataGridViewTextBoxColumn17, this.dataGridViewTextBoxColumn18}); - dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle18.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle7; this.dataGridViewX9.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX9.Location = new System.Drawing.Point(11, 271); + this.dataGridViewX9.Location = new System.Drawing.Point(11, 603); this.dataGridViewX9.Name = "dataGridViewX9"; this.dataGridViewX9.ReadOnly = true; this.dataGridViewX9.RowHeadersVisible = false; this.dataGridViewX9.RowTemplate.Height = 23; - this.dataGridViewX9.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX9.Size = new System.Drawing.Size(193, 127); this.dataGridViewX9.TabIndex = 5; this.dataGridViewX9.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX9_MouseDoubleClick); // @@ -4866,7 +4866,7 @@ this.buttonX14.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX14.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX14.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX14.Location = new System.Drawing.Point(128, 478); + this.buttonX14.Location = new System.Drawing.Point(128, 810); this.buttonX14.Name = "buttonX14"; this.buttonX14.Size = new System.Drawing.Size(75, 23); this.buttonX14.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4879,7 +4879,7 @@ this.buttonX15.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX15.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX15.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX15.Location = new System.Drawing.Point(112, 217); + this.buttonX15.Location = new System.Drawing.Point(112, 549); this.buttonX15.Name = "buttonX15"; this.buttonX15.Size = new System.Drawing.Size(92, 23); this.buttonX15.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4894,7 +4894,7 @@ // this.labelX15.BackgroundStyle.Class = ""; this.labelX15.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX15.Location = new System.Drawing.Point(174, 61); + this.labelX15.Location = new System.Drawing.Point(174, 393); this.labelX15.Name = "labelX15"; this.labelX15.Size = new System.Drawing.Size(20, 23); this.labelX15.TabIndex = 7; @@ -4908,7 +4908,7 @@ this.comboBoxEx4.Enabled = false; this.comboBoxEx4.FormattingEnabled = true; this.comboBoxEx4.ItemHeight = 15; - this.comboBoxEx4.Location = new System.Drawing.Point(81, 29); + this.comboBoxEx4.Location = new System.Drawing.Point(81, 361); this.comboBoxEx4.Name = "comboBoxEx4"; this.comboBoxEx4.Size = new System.Drawing.Size(123, 21); this.comboBoxEx4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4926,7 +4926,7 @@ this.checkBoxX7.BackgroundStyle.Class = ""; this.checkBoxX7.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX7.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX7.Location = new System.Drawing.Point(8, 5); + this.checkBoxX7.Location = new System.Drawing.Point(8, 337); this.checkBoxX7.Name = "checkBoxX7"; this.checkBoxX7.Size = new System.Drawing.Size(90, 23); this.checkBoxX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4944,7 +4944,7 @@ this.checkBoxX8.BackgroundStyle.Class = ""; this.checkBoxX8.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX8.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX8.Location = new System.Drawing.Point(118, 5); + this.checkBoxX8.Location = new System.Drawing.Point(118, 337); this.checkBoxX8.Name = "checkBoxX8"; this.checkBoxX8.Size = new System.Drawing.Size(86, 23); this.checkBoxX8.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4961,7 +4961,7 @@ // this.labelX19.BackgroundStyle.Class = ""; this.labelX19.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX19.Location = new System.Drawing.Point(11, 61); + this.labelX19.Location = new System.Drawing.Point(11, 393); this.labelX19.Name = "labelX19"; this.labelX19.Size = new System.Drawing.Size(70, 23); this.labelX19.TabIndex = 1; @@ -4976,7 +4976,7 @@ // this.labelX21.BackgroundStyle.Class = ""; this.labelX21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX21.Location = new System.Drawing.Point(10, 29); + this.labelX21.Location = new System.Drawing.Point(10, 361); this.labelX21.Name = "labelX21"; this.labelX21.Size = new System.Drawing.Size(70, 23); this.labelX21.TabIndex = 1; @@ -4989,7 +4989,7 @@ this.labelX22.BackgroundStyle.Class = ""; this.labelX22.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX22.Image = ((System.Drawing.Image)(resources.GetObject("labelX22.Image"))); - this.labelX22.Location = new System.Drawing.Point(9, 245); + this.labelX22.Location = new System.Drawing.Point(9, 577); this.labelX22.Name = "labelX22"; this.labelX22.Size = new System.Drawing.Size(70, 23); this.labelX22.TabIndex = 1; @@ -5043,7 +5043,7 @@ this.buttonX7.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX7.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX7.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX7.Location = new System.Drawing.Point(119, 440); + this.buttonX7.Location = new System.Drawing.Point(119, 418); this.buttonX7.Name = "buttonX7"; this.buttonX7.Size = new System.Drawing.Size(40, 23); this.buttonX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5086,21 +5086,21 @@ this.dataGridViewX4.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn1, this.dataGridViewTextBoxColumn2}); - dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle19.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle19.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle19.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle8; this.dataGridViewX4.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX4.Location = new System.Drawing.Point(7, 84); this.dataGridViewX4.Name = "dataGridViewX4"; this.dataGridViewX4.ReadOnly = true; this.dataGridViewX4.RowHeadersVisible = false; this.dataGridViewX4.RowTemplate.Height = 23; - this.dataGridViewX4.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX4.Size = new System.Drawing.Size(130, 92); this.dataGridViewX4.TabIndex = 3; // // dataGridViewTextBoxColumn1 @@ -5150,7 +5150,7 @@ this.buttonX6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(253))))); this.buttonX6.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX6.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX6.Location = new System.Drawing.Point(11, 440); + this.buttonX6.Location = new System.Drawing.Point(11, 418); this.buttonX6.Name = "buttonX6"; this.buttonX6.Size = new System.Drawing.Size(75, 23); this.buttonX6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5171,21 +5171,21 @@ this.dataGridViewTextBoxColumn4, this.Column3, this.Column4}); - dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle20.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle20.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle20.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle20.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle9.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle9; this.dataGridViewX5.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX5.Location = new System.Drawing.Point(7, 225); this.dataGridViewX5.Name = "dataGridViewX5"; this.dataGridViewX5.ReadOnly = true; this.dataGridViewX5.RowHeadersVisible = false; this.dataGridViewX5.RowTemplate.Height = 23; - this.dataGridViewX5.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX5.Size = new System.Drawing.Size(132, 127); this.dataGridViewX5.TabIndex = 5; this.dataGridViewX5.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX5_MouseDoubleClick); // @@ -5372,14 +5372,14 @@ this.dataGridViewX6.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn5, this.dataGridViewTextBoxColumn6}); - dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle21.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle21.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle21.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle21.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle21; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle10.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle10; this.dataGridViewX6.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX6.Location = new System.Drawing.Point(8, 111); this.dataGridViewX6.Name = "dataGridViewX6"; @@ -5456,14 +5456,14 @@ this.dataGridViewTextBoxColumn7, this.dataGridViewTextBoxColumn8, this.dataGridViewTextBoxColumn9}); - dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle22.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle22.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle22.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle22.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle22; + dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle11.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle11; this.dataGridViewX7.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX7.Location = new System.Drawing.Point(9, 262); this.dataGridViewX7.Name = "dataGridViewX7"; @@ -5704,14 +5704,14 @@ this.contextMenuStripDeleteLayerNode.ResumeLayout(false); this.ribbonControl1.ResumeLayout(false); this.ribbonControl1.PerformLayout(); + this.ribbonPanel15.ResumeLayout(false); + this.ribbonPanel7.ResumeLayout(false); + this.ribbonPanel3.ResumeLayout(false); + this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel12.ResumeLayout(false); this.ribbonPanel5.ResumeLayout(false); this.ribbonPanel6.ResumeLayout(false); - this.ribbonPanel15.ResumeLayout(false); this.ribbonPanel4.ResumeLayout(false); - this.ribbonPanel3.ResumeLayout(false); - this.ribbonPanel7.ResumeLayout(false); - this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel2.ResumeLayout(false); this.panelOfTable.ResumeLayout(false); this.panelOfTable.PerformLayout(); diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/FrmFlagManagers.cs b/FrmFlagManagers.cs index d9d9a5e..e550c4a 100644 --- a/FrmFlagManagers.cs +++ b/FrmFlagManagers.cs @@ -375,6 +375,7 @@ { this.Show(); } + /// /// 位置查看 /// @@ -436,6 +437,5 @@ } } - } } diff --git a/MainFrm.cs b/MainFrm.cs index 944d7a1..a243d3d 100644 --- a/MainFrm.cs +++ b/MainFrm.cs @@ -13,6 +13,7 @@ using System.Threading; using System.Windows.Forms; using Cyberpipe.EMS_Forms; +using Cyberpipe.FormAnalysis; using Cyberpipe.Forms; using DevComponents.DotNetBar; using GeoScene.Data; @@ -4693,6 +4694,31 @@ sideBar1.Refresh(); Refresh(); } + + private GSOFeatures getSelectedFeatures() + { + GSOFeatures feats = new GSOFeatures(); + + if (globeControl1.Globe.SelObjectCount == 0) + { + feats = null; + } + else + { + for (int i = 0; i < globeControl1.Globe.SelObjectCount; i++) + { + GSOLayer resLayer = null; + GSOFeature feat = null; + globeControl1.Globe.GetSelectObject(i, out feat, out resLayer); + if (feat != null && feat.Geometry.Type == EnumGeometryType.GeoPolyline3D) + { + feats.Add(feat); + } + } + } + return feats; + } + /// /// 碰撞审查 /// @@ -4700,30 +4726,16 @@ /// private void buttonItemSH1_Click(object sender, EventArgs e) { - //日志记录 + //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH1.Text); - - dataGridViewX4.Size = new Size(185, 92); - dataGridViewX5.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "碰撞审查"; - trackflag = "collision"; - controlContainerItem5.Control = panel2; - panel2.Dock = DockStyle.Fill; - panel2.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FrmAnalysis frm = new FrmAnalysis(feats, globeControl1); + frm.Show(); } /// /// 覆土审查 @@ -4734,26 +4746,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH2.Text); - - dataGridViewX6.Size = new Size(185, 92); - dataGridViewX7.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "覆土审查"; - trackflag = "ftAnalysis"; - controlContainerItem5.Control = panel4; - panel4.Visible = true; - panel4.Dock = DockStyle.Fill; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormFT frm = new FormFT(feats, globeControl1, layerTemp); + frm.Show(); } /// /// 水平净距审查 @@ -4764,26 +4764,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH3.Text); - - dataGridViewX8.Size = new Size(190, 92); - dataGridViewX9.Size = new Size(190, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "水平净距审查"; - trackflag = "horizontal"; - controlContainerItem5.Control = panel5; - panel5.Dock = DockStyle.Fill; - panel5.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormHor frm = new FormHor(feats, globeControl1); + frm.Show(); } /// /// 垂直净距审查 @@ -4795,33 +4783,15 @@ //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH4.Text); - dataGridViewX2.Visible = true; - dataGridViewX3.Visible = true; - dataGridViewX2.Size = new Size(185, 92); - dataGridViewX3.Size = new Size(185, 120); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormVer frm = new FormVer(feats, globeControl1,layerTemp); + frm.Show(); - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "垂直净距审查"; - trackflag = "vertical"; - //globeControl1.Globe.Action = EnumAction3D.SelectObject; - panel2.Visible = false; - panel3.Visible = false; - panel5.Visible = false; - panel4.Visible = false; - controlContainerItem5.Control = panel1; - panel1.Dock = DockStyle.Fill; - panel1.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); } #endregion diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs index 6d402a5..64d68d4 100644 --- a/MainFrm.designer.cs +++ b/MainFrm.designer.cs @@ -38,17 +38,17 @@ { this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainFrm)); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = 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 dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = 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(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = 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 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 dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); this.dotNetBarManager1 = new DevComponents.DotNetBar.DotNetBarManager(this.components); this.dockSite4 = new DevComponents.DotNetBar.DockSite(); this.dockSite1 = new DevComponents.DotNetBar.DockSite(); @@ -239,30 +239,6 @@ this.保存ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.定位ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.ribbonControl1 = new DevComponents.DotNetBar.RibbonControl(); - this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); - this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); - this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel15 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar20 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItemSH = new DevComponents.DotNetBar.ButtonItem(); @@ -317,13 +293,6 @@ this.buttonItemXT4 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_1 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_2 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); - this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel7 = new DevComponents.DotNetBar.RibbonPanel(); this.gxdw_ribbonbar = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem9 = new DevComponents.DotNetBar.ButtonItem(); @@ -332,6 +301,10 @@ this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem14 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); + this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem(); @@ -339,6 +312,33 @@ this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem(); this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); + this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); + this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar(); this.btn_user_info = new DevComponents.DotNetBar.ButtonItem(); @@ -520,14 +520,14 @@ this.contextMenuStrip3.SuspendLayout(); this.contextMenuStripDeleteLayerNode.SuspendLayout(); this.ribbonControl1.SuspendLayout(); + this.ribbonPanel15.SuspendLayout(); + this.ribbonPanel7.SuspendLayout(); + this.ribbonPanel3.SuspendLayout(); + this.ribbonPanel1.SuspendLayout(); this.ribbonPanel12.SuspendLayout(); this.ribbonPanel5.SuspendLayout(); this.ribbonPanel6.SuspendLayout(); - this.ribbonPanel15.SuspendLayout(); this.ribbonPanel4.SuspendLayout(); - this.ribbonPanel3.SuspendLayout(); - this.ribbonPanel7.SuspendLayout(); - this.ribbonPanel1.SuspendLayout(); this.ribbonPanel2.SuspendLayout(); this.panelOfTable.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit(); @@ -711,7 +711,7 @@ this.toolStripDropDownButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripDropDownButton1.Image"))); this.toolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta; this.toolStripDropDownButton1.Name = "toolStripDropDownButton1"; - this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 21); + this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 20); this.toolStripDropDownButton1.Text = "帮助"; this.toolStripDropDownButton1.Visible = false; // @@ -2101,13 +2101,13 @@ this.ribbonControl1.BackgroundStyle.Class = ""; this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.ribbonControl1.Controls.Add(this.ribbonPanel15); + this.ribbonControl1.Controls.Add(this.ribbonPanel7); + this.ribbonControl1.Controls.Add(this.ribbonPanel3); + this.ribbonControl1.Controls.Add(this.ribbonPanel1); this.ribbonControl1.Controls.Add(this.ribbonPanel12); this.ribbonControl1.Controls.Add(this.ribbonPanel5); - this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel6); - this.ribbonControl1.Controls.Add(this.ribbonPanel3); - this.ribbonControl1.Controls.Add(this.ribbonPanel7); - this.ribbonControl1.Controls.Add(this.ribbonPanel1); + this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel2); this.ribbonControl1.Dock = System.Windows.Forms.DockStyle.Top; this.ribbonControl1.ImeMode = System.Windows.Forms.ImeMode.NoControl; @@ -2152,389 +2152,6 @@ this.ribbonControl1.Text = "ribbonControl1"; this.ribbonControl1.UseCustomizeDialog = false; // - // ribbonPanel12 - // - this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel12.Controls.Add(this.ribbonBar18); - this.ribbonPanel12.Controls.Add(this.ribbonBar13); - this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel12.Name = "ribbonPanel12"; - this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel12.Style.Class = ""; - this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseDown.Class = ""; - this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseOver.Class = ""; - this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel12.TabIndex = 34; - this.ribbonPanel12.Visible = false; - // - // ribbonBar18 - // - this.ribbonBar18.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.BackgroundStyle.Class = ""; - this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.ContainerControlProcessDialogKey = true; - this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem133, - this.buttonItem132}); - this.ribbonBar18.Location = new System.Drawing.Point(508, 0); - this.ribbonBar18.Name = "ribbonBar18"; - this.ribbonBar18.Size = new System.Drawing.Size(75, 59); - this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar18.TabIndex = 1; - // - // - // - this.ribbonBar18.TitleStyle.Class = ""; - this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.TitleStyleMouseOver.Class = ""; - this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.TitleVisible = false; - // - // buttonItem133 - // - this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); - this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem133.Name = "buttonItem133"; - this.buttonItem133.SubItemsExpandWidth = 14; - this.buttonItem133.Text = "审核入库"; - this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); - // - // buttonItem132 - // - this.buttonItem132.Name = "buttonItem132"; - // - // ribbonBar13 - // - this.ribbonBar13.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.BackgroundStyle.Class = ""; - this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.ContainerControlProcessDialogKey = true; - this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem127, - this.buttonItem128, - this.sliderItem1, - this.buttonItem134, - this.buttonItem130, - this.btn_check_history}); - this.ribbonBar13.Location = new System.Drawing.Point(3, 0); - this.ribbonBar13.Name = "ribbonBar13"; - this.ribbonBar13.Size = new System.Drawing.Size(505, 59); - this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar13.TabIndex = 0; - // - // - // - this.ribbonBar13.TitleStyle.Class = ""; - this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.TitleStyleMouseOver.Class = ""; - this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.TitleVisible = false; - // - // buttonItem127 - // - this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); - this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem127.Name = "buttonItem127"; - this.buttonItem127.SubItemsExpandWidth = 14; - this.buttonItem127.Text = "打开数据"; - this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); - // - // buttonItem128 - // - this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); - this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem128.Name = "buttonItem128"; - this.buttonItem128.SubItemsExpandWidth = 14; - this.buttonItem128.Text = "一键审核"; - this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); - // - // sliderItem1 - // - this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem1.LabelWidth = 50; - this.sliderItem1.Name = "sliderItem1"; - this.sliderItem1.Text = "地面透明度"; - this.sliderItem1.TextColor = System.Drawing.Color.Black; - this.sliderItem1.Value = 0; - this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); - // - // buttonItem134 - // - this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); - this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem134.Name = "buttonItem134"; - this.buttonItem134.SubItemsExpandWidth = 14; - this.buttonItem134.Text = "模拟设计修改"; - this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); - // - // buttonItem130 - // - this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); - this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem130.Name = "buttonItem130"; - this.buttonItem130.SubItemsExpandWidth = 14; - this.buttonItem130.Text = "导出审核图"; - this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); - // - // btn_check_history - // - this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); - this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_check_history.Name = "btn_check_history"; - this.btn_check_history.SubItemsExpandWidth = 14; - this.btn_check_history.Text = "审核历史"; - this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); - // - // ribbonPanel5 - // - this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel5.Controls.Add(this.ribbonBar2); - this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel5.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel5.Name = "ribbonPanel5"; - this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel5.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel5.Style.Class = ""; - this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseDown.Class = ""; - this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseOver.Class = ""; - this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel5.TabIndex = 37; - this.ribbonPanel5.Visible = false; - // - // ribbonBar2 - // - this.ribbonBar2.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.BackgroundStyle.Class = ""; - this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.ContainerControlProcessDialogKey = true; - this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemHX1, - this.buttonItemHX2, - this.buttonItemDCTP, - this.sliderItem3}); - this.ribbonBar2.Location = new System.Drawing.Point(3, 0); - this.ribbonBar2.Name = "ribbonBar2"; - this.ribbonBar2.Size = new System.Drawing.Size(350, 92); - this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar2.TabIndex = 0; - // - // - // - this.ribbonBar2.TitleStyle.Class = ""; - this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.TitleStyleMouseOver.Class = ""; - this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.TitleVisible = false; - // - // buttonItemHX1 - // - this.buttonItemHX1.AutoExpandOnClick = true; - this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); - this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX1.Name = "buttonItemHX1"; - this.buttonItemHX1.SubItemsExpandWidth = 14; - this.buttonItemHX1.Text = "导入红线"; - this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); - // - // buttonItemHX2 - // - this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); - this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX2.Name = "buttonItemHX2"; - this.buttonItemHX2.SubItemsExpandWidth = 14; - this.buttonItemHX2.Text = "红线审核"; - this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); - // - // buttonItemDCTP - // - this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); - this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemDCTP.Name = "buttonItemDCTP"; - this.buttonItemDCTP.SubItemsExpandWidth = 14; - this.buttonItemDCTP.Text = "导出图片"; - this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); - // - // sliderItem3 - // - this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem3.LabelWidth = 50; - this.sliderItem3.Name = "sliderItem3"; - this.sliderItem3.Text = "地面透明度"; - this.sliderItem3.TextColor = System.Drawing.Color.Black; - this.sliderItem3.Value = 0; - this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); - // - // ribbonPanel6 - // - this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel6.Controls.Add(this.ribbonBar6); - this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel6.Name = "ribbonPanel6"; - this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel6.Style.Class = ""; - this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseDown.Class = ""; - this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseOver.Class = ""; - this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel6.TabIndex = 38; - this.ribbonPanel6.Visible = false; - // - // ribbonBar6 - // - this.ribbonBar6.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.BackgroundStyle.Class = ""; - this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.ContainerControlProcessDialogKey = true; - this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemSPSZ, - this.buttonItem8, - this.buttonItemLocation, - this.sliderItem2, - this.buttonItemGBJC}); - this.ribbonBar6.Location = new System.Drawing.Point(3, 0); - this.ribbonBar6.Name = "ribbonBar6"; - this.ribbonBar6.Size = new System.Drawing.Size(427, 59); - this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar6.TabIndex = 0; - // - // - // - this.ribbonBar6.TitleStyle.Class = ""; - this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.TitleStyleMouseOver.Class = ""; - this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.TitleVisible = false; - // - // buttonItemSPSZ - // - this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); - this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemSPSZ.Name = "buttonItemSPSZ"; - this.buttonItemSPSZ.SubItemsExpandWidth = 14; - this.buttonItemSPSZ.Text = "双屏设置"; - this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); - // - // buttonItem8 - // - this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); - this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem8.Name = "buttonItem8"; - this.buttonItem8.SubItemsExpandWidth = 14; - this.buttonItem8.Text = "双屏分析"; - this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); - // - // buttonItemLocation - // - this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); - this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemLocation.Name = "buttonItemLocation"; - this.buttonItemLocation.SubItemsExpandWidth = 14; - this.buttonItemLocation.Text = "快速定位"; - this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); - // - // sliderItem2 - // - this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem2.LabelWidth = 50; - this.sliderItem2.Name = "sliderItem2"; - this.sliderItem2.Text = "地面透明度"; - this.sliderItem2.TextColor = System.Drawing.Color.Black; - this.sliderItem2.Value = 0; - this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); - // - // buttonItemGBJC - // - this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); - this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemGBJC.Name = "buttonItemGBJC"; - this.buttonItemGBJC.SubItemsExpandWidth = 14; - this.buttonItemGBJC.Text = "国标检测"; - this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); - // // ribbonPanel15 // this.ribbonPanel15.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3006,157 +2623,6 @@ this.buttonItemXT4_2.Text = "人员修改"; this.buttonItemXT4_2.Click += new System.EventHandler(this.buttonItemXT4_2_Click); // - // ribbonPanel4 - // - this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel4.Controls.Add(this.ribbonBar1); - this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel4.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel4.Name = "ribbonPanel4"; - this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel4.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel4.Style.Class = ""; - this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseDown.Class = ""; - this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseOver.Class = ""; - this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel4.TabIndex = 36; - this.ribbonPanel4.Visible = false; - // - // ribbonBar1 - // - this.ribbonBar1.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.BackgroundStyle.Class = ""; - this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.ContainerControlProcessDialogKey = true; - this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_document_info}); - this.ribbonBar1.Location = new System.Drawing.Point(3, 0); - this.ribbonBar1.Name = "ribbonBar1"; - this.ribbonBar1.Size = new System.Drawing.Size(88, 92); - this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar1.TabIndex = 0; - // - // - // - this.ribbonBar1.TitleStyle.Class = ""; - this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.TitleStyleMouseOver.Class = ""; - this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.TitleVisible = false; - // - // btn_document_info - // - this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); - this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_document_info.Name = "btn_document_info"; - this.btn_document_info.SubItemsExpandWidth = 14; - this.btn_document_info.Text = "文档管理"; - this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); - // - // ribbonPanel3 - // - this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel3.Controls.Add(this.ribbonBar4); - this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel3.Name = "ribbonPanel3"; - this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel3.Style.Class = ""; - this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseDown.Class = ""; - this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseOver.Class = ""; - this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel3.TabIndex = 40; - this.ribbonPanel3.Visible = false; - // - // ribbonBar4 - // - this.ribbonBar4.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.BackgroundStyle.Class = ""; - this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.ContainerControlProcessDialogKey = true; - this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_flag, - this.slider4ground}); - this.ribbonBar4.Location = new System.Drawing.Point(3, 0); - this.ribbonBar4.Name = "ribbonBar4"; - this.ribbonBar4.Size = new System.Drawing.Size(634, 59); - this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar4.TabIndex = 0; - // - // - // - this.ribbonBar4.TitleStyle.Class = ""; - this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.TitleStyleMouseOver.Class = ""; - this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.TitleVisible = false; - // - // btn_flag - // - this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; - this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_flag.Name = "btn_flag"; - this.btn_flag.SubItemsExpandWidth = 14; - this.btn_flag.Text = "标识器管理"; - this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); - // - // slider4ground - // - this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.slider4ground.LabelWidth = 50; - this.slider4ground.Name = "slider4ground"; - this.slider4ground.Text = "地面透明度"; - this.slider4ground.TextColor = System.Drawing.Color.Black; - this.slider4ground.Value = 0; - this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); - // // ribbonPanel7 // this.ribbonPanel7.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3278,6 +2744,87 @@ this.buttonItem14.Text = "导出施工图"; this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click); // + // ribbonPanel3 + // + this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel3.Controls.Add(this.ribbonBar4); + this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel3.Name = "ribbonPanel3"; + this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel3.Style.Class = ""; + this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseDown.Class = ""; + this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseOver.Class = ""; + this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel3.TabIndex = 40; + this.ribbonPanel3.Visible = false; + // + // ribbonBar4 + // + this.ribbonBar4.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.BackgroundStyle.Class = ""; + this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.ContainerControlProcessDialogKey = true; + this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_flag, + this.slider4ground}); + this.ribbonBar4.Location = new System.Drawing.Point(3, 0); + this.ribbonBar4.Name = "ribbonBar4"; + this.ribbonBar4.Size = new System.Drawing.Size(634, 59); + this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar4.TabIndex = 0; + // + // + // + this.ribbonBar4.TitleStyle.Class = ""; + this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.TitleStyleMouseOver.Class = ""; + this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.TitleVisible = false; + // + // btn_flag + // + this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; + this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_flag.Name = "btn_flag"; + this.btn_flag.SubItemsExpandWidth = 14; + this.btn_flag.Text = "标识器管理"; + this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); + // + // slider4ground + // + this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.slider4ground.LabelWidth = 50; + this.slider4ground.Name = "slider4ground"; + this.slider4ground.Text = "地面透明度"; + this.slider4ground.TextColor = System.Drawing.Color.Black; + this.slider4ground.Value = 0; + this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); + // // ribbonPanel1 // this.ribbonPanel1.AutoSize = true; @@ -3332,7 +2879,7 @@ this.btnOutputJPG}); this.ribbonBar21.Location = new System.Drawing.Point(3, 0); this.ribbonBar21.Name = "ribbonBar21"; - this.ribbonBar21.Size = new System.Drawing.Size(649, 59); + this.ribbonBar21.Size = new System.Drawing.Size(447, 59); this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.ribbonBar21.TabIndex = 2; this.ribbonBar21.Text = "浏览模式"; @@ -3394,6 +2941,459 @@ this.btnOutputJPG.Text = "导出图片"; this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click); // + // ribbonPanel12 + // + this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel12.Controls.Add(this.ribbonBar18); + this.ribbonPanel12.Controls.Add(this.ribbonBar13); + this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel12.Name = "ribbonPanel12"; + this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel12.Style.Class = ""; + this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseDown.Class = ""; + this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseOver.Class = ""; + this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel12.TabIndex = 34; + this.ribbonPanel12.Visible = false; + // + // ribbonBar18 + // + this.ribbonBar18.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.BackgroundStyle.Class = ""; + this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.ContainerControlProcessDialogKey = true; + this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem133, + this.buttonItem132}); + this.ribbonBar18.Location = new System.Drawing.Point(508, 0); + this.ribbonBar18.Name = "ribbonBar18"; + this.ribbonBar18.Size = new System.Drawing.Size(75, 59); + this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar18.TabIndex = 1; + // + // + // + this.ribbonBar18.TitleStyle.Class = ""; + this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.TitleStyleMouseOver.Class = ""; + this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.TitleVisible = false; + // + // buttonItem133 + // + this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); + this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem133.Name = "buttonItem133"; + this.buttonItem133.SubItemsExpandWidth = 14; + this.buttonItem133.Text = "审核入库"; + this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); + // + // buttonItem132 + // + this.buttonItem132.Name = "buttonItem132"; + // + // ribbonBar13 + // + this.ribbonBar13.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.BackgroundStyle.Class = ""; + this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.ContainerControlProcessDialogKey = true; + this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem127, + this.buttonItem128, + this.sliderItem1, + this.buttonItem134, + this.buttonItem130, + this.btn_check_history}); + this.ribbonBar13.Location = new System.Drawing.Point(3, 0); + this.ribbonBar13.Name = "ribbonBar13"; + this.ribbonBar13.Size = new System.Drawing.Size(505, 59); + this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar13.TabIndex = 0; + // + // + // + this.ribbonBar13.TitleStyle.Class = ""; + this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.TitleStyleMouseOver.Class = ""; + this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.TitleVisible = false; + // + // buttonItem127 + // + this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); + this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem127.Name = "buttonItem127"; + this.buttonItem127.SubItemsExpandWidth = 14; + this.buttonItem127.Text = "打开数据"; + this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); + // + // buttonItem128 + // + this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); + this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem128.Name = "buttonItem128"; + this.buttonItem128.SubItemsExpandWidth = 14; + this.buttonItem128.Text = "一键审核"; + this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); + // + // sliderItem1 + // + this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem1.LabelWidth = 50; + this.sliderItem1.Name = "sliderItem1"; + this.sliderItem1.Text = "地面透明度"; + this.sliderItem1.TextColor = System.Drawing.Color.Black; + this.sliderItem1.Value = 0; + this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); + // + // buttonItem134 + // + this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); + this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem134.Name = "buttonItem134"; + this.buttonItem134.SubItemsExpandWidth = 14; + this.buttonItem134.Text = "模拟设计修改"; + this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); + // + // buttonItem130 + // + this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); + this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem130.Name = "buttonItem130"; + this.buttonItem130.SubItemsExpandWidth = 14; + this.buttonItem130.Text = "导出审核图"; + this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); + // + // btn_check_history + // + this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); + this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_check_history.Name = "btn_check_history"; + this.btn_check_history.SubItemsExpandWidth = 14; + this.btn_check_history.Text = "审核历史"; + this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); + // + // ribbonPanel5 + // + this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel5.Controls.Add(this.ribbonBar2); + this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel5.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel5.Name = "ribbonPanel5"; + this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel5.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel5.Style.Class = ""; + this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseDown.Class = ""; + this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseOver.Class = ""; + this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel5.TabIndex = 37; + this.ribbonPanel5.Visible = false; + // + // ribbonBar2 + // + this.ribbonBar2.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.BackgroundStyle.Class = ""; + this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.ContainerControlProcessDialogKey = true; + this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemHX1, + this.buttonItemHX2, + this.buttonItemDCTP, + this.sliderItem3}); + this.ribbonBar2.Location = new System.Drawing.Point(3, 0); + this.ribbonBar2.Name = "ribbonBar2"; + this.ribbonBar2.Size = new System.Drawing.Size(350, 59); + this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar2.TabIndex = 0; + // + // + // + this.ribbonBar2.TitleStyle.Class = ""; + this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.TitleStyleMouseOver.Class = ""; + this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.TitleVisible = false; + // + // buttonItemHX1 + // + this.buttonItemHX1.AutoExpandOnClick = true; + this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); + this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX1.Name = "buttonItemHX1"; + this.buttonItemHX1.SubItemsExpandWidth = 14; + this.buttonItemHX1.Text = "导入红线"; + this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); + // + // buttonItemHX2 + // + this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); + this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX2.Name = "buttonItemHX2"; + this.buttonItemHX2.SubItemsExpandWidth = 14; + this.buttonItemHX2.Text = "红线审核"; + this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); + // + // buttonItemDCTP + // + this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); + this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemDCTP.Name = "buttonItemDCTP"; + this.buttonItemDCTP.SubItemsExpandWidth = 14; + this.buttonItemDCTP.Text = "导出图片"; + this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); + // + // sliderItem3 + // + this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem3.LabelWidth = 50; + this.sliderItem3.Name = "sliderItem3"; + this.sliderItem3.Text = "地面透明度"; + this.sliderItem3.TextColor = System.Drawing.Color.Black; + this.sliderItem3.Value = 0; + this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); + // + // ribbonPanel6 + // + this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel6.Controls.Add(this.ribbonBar6); + this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel6.Name = "ribbonPanel6"; + this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel6.Style.Class = ""; + this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseDown.Class = ""; + this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseOver.Class = ""; + this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel6.TabIndex = 38; + this.ribbonPanel6.Visible = false; + // + // ribbonBar6 + // + this.ribbonBar6.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.BackgroundStyle.Class = ""; + this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.ContainerControlProcessDialogKey = true; + this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemSPSZ, + this.buttonItem8, + this.buttonItemLocation, + this.sliderItem2, + this.buttonItemGBJC}); + this.ribbonBar6.Location = new System.Drawing.Point(3, 0); + this.ribbonBar6.Name = "ribbonBar6"; + this.ribbonBar6.Size = new System.Drawing.Size(427, 59); + this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar6.TabIndex = 0; + // + // + // + this.ribbonBar6.TitleStyle.Class = ""; + this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.TitleStyleMouseOver.Class = ""; + this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.TitleVisible = false; + // + // buttonItemSPSZ + // + this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); + this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemSPSZ.Name = "buttonItemSPSZ"; + this.buttonItemSPSZ.SubItemsExpandWidth = 14; + this.buttonItemSPSZ.Text = "双屏设置"; + this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); + // + // buttonItem8 + // + this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); + this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem8.Name = "buttonItem8"; + this.buttonItem8.SubItemsExpandWidth = 14; + this.buttonItem8.Text = "双屏分析"; + this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); + // + // buttonItemLocation + // + this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); + this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemLocation.Name = "buttonItemLocation"; + this.buttonItemLocation.SubItemsExpandWidth = 14; + this.buttonItemLocation.Text = "快速定位"; + this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); + // + // sliderItem2 + // + this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem2.LabelWidth = 50; + this.sliderItem2.Name = "sliderItem2"; + this.sliderItem2.Text = "地面透明度"; + this.sliderItem2.TextColor = System.Drawing.Color.Black; + this.sliderItem2.Value = 0; + this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); + // + // buttonItemGBJC + // + this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); + this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemGBJC.Name = "buttonItemGBJC"; + this.buttonItemGBJC.SubItemsExpandWidth = 14; + this.buttonItemGBJC.Text = "国标检测"; + this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); + // + // ribbonPanel4 + // + this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel4.Controls.Add(this.ribbonBar1); + this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel4.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel4.Name = "ribbonPanel4"; + this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel4.Style.Class = ""; + this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseDown.Class = ""; + this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseOver.Class = ""; + this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel4.TabIndex = 36; + this.ribbonPanel4.Visible = false; + // + // ribbonBar1 + // + this.ribbonBar1.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.BackgroundStyle.Class = ""; + this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.ContainerControlProcessDialogKey = true; + this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_document_info}); + this.ribbonBar1.Location = new System.Drawing.Point(3, 0); + this.ribbonBar1.Name = "ribbonBar1"; + this.ribbonBar1.Size = new System.Drawing.Size(88, 59); + this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar1.TabIndex = 0; + // + // + // + this.ribbonBar1.TitleStyle.Class = ""; + this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.TitleStyleMouseOver.Class = ""; + this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.TitleVisible = false; + // + // btn_document_info + // + this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); + this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_document_info.Name = "btn_document_info"; + this.btn_document_info.SubItemsExpandWidth = 14; + this.btn_document_info.Text = "文档管理"; + this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); + // // ribbonPanel2 // this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3736,14 +3736,14 @@ this.dataGridViewX1.AllowUserToAddRows = false; this.dataGridViewX1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; this.dataGridViewX1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle12.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle12; + dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle1; this.dataGridViewX1.Dock = System.Windows.Forms.DockStyle.Fill; this.dataGridViewX1.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX1.Location = new System.Drawing.Point(0, 5); @@ -4019,14 +4019,14 @@ this.dataGridViewLineList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn19, this.dataGridViewTextBoxColumn20}); - dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle13.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle13; + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle2; this.dataGridViewLineList.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewLineList.Location = new System.Drawing.Point(9, 155); this.dataGridViewLineList.Name = "dataGridViewLineList"; @@ -4114,14 +4114,14 @@ this.dataGridViewTextBoxColumn24, this.dataGridViewTextBoxColumn25, this.水平净距}); - dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle14.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle14.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle14.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle14.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle14; + dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle3.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle3; this.dataGridViewAnalysisResult.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewAnalysisResult.Location = new System.Drawing.Point(8, 310); this.dataGridViewAnalysisResult.Name = "dataGridViewAnalysisResult"; @@ -4356,21 +4356,21 @@ this.dataGridViewX2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn10, this.dataGridViewTextBoxColumn11}); - dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle15.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle15; + dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle4.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle4; this.dataGridViewX2.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX2.Location = new System.Drawing.Point(12, 127); this.dataGridViewX2.Name = "dataGridViewX2"; this.dataGridViewX2.ReadOnly = true; this.dataGridViewX2.RowHeadersVisible = false; this.dataGridViewX2.RowTemplate.Height = 23; - this.dataGridViewX2.Size = new System.Drawing.Size(36130, 92); + this.dataGridViewX2.Size = new System.Drawing.Size(184, 92); this.dataGridViewX2.TabIndex = 11; // // dataGridViewTextBoxColumn10 @@ -4450,21 +4450,21 @@ this.Column6, this.Colomn12, this.Column5}); - dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle16.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle16.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle5; this.dataGridViewX3.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX3.Location = new System.Drawing.Point(12, 272); this.dataGridViewX3.Name = "dataGridViewX3"; this.dataGridViewX3.ReadOnly = true; this.dataGridViewX3.RowHeadersVisible = false; this.dataGridViewX3.RowTemplate.Height = 23; - this.dataGridViewX3.Size = new System.Drawing.Size(36129, 127); + this.dataGridViewX3.Size = new System.Drawing.Size(184, 127); this.dataGridViewX3.TabIndex = 5; this.dataGridViewX3.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX3_MouseDoubleClick); // @@ -4678,7 +4678,7 @@ // // textBoxX4 // - this.textBoxX4.Location = new System.Drawing.Point(81, 61); + this.textBoxX4.Location = new System.Drawing.Point(81, 393); this.textBoxX4.Name = "textBoxX4"; this.textBoxX4.Size = new System.Drawing.Size(87, 21); this.textBoxX4.TabIndex = 16; @@ -4692,7 +4692,7 @@ this.labelX24.BackgroundStyle.Class = ""; this.labelX24.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX24.Image = ((System.Drawing.Image)(resources.GetObject("labelX24.Image"))); - this.labelX24.Location = new System.Drawing.Point(7, 403); + this.labelX24.Location = new System.Drawing.Point(7, 735); this.labelX24.Name = "labelX24"; this.labelX24.Size = new System.Drawing.Size(77, 23); this.labelX24.TabIndex = 14; @@ -4708,21 +4708,21 @@ this.dataGridViewX8.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn12, this.dataGridViewTextBoxColumn13}); - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle17.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle6.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle6; this.dataGridViewX8.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX8.Location = new System.Drawing.Point(10, 120); + this.dataGridViewX8.Location = new System.Drawing.Point(10, 452); this.dataGridViewX8.Name = "dataGridViewX8"; this.dataGridViewX8.ReadOnly = true; this.dataGridViewX8.RowHeadersVisible = false; this.dataGridViewX8.RowTemplate.Height = 23; - this.dataGridViewX8.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX8.Size = new System.Drawing.Size(119, 92); this.dataGridViewX8.TabIndex = 11; // // dataGridViewTextBoxColumn12 @@ -4743,7 +4743,7 @@ // this.listBox3.FormattingEnabled = true; this.listBox3.ItemHeight = 12; - this.listBox3.Location = new System.Drawing.Point(8, 429); + this.listBox3.Location = new System.Drawing.Point(8, 761); this.listBox3.Name = "listBox3"; this.listBox3.Size = new System.Drawing.Size(195, 16); this.listBox3.TabIndex = 0; @@ -4758,7 +4758,7 @@ // this.labelX11.BackgroundStyle.Class = ""; this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX11.Location = new System.Drawing.Point(10, 93); + this.labelX11.Location = new System.Drawing.Point(10, 425); this.labelX11.Name = "labelX11"; this.labelX11.Size = new System.Drawing.Size(63, 23); this.labelX11.TabIndex = 1; @@ -4768,7 +4768,7 @@ this.buttonX12.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX12.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX12.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX12.Location = new System.Drawing.Point(8, 217); + this.buttonX12.Location = new System.Drawing.Point(8, 549); this.buttonX12.Name = "buttonX12"; this.buttonX12.Size = new System.Drawing.Size(65, 23); this.buttonX12.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4781,7 +4781,7 @@ this.buttonX13.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX13.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX13.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX13.Location = new System.Drawing.Point(9, 478); + this.buttonX13.Location = new System.Drawing.Point(9, 810); this.buttonX13.Name = "buttonX13"; this.buttonX13.Size = new System.Drawing.Size(75, 23); this.buttonX13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4803,21 +4803,21 @@ this.dataGridViewTextBoxColumn16, this.dataGridViewTextBoxColumn17, this.dataGridViewTextBoxColumn18}); - dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle18.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle7; this.dataGridViewX9.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX9.Location = new System.Drawing.Point(11, 271); + this.dataGridViewX9.Location = new System.Drawing.Point(11, 603); this.dataGridViewX9.Name = "dataGridViewX9"; this.dataGridViewX9.ReadOnly = true; this.dataGridViewX9.RowHeadersVisible = false; this.dataGridViewX9.RowTemplate.Height = 23; - this.dataGridViewX9.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX9.Size = new System.Drawing.Size(193, 127); this.dataGridViewX9.TabIndex = 5; this.dataGridViewX9.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX9_MouseDoubleClick); // @@ -4866,7 +4866,7 @@ this.buttonX14.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX14.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX14.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX14.Location = new System.Drawing.Point(128, 478); + this.buttonX14.Location = new System.Drawing.Point(128, 810); this.buttonX14.Name = "buttonX14"; this.buttonX14.Size = new System.Drawing.Size(75, 23); this.buttonX14.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4879,7 +4879,7 @@ this.buttonX15.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX15.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX15.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX15.Location = new System.Drawing.Point(112, 217); + this.buttonX15.Location = new System.Drawing.Point(112, 549); this.buttonX15.Name = "buttonX15"; this.buttonX15.Size = new System.Drawing.Size(92, 23); this.buttonX15.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4894,7 +4894,7 @@ // this.labelX15.BackgroundStyle.Class = ""; this.labelX15.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX15.Location = new System.Drawing.Point(174, 61); + this.labelX15.Location = new System.Drawing.Point(174, 393); this.labelX15.Name = "labelX15"; this.labelX15.Size = new System.Drawing.Size(20, 23); this.labelX15.TabIndex = 7; @@ -4908,7 +4908,7 @@ this.comboBoxEx4.Enabled = false; this.comboBoxEx4.FormattingEnabled = true; this.comboBoxEx4.ItemHeight = 15; - this.comboBoxEx4.Location = new System.Drawing.Point(81, 29); + this.comboBoxEx4.Location = new System.Drawing.Point(81, 361); this.comboBoxEx4.Name = "comboBoxEx4"; this.comboBoxEx4.Size = new System.Drawing.Size(123, 21); this.comboBoxEx4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4926,7 +4926,7 @@ this.checkBoxX7.BackgroundStyle.Class = ""; this.checkBoxX7.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX7.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX7.Location = new System.Drawing.Point(8, 5); + this.checkBoxX7.Location = new System.Drawing.Point(8, 337); this.checkBoxX7.Name = "checkBoxX7"; this.checkBoxX7.Size = new System.Drawing.Size(90, 23); this.checkBoxX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4944,7 +4944,7 @@ this.checkBoxX8.BackgroundStyle.Class = ""; this.checkBoxX8.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX8.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX8.Location = new System.Drawing.Point(118, 5); + this.checkBoxX8.Location = new System.Drawing.Point(118, 337); this.checkBoxX8.Name = "checkBoxX8"; this.checkBoxX8.Size = new System.Drawing.Size(86, 23); this.checkBoxX8.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4961,7 +4961,7 @@ // this.labelX19.BackgroundStyle.Class = ""; this.labelX19.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX19.Location = new System.Drawing.Point(11, 61); + this.labelX19.Location = new System.Drawing.Point(11, 393); this.labelX19.Name = "labelX19"; this.labelX19.Size = new System.Drawing.Size(70, 23); this.labelX19.TabIndex = 1; @@ -4976,7 +4976,7 @@ // this.labelX21.BackgroundStyle.Class = ""; this.labelX21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX21.Location = new System.Drawing.Point(10, 29); + this.labelX21.Location = new System.Drawing.Point(10, 361); this.labelX21.Name = "labelX21"; this.labelX21.Size = new System.Drawing.Size(70, 23); this.labelX21.TabIndex = 1; @@ -4989,7 +4989,7 @@ this.labelX22.BackgroundStyle.Class = ""; this.labelX22.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX22.Image = ((System.Drawing.Image)(resources.GetObject("labelX22.Image"))); - this.labelX22.Location = new System.Drawing.Point(9, 245); + this.labelX22.Location = new System.Drawing.Point(9, 577); this.labelX22.Name = "labelX22"; this.labelX22.Size = new System.Drawing.Size(70, 23); this.labelX22.TabIndex = 1; @@ -5043,7 +5043,7 @@ this.buttonX7.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX7.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX7.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX7.Location = new System.Drawing.Point(119, 440); + this.buttonX7.Location = new System.Drawing.Point(119, 418); this.buttonX7.Name = "buttonX7"; this.buttonX7.Size = new System.Drawing.Size(40, 23); this.buttonX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5086,21 +5086,21 @@ this.dataGridViewX4.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn1, this.dataGridViewTextBoxColumn2}); - dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle19.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle19.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle19.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle8; this.dataGridViewX4.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX4.Location = new System.Drawing.Point(7, 84); this.dataGridViewX4.Name = "dataGridViewX4"; this.dataGridViewX4.ReadOnly = true; this.dataGridViewX4.RowHeadersVisible = false; this.dataGridViewX4.RowTemplate.Height = 23; - this.dataGridViewX4.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX4.Size = new System.Drawing.Size(130, 92); this.dataGridViewX4.TabIndex = 3; // // dataGridViewTextBoxColumn1 @@ -5150,7 +5150,7 @@ this.buttonX6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(253))))); this.buttonX6.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX6.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX6.Location = new System.Drawing.Point(11, 440); + this.buttonX6.Location = new System.Drawing.Point(11, 418); this.buttonX6.Name = "buttonX6"; this.buttonX6.Size = new System.Drawing.Size(75, 23); this.buttonX6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5171,21 +5171,21 @@ this.dataGridViewTextBoxColumn4, this.Column3, this.Column4}); - dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle20.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle20.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle20.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle20.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle9.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle9; this.dataGridViewX5.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX5.Location = new System.Drawing.Point(7, 225); this.dataGridViewX5.Name = "dataGridViewX5"; this.dataGridViewX5.ReadOnly = true; this.dataGridViewX5.RowHeadersVisible = false; this.dataGridViewX5.RowTemplate.Height = 23; - this.dataGridViewX5.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX5.Size = new System.Drawing.Size(132, 127); this.dataGridViewX5.TabIndex = 5; this.dataGridViewX5.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX5_MouseDoubleClick); // @@ -5372,14 +5372,14 @@ this.dataGridViewX6.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn5, this.dataGridViewTextBoxColumn6}); - dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle21.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle21.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle21.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle21.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle21; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle10.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle10; this.dataGridViewX6.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX6.Location = new System.Drawing.Point(8, 111); this.dataGridViewX6.Name = "dataGridViewX6"; @@ -5456,14 +5456,14 @@ this.dataGridViewTextBoxColumn7, this.dataGridViewTextBoxColumn8, this.dataGridViewTextBoxColumn9}); - dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle22.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle22.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle22.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle22.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle22; + dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle11.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle11; this.dataGridViewX7.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX7.Location = new System.Drawing.Point(9, 262); this.dataGridViewX7.Name = "dataGridViewX7"; @@ -5704,14 +5704,14 @@ this.contextMenuStripDeleteLayerNode.ResumeLayout(false); this.ribbonControl1.ResumeLayout(false); this.ribbonControl1.PerformLayout(); + this.ribbonPanel15.ResumeLayout(false); + this.ribbonPanel7.ResumeLayout(false); + this.ribbonPanel3.ResumeLayout(false); + this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel12.ResumeLayout(false); this.ribbonPanel5.ResumeLayout(false); this.ribbonPanel6.ResumeLayout(false); - this.ribbonPanel15.ResumeLayout(false); this.ribbonPanel4.ResumeLayout(false); - this.ribbonPanel3.ResumeLayout(false); - this.ribbonPanel7.ResumeLayout(false); - this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel2.ResumeLayout(false); this.panelOfTable.ResumeLayout(false); this.panelOfTable.PerformLayout(); diff --git a/MainFrm.resx b/MainFrm.resx index 7adac26..7507c41 100644 --- a/MainFrm.resx +++ b/MainFrm.resx @@ -395,6 +395,365 @@ pHffVcd+IJjI7uGHsRscJEPURMMn2FMtNTwuFusPrjFl48ji7nIAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZCNzIxMDY4NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 + QTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZCNzIxMDY3NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 + QTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjQ3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6N9zpwAAAB70lEQVRIS7WTTShEURTHZyIfk0zRlPKxs7SwsZWFvSQbC0lW + CsNuMMjK9+4tWKAksbCxsWIjipIis3gWhpSPhZTkq+Oc+8697ntz53mFf/3mzDvn3P9/5r2ZEAD8K8bm + X2Js/iXOi4+2qqIWAsgpV4tHvgocsFlZDA8byyDq+pKoPPJV4IC18iK4XV0AUVfmReWRr1wBi2URC4Fs + 3MzPcZ3NmHlQt88VYMUKID0zBunpUUhPJh3oWvamRkDsTCQh1deJPeoj2Kee3KUd9ncHTJfkgT3YC/ZQ + H9jJ/m8SPWAPx8V7sYP1pL3Z6cldek9nEdphf3fAeDTXQiAbB02Nop7FuzJmOoni3GX2/5ZI8VGiKAd2 + G+qA6nFHq6g8CqafAgYiYQuBeCScotpdGBafsrSqxkJAw/z/+Ckgm8j0/RMUdM0jt34T8PL2oeCAfGeq + iQKy4ScyfHp+VXBAzJlqMhlLdKGB957D/eOzwjtDnGdiMpbookPXd4+BoX1x0GQs0UUH7Kv7wHBAvtFY + oosOnF7cBIYDYkZjiS48kPEMjs4vFd5ZtKx6G49VGI0lBtGvpB5pIZO9E1tB19hvoxlDe8G/AYt+5xRS + QYY7hykFB9TSjKG94M/AKzLc3j9TcAAZu2UylvgJDV3PRN1zl0KhL06k1hGgG+rkAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCREI4OERDNEFENjExRTRBMDIyRjhCMTI2OTg1 + QzRCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCREI4OERCNEFENjExRTRBMDIyRjhCMTI2OTg1 + QzRCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjY3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5EAI7UAAAEwElEQVRIS6WVf0yUdRzHv/f7nueeu+cO4UQEIdnNarXUyLUa + IqdOJggklBBuYoDGLw8UFJWTmBYYDEFQiARJgakJOAQHVF5UgIgobYkFRDFdNPgjx3LFr/v2+VzHI9gP + 2fhsr32ez4/n/eX78Pnel/QUOSyIp1p3gcNCkXflOxy6le8wCM8T8Hznq+O6CJCWAiJy84RuIbCdebqW + weYX6J1SZ3ojTzcCOWvfFQP9MlubCwvISUeubt60fagLb8/RdX6SrHGpTtVw8Px5f+Pz1JKlbYz3Z9aA + oGv6NpU37KDv3uXltO4wH0W+Pq6dF61Z2h3gp1qztQ/MYewKiC0/1D9HmzL5CoVM5AriekADsEXvcmu6 + ivX0+gfau8TyPv9UvjjKvwN+6vox/n5GOGtszuTbemtX0Aazptwu7ggwgBgQARLo/Q2YJC2Z/P/SlMFH + gZ9ufo8fyghjjQ1mvqOn2oPWpM0RV9qFbdZo5g3wjvXaEX4QAs1/cjVdEwPe2pCu+flgCGOsO6jp7D7n + Ti+kqM/IpUQQr9qr1kOf5G9xjRx2Zrld7UnLE7lMciVN/a/UHVDvBm8F/1NqMGO8lKK+eeOMG61M4krt + 4otQvPaAOgD6/oS6OdJXoapLU9d0nVtOL+zjruo4kTu5lML9g4v7uHjwVvCDyVuUxqokruubYldaFq86 + DaJLZ8RBJBj6xi+mcKOZYYyxOpmrby/3oOdNXJ2eF7tDjyOpMnFzqNzDJYK3gh9I3Kz0rUjgui0FS2nx + LtWp2eLn93BboW+80sSNpAYxfuVxqqbWIjdaFqeq1alEy6DHCWDI2TiVQHmsygTeWhar6o9cp3jt492q + 7pbcJfTkTrZwlrgC6qEB3u7Ti5a9SGcI8zfQ4hi2RjtbHKeqdBdr46MY1gTeWhLN9gV5yVblbGeyPst1 + ofmRzFloFMRLYtg3oW8CRSenqQDGWtYmPntkCSnaySArgcnCSGY42EvmBWnngh1Ma1mChga+LHsFYvyL + lCcjmbfsfb+i4B8TUwIYQ48L8Fgc7cR2JcmLUFZ+mq6n+wMUMZBaAqhzwpXF9UedqTlYkbHaQ7I4921l + IvROQe9w1Dr5RhQcezQuYF8Ap+uxONrxMCUymr1NOcLIbVvUAdK4DXI95IYuH9ZTqFtD/QzC955h9OEj + gSdrAE4cIcdCFMhk5huKHghxiyyAp1Ic7SMzmAMV1VDrxZcejDycN9gPGoRkBMnJkUB5LzDmqRc/Aykl + 5hAwPJ0qwBFfGLg/Om/sCyjIIX8Z2e8nS6mId6BJG2UlkOQAEebtJo54VWpb4Lsff5k39gWcUJwYn5Uw + KZtk7fBsNa2XFUKMd6EIYhHkN4HvDzR6znxbgVv3hgSerPHOhmbQcCV7N+DNRkQhqyUuJqO0owx2Arnf + k9dLb4Mfzo/mMbbGrpWeEovIS9C7BQhHkbZvBwQwhjxelaF2fAAnYvKV2gATG/QiPvp1aVqCj7QXcpPA + WNxa6bWQlZKtUMfDhiOMo+iGgpau7wXsC6yy1xE8OwqS4CMRAMMZxt92HNXFAE4VimIz3lb4n7f97qNg + c8ddAfsCKDzXYr0lcwBDAdySAsBTiQuiMBaFSwUET6PoDMI3n2OE/AXV7wtcYQSjewAAAABJRU5ErkJg + gg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjk0MDA4MTVGNEFENjExRTRCNjgzRThBMjlFMzdD + NDk4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk0MDA4MTVFNEFENjExRTRCNjgzRThBMjlFMzdD + NDk4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjk3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7U3Gz1AAADLUlEQVRIS7WTa0gUURzFV4mKMqVC0XytgabkmiauZOKDwlQk + wswiycAPGoVSFmRFJC0tQX5Ii4VAc9V87KqhGdima33wQSZWoilqaa1u66qwGSKleZo7OzOM4/gI6sDv + Mvfe//8cZu5cCYD/ivgiT889HFQUYFAxy5zE+vnQw8Lc6xWpc7fHVE0ZprRqkGexGoLQmIUexBpYNK7b + YC57BHNlIcizWA1BaMxCD2INLGWudvj2+AFGFDkoddn67wJayo9W1OT5j2py96A+Lxh1dwOhveULar1S + rF5ozEIPwuLmkriapqKQyZmJ04tzllNgoebQq0OnmtWxNcIeoTELPfAL9er4quaikKnZ6ROUYRLaNRFo + vB+MztpDmDGfBFnXF4dONxfHafh9QmMWeuAXahXeXy3jx/FjIhHlV71QnhmEzpyz0Ocepuffxw/A/Dke + WoWPgfpLbf82wLbq5m7jjCkBfU1RaMwNR3tqErpSE9ESLYfuRjjeP5PDNLwfpC72SOgm621YRcKAyhxP + o8UQg6aCvSg8E4CLW2yQzVCaHoCOUjmM/f4gdZERgZsZm5W1LOCym3F6JAJ9tb7QKaNg0qitF626DE3K + aAzpwmHokSEh0md2p4cMPJbdclqCAInminRwVCdfNPZIUZHhguoML7TlJ0N3OwJ1l6SYGJDjXaXvIjGd + /w0OMmcsl0oYoM+PKa664GIabtgFQ7cnPhbI8OaODP0PA2Hs3YeBlzJUnHc2EcO5XwscTMDyMxEGEBqV + B7VPMpwMrVnO84MNfhh64YeBel+0XvcBtT7WoAh7SgxnZn9yMAGOVleexAIILflx9zRZ0u6SlB3QpLvj + WJgP+605Ji2zHMI9CuuZrBRAoGSj3L4Rvdnn6KYxs2XdkPr1BEhy7TegNzONbhg2TK4bJmDTmgHX7GzR + nZZMN/R+Mq4bJsCRDhDCF3XBVOSShTm50k18uvq/cAj3HJy9dVS725oBApG/JJIiiZi0fRjmIHNqPYXs + MZC6td9AIPKfkxA3Yvjq7QAHExBE9hhInfUMVmI1EUNdRx8HE0CMl0rMmGU1UYYqYsrCffMlkkj+AEZF + 7H7+T6nEAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzNzJDMjE3NEFENjExRTRCNjE0OEVEQzI4MEM0 + RTZDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzNzJDMjE2NEFENjExRTRCNjE0OEVEQzI4MEM0 + RTZDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6PyaLfAAADMElEQVRIS6VUXUiTYRT+vi3Tzd+ps23+3KRigtiPkolEQReG + UYTkhWatpWlWGkRdddfdSPImqUAJjSIT00oxLJIk0cR+tFSyzDJtgaMkDEPkdM7ZPvm2vS6jBx6es3Pe + 8zzvtm+TohLS/ov+AACStLgEQuJyLRJWYK1yzh/+FgCoQrpnfM4fOGBhcUlIMkEVkma4H4i1y2kFcMD8 + wqKQZILKZqTqmlTAWrfvMjhgbv63Dwm0hLWQohn1eNEbzrlfPiTQAtZCKjP1GXdAIC+r4XD+9CGBFrDm + RVJ1re6pZ0GyHHMvIawauYVNCFPfvvuQQAtYC6meKXU0amNsaGN/ZR60xIf9aIgN3cpGE9OzZCZ85nEm + pGiWlLABmuJCnUOXrNB7chdct4TUo32ANDbp4NuielDpqWfePdaPX6GrohSK4uLhlCEo96YlZLbOFHzH + oJXjMSBcGn4/zQGovEDqXXtzeTb+BTrKj0J3+Q54djYP7EZdTU2MPjFSK8eieQR9QtLg6GcOQPWgqKeQ + ZyOfoK30CDw+lg2Ot3Z4VLoNqo269mCNHIa2WjYn9A1PcAAqU6m9VV3TF9psOwwPS3JgZugCdNoyocwU + jU+RlImWBpezGz0vxzkA1YOiHvPFO7Ca1kGHLQtmXp2HdutmqN+/F6JiU+h3kOpyVeHJwBgHoLIpqajm + 189HoaG4CNqsGTA1UAWth9Lg6r490PygGyLjUikgzuWqQlffCAegelDdUwLqigqhpXgjTPYeh+bCFCg2 + RkEk3vxuVz/P0c43oLP3DQegLhspNalSFxiNcLswHT48LYNbBUlQk7ebzenmyhm08w1o7xmiAP6hRZiT + 70eYkzpctUuJWdHmwWs74+F1Uz7cyE+E4ohQB5mHm9a3GywpTXzektyKduIAIsKI3ISkL4rIdYle05C9 + VrZVBmvtl7eboUyv7V4jSQdwRn8FdI72iErtCUxnIuifkJ5hUqUOq9Jr7OeCNU6bTpNVqtMcDJSldOwn + KnOk+jypJ5QANRWc0cs5SEelXr54QidfwVYAMoiHq4W/gNM6OaNCJ+diaUIqN/43+Atwg27t+9ZXBUn6 + A2MdqQeVc5pWAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN + yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc + c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg + 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 + cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 + ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw + O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD + nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz + 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn + k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I + 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df + WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs + T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda + SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjU3QTU3RDNFNEFBOTExRTRBQ0FFQkQxRTZFOTNF + OTIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjU3QTU3RDNENEFBOTExRTRBQ0FFQkQxRTZFOTNF + OTIzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUI3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz70M76IAAAENElEQVRIS52SDUxVZRjHD/SBcFOZSgoqKWQQBhjyofdaQQp3 + E+d0Ko4xW8221kLKRC4QRUCJERKklAXEx4UNYYDJh7guAy4IXTTSGyhfFxQklitNZzmD+ve87+WcLnBc + jHf77T3v857n9z/nvEcAMCfG/zYjt2eJbHE2yAUsdvbcSzSxWaxJN84GanyUOMBmsWYhj/d9IRT6tgvw + DAgGrQ/xgAfj/8waJj+ccARPrvZmgkBWk+QvhuLayBiohl7TdTFkt3D/rwnpKf4PamhppicsO10nhgQR + 7zH54PAoyCWha25j+w3CvfvjsjI5WEBj6wVQD05VmUPYZxm4NsprIj0D1+G9UW1+gzt/PJCVycECGvQG + UA+nqlaH3sERac3o7huC14YQJo9hPcKtu3/KysRR47xwP3GRuFPpbD9R4+aIxhAlruZ9DeqdgvHqAMn5 + t+dy7rl5+94MOd+gcXrlgmPVnqtw6bOjMGnzMKTNgakoB5cyP0GNtws64qNB/ZzOrj7xYA9P8fz8690p + YpHy5fPfqiL5YOFXMGaloWbzBlSsWYaaQH8YM9MwlH8SVV4u+OF4FsiBkoo6LHP1YQFqS48w/MvtKWKR + YkdFV0dqMrqz0qF1VPyevdQuedVK947yg2+j1G05DImxMHyciErVOpCDU1RWLYaEih5hcPS3GXJG3lK7 + CVNmKip3bkWWg20m+2TU2FJZ1wRdvAYlgQEwxkXhG8cnQA6JorJaOJpDbJhH6Bu+yRrnEzGESeSEwzz0 + pb6PXC9X+DmtHpusR7v5BGLHcz4oUK7D5cjXkE33sb/GkhXP+LEABQ+4MjjGAmIOaFKga+2UyHBQ4MeE + Q/hiow/yI8J5TRW8izX6Ji9WFGq3q2F45w2kL7IZp5rLNLicBxj7b/A3WPKUFz7KoAPtv8HJ3aaGdvd2 + nN21FUeW2KJ4/6uIWB+A6EWKiqNO9mg/+Cbyt4Xgw4WP6fgvR0OUWiJ09gzzCwrxYiFJn34JqqEutwCJ + 9o/jZJAS1XQOn7+kRNrzHjgeqETD6/tQHhGGD2g/UvFI+KR/hpwhdHQNSQsKiV3rH4zWzl5QHcWaOCQ9 + 7YwEd1eU7t2Bij07+Zyu8keMwnok0s46hbxWZv1DAtoum/gFk3v4bcG3uu9BNYn6qnpkv7IPcSscELXA + BlF21rciba0KI+ZZqSa90pguZwj6zn4mj2PyinPtoLXEd+1dU9ab1GHskDdN+mYM2QBqCGfy8vrzaLzY + I1Fe34q1/lugScmUair1njkF6E8UVEJnuCJRWqsHC6W9WHbw0UkZvK4KMQfIiR4GfwO39UEoPtOEc+3d + KDnTDHffzVzObqDZg4W8m3gMyrkEnD3/E5PEuPkEISPnFMlfZhINq4vQ+lkW4rTGl+0pLPfkpJYItS1G + DjWGEY1sFmuWUN2KyafX5aT/AeFfWm9WHAbkArwAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdFNUQ0ODMzNEQyQTExRTRBNUQ4RTJGMDI1MThC + RTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdFNUQ0ODMyNEQyQTExRTRBNUQ4RTJGMDI1MThC + RTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzJGNkEzOUYyOTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz41vT1rAAAEBklEQVRIS7WUbUxTZxTHS2/fb6G1VWjrwltfgGGRdgaxbkLV + FawgoKJuyMDotjCrw4ERHC/CQBjWDRQLSHnfmBnBmkBi/LCY+GEO/TBGtiwxYW775odly5aYLC7573ku + LbasJWGJJ/nl5J7n3N957nNvywPwQnnxEW7qaqjjzSSFXwtH2GIkqNx5hQXNZG+CcD0rCVsMJrBjmh1u + Gc7eMnA5MCSwHomwxQD0Znu7lJPR7LqRBN+iA+XjG0PqgWHhHP8pBKA3vdooxZvD8Vw+PpqAke9zUXNX + j/P3LDg4oOXqZf71SENCLgLQ5qxaCYqvbcSF+9loq0/ClF0Dn0kJn1HB5UnbBrTXJaHlm21wXIrl+v1D + hMGuEDGFNmWeFCPPrcX7d7eg7YgaM+ZEzH/aicWJITyeGMTi+CDmuz/G7OZkbv3wZBrsF+Ow5czSB5B+ + TFSqSmUkZFhUiJjbeb0KBUN6VN6xwHVCBR+R/zQ2gIWeLszuysa0UYPZ3CwsdHfh8Ug/fBnJcB1fh73D + JuQPGJHfr+c8lESn0LIsNrwh/H3rBQ3239yEoi9TYfmERY+ZxYOOVvzQ44Y3kcXbpSy2d8jxTrkc3iQW + c811mGtv5vqs3Sws7hjsuJyEHW4DXqmL47y8hGLBaUutGrv7DCgcT4PzuomjYMQEr1aGxe4O3CxxovZA + LIo+S1nmXJkGn+duxUL9aXg1MhSOkfu8Jjh6jcjp1MNcpYZuFzPI0+Yxpdo9zLw2n/mF8JtuD/NU52RA + 6d0gwaOORngz9LDliJBQIoL+kATGI1I4d0oxasvEd65juEb60ipYpL7FIqWchYmQWhkN5Wa+i7wHnoCg + JhgI6QQzIYOQ6VaJn33bUAPPNivOqUS3RKqoHKkuKl8WH1V4dr1oZmJfHuaq3wXp+0du4h8NEJ3Cr4jZ + xH9PwPKsxEPeNI8nIrCEGILCj7JFKbwzcXAfbh9wok0pfNasEA7XxQirmxRCb6dOiftnqjBS4ECDQniP + 9McGEedHzZvvVUWkKZrZ26wUod9uwwx5D1dybOiyvIyruTZ8daIcU2WH0ETWq1imjMiYFdCTYajIQ0Ak + viBfTutLAjSk6nHjcDGmS0u47N6ehQ/XM3+5ZPyPiIieQvj4+pISf/9ZtCq/PtyJqZPJaEqQ4LxOhMZ4 + CUYr4jF9Sk5/ufwlU4S43RzjIWCtPH3iDL72+HVcBP8z8Car5bRGdyEmyFaD9OLJQ+tzHljxxyM7aJ2s + Lz9JyICrldK14CEQeTbHz7PpoNeXj0qHiFe4pF8xoHW/eE20lIj7SMaP40bQXF8oHiNOegzhn6DmdcGa + +WC3oI9knLILhokvRE4jZEDVa8z/ggSV0mMJkdN4PgC8fwGKe+JSzfQhQQAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg4REU0NDQxNEFBOTExRTRBNzQ5RTJDOENEOTZB + MEM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg4REU0NDQwNEFBOTExRTRBNzQ5RTJDOENEOTZB + MEM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUQ3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz55z27YAAADl0lEQVRIS+2Ve0xTZxjGTwgt0EN7WrFqh9MFrdVyE3VMuyVj + WTITRTcz5/6YZHEar0A0JBMBRToMl1QEBURsRSheJhFwVC0yjAtEqJe0IhdtLB0a8TbjNMYtYe7Z+zEx + R9egyzT7xzf55fu+93ne50vO6YWzjRP+EwCGxefQv8FXqBhfQ0uJc8R94sGT1UksJ/7h9xUqhqt/WyFm + a0PkO3Bty4XHaoHXuhueqt1wFebBFh0G0gue8/sMFcPVhMqHWFNH4b2Vu9BRlA/bxzNxWDsGtrhYdBTm + w1tRhrqoMJAvUTTDvbCqNfwQnWdyjOgqMsGq4X8tGS0zpoUEhtI+hbS7jsxUOLZkMq1bNPMkZZiyjJYN + 8YenMAe1C+agSB1UKOozsvfFvYeODclgPrH2wirRju0dRB0Id85GmKMmoGC8+ib1vE8Zr7691zAVFxKX + gPme0YahmGB3BBJq04iAAWdGCkpnTUOWUlpJvbFDGFXSPdb5s+FYuwLMJ9ZeAs6f4I1Kid26cD6Ofz4H + 2UrJwGZBYkkXJEm0lue+pUTbulWoiP8EGwXJKfIrXhrHVhWOZAhhtV8Hd2UqpSj7yIAGeg/bPzQgP0aP + HXEGNC9LQM1Xi7CJdPOnsh9b8pQJ7SbVVQqQsHl7ljKGzq0tearE1nxVOu2Psh7TuJPZArYsloU3GYXT + 5rlBA5ka/z8zJk/AwS8/w+EvFgyupvdjsV7wu5vzrtR5bJPCXLNesYzmHjd/J9xrL9WgYCn/wYksoY3O + j4jfGjcLjcXLgw0smzuSJkdyfODU2lR5m6dpCnrqImCaKR34NsTvcaraH+mhEpTOG4nyBNm9+jT5gwMp + wRW7VvMr2y3jcMs5DT1HI1C3Qd5P2u+3zsfgjmsGaP+I9Vg2V53MozKR77Ym8w+99nD0NUbgZ3sEvCci + ccc5C1ebQtHfGoO+5kj0n4mFNYn/pSqJ73M3RuH6T+G4fioaV2xTcMMRi2vNUTSrRy+dr9j0YNlcyTdB + OFsWhl57NNyH9Og0C+jaq0LPvlG4/P2IQdw1IfDUa+jySLh/0MPdQMEt0+Em7dJ+FS6Rt7s6BJ0WARfL + FYSS5nVg2VzuogC4tk9Ex85JuFCshWsH22vJpEXXnknoqSSsOgrS4fJBHYWydTJBj7NKN+jpJC+bYbMs + y1n098qyufR4KV4n9EnjAgg18fwX5FXB+RHsEvbD8jp4U/93+foffXWA+wv9GwQ30fQQcwAAAABJRU5E + rkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI2OTgxMUNFNEFBOTExRTRBQTEyRTc3RTczN0M4 + QkQzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI2OTgxMUNENEFBOTExRTRBQTEyRTc3RTczN0M4 + QkQzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUY3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6CerVFAAAEkElEQVRIS6WVe1BUVRzHd7n37rK7LLtsLs/ltbsgb8RBQDTl + FaGW4SDWmI8sLAGRtRUBRUhUXhKPAkOReKwmsQIOEOboOsofKlDDI6UZCaH4wwbTcey/1Pl27oaEiV6r + 78xnzu+c8zvnM3PvzL289kDt/4Izcx36N3CmNUDL8jMphVdLbQ6Q0YLAn17nhDMt/hre1/6aX0ipvFwk + R0+RvIDUQgKf3eOCM81+at4pP/UkKVXnD8hws8MD5/JlJWRulrD7L4IzJ3zceQYfd7Og+xMZ7t0MwUib + Fl25f0vYnufBmUZvV16Dt6tZ0JFjjfujofhtZBF+MGrRvsd6RsL2zQVn6ua78I7PdzELWrOkuDsSjLs3 + vDE1HIyBr9xhzJTOSNjef/JSqfF0NgtO6a0wNRCEO4MLceuiL273B6GvwRUnP7aakbD9T3LU03m64kiV + 1sksMKRb4faVQPTVk0t1Vv39TW6Y7PHHlWMuaEx7VlKtdZquOFKudjQL6lIkmLwYgNOZMsQGMqFfpkou + 9VSrMH7OF5eqVKhNljwlqVA7sgN3DrvZmwVfbBVjotsXJ3RShHrQfgvcKKfabRKTqcwRox1euFDmhOok + 8Yyk1M2ePc6dAldbs6Byswhjp71Rl2yFUC3tQ9akMf60oup9senbQnv82OyJs4UOKN8kmvOdPDf5zsrJ + Y47SXad9rNHtIUenWoZOF9nvhKEzzrJtkb60omyjyNS53xbXGz3QkW+P4vWWLy+pVckfdPq7YbC8CGOG + OowbajHWVIvBimJ0BarR7mxdvsyLVhS/Y2lq22uLoVot2vbZ4WCikFtidJKmtpPLbzUexXBlCbqiw9Dq + YY+uiBAMV5RgvL4G7QFqtDhJ05Z6UoqDCUJTS4YS31dp0JJli7x4DskJB8n1vsJ83KgsRYNKgo61dihY + LUK5o6jE4CC515uXhd5DeSD1CGm3CNdSity3hCZjhi36ytU4qVci+80XSOrsxI/GKgrRtmYlDvlZYqBC + g8JEMV7zpcKOOIgqT0aEYjh7B9i+3SsEipQoZt6GxbR6zyrBtQv7VbhW4o4m3TxkxAnmllQrLR/fLNyH + 4wEaZIQI8E22A/SxzHdZK5iHBa9aoiF8AYa2bwHpI4/jL/ITRNgdxwxlxjEP2vS26CZn6re/Al0M86zk + U4Xwj4EcPY4sXohcDwHK1kuxLphK0kXTY/kawYRh9evo1X2EUoXw8Y4oun1nDD2aFkmfSVpKZadH072p + EbSRzC+T9cnjyQqQ+dOSQ3Kmy7B2Nc4mrMRBGwY5WgZ6Z7ohx535tchRjqs7k1H/Riz2KumfNoVRKanL + 6fMbQqm0LeFUFluvX0Rt/GAJXUAu7kuPosGybdksSa6UWpUnF6AmMhyd5D18tjwcJUE++DwiHKakjTC+ + uw65ZP89sUUSOSCbxmZ6tCbIZ63ZEdjvh5IgIbC/Xx4vRco83iWhHuZ4adD8djxaE9eYx9IlIdBLqEcf + WjH3N8ssJ6YZnzXOrp/sz7CJrJsFJJI4AT8mWcRv1In5U4T7hDtbRXxjtIAfT/ZV/w2e6k+0FURyr64p + kAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkExMzE0MEIyNEFDRTExRTQ5MjFBQ0MwRThGNTU3 + REFDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkExMzE0MEIxNEFDRTExRTQ5MjFBQ0MwRThGNTU3 + REFDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RERENjE4NDBDRDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7V3v1pAAABvklEQVRIS6WUMUtCURiGHSKhQSURRbJBIRcbgmjtD7TVL2hv + qCFoaW5oaPI3tERBS+BgEIRR0WCUUEgUgkESYYIhcXrfc++p6+0cPRdfeOD77jnf811vUCg+PTsSQoiB + aIeCoJN60Q4FYWh0Qz6KQBgouhpzcGkYovcttPDM1Zjjk2nftgubzTOX/l+FB15Ep9sbCTpctRP/go/O + 10i4C8KOHfEtGPQHtSKWnjmCNuHYETzsA0nwYrPVDgRnMLsCFumgSMYrJ0iYl19e3wPBGczmAOXGT6QQ + 9cabhLXqTbXqoft7cxUc6BC1p6aEtepNteqhm3KsnuBAh6g+NiSsVW+qVQ+d/YLr+2cJa9WbatVDZ7+g + Uq1LWKveVKseOvsFZzcPEtaqN9Wqh856Qeu4fCXKlzUreDeeKbShs16wt7G9K0qVOyvWtnZENJU7hM56 + QT6ZnRPrWHJQuhAn57daeMY7vDs+EV2FLuVYPdHIJdFkbj6Wzu/jp3+i//3mXiYzhU4kmT2FfBOqBRCR + Um9wUQsyBvhGHFwCy4D/a7zwGc94Jwk40x+dXIFwgG/FRfy+OnjGO//ljE4chMEJhX4AMnDyVRS80DQA + AAAASUVORK5CYII= + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -832,6 +1191,207 @@ FGwBmuRtkA3cGO3whcZUlEdeqKKU8sgLVZRSfjw+MP4DJ2GPpDR9OIsAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkY5QzgyODdDNEFBNjExRTRBQjc4QTlDNkE4RTgy + QzFEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkY5QzgyODdCNEFBNjExRTRBQjc4QTlDNkE4RTgy + QzFEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTkwNkVCNzZBNjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5gwa99AAAE3ElEQVRIS63Re0xTZxgG8E+WbFMXGSI3K1AElAlRJgFUVNYI + qIAXLiIFKXcjq7IxHajRMYZDRASDAspNBStoy0QKCojcKQJHtAgqCEwnHuY2dCbG/bPk2XeIPdOFxsX4 + Js8ffb5z3l9PPvKuA+B/5c0RRsXT5P2byATa6tBMmTh/bSZbNlneHGFkgbydBZfyDhbETHKKth/RcMh7 + GGFkYVbVCA5euIfDij4QwaZztJ1K88HffzURTd59hBGnMioGkSi7g+SSbpDZG+W0nUbz3oAzqfTfJ5b0 + YX9hJwcoaPtWQBJLCmgYTUJ2kEJaT3J3wvCSRFk/EgrV2Jun4oCfaPtWgC5kBh+l4P5oBs0xiLeRHlpP + cnfm4ef2nbmNuBM9+Ca7jQMu0fZ1QEeTiedfTfB2wtwa3IXrfeFQ3YqATxhR03ri7iYe4Mc8rCw+/xak + x7oRe7SZAhuUtJ324lmdiC4VTxJX7jWxlDBd/WFoU29GvSoI3sGkl3uP5r9AqDw2h0HUkQ7EpDdwQDVt + p718fjVYmb20XZ72GasJ/a2i8BZ6PiXgS8K09wahqccfNW0SrA3SCkjKpVldEB9oQ8TBegqsv7JggfAT + DriQasO+fLYZmsgOzB8be1QR7u/7xYf+2wjTcjMUtZ1uUDb5Y7VYG2AmqQhNUyEgqQnipBoQk/V1PPDj + PPbFbyI87LTG+OgyFO2z/HVk8Hy060r7j322EuZqlycuq9xxsd4D7pu1AiGVoamtWLf3GgK/q+aAqxrg + fLI1+3xsCYZbLcEOOSJv99wJYImz7dQN0YSpux6MimYnlNf5YFWAVmBLte/+BnjuugLvnZcosK6BB763 + ZP8cdcRAvQUeDzggb5eQB7wjCXOpeSkU15whUzpC5K8dqPHdUwuRtBJeXys4oFkDlO2zYJ8+XIz+KnM8 + umOPk3FmPLA2nDAVjW6Q1cxDcaUjVvppA0yD69bGVWHF1nK4xZSCGHu38MAeITs+shBqhSl+6bPDyVhT + HlgdRpjS2kUoqpyPfIUdlvtqBYKuuUkvYkloKVZElHBAuwYojTdjf7+/AMzZ2XigtsEJqYAH3CSEOaW0 + Ra7cGlkyKyzbqBUQN7pGXcCigGK4SIoo4NWhAc7tnMM+uWuNjgIjjNywRG6MCQ+IQgiTp7BFerExMk/b + wXmDdqDFKaQUC/2KYB+QT+/Aq5MHvprNjvXNRetxAwx1CZEbbcwDrsGEyThritQiUyTnCuC0TisQ2LY4 + sBjWnifwuV8O/QLPbg0g227MPlaboTFdHwOqOciJMOSB5WLCpJ02QWKOHpKyzeHgpQ2YE6iy31QES/dM + 2HgeATFa08MDMUbsaI8Al5P00NdoguMSAx5YFkiYlHwBdqfPQsJhfdivIbfptjcAXRoBEfjdnOeZRYFD + sHJLAjFYdXfGjOlWvTdOS89EGzwZbDOCut4QndUGyAic+UdTfda3urrTLZz9iXp35qeIS9HF9sSZsFtF + Bug+Mxp9bjk3c2kciKGHkhi6D5JZomFi4DpM9F1qaL+0pip9b8E2y94s8czx9E1644f89J5mhlnclZf9 + kEzPnW09iJLmvo2IjMxfSX62diG1tHd6tZcf7pO4L5lFY/ha9Ibula15MCSP6leXxPR0Fu7QpLsjz4ee + z6CZ9D1CiM4/X3QnEat9eLkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVENUYwQThBNEQyOTExRTQ5QzUzQzdFMkFGQkQy + NTA1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVENUYwQTg5NEQyOTExRTQ5QzUzQzdFMkFGQkQy + NTA1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkRGNkEzOUYyOTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6npMy1AAAGEUlEQVRIS7WVeVDUZRjHf7Ase8ECu+wl4LIXcqyyHC783AWW + 5QaRFTHkMi9SQvE+UhLzwk0BUcQSgQBBgcYDzStMSzOPcpqcmo5pmqk/+rOapqb+iG/PbzfFcSz/6pn5 + zPN739/7fp/nvZn/3TSLjj+XJy2/RaItPCT5vaBd8m1+q2Qku1lcrcvki+iXr7fFU6ZZeOx5KDU1b7jU + 1Z2bVPMPWNMbRXrXkWAc+ywVLbcS8fKwFjlu8VdpW0XzSc6f8PEIPzJ19dFnU3WEJdHL9P3X9O1nkdB8 + CQrX7i3mKn9zfqsUq29ZsPfjRBx5aMO2cTMy94gm7FuF7XyJTwDJTo5GVdHxNALVgsPd5Ceye+9g8b0f + UXbjB8RtH4Msd+MeXS7f6twjxbILZiy7pEHDtTBsvG7BqivTUXpsClLWCbtJNpDwBlGVH3ySIFV520eW + nedRcf0HVJGwbeRrOHs/h2n1CGRZDe7wND/W1hiI8sEYlJ4KRcVpJcrfVqByNBILhqLh3KeA+UXBOpL2 + jkRZduARPGXZ/vH4pnMou/gd7INfIPn4QyQc/RSOzk9hrBtEiKPerUn1Y5PXBaDojWlwdgUjr0+G/H4Z + cnpCUNJrQNZ+LeLrBD/LYnixFEDAKFz7vJQ0r49dO4zikS8x8/ADxLd9jIT2B5ix/z7SX78Pw+K3EJy2 + wq1M4rEz6sRwthgw82Ag2KNS2I5JPZ4rZx00ImGNHIZSfisFkDGhxbs5AkKLd/3kaLkDlgTjXrsNc/Md + mPfeQeyOD2HbcRu6yi4E2Wrd8ngeG71IBPtePWa4JUhsD0DykQAkHQqApUWCFLcGyZvDoZ/P/5oCTGXk + hU2MvGB7rbGmG47dd2Fa+x6iX/kAMa/eQvS2m4jaeAPspvcROb8TQexid3CcL2usFCJjnwE5nQYU9RhR + PGDC7D4TCrqMyDqkR9oePbRz/SZEKh8rI8vdyshyXhmzLD8DS/1VGOquwtgw7glkXH0Nhvp3kbL2GrSl + hyC11ril03xZfbkQKZuVsDeq4NihRtYuDbJ2auBoUsO2TQXrJiWMlWIExflWMiHOjRzfJy0bg776HCKX + vANd7WXol1/xeN3Si7A2XIXW1YbAxAq3UO0zPTSd1yG38bplLK//vxBrffKY4PQ1HH9aKk8jonQUUyvO + Qlt9HtqaCx4/tXIMyXWXMXXOAQTEv+D2zCvDhBBTCN1zCGOCZq3k+DXO1YcpRYOY4hpF2LzTCCs74/VE + 3IvnEVd1EhGFblBbWot6BKXWQZq64tlYa2+TuJwQM9KU5cRL35hyOxCe2w913hA0hcPQFI16KRzxEFtO + a1Q9htSVN5C+5S5x7x/uIm3DR7CvuomUReOImt1FU7nwEolHECImMGkJE5i46EJkejNM+X1QOPqhzBqC + KvskVDmnJuHKT/K4bgjKzBMItXcjJv84NOwWiKPndJK40TOCgPgaRmIur1dZ1yM6txvyWT0ITR+AImOQ + gg39N1ybDBJP60PorC5My3oTwQm18FdNryBxbq0EJL6AEUTYZBTkF0NGKyKdvZDb3qJOAxSIOqcP/jtp + JyC3D1BSvYgp6EN4aiNlP/cTEk4gFASPEUeXkWd8RaY5jcrEBkTn9UCT4Q3gzfBfRvJE9rrsfpicHSRe + NsFXmJeSXhTBXXY+jMjk8uArVkpExuKb6pkbYJ7L7Ria37xTUBeMeCkcncRTN0z/TyLKNYy4khNQJq2G + IMLBXdUWQkXwCYYR6md7IPP1k8WEC3UFDzSpG2BZeAZJtXQWFpyls3HOC50JzkdQnbFqDInLLiC2rBcq + 6xoSzzzP+NDVwDBaQkx4XzahNv8xZH48sVotCHeOUnnCWNJG18Q4UjddB7vlfbBbPwC7+YannLTyIrS5 + OyHU5v3hr07poL7JBHe4Jh8bzgQROY8h46IKCAVfbi73D3PcpfoJlX0VtEVN0JXsQlj2ZoRaaynj7N/8 + NfZLPLFmHrXnpiWSCCL8iMl32T/M6YGMq+R+covD7QADwfoIgqt4QVGtfvIZJ4lRv5CY4zypbjfjy+eE + M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN + yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc + c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg + 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 + cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 + ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw + O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD + nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz + 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn + k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I + 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df + WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs + T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda + SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNEQkVBN0RENEFEOTExRTRBOTRFODY3NkE0MTRG + NDA5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNEQkVBN0RDNEFEOTExRTRBOTRFODY3NkE0MTRG + NDA5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTY0QjI3MEFEODRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7lChSUAAADYElEQVRIS62VaUhUYRSGz9geETlWP9RxXBK0cq3csNWaKS1z + Q5oJS8NMMvpTP1qgDSJabLFssQ0NQqJpETNq0mJGk2kxsrLMMhiyZUonzZK0PJ3vu46Mcq/F4AsPfOe9 + 3PedOXeYCy4eAQwtYSRwEGF5WluBsdJUg11/cNBgeSzXVoC/uroHHZbbW9DR+Rstzd/sv6LDsCwGOwMT + O7R3dOFHixVdFFN/kqUlUhzBlsXoU9D64xdav3cws5usYMLdEWxZjD4FLW0/OT2mG7/ggESyBNNibef0 + mOzTOCSRLMH88LWNY1+wYj0MI/wJbzb/j0SyBNP82cqxL7Bp+TpIJlLpKBMcaYlkCWZjUzNHrIAk0+TA + mdRsWEpnJ8ESl0iWYL42WzgSBUDhqctywBCTCBNolCwRyRLMusaPHKmClDUQtnmfoj4pE9bQOJQQXZdI + lmDWNrznSBUkZUH01lzvhoRMKKJxOCFZ0C9LMGtemXHH/hPoE+RqmhoBkWT3CUhYDavzCqOaFqdDJY0j + CdE12bIY9gXHt+7OQ88AX1RpnN4GRUM02b0B8ZkgJ27frE7oVGnhIVmjiCH8Yj+x0AfP33HsC/w8A5W6 + +Rqn+vSNLo2hcyGcbL7nuFUQSlzKPR/SdEWf2DknBSrIH7Dg/tO3nN6ChRngq14JxuPFYdbDRVFfVSug + QJ0Op8gvW7vDtf60LrJFb1qCO496tUYsgXy6ZcACQ00DhxcsWAlKQn+wMOhLiWERXigLxNxCn9aCy9Pb + dOULOkurVHjdEIP5F6dgctZYc3AMxFLOCELyGdx99IrDC+alwbndBf6fLlfMw7xiJR4t9iGUeOZqMOZf + 8sFjFyNwzylvTMqciL5hzihXTGF/6fxmKe6Y6jjsDLOWgcdsLeg37B1vyS3ywL1n3XFPgRfuynfHLQe8 + ujM2TKRwJWZv1qDudhWWGp7gzapavFX94p/wApJsRjz4RSSDMXvbuJac7c7tcemjzTNih32Ypp6AWZs0 + mFd4Fq+VP8SSe4/xhvEpllXWUsmzATlyTofObv4v+d5IspCFEDJtMZjUaSPMftEQT29ST7n75JO0kt9y + tpJ/rKU/zm5+b8a4KA715HPJAlUQFaCGx5PCIYhm9iDZr0VBzCQSCNHXpASJABD5F6q3LHH6EbaVAAAA + AElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGOUFCQzZDNEE5RjExRTRCOUJBREM4MzEzMUQ1 + NzQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGOUFCQzZCNEE5RjExRTRCOUJBREM4MzEzMUQ1 + NzQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODlBOTk3NTY5QzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6aIUJsAAAE0klEQVRIS6WVbVBUVRjH79297/fu3l2EFRCCdBit6YOROU2p + yALioLwkmRiWKCDx5oLyKqy4IwoEgyAYRC4gb/mGmIKBFi8mIBLql2iChnJyhtQPzTh9CKE9PWdDBCOk + 4T/zm+ec5zznv+funmcvcbfUZkG8UAPFNguF6S+yOfBdkc0IjJ/A+M71PG0oWFMASdw6pl0IQl+h9upI + 22voToU9ulmofQg5y9BFN9SZqymAD2CI3gLtvOn+RLu9J1/bdypR7diQrJZg/PVwy6uoI0fTEruJXw2G + TpnbxLXwBEM/nF+KmjLkcOLbPM286MrR7IQ40ZWruW8MEZbDvOPHS6+gVpNczdKkE5jrADUglH4sre4v + 06H2o5rviY4j8gv55rC8G+JEe7b8a9Z2Qd9mkrsHLyxHzUZ15aS5LcADCoAElFD7OzBOXDXJc9KaJYdD + /KvtkHwvK0TQNxvl3rsNrqgxbYY5N2lsVYtRdoM9lisH5RGYqP+Ty5nqSIiW5kz1L+nBvL4pXd03UOOC + TiepTjIUMWVev0+lgzrlP+ZqBp6s43bDMlQZL5mIi2mqWWlKVUVBtED8OTmI159NUt26edIZ1SVIFZPm + i7D5hVTVZqj7E9aNYZ6s2JSmauyvWYpO75cuayXShTibJP2LM/ulWIgWiCOJ/py+PkHqv1HmhMyx4qdg + uuSpOZgEQd3YmSTpkSmE1zckSpd6Kl1RrUFq0skKF6ixJeoN0gzq9krxEC0Qf4r34zyr46SBjuIlqGyP + eGK6ee1eaQvUjdUZpIfJgfzGyhixtavUGZljxAtakXwJauwAnqiKEaeojBYNEC3maHE4bD379udR4sDV + Agd0fJdQMs2chfX3oG4MTB/s9eN8yiPFa9fyHVBZpNComW6Ob1XFHsHKZ5GCAaKlPEIYClxFv56/g8+5 + VuCIisL4KiicMi+PFLZC3ROofxDry/qU7BbavzpqD4fgz2kEq/n0K0sQpbt4zEpgvCSMHw1aRa+CtH3x + Tr7LHKdGAW/Qb8Icn4g7Hsa/P1n3W5QX41P4Id/x5SEdyg/lTsuzmWMd28ERhaFc3blMHUrZzEZCygFQ + 5W/nyi4dtkfGIDbL3VW5uOADLh5qJ6B2NHw945MXwnU2ZtihnG3cFwJDOsOep/3wzBwLCjGPcrdxD3nG + egotQMV4MzrI3TufoUOwbrl4xBHB/P5Ha+gN2Vu5zrOpdsgUzNXTymf9AMw0x8oOZjHjpnfZuzB1BAQA + d6UiwoN2MwawDbA2mOHPngl0p9ZkBbE3GvbboswAtvY586lOnqGsQIY4GMAMAo+X6RQvQ4rDOQwId6cI + 2K5wULhm+DPdtQmLUKofU0XNxxzrwCaaSNlIJ1XH2qAEH7ocUhJA4jwGpAh9i7JN96OvnwLzfRto87zN + scCc0K9Q8km+dA+MLQYvugTm+F1IwpyEvC/E4ZoUO2Twpiv+lznWPm/8ZiPIYHelo0FP9ZrhSSD3R6IX + dRviaFGEjOeW6HXUCUphNbd2Mt4zuXduGTwpKyCFm46UI96h0uI8qEHIjQOPY9ZRV4JXKrfA+tTfBEBO + 2ze34jyUU4DwNcMG+KouBvCtwn2BGw2/rfAvTz63Z25Fr1XOAIS/V3w0FsBdiT8QG+NFcpb6OUQQfwME + xz0xnqHypQAAAABJRU5ErkJggg== + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -864,6 +1424,359 @@ lh7gOXXZq9sAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp + bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE + sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs + AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4 + JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR + 3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd + li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF + ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX + wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF + hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55 + 4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ + VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB + 5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC + qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE + j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I + 1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9 + rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG + fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp + B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ + yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC + YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln + yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v + vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp + vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L + Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA + bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z + llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW + ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s + xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6 + eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw + YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR + XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm + WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl + xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2 + dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8 + V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za + Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v + Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb + PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/ + 0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h + /HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr + XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS + fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+ + tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/ + 6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOvAAADrwBlbxySQAAB7tJREFUSEuFlllQU1ka + x6/MlDPz0k9j1YxTNVbbVTPTNd09Wq3Tbbm0jqMItja0OxhZBFu0RFAG40LAEJCWRUCWgKgsskhkX4Sw + RkhCAoRFIAuSyJIQIGGRELLe/xzp7qrp6od5+NU5t+53vt/9zrn3nkMJjfTPkCw4KekCaefpdb1L9Mae + BfqU1OjMEM85ZV16x7RkxqmXzNKD0jn6cfc8fa53gd4kNtIuYiOoTkLrHE21/A+/EEiJQLJA/54M8u2c + dbaIph3zXTq7TaKzQ6K1Q6pzEEh/2m4nwkXxrLNDZKCDREZs/L8C0TzB6Pycr6Nr2qYciyTxWlLx1Hts + P7Q/XndpbViTEkQ6x/IrPS3oMGAPEaz7mUCyAKqbTIl03km9MtB7qyadfZVqB15N2iAiiToJIj0gNvyI + EegiiGdA7pEYInovFWodaNM55SSpR5uBdmmZB9VEKvpBsEhTnXPOnSUax3CxyoGaN3a0T1iJxAqBlkaL + ZhXNcj2aR7RrNMmn0aoxo0NHQ0Bi2t6uok1jImMs4E/Z1c2ztHvrTwIpEQiN2FCksb/MHrKiSGFDucqC + Zo0FZJpQr1xAVvJ9PPT6BOknNiPJczPYnh8j8T4HL5Xz4I+TpCSmZdSIJrUJLzVWlL219TYasHlN0GHE + ulqt0ze+f3WZO7iKp8NmlMjNaBwnyUdXwE2JR+rRDUg5SCHV3QXJh9cjeu86hP5rAzj3YlCrXAb/rY3E + mlCjXELtmBnPlKu2sknHnboZej3VPIeNmQpL2x3hEtJ6l8GVvUPu4DtUT9Co6BtHxrGPkH1kPdKO/wHx + HhvAPvQBWAc+wMUtFM7v/xjFsmlUTgHFClL9iBkvFCvIGVxCjsIsr9I5P6MqppwnWZKlhdCWWcSTVUzq + MuBhtwFVkzTKulV4cPRDNCZdxnh9PAQPL+DW15tww30Trrl9hGC3v6BUqkD9mxmU9Y+DK1Qhu2cGcaJZ + cKQLqwUaO5N6MmblBrfN2gJqJsBu1yJGoMP9jmmUkzeptHsURUw3zMvbYXn9AlON8ejOD4e8NglqcQWK + bx9EU2MmlA13MVYXh55CXxRXPQGzYRzBZKWTh1bqqAdDpv6A+imcea7A1epR3Hipxt0mDR73LSK7YxSP + 2AGY4KfANFQJ63AZ7PIqmBUN0Itz0MY9jLeN4TANlAEGOVZkOejg+iGirBvhzTNIkC28oaJ7l/Q+lWoc + yxvAyfwBHM/vh1/xAFI7SUV1ShwOTMTzG0dgar0Hs6wAK33PMdueCknWPuj6WLBqCmEQp2NFXg+Hohbi + AiaYJSKEN0wgVjqnp1jS+ZmzPCU8ciTwJBx9JMGpXCnCXsjw71tt2BEgRotwAA3pl1EYfQ5FhFfp7pjt + jwJtqoV16jaMkkuYKvFBV951sAtrEFwkQ3ilElFC/QzF7ll47VU6gsMZAhwlHOF2wDVDhJ03mrHDXwp+ + 3wrKyZcb0rMI/0YtEiuLoO3nAMvVsGhDYJlkYLH3EsTZ3mBl5cIvT4Lgp13kAYfBEs2oqbhB02Mv3rDd + NaUFbimtcE9thevNZzhxPhVP6meRPwoE9wI+bTbEVDdg7HUGYKqBZeoKVifOwDIQhCHut4hgc3CW2wb/ + R+24miXAVd5rOlJq5FPJKjvDr0q15JrchL0pHfBIqoQgahfUxSHIKRUgsMmJszUWsHIrIOOzgSUeHHNh + sE2dxXL/JcifMqArDAT/zj74JjzHubR2BGe240rFiJUzsBJFZb7Fn0MFeuGh9HbsSRfjm6QKjHz/BckT + iMvhRQh6Nou7TyrQUxMLVX0kJrsYMI2dhqkvCK3JfmBe+R7TvFD0cb6ET8xT+Ce14CJXgJCm8bF4lWMb + lTUJF86g+eKxwgHzgUwh9rBKcO/ebbRE7ILv+QTs8q9GYbIvoBdgvPQyOlh/Qnf6DjzneMH9ZDoC/O+i + NfoAMh5EwD+2DBcSXsI3X+K41bMU+0CN31IZE6BSxuiNl1unO/c/4OOf4bnYGf4Yh6/F4QgzF9sYWYj5 + bjuWXsXC2slBX+yXyPH/FAc9ovGJdwW+YWbCOyIRjLsFuBhTAZ+HzbjQoB7mKJ1/ixsjP7uMcVBpRBKr + sB/wLldqdnEqsDUkC59+l4KtQanY5h8NzwN/RULgFjQmnsDjuHPwvh6Fr65mYf91LtzCs3D8VgHOR/LA + SKiDb9mw7vag5UT0KKhENREkvqGpBEL8G7hEjtiOn+bJx3ZzyrEtJBP/CLiPz3yjsZVxB7sDIuF2JQau + IQnYH5qGQ9cfwjMsHd43nsAvsgRe8bU4Wzqo/Y9s5cLNEfrXcUTQaXBQ1D0FvUackqY4KvpXzH6r++ly + pXRfUuPqF8w8fE6q2BKYhO2Er0jf9UoavglNx8mwR/C6lYdTnFJ8m9poPc0bHrrWYz4R1m/5DUfueH9o + oAYWHevWEv8EW+GkWHJQwV1LH3rVjd8+ki8bJuuyspvNo3fdLMA+Zj7cIorhweHBM74aHmnNZo+CbtWZ + GnVskGjx72GDToo9ZCHbL02RP/Yfu+YdjF8IIkZoKljyjvJp0q33bZ7e4l0/zvTkKWq+zutRHXok1B/K + FuqP5veMHX8x0nC6fiLKu2V6O4Ov/d1F0TuKNewghwaaGnoHF7JTMtrnnJ3/BXixa5uWRdAiAAAAAElF + TkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjA2RDcwNjdGNEFDNzExRTQ5NzBEQzM2N0EyMEYx + MUM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjA2RDcwNjdFNEFDNzExRTQ5NzBEQzM2N0EyMEYx + MUM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QUYwQjFGREZDNjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5AqY9iAAACh0lEQVRIS+2UXUiTYRTHjaLcam2T6bRY09yn7Z3TLJit0hmJ + mqL7yG0ZiNKH9iVKVJquDwJLLyqji7qwSN3UrIQIKwqK1yKU6Kroqhu7qcsuutu/c17X3Vw3BQke+MHZ + Of/zf3ifh50UAP+UhMW/yVL8p5ERuGrWBq93EBFiRhsamCN+aEM3MA/lwYGv1Jsl7ViGv/+UpuacjUaX + E8skk4UivbZ3KL3uciy/+wF23nyF6ugH1D/5jIaXX9AozklwzjXusYa1PKOpvjhOFnKCD0ocaeVnUdI9 + i11X3sPVN4Oi3ndwXHoL4cIb5IWnYe0WYesRYQ+LcNDvrT3TcHWKcLa9Bs+ShZ6QSWaJQuU6jnzvGOz+ + CKyhCRiDj5ATmoQ+MAldHM65xj3WsDavahA8SxYCoZTMEoXCsT+qKGyMZRV3ItvdB2PFLVhrhmDzjEPw + PpTgnGvcY01W8RnwzGqb7ylZ2ImFD9DsOR9Ru9tj6yo7kFl2BJriZqgKG6Cw1UNu9kooNtVDVbAPGmcT + tO5WZJafgNJ1KKZ0Nj0nCwuxRjJLFGm7u7D9tIgd4RfY0vUYwskJWNoiMB4dwsbDd5FzYBCGg4MwUW5p + uQehdRhFLVFsbr4PdWk7X1HyA+bfYBSCbxiWQBSGvaPQ+6PQeSNYz3hGoCP0dO+5vhGY/Xx9d2CtuA3V + tmN8QPIrWnoDsljcbzBFFsn/aBSyldqCktTssn5ZbtWUzFjzUW6q+yY3e37+fgMpN9V+p94nWW7ls9QN + pddWqI1+mnUQyVcFBS8qXljphI4wEFaCtyV/PpswnHONe6xhrYZIvuziwSuXRasIHlAQawn+dFUczrnG + Pdaw9s/repFFSsovJqxFMpmOVVQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZFQzJGRUI2NEFFMDExRTRCNEQwQzlGQjVEQTAz + Mjk2IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZFQzJGRUI1NEFFMDExRTRCNEQwQzlGQjVEQTAz + Mjk2IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RUU3Q0MwM0NFMDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz71LrnbAAACUElEQVRIS7WTTUgUYRjHh4g+oWyXiF1dESq0XLsUISR9bSQG + C1FGpSIdyktQVIfq4AYd6qBBhzq01xChrEuBCoIf1VoqbOAHae6mSbtWW22Zpm3w73l2BpoZHp2doj/8 + mGHe5/k9zDvzKgD+K4ozt+ifkKR6xCY7SFI9YpMdLCM12cEyUtMCLCWW6Z9ZRl+8ABXEE9eGrXBv3Aa6 + 7yaqec0yXGRBvc9/HF3dfZiZS+HHz18I9YRRdqiaB93UNPPHJDNzcFfZESS+TGF6NmUgOTWjDfFWaio5 + glRP66PWDiS/z4q0dT3nASHSLFJtQgSpnk+R8TgSyWmRycRX3qYUaZarNiEmoZnkyFgMscS3eaEaOk2K + U7UJMQnNvA8PRTAe/ywyMhbnLZojjVu1CRGkepqCd5vweuKDSMPDZqzJLnhJmhzVJkSQ6vHt2F+O/tF3 + GIzGDfSPxuDzV2KlI/s6aVyqTYggNeDwFAYrTp5Hz0AU4eGJNL2Db3Di9CWsXre+nRR7WJOWSZGkhIu4 + SkSIqNPjfVu4fR9Ona1FzbkAthSXwpGz+SMNn+Q1h8d7g+ryNKUxtCBx68zla3jQ8iwjLgTq+G+6rSmN + MYmZizsPHEN77yt09A1nBNfu9VfxH1Wraf/EJC/J3VSMxsedaHsxZIt7zU/BvbRduzW1GtOAhkDdHbSE + Bv6KK/VB0De5r6nVmAaU0Gs20jV9Qu2S5c7vXLU27yhpl6h2Ci0YoKwg8olS4jBRniFcyz0FBDvUCAMW + E1kEHx4+oXbgHu5lB0VRfgP1p66ckfD+bgAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhBQzA3NjM1NEFEMDExRTRCRDJCQTRBMTUzMERD + QUEwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjhBQzA3NjM0NEFEMDExRTRCRDJCQTRBMTUzMERD + QUEwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7wDFMsAAADRElEQVRIS7WVbUyNYRjH2/iSD2behrAK1SJxTpF3hSZSmbxE + qZYT6SjJvL+sMZIZRqGat0hRmyxLXmq1VUoZHbVSspqQKWPGvMzfdT11Hs+5uz/4wIffdt//63/9r/M8 + z/08xwrAf0Uqyhg02kVPpBOviARimMwnIhVFKMzaxsENlzJz0dbegcTjZ0BaiswrIhVFKCwydlsCvv34 + peLtH8xDpsn8WqSiCAWFRcXtxtfvP1U8F63gAXqZX4tUFKGgPkPtXJGcdgUV1bXYsuvgv71FDAWe8PD0 + R8z2BDjp5vKABJlPRCqKUJij22xfdHR+RNenL2hubYfNODceYi3za5GKIhS0MtgQh3cfPqsMH6vjATEy + vxapKEJBq0PWx+P1+08qZdUmLOg+SWmETtbHSEURCtgeErkFbR0fLGh924WT5zJgN2E6D9ov6+0liFBj + kn7WYpTV1KOlvVMlICgSJZW1yrra1IygiFgecovw0fZbhImQOWV5qBFPG1sVnre9U6Eaho3RIX5volo7 + fy1PGaLNsAjUQsbAZSEbUd/yBidTryLCuFNZm+EBxEAiydl9Hk6lZ6HiSSOG2k1iva85p1ewGTL5LVll + wKLAcG64GrBmA2qbXqmQpgzo8c4hsuxdZrB2QJtjESpCZj8i1EnniQvZt1H0sBaPG9oUNu1Q3uZkwT9Y + u2csNiLU4DF8rB4ZuYWoevYSR5Mvw8NrKdbF7kGlqQW+Kw085LCs14xUZKjRmrh08Hg6yp++QGlNI2Z4 + B3LgbOLO6Qs5uFdugut0H9Y2yzIYqchQ06nwTbtR+rhJYdlaIwed6Kn5O7vPx/2HdcjKL8Eop6lc8xUz + mF4CQ+ZDXn7BeFBVj+LqBsTsSuQAi68n7Y8Z4vYp9WOpmcqRJS1C62EsNgyZjOOnLEBe0SPcr6xHIt33 + Ibau3Dxa8A3gI3kx567iS72WD0c6DKRbvNHqgqFi/5GOU3D+RiEKK+qQnl0AGwd3blqo9Wn80ROmeiPj + ZrHiv36nHCO6v7L9zB6xwbjKEI+CMhOyC8rg0P2LorQeEapvtZ84C2cz8xG94xD7j2jrotnOSe+FwLBY + TJ65mM1/9adCvki+8p7nYPunBqvfgM/pcrxVz6sAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjYxRjlCRTY3NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 + MTg4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjYxRjlCRTY2NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 + MTg4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDRkI1RDVEMTRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5JUenqAAACPElEQVRIS7WT3UsUURjGhyCiixbaUC/awuyq7OOuq2y3smxT + +1LT1LL+h6ib/odAKFBiIyssHNJKy740EZGC+hO6qhshDBKSIt6e58w5NXM8M9MQPfCD877nfZ53Z3fH + E5H/irdh885/whUaxmnKgis0jNOUhVS5TFlIlcsUw2kwreFZ9VNlBhNQwS0dF2Rm7q2CZ/Z4p2PipUNc + BMHt52V69o0sf/8ZgT3ecYazOm6ldNiK4GaYX87My9K3H4lwhrP00Ktj/0iHGorltj6ZnJqTxa/LmaCH + Xmbo6EDWglL5VJ9MvJiVhcWlTNBD7/qN25oQuypIh6wFxaYTZ0Vx8pyMTb6WjwtfEuEMZ40vV1PXhtjV + QTpkLSgdxpA/PiUjj1/JoeO9YuoPnz5HYI93nOGsqXPVW7oQuyZIh6wFxcZjPaKAcXjsuQyPPovWgGf2 + eBeuSa66rh2xsQtKB1t75Lb/VIb8J3KgtVvsmvDMHu/sGl9RB2Ljn2B/8xlRtHRL5f6EVO6NR2vAM3u8 + C9ck9QlKGBq8+0gG7jyU4tEusWvCM3u8s+u0J/Dyhfre/Kb6eRqvD43KtVsPZF+5UwWxJjyzxztT5wvb + 3+MHvozIAohfAPEvVoNHvQjTuwYE9d/0pb/iS8ORTgXP7PGOweuqaq/AswfsoFdnBHIs4EuyFlSBrfhU + l7hoL4Kv3hhR8GwF7+as9tAb+6L9BnIu+utgI1d4GCiyCOzSJAcbuUJdQGZRXpMcbOQKy0KyPO8X3VzO + Z+EVt84AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJEMDQyOEZBNEFEMjExRTRBN0MxRDBCNzJGRUND + MDEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJEMDQyOEY5NEFEMjExRTRBN0MxRDBCNzJGRUND + MDEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkRDRkI1RDVEMTRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz59jfe3AAAEbUlEQVRIS8WTeUybZRzHF48/pnFOuQRajkFLgQFb5iRLNJr4 + l/EPgsniUI4xZDAY1zyxwApsMJyIME61rByl3DfoYGBrgbWUY06FcZSCha4rQ8jYxkqPr2/fvkv8o2Sg + S/wkT970eb6/T5/39z7Prv8dt/Oql4mR4HZJ3ccoXFxhVCzB9DT9JueJdSq6c1wzVZFupepVzxu34XVj + CaEDi1jX6hF8ZQoeokl4iBVwzV9YdU1XRlIl28eVo8phCdXwGltEeOUsro6psaHVwcSDh5volc4iOO8X + 7KuVwb1hEi7J8myq9PEQO//I85oafr0KtEpUpNSETm+AwWDAvfv3YTQaybnm/t/AyO6Ga+UonJOnIijF + 1hA9tWI2qle9RxcI+RIpmZpTIfBULhIyyqHVahHPKcN70TmYnFFCp9OhqXcc9KwW0DOHVl3YU1aUyjJu + F1SpfhO3EM6bMMsVt+D8Zhz2HIpC4oU6bG5uIu4cD3tfTwAjIBNypQYbGxsISquBU34PaDHiVEplGXee + SuIjVaBv3Lz7gJg8vHg4FlZvc+ATVoLipiHsD8qCXWAO7IPK8MG5FjLXKboOeoYADkldUkplGWb7vOb4 + 4BzxIXXQE/1m59WDXdgBvxPfwz6UC4eQUth/WIBDZ2qQXj+K7IYRImeE5s5fOFrcDPvPapcJzVNmmwVY + VxWG9U09uau1tTVymPpc0iYFLew7OEUJ4BwtALfvJpl5xMrKCu6s3cUrn5YbCM1us80CrJZZVWjXr7j3 + 4CE0y8v4IrcaH+cK4Bv+DRyPl8ApphYuia3wZ3eCUzOA1PIfcVuzjHnlIgK/vgy7mHzTG+w12yzA5E53 + edYPo1c2i/X1dQTEfwvbwDQ4hhXg8OcN4P48Df+UTrgkNIAeW4Hg3Hbo9Xq0iGSgs4ls5CUhoXnObLOA + S8pkhG/bdZzgDZJnffT3GXieLAA9XgB2/RjZjuQqMWhxfBw824H55XWyhcfy+HDNqoB1SH4Codn6G7iw + p3d78EaVPlXX0CaZgkqlgly1gpCiK0htHCH/IL6oFcEF3ZjT3CUvXqv0DzDSS0FPq1a/8EbYS5Rqa+if + SAJ8KoeNR7gitEsnoVQqSbGOkJmYX1ggxaY70SabwIGMUrjn8I3WIXnBRPnWu/8nDnE9Sd7cAaP/ZSES + 6/rRKJRArpiHXC7HzekZNIukiCyrhW9mGZgXa4w2kUVnibJnzdXbxP5URzyDO4QjxGl5i9uNpMZeKP5U + IrywAq9yCnGAOGGMonbYxpVnEPGdyR9BO/MTj8kfgXeNFPt5IngVtoF1kQ9WcTs8qgfgmNreQMS21xZL + 0E6Ln6ef75tg8sfgXT8O77oReAkkYNXJ4PRV/4ztyfo9VPTf4xjdf9CpQKzdxxuGe6UMbhXEmc8V6mze + r3qNivx3HGN7UmglQ6CVDMIxXwybo5UcaunJQD8te9rhyx4JrWwItlGNUut3y5+hlp4cDhFCpl14k9jq + nR+Y1NTjIe7NlmMnWKoHsOtvjWYcKpheqFQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1 + RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI4QTVDNDc0NEM2NzExRTQ5NTE5REU3N0RCMjJE + QjdBIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI4QTVDNDczNEM2NzExRTQ5NTE5REU3N0RCMjJE + QjdBIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzQ5NEZCOEM2MzRDRTQxMTg4NERE + MUVBOEQ4QTgyNTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz4VEc0+AAADBUlEQVRIS62Ve0iTURTAr1ZaBkoWOTWn+bYyNTENMh/5yCSd + cyMf03xsva0/jEqjF2JIRL4yiGnaNFYRCkYtR2OWMtOm5ivFxyTTqS0VN2UU1el+X2MYVMjnDvz44Nxz + z4/LPZcPfdc2MjCJ/4BYI2r+II59TA8A/BdiQ2JdoU/PkwJ35VJqb/v0LMyJOQghoxULHuW5Ti3OsGAp + NVedJ9taHlxksI6240ZyKugFNbku6rlPu6Ff5EAyNbwLyrPtp6QS/nUsAFxMCRxyUiA8T1eqhrZBm8AG + mu9bw5DcDe6etNUJeH/dvByIIAUPz9ooFXJ7GJDRoavRDjokdlCcbjVtMIHglH1vyRFrTWHqlm+l6faL + txI3TZdm2A0Qgtj4lQviiGlpaa661NstfvXlc6dIMfiYRzDQK0wvKatMGh75CFQgBbowYjGDTRSKYa+R + kSG/AP/t63DOBLN6YmLCDNf5UoXszslCIk6W8Xv8bcfIdYjwkjHGiCxaEvj4y38HRLCPr5/oG70M/aP5 + mAL4MHoFmDzUER6V4I3HdBY3ooRewOBazEnlbHghC8cEwcumwxCZhLpCw1l+K3wHs6QgKh3Ja6W+UP3c + HcprXYH/1BP2MlCPAQS/jxCWsqa/SLAVbvKdIb/MBa4VOYLfQdRnMEEgk6YOiNnwNTCO9sM/2mLGcz/q + 3xmOGg0miGFyQ5qaW4dfv3mr6OruaxgfH0/DaTOM6cLCghdZSTFIAQ4jrVYbgptFEKhUKjecW4UxzJia + OGfyLXdw35l7cCXIIbNCR2Fg8KG1sfFcJ9zIkQp6Ac07c7JSMgbV0jEQ6ED0ZGFEVKLvCu/AkRSYOqWJ + cyo6gVfYCieKW+HMHRkgW+Yzg10yoqfUc240QWxuAxzIrgdWTh0gWrTEYAJLj9TZYJ4QgjKqYF/qPdiT + VAbIKlJmMIG5M3two1v8T3PHaC3dO2HG2pOtRJvDJEGhDM+E5NN95y7kAxX0AhzG8/PzeXhEpzQaTY9Y + LHbBOfIdqNVqV1xH/MApAPJfzP33dTxioZgAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzMkNDMkY0NEFEMDExRTQ4MDc0ODRFNENDMkU3 + RDczIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzMkNDMkYzNEFEMDExRTQ4MDc0ODRFNENDMkU3 + RDczIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjdGOUQzNUFDRjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5/YJCyAAABkUlEQVRIS7WUvUoDQRSFtxErBVfShFUEG4mKYGUh+AS+QB7H + p9BWtLFLZ2EjkUDAHyISFFEUIkhAIigYDGE8J7MTbiYzJjvigY9d7r3n3NliJ1JK/SvR7Pzqn3CFSpym + LLhCJU5TFkbKZcrCSFmGIigDFQi9xTRaCwVJ+ax6qTpdFQS9zEijtawFqv3dtU81NsaL2AmdDqEwsODz + q2OGNsHGuFjeGGilwf0FrY+2GVoDybhY3jzQSoP7C5qtTzNEk90fwgjvA15dheQwm43me/AC6dVVSA6z + +fjyFrxAenUVksNs3j69Bi+QXl2F5DCb1/eN4AXSq6uQHGbzvP4cvEB6dRWSw2xWag+9oRCMF7HeBeXd + g5I6vbgLYu+wpOKkUEOsd0Exnlup4jl0OnJSrfdw9UicLF9N5RZ2EOv90Vjib74OelcFjceVGyfscUZA + D73eq4IlXlQc4CkSfPI+g1zM5JeOMLPIuRR66PVedk6gaVAAW2A7he+sseeXK9AGmgQ5YE5qYI09v1yB + WfhdUfQD3zQ4bV9fKQQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkM4QUEwRERENEFENDExRTRBQTE0RThCQzEyOEQy + OTc1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM4QUEwRERDNEFENDExRTRBQTE0RThCQzEyOEQy + OTc1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjI3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7dyRkqAAAD9ElEQVRIS7WWe0xbZRiH95+T6DQxcc7NLfrHTBaR4NyFmDAy + ljFwwERGpmRxxmyY6QbqgogDhqluOpFLlm6AFslGRVlXKISVS7tByzgUOF1vtLUtLVBogQ4YsLoN9ec5 + 3+xXyIiJWdrkyfed9/u979PLSdsVz6wPfyQA/Cehf3DPQsiBECHkBVj4CyGBn00E9xb+DglU4L/35xIM + 7j78qCpAlVqAg6KNkOtqMTPnx9TcLOzjFty5u4CJWR9u++/AM+NBh7WRnM3/cX/JHCqY899fwu35u/BN + z2HM60NcURjB7hwmNX4/PjmNWzPzZL/v3FPIEK9DQskTNOudmML0rD8oiD0d9hAutxej4z6yZ3pZaA0D + ZO8c8dDM8d9egtSxGxetMTiri8Ih8XpS79cZ4fZOBgVu7y2YrINg9QOIPvU4QcPqyWp1DJM6vwbOUivW + QGSMgdi8E7mqSGQqIpAoXE3OmuRtuKHRwjU6HhQMe6dgG/LA4hhBVM5KJJatJmsPa8TNARup8xm+1tnd + R9bkc88hicsllnGrcC2p1Te1QKliYLQ6SZ4KhriLYe80oaa9Ghk/JEMkqYJS3Q0DF3a4J7D9s1V4s2QN + Nmc+hviTLyOvIgv55SeQe/4YUgu3QlRXjbbrN6A12TDoniSzqMDh9lEszjEoGQbF4u/wa+tlmOxu2Ecm + 0dglR86FjxEteBZx2Zsgab4KhaoH17lXJFO04nKLDCrus+L7A7OowOLyUsxODwy2EaTm78BrWU/io6KD + YE126KxDaFDKEZ4Rhg8E+1HbKAOjNZP6TYsL0mtNaFYrUCmrAGu2YWBwLCgw2Ecf4qeGakRmPo203D1Q + dPWjz8TdBGYX0guSIK5vgLyDQa/BDr3NTdAYrYg68iI2HliJiitV6DM6ggLWwt0p/8J9PeFMsRDnJSLE + H38DsXEJSEhKAaOzod88hMjXt+KTz/PQ2WtCLyfl8wE2RbyKkyWFqJLUQdqu4ASvPBBojE4KH9wVtxel + v5Tj5zopuU5MSQOjt6NG0swJtmHtCxtwrUePHsMDQaA3J/9rfJpTgDY1CwWjDwq6dHYK37BzdwJqZe3I + E3yP9ENHsG//u+TsvcNH8dXZMryVlo4ioYjmA73ZnCA7T4BO1gqV1hp8izr6f6fwDafOlKLgdAlidsXj + 29JKJHOCFrWOnAXga4F8gIjN21Df1k1nUYFSY6bwwUvSVjy/bgN2cILKmnokvf0O8r8pRvr7H5JMcwdL + zvkcn1/cvxgqaGVMFL6BX6Nj9+BLQREuXLyCvSkHEB65BcXll2ju8LETyPqikOaXgwqudhlCQkAQ8p/M + R2K5fxKLWbbp/7Dc0CBY8Q+pPmOq0VkzzQAAAABJRU5ErkJggg== + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -1193,40 +2106,6 @@ M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJERjY3MEZENEQyMzExRTRCNDlGQUMwMzk0OTAw - Qzc4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJERjY3MEZDNEQyMzExRTRCNDlGQUMwMzk0OTAw - Qzc4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NjhGOUEyRDEyMTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6GKmpFAAAC+UlEQVRIS63T20vTYRzH8Yforj/Ei24UiSgKIygKi8oyxZQo - cvNYeXaesmzqPGu2POd0ulSsnIdaurTSTJ3O6UxTPGya5vCQx5AuPn39RbHop7nZxQt+z3ie93e/Z4w1 - p7nsCoBt8R6yBF/UHPv+Wb0rfFFzm99CRIwEW1gnqXzxTXxRc0ydctm4OlID2sxrw6iCtiwItC+A2P/D - frLnjwGNSZdMq6N1WOvLwFpP4l/WdRlY6Jaio9Ab7QXba8sVoDHZGdT8PYS9THDqMGnLsKpNw0qXGCua - BO55VZdNQ6U/DRRibVCGb+N1pH5bukoRqHmDHOIG1N8/X2F4I8WyNhtf2+9hqSsZxqZ4upbb6HsSZLHO - Im90ym6hNVcIaktYTexZyUelGEvaHMy/jcFiZxo0xX5Y7ivGcn8JkVmA9uvlWBmqwpJeAWovs+poR99O - eRgWtQWYVUdgrj0FH+i+F3XF3NoappZYGJrEoLaOVYpOOTY/FGJB+xjTqnDMtMTTAC/Ma/Ix/TLUKl9e - x0JfFQpql7PykBP7lWIXzPeUYLIhHCPKCLr/AMy2ZsKoDLTKdNNdvM8TgNpRTBZwfJ885CTmaIChPhwa - mS+GnkdhqjEWY9X+VplqvIMXEhdQ24mZeuSs0N/BNNWWj4k6EdSZHhhXxWH0aSCGFd4c4Tk7zk7XBlUM - FKLToK4Nm+0qYnneRzqGGiSYaIiiyZdhVCdgqFSIwRJPjucZW85O1pvnRmvDkO9zFNTdy2Y6HjGp4HCF - 5kk4xhoiURd/EROv4tBfeM0qAyUC9Mp9QM0+7o829T6LZV0/mNycS6+nFKFWfAGj9ZHozfGwil7miZYH - 7qCmghsw+S6VpV894KuUuKFbfhNNqa749CwY3dm0toK+VABl3HlQM5obYHybwFLc7W1y/Y5BlX6FfgNn - DNcEY0DhZZX+MiGKbh0DNR24AYYWMSfJzc6GZBApwS5skIzNODcg0dV2V36FtsJ7yBJ8UXO8hyzBFzXH - ++H/A/YDv9/V87iOlrYAAAAASUVORK5CYII= - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -1363,7 +2242,7 @@ OkHDH7XWtYa2It66Y4eCQ8cRfpvUNa2hTUD8A6JMaBvCyTdJAAAAAElFTkSuQmCC - + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl @@ -1375,163 +2254,26 @@ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjYxRjlCRTY3NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 - MTg4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjYxRjlCRTY2NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 - MTg4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDRkI1RDVEMTRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJERjY3MEZENEQyMzExRTRCNDlGQUMwMzk0OTAw + Qzc4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJERjY3MEZDNEQyMzExRTRCNDlGQUMwMzk0OTAw + Qzc4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NjhGOUEyRDEyMTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5JUenqAAACPElEQVRIS7WT3UsUURjGhyCiixbaUC/awuyq7OOuq2y3smxT - +1LT1LL+h6ib/odAKFBiIyssHNJKy740EZGC+hO6qhshDBKSIt6e58w5NXM8M9MQPfCD877nfZ53Z3fH - E5H/irdh885/whUaxmnKgis0jNOUhVS5TFlIlcsUw2kwreFZ9VNlBhNQwS0dF2Rm7q2CZ/Z4p2PipUNc - BMHt52V69o0sf/8ZgT3ecYazOm6ldNiK4GaYX87My9K3H4lwhrP00Ktj/0iHGorltj6ZnJqTxa/LmaCH - Xmbo6EDWglL5VJ9MvJiVhcWlTNBD7/qN25oQuypIh6wFxaYTZ0Vx8pyMTb6WjwtfEuEMZ40vV1PXhtjV - QTpkLSgdxpA/PiUjj1/JoeO9YuoPnz5HYI93nOGsqXPVW7oQuyZIh6wFxcZjPaKAcXjsuQyPPovWgGf2 - eBeuSa66rh2xsQtKB1t75Lb/VIb8J3KgtVvsmvDMHu/sGl9RB2Ljn2B/8xlRtHRL5f6EVO6NR2vAM3u8 - C9ck9QlKGBq8+0gG7jyU4tEusWvCM3u8s+u0J/Dyhfre/Kb6eRqvD43KtVsPZF+5UwWxJjyzxztT5wvb - 3+MHvozIAohfAPEvVoNHvQjTuwYE9d/0pb/iS8ORTgXP7PGOweuqaq/AswfsoFdnBHIs4EuyFlSBrfhU - l7hoL4Kv3hhR8GwF7+as9tAb+6L9BnIu+utgI1d4GCiyCOzSJAcbuUJdQGZRXpMcbOQKy0KyPO8X3VzO - Z+EVt84AAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJEMDQyOEZBNEFEMjExRTRBN0MxRDBCNzJGRUND - MDEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJEMDQyOEY5NEFEMjExRTRBN0MxRDBCNzJGRUND - MDEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkRDRkI1RDVEMTRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz59jfe3AAAEbUlEQVRIS8WTeUybZRzHF48/pnFOuQRajkFLgQFb5iRLNJr4 - l/EPgsniUI4xZDAY1zyxwApsMJyIME61rByl3DfoYGBrgbWUY06FcZSCha4rQ8jYxkqPr2/fvkv8o2Sg - S/wkT970eb6/T5/39z7Prv8dt/Oql4mR4HZJ3ccoXFxhVCzB9DT9JueJdSq6c1wzVZFupepVzxu34XVj - CaEDi1jX6hF8ZQoeokl4iBVwzV9YdU1XRlIl28eVo8phCdXwGltEeOUsro6psaHVwcSDh5volc4iOO8X - 7KuVwb1hEi7J8myq9PEQO//I85oafr0KtEpUpNSETm+AwWDAvfv3YTQaybnm/t/AyO6Ga+UonJOnIijF - 1hA9tWI2qle9RxcI+RIpmZpTIfBULhIyyqHVahHPKcN70TmYnFFCp9OhqXcc9KwW0DOHVl3YU1aUyjJu - F1SpfhO3EM6bMMsVt+D8Zhz2HIpC4oU6bG5uIu4cD3tfTwAjIBNypQYbGxsISquBU34PaDHiVEplGXee - SuIjVaBv3Lz7gJg8vHg4FlZvc+ATVoLipiHsD8qCXWAO7IPK8MG5FjLXKboOeoYADkldUkplGWb7vOb4 - 4BzxIXXQE/1m59WDXdgBvxPfwz6UC4eQUth/WIBDZ2qQXj+K7IYRImeE5s5fOFrcDPvPapcJzVNmmwVY - VxWG9U09uau1tTVymPpc0iYFLew7OEUJ4BwtALfvJpl5xMrKCu6s3cUrn5YbCM1us80CrJZZVWjXr7j3 - 4CE0y8v4IrcaH+cK4Bv+DRyPl8ApphYuia3wZ3eCUzOA1PIfcVuzjHnlIgK/vgy7mHzTG+w12yzA5E53 - edYPo1c2i/X1dQTEfwvbwDQ4hhXg8OcN4P48Df+UTrgkNIAeW4Hg3Hbo9Xq0iGSgs4ls5CUhoXnObLOA - S8pkhG/bdZzgDZJnffT3GXieLAA9XgB2/RjZjuQqMWhxfBw824H55XWyhcfy+HDNqoB1SH4Codn6G7iw - p3d78EaVPlXX0CaZgkqlgly1gpCiK0htHCH/IL6oFcEF3ZjT3CUvXqv0DzDSS0FPq1a/8EbYS5Rqa+if - SAJ8KoeNR7gitEsnoVQqSbGOkJmYX1ggxaY70SabwIGMUrjn8I3WIXnBRPnWu/8nDnE9Sd7cAaP/ZSES - 6/rRKJRArpiHXC7HzekZNIukiCyrhW9mGZgXa4w2kUVnibJnzdXbxP5URzyDO4QjxGl5i9uNpMZeKP5U - IrywAq9yCnGAOGGMonbYxpVnEPGdyR9BO/MTj8kfgXeNFPt5IngVtoF1kQ9WcTs8qgfgmNreQMS21xZL - 0E6Ln6ef75tg8sfgXT8O77oReAkkYNXJ4PRV/4ztyfo9VPTf4xjdf9CpQKzdxxuGe6UMbhXEmc8V6mze - r3qNivx3HGN7UmglQ6CVDMIxXwybo5UcaunJQD8te9rhyx4JrWwItlGNUut3y5+hlp4cDhFCpl14k9jq - nR+Y1NTjIe7NlmMnWKoHsOtvjWYcKpheqFQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1 - RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI4QTVDNDc0NEM2NzExRTQ5NTE5REU3N0RCMjJE - QjdBIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI4QTVDNDczNEM2NzExRTQ5NTE5REU3N0RCMjJE - QjdBIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzQ5NEZCOEM2MzRDRTQxMTg4NERE - MUVBOEQ4QTgyNTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz4VEc0+AAADBUlEQVRIS62Ve0iTURTAr1ZaBkoWOTWn+bYyNTENMh/5yCSd - cyMf03xsva0/jEqjF2JIRL4yiGnaNFYRCkYtR2OWMtOm5ivFxyTTqS0VN2UU1el+X2MYVMjnDvz44Nxz - z4/LPZcPfdc2MjCJ/4BYI2r+II59TA8A/BdiQ2JdoU/PkwJ35VJqb/v0LMyJOQghoxULHuW5Ti3OsGAp - NVedJ9taHlxksI6240ZyKugFNbku6rlPu6Ff5EAyNbwLyrPtp6QS/nUsAFxMCRxyUiA8T1eqhrZBm8AG - mu9bw5DcDe6etNUJeH/dvByIIAUPz9ooFXJ7GJDRoavRDjokdlCcbjVtMIHglH1vyRFrTWHqlm+l6faL - txI3TZdm2A0Qgtj4lQviiGlpaa661NstfvXlc6dIMfiYRzDQK0wvKatMGh75CFQgBbowYjGDTRSKYa+R - kSG/AP/t63DOBLN6YmLCDNf5UoXszslCIk6W8Xv8bcfIdYjwkjHGiCxaEvj4y38HRLCPr5/oG70M/aP5 - mAL4MHoFmDzUER6V4I3HdBY3ooRewOBazEnlbHghC8cEwcumwxCZhLpCw1l+K3wHs6QgKh3Ja6W+UP3c - HcprXYH/1BP2MlCPAQS/jxCWsqa/SLAVbvKdIb/MBa4VOYLfQdRnMEEgk6YOiNnwNTCO9sM/2mLGcz/q - 3xmOGg0miGFyQ5qaW4dfv3mr6OruaxgfH0/DaTOM6cLCghdZSTFIAQ4jrVYbgptFEKhUKjecW4UxzJia - OGfyLXdw35l7cCXIIbNCR2Fg8KG1sfFcJ9zIkQp6Ac07c7JSMgbV0jEQ6ED0ZGFEVKLvCu/AkRSYOqWJ - cyo6gVfYCieKW+HMHRkgW+Yzg10yoqfUc240QWxuAxzIrgdWTh0gWrTEYAJLj9TZYJ4QgjKqYF/qPdiT - VAbIKlJmMIG5M3two1v8T3PHaC3dO2HG2pOtRJvDJEGhDM+E5NN95y7kAxX0AhzG8/PzeXhEpzQaTY9Y - LHbBOfIdqNVqV1xH/MApAPJfzP33dTxioZgAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzMkNDMkY0NEFEMDExRTQ4MDc0ODRFNENDMkU3 - RDczIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzMkNDMkYzNEFEMDExRTQ4MDc0ODRFNENDMkU3 - RDczIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjdGOUQzNUFDRjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5/YJCyAAABkUlEQVRIS7WUvUoDQRSFtxErBVfShFUEG4mKYGUh+AS+QB7H - p9BWtLFLZ2EjkUDAHyISFFEUIkhAIigYDGE8J7MTbiYzJjvigY9d7r3n3NliJ1JK/SvR7Pzqn3CFSpym - LLhCJU5TFkbKZcrCSFmGIigDFQi9xTRaCwVJ+ax6qTpdFQS9zEijtawFqv3dtU81NsaL2AmdDqEwsODz - q2OGNsHGuFjeGGilwf0FrY+2GVoDybhY3jzQSoP7C5qtTzNEk90fwgjvA15dheQwm43me/AC6dVVSA6z - +fjyFrxAenUVksNs3j69Bi+QXl2F5DCb1/eN4AXSq6uQHGbzvP4cvEB6dRWSw2xWag+9oRCMF7HeBeXd - g5I6vbgLYu+wpOKkUEOsd0Exnlup4jl0OnJSrfdw9UicLF9N5RZ2EOv90Vjib74OelcFjceVGyfscUZA - D73eq4IlXlQc4CkSfPI+g1zM5JeOMLPIuRR66PVedk6gaVAAW2A7he+sseeXK9AGmgQ5YE5qYI09v1yB - WfhdUfQD3zQ4bV9fKQQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkM4QUEwRERENEFENDExRTRBQTE0RThCQzEyOEQy - OTc1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM4QUEwRERDNEFENDExRTRBQTE0RThCQzEyOEQy - OTc1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjI3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7dyRkqAAAD9ElEQVRIS7WWe0xbZRiH95+T6DQxcc7NLfrHTBaR4NyFmDAy - ljFwwERGpmRxxmyY6QbqgogDhqluOpFLlm6AFslGRVlXKISVS7tByzgUOF1vtLUtLVBogQ4YsLoN9ec5 - 3+xXyIiJWdrkyfed9/u979PLSdsVz6wPfyQA/Cehf3DPQsiBECHkBVj4CyGBn00E9xb+DglU4L/35xIM - 7j78qCpAlVqAg6KNkOtqMTPnx9TcLOzjFty5u4CJWR9u++/AM+NBh7WRnM3/cX/JHCqY899fwu35u/BN - z2HM60NcURjB7hwmNX4/PjmNWzPzZL/v3FPIEK9DQskTNOudmML0rD8oiD0d9hAutxej4z6yZ3pZaA0D - ZO8c8dDM8d9egtSxGxetMTiri8Ih8XpS79cZ4fZOBgVu7y2YrINg9QOIPvU4QcPqyWp1DJM6vwbOUivW - QGSMgdi8E7mqSGQqIpAoXE3OmuRtuKHRwjU6HhQMe6dgG/LA4hhBVM5KJJatJmsPa8TNARup8xm+1tnd - R9bkc88hicsllnGrcC2p1Te1QKliYLQ6SZ4KhriLYe80oaa9Ghk/JEMkqYJS3Q0DF3a4J7D9s1V4s2QN - Nmc+hviTLyOvIgv55SeQe/4YUgu3QlRXjbbrN6A12TDoniSzqMDh9lEszjEoGQbF4u/wa+tlmOxu2Ecm - 0dglR86FjxEteBZx2Zsgab4KhaoH17lXJFO04nKLDCrus+L7A7OowOLyUsxODwy2EaTm78BrWU/io6KD - YE126KxDaFDKEZ4Rhg8E+1HbKAOjNZP6TYsL0mtNaFYrUCmrAGu2YWBwLCgw2Ecf4qeGakRmPo203D1Q - dPWjz8TdBGYX0guSIK5vgLyDQa/BDr3NTdAYrYg68iI2HliJiitV6DM6ggLWwt0p/8J9PeFMsRDnJSLE - H38DsXEJSEhKAaOzod88hMjXt+KTz/PQ2WtCLyfl8wE2RbyKkyWFqJLUQdqu4ASvPBBojE4KH9wVtxel - v5Tj5zopuU5MSQOjt6NG0swJtmHtCxtwrUePHsMDQaA3J/9rfJpTgDY1CwWjDwq6dHYK37BzdwJqZe3I - E3yP9ENHsG//u+TsvcNH8dXZMryVlo4ioYjmA73ZnCA7T4BO1gqV1hp8izr6f6fwDafOlKLgdAlidsXj - 29JKJHOCFrWOnAXga4F8gIjN21Df1k1nUYFSY6bwwUvSVjy/bgN2cILKmnokvf0O8r8pRvr7H5JMcwdL - zvkcn1/cvxgqaGVMFL6BX6Nj9+BLQREuXLyCvSkHEB65BcXll2ju8LETyPqikOaXgwqudhlCQkAQ8p/M - R2K5fxKLWbbp/7Dc0CBY8Q+pPmOq0VkzzQAAAABJRU5ErkJggg== + eHBhY2tldCBlbmQ9InIiPz6GKmpFAAAC+UlEQVRIS63T20vTYRzH8Yforj/Ei24UiSgKIygKi8oyxZQo + cvNYeXaesmzqPGu2POd0ulSsnIdaurTSTJ3O6UxTPGya5vCQx5AuPn39RbHop7nZxQt+z3ie93e/Z4w1 + p7nsCoBt8R6yBF/UHPv+Wb0rfFFzm99CRIwEW1gnqXzxTXxRc0ydctm4OlID2sxrw6iCtiwItC+A2P/D + frLnjwGNSZdMq6N1WOvLwFpP4l/WdRlY6Jaio9Ab7QXba8sVoDHZGdT8PYS9THDqMGnLsKpNw0qXGCua + BO55VZdNQ6U/DRRibVCGb+N1pH5bukoRqHmDHOIG1N8/X2F4I8WyNhtf2+9hqSsZxqZ4upbb6HsSZLHO + Im90ym6hNVcIaktYTexZyUelGEvaHMy/jcFiZxo0xX5Y7ivGcn8JkVmA9uvlWBmqwpJeAWovs+poR99O + eRgWtQWYVUdgrj0FH+i+F3XF3NoappZYGJrEoLaOVYpOOTY/FGJB+xjTqnDMtMTTAC/Ma/Ix/TLUKl9e + x0JfFQpql7PykBP7lWIXzPeUYLIhHCPKCLr/AMy2ZsKoDLTKdNNdvM8TgNpRTBZwfJ885CTmaIChPhwa + mS+GnkdhqjEWY9X+VplqvIMXEhdQ24mZeuSs0N/BNNWWj4k6EdSZHhhXxWH0aSCGFd4c4Tk7zk7XBlUM + FKLToK4Nm+0qYnneRzqGGiSYaIiiyZdhVCdgqFSIwRJPjucZW85O1pvnRmvDkO9zFNTdy2Y6HjGp4HCF + 5kk4xhoiURd/EROv4tBfeM0qAyUC9Mp9QM0+7o829T6LZV0/mNycS6+nFKFWfAGj9ZHozfGwil7miZYH + 7qCmghsw+S6VpV894KuUuKFbfhNNqa749CwY3dm0toK+VABl3HlQM5obYHybwFLc7W1y/Y5BlX6FfgNn + DNcEY0DhZZX+MiGKbh0DNR24AYYWMSfJzc6GZBApwS5skIzNODcg0dV2V36FtsJ7yBJ8UXO8hyzBFzXH + ++H/A/YDv9/V87iOlrYAAAAASUVORK5CYII= @@ -2271,757 +3013,12 @@ AElFTkSuQmCC - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZCNzIxMDY4NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 - QTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZCNzIxMDY3NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 - QTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjQ3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6N9zpwAAAB70lEQVRIS7WTTShEURTHZyIfk0zRlPKxs7SwsZWFvSQbC0lW - CsNuMMjK9+4tWKAksbCxsWIjipIis3gWhpSPhZTkq+Oc+8697ntz53mFf/3mzDvn3P9/5r2ZEAD8K8bm - X2Js/iXOi4+2qqIWAsgpV4tHvgocsFlZDA8byyDq+pKoPPJV4IC18iK4XV0AUVfmReWRr1wBi2URC4Fs - 3MzPcZ3NmHlQt88VYMUKID0zBunpUUhPJh3oWvamRkDsTCQh1deJPeoj2Kee3KUd9ncHTJfkgT3YC/ZQ - H9jJ/m8SPWAPx8V7sYP1pL3Z6cldek9nEdphf3fAeDTXQiAbB02Nop7FuzJmOoni3GX2/5ZI8VGiKAd2 - G+qA6nFHq6g8CqafAgYiYQuBeCScotpdGBafsrSqxkJAw/z/+Ckgm8j0/RMUdM0jt34T8PL2oeCAfGeq - iQKy4ScyfHp+VXBAzJlqMhlLdKGB957D/eOzwjtDnGdiMpbookPXd4+BoX1x0GQs0UUH7Kv7wHBAvtFY - oosOnF7cBIYDYkZjiS48kPEMjs4vFd5ZtKx6G49VGI0lBtGvpB5pIZO9E1tB19hvoxlDe8G/AYt+5xRS - QYY7hykFB9TSjKG94M/AKzLc3j9TcAAZu2UylvgJDV3PRN1zl0KhL06k1hGgG+rkAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCREI4OERDNEFENjExRTRBMDIyRjhCMTI2OTg1 - QzRCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCREI4OERCNEFENjExRTRBMDIyRjhCMTI2OTg1 - QzRCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjY3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5EAI7UAAAEwElEQVRIS6WVf0yUdRzHv/f7nueeu+cO4UQEIdnNarXUyLUa - IqdOJggklBBuYoDGLw8UFJWTmBYYDEFQiARJgakJOAQHVF5UgIgobYkFRDFdNPgjx3LFr/v2+VzHI9gP - 2fhsr32ez4/n/eX78Pnel/QUOSyIp1p3gcNCkXflOxy6le8wCM8T8Hznq+O6CJCWAiJy84RuIbCdebqW - weYX6J1SZ3ojTzcCOWvfFQP9MlubCwvISUeubt60fagLb8/RdX6SrHGpTtVw8Px5f+Pz1JKlbYz3Z9aA - oGv6NpU37KDv3uXltO4wH0W+Pq6dF61Z2h3gp1qztQ/MYewKiC0/1D9HmzL5CoVM5AriekADsEXvcmu6 - ivX0+gfau8TyPv9UvjjKvwN+6vox/n5GOGtszuTbemtX0Aazptwu7ggwgBgQARLo/Q2YJC2Z/P/SlMFH - gZ9ufo8fyghjjQ1mvqOn2oPWpM0RV9qFbdZo5g3wjvXaEX4QAs1/cjVdEwPe2pCu+flgCGOsO6jp7D7n - Ti+kqM/IpUQQr9qr1kOf5G9xjRx2Zrld7UnLE7lMciVN/a/UHVDvBm8F/1NqMGO8lKK+eeOMG61M4krt - 4otQvPaAOgD6/oS6OdJXoapLU9d0nVtOL+zjruo4kTu5lML9g4v7uHjwVvCDyVuUxqokruubYldaFq86 - DaJLZ8RBJBj6xi+mcKOZYYyxOpmrby/3oOdNXJ2eF7tDjyOpMnFzqNzDJYK3gh9I3Kz0rUjgui0FS2nx - LtWp2eLn93BboW+80sSNpAYxfuVxqqbWIjdaFqeq1alEy6DHCWDI2TiVQHmsygTeWhar6o9cp3jt492q - 7pbcJfTkTrZwlrgC6qEB3u7Ti5a9SGcI8zfQ4hi2RjtbHKeqdBdr46MY1gTeWhLN9gV5yVblbGeyPst1 - ofmRzFloFMRLYtg3oW8CRSenqQDGWtYmPntkCSnaySArgcnCSGY42EvmBWnngh1Ma1mChga+LHsFYvyL - lCcjmbfsfb+i4B8TUwIYQ48L8Fgc7cR2JcmLUFZ+mq6n+wMUMZBaAqhzwpXF9UedqTlYkbHaQ7I4921l - IvROQe9w1Dr5RhQcezQuYF8Ap+uxONrxMCUymr1NOcLIbVvUAdK4DXI95IYuH9ZTqFtD/QzC955h9OEj - gSdrAE4cIcdCFMhk5huKHghxiyyAp1Ic7SMzmAMV1VDrxZcejDycN9gPGoRkBMnJkUB5LzDmqRc/Aykl - 5hAwPJ0qwBFfGLg/Om/sCyjIIX8Z2e8nS6mId6BJG2UlkOQAEebtJo54VWpb4Lsff5k39gWcUJwYn5Uw - KZtk7fBsNa2XFUKMd6EIYhHkN4HvDzR6znxbgVv3hgSerPHOhmbQcCV7N+DNRkQhqyUuJqO0owx2Arnf - k9dLb4Mfzo/mMbbGrpWeEovIS9C7BQhHkbZvBwQwhjxelaF2fAAnYvKV2gATG/QiPvp1aVqCj7QXcpPA - WNxa6bWQlZKtUMfDhiOMo+iGgpau7wXsC6yy1xE8OwqS4CMRAMMZxt92HNXFAE4VimIz3lb4n7f97qNg - c8ddAfsCKDzXYr0lcwBDAdySAsBTiQuiMBaFSwUET6PoDMI3n2OE/AXV7wtcYQSjewAAAABJRU5ErkJg - gg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjk0MDA4MTVGNEFENjExRTRCNjgzRThBMjlFMzdD - NDk4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk0MDA4MTVFNEFENjExRTRCNjgzRThBMjlFMzdD - NDk4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjk3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7U3Gz1AAADLUlEQVRIS7WTa0gUURzFV4mKMqVC0XytgabkmiauZOKDwlQk - wswiycAPGoVSFmRFJC0tQX5Ii4VAc9V87KqhGdima33wQSZWoilqaa1u66qwGSKleZo7OzOM4/gI6sDv - Mvfe//8cZu5cCYD/ivgiT889HFQUYFAxy5zE+vnQw8Lc6xWpc7fHVE0ZprRqkGexGoLQmIUexBpYNK7b - YC57BHNlIcizWA1BaMxCD2INLGWudvj2+AFGFDkoddn67wJayo9W1OT5j2py96A+Lxh1dwOhveULar1S - rF5ozEIPwuLmkriapqKQyZmJ04tzllNgoebQq0OnmtWxNcIeoTELPfAL9er4quaikKnZ6ROUYRLaNRFo - vB+MztpDmDGfBFnXF4dONxfHafh9QmMWeuAXahXeXy3jx/FjIhHlV71QnhmEzpyz0Ocepuffxw/A/Dke - WoWPgfpLbf82wLbq5m7jjCkBfU1RaMwNR3tqErpSE9ESLYfuRjjeP5PDNLwfpC72SOgm621YRcKAyhxP - o8UQg6aCvSg8E4CLW2yQzVCaHoCOUjmM/f4gdZERgZsZm5W1LOCym3F6JAJ9tb7QKaNg0qitF626DE3K - aAzpwmHokSEh0md2p4cMPJbdclqCAInminRwVCdfNPZIUZHhguoML7TlJ0N3OwJ1l6SYGJDjXaXvIjGd - /w0OMmcsl0oYoM+PKa664GIabtgFQ7cnPhbI8OaODP0PA2Hs3YeBlzJUnHc2EcO5XwscTMDyMxEGEBqV - B7VPMpwMrVnO84MNfhh64YeBel+0XvcBtT7WoAh7SgxnZn9yMAGOVleexAIILflx9zRZ0u6SlB3QpLvj - WJgP+605Ji2zHMI9CuuZrBRAoGSj3L4Rvdnn6KYxs2XdkPr1BEhy7TegNzONbhg2TK4bJmDTmgHX7GzR - nZZMN/R+Mq4bJsCRDhDCF3XBVOSShTm50k18uvq/cAj3HJy9dVS725oBApG/JJIiiZi0fRjmIHNqPYXs - MZC6td9AIPKfkxA3Yvjq7QAHExBE9hhInfUMVmI1EUNdRx8HE0CMl0rMmGU1UYYqYsrCffMlkkj+AEZF - 7H7+T6nEAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzNzJDMjE3NEFENjExRTRCNjE0OEVEQzI4MEM0 - RTZDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzNzJDMjE2NEFENjExRTRCNjE0OEVEQzI4MEM0 - RTZDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6PyaLfAAADMElEQVRIS6VUXUiTYRT+vi3Tzd+ps23+3KRigtiPkolEQReG - UYTkhWatpWlWGkRdddfdSPImqUAJjSIT00oxLJIk0cR+tFSyzDJtgaMkDEPkdM7ZPvm2vS6jBx6es3Pe - 8zzvtm+TohLS/ov+AACStLgEQuJyLRJWYK1yzh/+FgCoQrpnfM4fOGBhcUlIMkEVkma4H4i1y2kFcMD8 - wqKQZILKZqTqmlTAWrfvMjhgbv63Dwm0hLWQohn1eNEbzrlfPiTQAtZCKjP1GXdAIC+r4XD+9CGBFrDm - RVJ1re6pZ0GyHHMvIawauYVNCFPfvvuQQAtYC6meKXU0amNsaGN/ZR60xIf9aIgN3cpGE9OzZCZ85nEm - pGiWlLABmuJCnUOXrNB7chdct4TUo32ANDbp4NuielDpqWfePdaPX6GrohSK4uLhlCEo96YlZLbOFHzH - oJXjMSBcGn4/zQGovEDqXXtzeTb+BTrKj0J3+Q54djYP7EZdTU2MPjFSK8eieQR9QtLg6GcOQPWgqKeQ - ZyOfoK30CDw+lg2Ot3Z4VLoNqo269mCNHIa2WjYn9A1PcAAqU6m9VV3TF9psOwwPS3JgZugCdNoyocwU - jU+RlImWBpezGz0vxzkA1YOiHvPFO7Ca1kGHLQtmXp2HdutmqN+/F6JiU+h3kOpyVeHJwBgHoLIpqajm - 189HoaG4CNqsGTA1UAWth9Lg6r490PygGyLjUikgzuWqQlffCAegelDdUwLqigqhpXgjTPYeh+bCFCg2 - RkEk3vxuVz/P0c43oLP3DQegLhspNalSFxiNcLswHT48LYNbBUlQk7ebzenmyhm08w1o7xmiAP6hRZiT - 70eYkzpctUuJWdHmwWs74+F1Uz7cyE+E4ohQB5mHm9a3GywpTXzektyKduIAIsKI3ISkL4rIdYle05C9 - VrZVBmvtl7eboUyv7V4jSQdwRn8FdI72iErtCUxnIuifkJ5hUqUOq9Jr7OeCNU6bTpNVqtMcDJSldOwn - KnOk+jypJ5QANRWc0cs5SEelXr54QidfwVYAMoiHq4W/gNM6OaNCJ+diaUIqN/43+Atwg27t+9ZXBUn6 - A2MdqQeVc5pWAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN - yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc - c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg - 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 - cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 - ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw - O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD - nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz - 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn - k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I - 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df - WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs - T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda - SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjU3QTU3RDNFNEFBOTExRTRBQ0FFQkQxRTZFOTNF - OTIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjU3QTU3RDNENEFBOTExRTRBQ0FFQkQxRTZFOTNF - OTIzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUI3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz70M76IAAAENElEQVRIS52SDUxVZRjHD/SBcFOZSgoqKWQQBhjyofdaQQp3 - E+d0Ko4xW8221kLKRC4QRUCJERKklAXEx4UNYYDJh7guAy4IXTTSGyhfFxQklitNZzmD+ve87+WcLnBc - jHf77T3v857n9z/nvEcAMCfG/zYjt2eJbHE2yAUsdvbcSzSxWaxJN84GanyUOMBmsWYhj/d9IRT6tgvw - DAgGrQ/xgAfj/8waJj+ccARPrvZmgkBWk+QvhuLayBiohl7TdTFkt3D/rwnpKf4PamhppicsO10nhgQR - 7zH54PAoyCWha25j+w3CvfvjsjI5WEBj6wVQD05VmUPYZxm4NsprIj0D1+G9UW1+gzt/PJCVycECGvQG - UA+nqlaH3sERac3o7huC14YQJo9hPcKtu3/KysRR47xwP3GRuFPpbD9R4+aIxhAlruZ9DeqdgvHqAMn5 - t+dy7rl5+94MOd+gcXrlgmPVnqtw6bOjMGnzMKTNgakoB5cyP0GNtws64qNB/ZzOrj7xYA9P8fz8690p - YpHy5fPfqiL5YOFXMGaloWbzBlSsWYaaQH8YM9MwlH8SVV4u+OF4FsiBkoo6LHP1YQFqS48w/MvtKWKR - YkdFV0dqMrqz0qF1VPyevdQuedVK947yg2+j1G05DImxMHyciErVOpCDU1RWLYaEih5hcPS3GXJG3lK7 - CVNmKip3bkWWg20m+2TU2FJZ1wRdvAYlgQEwxkXhG8cnQA6JorJaOJpDbJhH6Bu+yRrnEzGESeSEwzz0 - pb6PXC9X+DmtHpusR7v5BGLHcz4oUK7D5cjXkE33sb/GkhXP+LEABQ+4MjjGAmIOaFKga+2UyHBQ4MeE - Q/hiow/yI8J5TRW8izX6Ji9WFGq3q2F45w2kL7IZp5rLNLicBxj7b/A3WPKUFz7KoAPtv8HJ3aaGdvd2 - nN21FUeW2KJ4/6uIWB+A6EWKiqNO9mg/+Cbyt4Xgw4WP6fgvR0OUWiJ09gzzCwrxYiFJn34JqqEutwCJ - 9o/jZJAS1XQOn7+kRNrzHjgeqETD6/tQHhGGD2g/UvFI+KR/hpwhdHQNSQsKiV3rH4zWzl5QHcWaOCQ9 - 7YwEd1eU7t2Bij07+Zyu8keMwnok0s46hbxWZv1DAtoum/gFk3v4bcG3uu9BNYn6qnpkv7IPcSscELXA - BlF21rciba0KI+ZZqSa90pguZwj6zn4mj2PyinPtoLXEd+1dU9ab1GHskDdN+mYM2QBqCGfy8vrzaLzY - I1Fe34q1/lugScmUair1njkF6E8UVEJnuCJRWqsHC6W9WHbw0UkZvK4KMQfIiR4GfwO39UEoPtOEc+3d - KDnTDHffzVzObqDZg4W8m3gMyrkEnD3/E5PEuPkEISPnFMlfZhINq4vQ+lkW4rTGl+0pLPfkpJYItS1G - DjWGEY1sFmuWUN2KyafX5aT/AeFfWm9WHAbkArwAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdFNUQ0ODMzNEQyQTExRTRBNUQ4RTJGMDI1MThC - RTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdFNUQ0ODMyNEQyQTExRTRBNUQ4RTJGMDI1MThC - RTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzJGNkEzOUYyOTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz41vT1rAAAEBklEQVRIS7WUbUxTZxTHS2/fb6G1VWjrwltfgGGRdgaxbkLV - FawgoKJuyMDotjCrw4ERHC/CQBjWDRQLSHnfmBnBmkBi/LCY+GEO/TBGtiwxYW775odly5aYLC7573ku - LbasJWGJJ/nl5J7n3N957nNvywPwQnnxEW7qaqjjzSSFXwtH2GIkqNx5hQXNZG+CcD0rCVsMJrBjmh1u - Gc7eMnA5MCSwHomwxQD0Znu7lJPR7LqRBN+iA+XjG0PqgWHhHP8pBKA3vdooxZvD8Vw+PpqAke9zUXNX - j/P3LDg4oOXqZf71SENCLgLQ5qxaCYqvbcSF+9loq0/ClF0Dn0kJn1HB5UnbBrTXJaHlm21wXIrl+v1D - hMGuEDGFNmWeFCPPrcX7d7eg7YgaM+ZEzH/aicWJITyeGMTi+CDmuz/G7OZkbv3wZBrsF+Ow5czSB5B+ - TFSqSmUkZFhUiJjbeb0KBUN6VN6xwHVCBR+R/zQ2gIWeLszuysa0UYPZ3CwsdHfh8Ug/fBnJcB1fh73D - JuQPGJHfr+c8lESn0LIsNrwh/H3rBQ3239yEoi9TYfmERY+ZxYOOVvzQ44Y3kcXbpSy2d8jxTrkc3iQW - c811mGtv5vqs3Sws7hjsuJyEHW4DXqmL47y8hGLBaUutGrv7DCgcT4PzuomjYMQEr1aGxe4O3CxxovZA - LIo+S1nmXJkGn+duxUL9aXg1MhSOkfu8Jjh6jcjp1MNcpYZuFzPI0+Yxpdo9zLw2n/mF8JtuD/NU52RA - 6d0gwaOORngz9LDliJBQIoL+kATGI1I4d0oxasvEd65juEb60ipYpL7FIqWchYmQWhkN5Wa+i7wHnoCg - JhgI6QQzIYOQ6VaJn33bUAPPNivOqUS3RKqoHKkuKl8WH1V4dr1oZmJfHuaq3wXp+0du4h8NEJ3Cr4jZ - xH9PwPKsxEPeNI8nIrCEGILCj7JFKbwzcXAfbh9wok0pfNasEA7XxQirmxRCb6dOiftnqjBS4ECDQniP - 9McGEedHzZvvVUWkKZrZ26wUod9uwwx5D1dybOiyvIyruTZ8daIcU2WH0ETWq1imjMiYFdCTYajIQ0Ak - viBfTutLAjSk6nHjcDGmS0u47N6ehQ/XM3+5ZPyPiIieQvj4+pISf/9ZtCq/PtyJqZPJaEqQ4LxOhMZ4 - CUYr4jF9Sk5/ufwlU4S43RzjIWCtPH3iDL72+HVcBP8z8Car5bRGdyEmyFaD9OLJQ+tzHljxxyM7aJ2s - Lz9JyICrldK14CEQeTbHz7PpoNeXj0qHiFe4pF8xoHW/eE20lIj7SMaP40bQXF8oHiNOegzhn6DmdcGa - +WC3oI9knLILhokvRE4jZEDVa8z/ggSV0mMJkdN4PgC8fwGKe+JSzfQhQQAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg4REU0NDQxNEFBOTExRTRBNzQ5RTJDOENEOTZB - MEM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg4REU0NDQwNEFBOTExRTRBNzQ5RTJDOENEOTZB - MEM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUQ3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz55z27YAAADl0lEQVRIS+2Ve0xTZxjGTwgt0EN7WrFqh9MFrdVyE3VMuyVj - WTITRTcz5/6YZHEar0A0JBMBRToMl1QEBURsRSheJhFwVC0yjAtEqJe0IhdtLB0a8TbjNMYtYe7Z+zEx - R9egyzT7xzf55fu+93ne50vO6YWzjRP+EwCGxefQv8FXqBhfQ0uJc8R94sGT1UksJ/7h9xUqhqt/WyFm - a0PkO3Bty4XHaoHXuhueqt1wFebBFh0G0gue8/sMFcPVhMqHWFNH4b2Vu9BRlA/bxzNxWDsGtrhYdBTm - w1tRhrqoMJAvUTTDvbCqNfwQnWdyjOgqMsGq4X8tGS0zpoUEhtI+hbS7jsxUOLZkMq1bNPMkZZiyjJYN - 8YenMAe1C+agSB1UKOozsvfFvYeODclgPrH2wirRju0dRB0Id85GmKMmoGC8+ib1vE8Zr7691zAVFxKX - gPme0YahmGB3BBJq04iAAWdGCkpnTUOWUlpJvbFDGFXSPdb5s+FYuwLMJ9ZeAs6f4I1Kid26cD6Ofz4H - 2UrJwGZBYkkXJEm0lue+pUTbulWoiP8EGwXJKfIrXhrHVhWOZAhhtV8Hd2UqpSj7yIAGeg/bPzQgP0aP - HXEGNC9LQM1Xi7CJdPOnsh9b8pQJ7SbVVQqQsHl7ljKGzq0tearE1nxVOu2Psh7TuJPZArYsloU3GYXT - 5rlBA5ka/z8zJk/AwS8/w+EvFgyupvdjsV7wu5vzrtR5bJPCXLNesYzmHjd/J9xrL9WgYCn/wYksoY3O - j4jfGjcLjcXLgw0smzuSJkdyfODU2lR5m6dpCnrqImCaKR34NsTvcaraH+mhEpTOG4nyBNm9+jT5gwMp - wRW7VvMr2y3jcMs5DT1HI1C3Qd5P2u+3zsfgjmsGaP+I9Vg2V53MozKR77Ym8w+99nD0NUbgZ3sEvCci - ccc5C1ebQtHfGoO+5kj0n4mFNYn/pSqJ73M3RuH6T+G4fioaV2xTcMMRi2vNUTSrRy+dr9j0YNlcyTdB - OFsWhl57NNyH9Og0C+jaq0LPvlG4/P2IQdw1IfDUa+jySLh/0MPdQMEt0+Em7dJ+FS6Rt7s6BJ0WARfL - FYSS5nVg2VzuogC4tk9Ex85JuFCshWsH22vJpEXXnknoqSSsOgrS4fJBHYWydTJBj7NKN+jpJC+bYbMs - y1n098qyufR4KV4n9EnjAgg18fwX5FXB+RHsEvbD8jp4U/93+foffXWA+wv9GwQ30fQQcwAAAABJRU5E - rkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI2OTgxMUNFNEFBOTExRTRBQTEyRTc3RTczN0M4 - QkQzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI2OTgxMUNENEFBOTExRTRBQTEyRTc3RTczN0M4 - QkQzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUY3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6CerVFAAAEkElEQVRIS6WVe1BUVRzHd7n37rK7LLtsLs/ltbsgb8RBQDTl - FaGW4SDWmI8sLAGRtRUBRUhUXhKPAkOReKwmsQIOEOboOsofKlDDI6UZCaH4wwbTcey/1Pl27oaEiV6r - 78xnzu+c8zvnM3PvzL289kDt/4Izcx36N3CmNUDL8jMphVdLbQ6Q0YLAn17nhDMt/hre1/6aX0ipvFwk - R0+RvIDUQgKf3eOCM81+at4pP/UkKVXnD8hws8MD5/JlJWRulrD7L4IzJ3zceQYfd7Og+xMZ7t0MwUib - Fl25f0vYnufBmUZvV16Dt6tZ0JFjjfujofhtZBF+MGrRvsd6RsL2zQVn6ua78I7PdzELWrOkuDsSjLs3 - vDE1HIyBr9xhzJTOSNjef/JSqfF0NgtO6a0wNRCEO4MLceuiL273B6GvwRUnP7aakbD9T3LU03m64kiV - 1sksMKRb4faVQPTVk0t1Vv39TW6Y7PHHlWMuaEx7VlKtdZquOFKudjQL6lIkmLwYgNOZMsQGMqFfpkou - 9VSrMH7OF5eqVKhNljwlqVA7sgN3DrvZmwVfbBVjotsXJ3RShHrQfgvcKKfabRKTqcwRox1euFDmhOok - 8Yyk1M2ePc6dAldbs6Byswhjp71Rl2yFUC3tQ9akMf60oup9senbQnv82OyJs4UOKN8kmvOdPDf5zsrJ - Y47SXad9rNHtIUenWoZOF9nvhKEzzrJtkb60omyjyNS53xbXGz3QkW+P4vWWLy+pVckfdPq7YbC8CGOG - OowbajHWVIvBimJ0BarR7mxdvsyLVhS/Y2lq22uLoVot2vbZ4WCikFtidJKmtpPLbzUexXBlCbqiw9Dq - YY+uiBAMV5RgvL4G7QFqtDhJ05Z6UoqDCUJTS4YS31dp0JJli7x4DskJB8n1vsJ83KgsRYNKgo61dihY - LUK5o6jE4CC515uXhd5DeSD1CGm3CNdSity3hCZjhi36ytU4qVci+80XSOrsxI/GKgrRtmYlDvlZYqBC - g8JEMV7zpcKOOIgqT0aEYjh7B9i+3SsEipQoZt6GxbR6zyrBtQv7VbhW4o4m3TxkxAnmllQrLR/fLNyH - 4wEaZIQI8E22A/SxzHdZK5iHBa9aoiF8AYa2bwHpI4/jL/ITRNgdxwxlxjEP2vS26CZn6re/Al0M86zk - U4Xwj4EcPY4sXohcDwHK1kuxLphK0kXTY/kawYRh9evo1X2EUoXw8Y4oun1nDD2aFkmfSVpKZadH072p - EbSRzC+T9cnjyQqQ+dOSQ3Kmy7B2Nc4mrMRBGwY5WgZ6Z7ohx535tchRjqs7k1H/Riz2KumfNoVRKanL - 6fMbQqm0LeFUFluvX0Rt/GAJXUAu7kuPosGybdksSa6UWpUnF6AmMhyd5D18tjwcJUE++DwiHKakjTC+ - uw65ZP89sUUSOSCbxmZ6tCbIZ63ZEdjvh5IgIbC/Xx4vRco83iWhHuZ4adD8djxaE9eYx9IlIdBLqEcf - WjH3N8ssJ6YZnzXOrp/sz7CJrJsFJJI4AT8mWcRv1In5U4T7hDtbRXxjtIAfT/ZV/w2e6k+0FURyr64p - kAAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkExMzE0MEIyNEFDRTExRTQ5MjFBQ0MwRThGNTU3 - REFDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkExMzE0MEIxNEFDRTExRTQ5MjFBQ0MwRThGNTU3 - REFDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RERENjE4NDBDRDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7V3v1pAAABvklEQVRIS6WUMUtCURiGHSKhQSURRbJBIRcbgmjtD7TVL2hv - qCFoaW5oaPI3tERBS+BgEIRR0WCUUEgUgkESYYIhcXrfc++p6+0cPRdfeOD77jnf811vUCg+PTsSQoiB - aIeCoJN60Q4FYWh0Qz6KQBgouhpzcGkYovcttPDM1Zjjk2nftgubzTOX/l+FB15Ep9sbCTpctRP/go/O - 10i4C8KOHfEtGPQHtSKWnjmCNuHYETzsA0nwYrPVDgRnMLsCFumgSMYrJ0iYl19e3wPBGczmAOXGT6QQ - 9cabhLXqTbXqoft7cxUc6BC1p6aEtepNteqhm3KsnuBAh6g+NiSsVW+qVQ+d/YLr+2cJa9WbatVDZ7+g - Uq1LWKveVKseOvsFZzcPEtaqN9Wqh856Qeu4fCXKlzUreDeeKbShs16wt7G9K0qVOyvWtnZENJU7hM56 - QT6ZnRPrWHJQuhAn57daeMY7vDs+EV2FLuVYPdHIJdFkbj6Wzu/jp3+i//3mXiYzhU4kmT2FfBOqBRCR - Um9wUQsyBvhGHFwCy4D/a7zwGc94Jwk40x+dXIFwgG/FRfy+OnjGO//ljE4chMEJhX4AMnDyVRS80DQA - AAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkY5QzgyODdDNEFBNjExRTRBQjc4QTlDNkE4RTgy - QzFEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkY5QzgyODdCNEFBNjExRTRBQjc4QTlDNkE4RTgy - QzFEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTkwNkVCNzZBNjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5gwa99AAAE3ElEQVRIS63Re0xTZxgG8E+WbFMXGSI3K1AElAlRJgFUVNYI - qIAXLiIFKXcjq7IxHajRMYZDRASDAspNBStoy0QKCojcKQJHtAgqCEwnHuY2dCbG/bPk2XeIPdOFxsX4 - Js8ffb5z3l9PPvKuA+B/5c0RRsXT5P2byATa6tBMmTh/bSZbNlneHGFkgbydBZfyDhbETHKKth/RcMh7 - GGFkYVbVCA5euIfDij4QwaZztJ1K88HffzURTd59hBGnMioGkSi7g+SSbpDZG+W0nUbz3oAzqfTfJ5b0 - YX9hJwcoaPtWQBJLCmgYTUJ2kEJaT3J3wvCSRFk/EgrV2Jun4oCfaPtWgC5kBh+l4P5oBs0xiLeRHlpP - cnfm4ef2nbmNuBM9+Ca7jQMu0fZ1QEeTiedfTfB2wtwa3IXrfeFQ3YqATxhR03ri7iYe4Mc8rCw+/xak - x7oRe7SZAhuUtJ324lmdiC4VTxJX7jWxlDBd/WFoU29GvSoI3sGkl3uP5r9AqDw2h0HUkQ7EpDdwQDVt - p718fjVYmb20XZ72GasJ/a2i8BZ6PiXgS8K09wahqccfNW0SrA3SCkjKpVldEB9oQ8TBegqsv7JggfAT - DriQasO+fLYZmsgOzB8be1QR7u/7xYf+2wjTcjMUtZ1uUDb5Y7VYG2AmqQhNUyEgqQnipBoQk/V1PPDj - PPbFbyI87LTG+OgyFO2z/HVk8Hy060r7j322EuZqlycuq9xxsd4D7pu1AiGVoamtWLf3GgK/q+aAqxrg - fLI1+3xsCYZbLcEOOSJv99wJYImz7dQN0YSpux6MimYnlNf5YFWAVmBLte/+BnjuugLvnZcosK6BB763 - ZP8cdcRAvQUeDzggb5eQB7wjCXOpeSkU15whUzpC5K8dqPHdUwuRtBJeXys4oFkDlO2zYJ8+XIz+KnM8 - umOPk3FmPLA2nDAVjW6Q1cxDcaUjVvppA0yD69bGVWHF1nK4xZSCGHu38MAeITs+shBqhSl+6bPDyVhT - HlgdRpjS2kUoqpyPfIUdlvtqBYKuuUkvYkloKVZElHBAuwYojTdjf7+/AMzZ2XigtsEJqYAH3CSEOaW0 - Ra7cGlkyKyzbqBUQN7pGXcCigGK4SIoo4NWhAc7tnMM+uWuNjgIjjNywRG6MCQ+IQgiTp7BFerExMk/b - wXmDdqDFKaQUC/2KYB+QT+/Aq5MHvprNjvXNRetxAwx1CZEbbcwDrsGEyThritQiUyTnCuC0TisQ2LY4 - sBjWnifwuV8O/QLPbg0g227MPlaboTFdHwOqOciJMOSB5WLCpJ02QWKOHpKyzeHgpQ2YE6iy31QES/dM - 2HgeATFa08MDMUbsaI8Al5P00NdoguMSAx5YFkiYlHwBdqfPQsJhfdivIbfptjcAXRoBEfjdnOeZRYFD - sHJLAjFYdXfGjOlWvTdOS89EGzwZbDOCut4QndUGyAic+UdTfda3urrTLZz9iXp35qeIS9HF9sSZsFtF - Bug+Mxp9bjk3c2kciKGHkhi6D5JZomFi4DpM9F1qaL+0pip9b8E2y94s8czx9E1644f89J5mhlnclZf9 - kEzPnW09iJLmvo2IjMxfSX62diG1tHd6tZcf7pO4L5lFY/ha9Ibula15MCSP6leXxPR0Fu7QpLsjz4ee - z6CZ9D1CiM4/X3QnEat9eLkAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVENUYwQThBNEQyOTExRTQ5QzUzQzdFMkFGQkQy - NTA1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVENUYwQTg5NEQyOTExRTQ5QzUzQzdFMkFGQkQy - NTA1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkRGNkEzOUYyOTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6npMy1AAAGEUlEQVRIS7WVeVDUZRjHf7Ase8ECu+wl4LIXcqyyHC783AWW - 5QaRFTHkMi9SQvE+UhLzwk0BUcQSgQBBgcYDzStMSzOPcpqcmo5pmqk/+rOapqb+iG/PbzfFcSz/6pn5 - zPN739/7fp/nvZn/3TSLjj+XJy2/RaItPCT5vaBd8m1+q2Qku1lcrcvki+iXr7fFU6ZZeOx5KDU1b7jU - 1Z2bVPMPWNMbRXrXkWAc+ywVLbcS8fKwFjlu8VdpW0XzSc6f8PEIPzJ19dFnU3WEJdHL9P3X9O1nkdB8 - CQrX7i3mKn9zfqsUq29ZsPfjRBx5aMO2cTMy94gm7FuF7XyJTwDJTo5GVdHxNALVgsPd5Ceye+9g8b0f - UXbjB8RtH4Msd+MeXS7f6twjxbILZiy7pEHDtTBsvG7BqivTUXpsClLWCbtJNpDwBlGVH3ySIFV520eW - nedRcf0HVJGwbeRrOHs/h2n1CGRZDe7wND/W1hiI8sEYlJ4KRcVpJcrfVqByNBILhqLh3KeA+UXBOpL2 - jkRZduARPGXZ/vH4pnMou/gd7INfIPn4QyQc/RSOzk9hrBtEiKPerUn1Y5PXBaDojWlwdgUjr0+G/H4Z - cnpCUNJrQNZ+LeLrBD/LYnixFEDAKFz7vJQ0r49dO4zikS8x8/ADxLd9jIT2B5ix/z7SX78Pw+K3EJy2 - wq1M4rEz6sRwthgw82Ag2KNS2I5JPZ4rZx00ImGNHIZSfisFkDGhxbs5AkKLd/3kaLkDlgTjXrsNc/Md - mPfeQeyOD2HbcRu6yi4E2Wrd8ngeG71IBPtePWa4JUhsD0DykQAkHQqApUWCFLcGyZvDoZ/P/5oCTGXk - hU2MvGB7rbGmG47dd2Fa+x6iX/kAMa/eQvS2m4jaeAPspvcROb8TQexid3CcL2usFCJjnwE5nQYU9RhR - PGDC7D4TCrqMyDqkR9oePbRz/SZEKh8rI8vdyshyXhmzLD8DS/1VGOquwtgw7glkXH0Nhvp3kbL2GrSl - hyC11ril03xZfbkQKZuVsDeq4NihRtYuDbJ2auBoUsO2TQXrJiWMlWIExflWMiHOjRzfJy0bg776HCKX - vANd7WXol1/xeN3Si7A2XIXW1YbAxAq3UO0zPTSd1yG38bplLK//vxBrffKY4PQ1HH9aKk8jonQUUyvO - Qlt9HtqaCx4/tXIMyXWXMXXOAQTEv+D2zCvDhBBTCN1zCGOCZq3k+DXO1YcpRYOY4hpF2LzTCCs74/VE - 3IvnEVd1EhGFblBbWot6BKXWQZq64tlYa2+TuJwQM9KU5cRL35hyOxCe2w913hA0hcPQFI16KRzxEFtO - a1Q9htSVN5C+5S5x7x/uIm3DR7CvuomUReOImt1FU7nwEolHECImMGkJE5i46EJkejNM+X1QOPqhzBqC - KvskVDmnJuHKT/K4bgjKzBMItXcjJv84NOwWiKPndJK40TOCgPgaRmIur1dZ1yM6txvyWT0ITR+AImOQ - gg39N1ybDBJP60PorC5My3oTwQm18FdNryBxbq0EJL6AEUTYZBTkF0NGKyKdvZDb3qJOAxSIOqcP/jtp - JyC3D1BSvYgp6EN4aiNlP/cTEk4gFASPEUeXkWd8RaY5jcrEBkTn9UCT4Q3gzfBfRvJE9rrsfpicHSRe - NsFXmJeSXhTBXXY+jMjk8uArVkpExuKb6pkbYJ7L7Ria37xTUBeMeCkcncRTN0z/TyLKNYy4khNQJq2G - IMLBXdUWQkXwCYYR6md7IPP1k8WEC3UFDzSpG2BZeAZJtXQWFpyls3HOC50JzkdQnbFqDInLLiC2rBcq - 6xoSzzzP+NDVwDBaQkx4XzahNv8xZH48sVotCHeOUnnCWNJG18Q4UjddB7vlfbBbPwC7+YannLTyIrS5 - OyHU5v3hr07poL7JBHe4Jh8bzgQROY8h46IKCAVfbi73D3PcpfoJlX0VtEVN0JXsQlj2ZoRaaynj7N/8 - NfZLPLFmHrXnpiWSCCL8iMl32T/M6YGMq+R+covD7QADwfoIgqt4QVGtfvIZJ4lRv5CY4zypbjfjy+eE - M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN - yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc - c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg - 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 - cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 - ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw - O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD - nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz - 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn - k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I - 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df - WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs - T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda - SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNEQkVBN0RENEFEOTExRTRBOTRFODY3NkE0MTRG - NDA5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNEQkVBN0RDNEFEOTExRTRBOTRFODY3NkE0MTRG - NDA5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTY0QjI3MEFEODRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7lChSUAAADYElEQVRIS62VaUhUYRSGz9geETlWP9RxXBK0cq3csNWaKS1z - Q5oJS8NMMvpTP1qgDSJabLFssQ0NQqJpETNq0mJGk2kxsrLMMhiyZUonzZK0PJ3vu46Mcq/F4AsPfOe9 - 3PedOXeYCy4eAQwtYSRwEGF5WluBsdJUg11/cNBgeSzXVoC/uroHHZbbW9DR+Rstzd/sv6LDsCwGOwMT - O7R3dOFHixVdFFN/kqUlUhzBlsXoU9D64xdav3cws5usYMLdEWxZjD4FLW0/OT2mG7/ggESyBNNibef0 - mOzTOCSRLMH88LWNY1+wYj0MI/wJbzb/j0SyBNP82cqxL7Bp+TpIJlLpKBMcaYlkCWZjUzNHrIAk0+TA - mdRsWEpnJ8ESl0iWYL42WzgSBUDhqctywBCTCBNolCwRyRLMusaPHKmClDUQtnmfoj4pE9bQOJQQXZdI - lmDWNrznSBUkZUH01lzvhoRMKKJxOCFZ0C9LMGtemXHH/hPoE+RqmhoBkWT3CUhYDavzCqOaFqdDJY0j - CdE12bIY9gXHt+7OQ88AX1RpnN4GRUM02b0B8ZkgJ27frE7oVGnhIVmjiCH8Yj+x0AfP33HsC/w8A5W6 - +Rqn+vSNLo2hcyGcbL7nuFUQSlzKPR/SdEWf2DknBSrIH7Dg/tO3nN6ChRngq14JxuPFYdbDRVFfVSug - QJ0Op8gvW7vDtf60LrJFb1qCO496tUYsgXy6ZcACQ00DhxcsWAlKQn+wMOhLiWERXigLxNxCn9aCy9Pb - dOULOkurVHjdEIP5F6dgctZYc3AMxFLOCELyGdx99IrDC+alwbndBf6fLlfMw7xiJR4t9iGUeOZqMOZf - 8sFjFyNwzylvTMqciL5hzihXTGF/6fxmKe6Y6jjsDLOWgcdsLeg37B1vyS3ywL1n3XFPgRfuynfHLQe8 - ujM2TKRwJWZv1qDudhWWGp7gzapavFX94p/wApJsRjz4RSSDMXvbuJac7c7tcemjzTNih32Ypp6AWZs0 - mFd4Fq+VP8SSe4/xhvEpllXWUsmzATlyTofObv4v+d5IspCFEDJtMZjUaSPMftEQT29ST7n75JO0kt9y - tpJ/rKU/zm5+b8a4KA715HPJAlUQFaCGx5PCIYhm9iDZr0VBzCQSCNHXpASJABD5F6q3LHH6EbaVAAAA - AElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGOUFCQzZDNEE5RjExRTRCOUJBREM4MzEzMUQ1 - NzQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGOUFCQzZCNEE5RjExRTRCOUJBREM4MzEzMUQ1 - NzQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODlBOTk3NTY5QzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6aIUJsAAAE0klEQVRIS6WVbVBUVRjH79297/fu3l2EFRCCdBit6YOROU2p - yALioLwkmRiWKCDx5oLyKqy4IwoEgyAYRC4gb/mGmIKBFi8mIBLql2iChnJyhtQPzTh9CKE9PWdDBCOk - 4T/zm+ec5zznv+funmcvcbfUZkG8UAPFNguF6S+yOfBdkc0IjJ/A+M71PG0oWFMASdw6pl0IQl+h9upI - 22voToU9ulmofQg5y9BFN9SZqymAD2CI3gLtvOn+RLu9J1/bdypR7diQrJZg/PVwy6uoI0fTEruJXw2G - TpnbxLXwBEM/nF+KmjLkcOLbPM286MrR7IQ40ZWruW8MEZbDvOPHS6+gVpNczdKkE5jrADUglH4sre4v - 06H2o5rviY4j8gv55rC8G+JEe7b8a9Z2Qd9mkrsHLyxHzUZ15aS5LcADCoAElFD7OzBOXDXJc9KaJYdD - /KvtkHwvK0TQNxvl3rsNrqgxbYY5N2lsVYtRdoM9lisH5RGYqP+Ty5nqSIiW5kz1L+nBvL4pXd03UOOC - TiepTjIUMWVev0+lgzrlP+ZqBp6s43bDMlQZL5mIi2mqWWlKVUVBtED8OTmI159NUt26edIZ1SVIFZPm - i7D5hVTVZqj7E9aNYZ6s2JSmauyvWYpO75cuayXShTibJP2LM/ulWIgWiCOJ/py+PkHqv1HmhMyx4qdg - uuSpOZgEQd3YmSTpkSmE1zckSpd6Kl1RrUFq0skKF6ixJeoN0gzq9krxEC0Qf4r34zyr46SBjuIlqGyP - eGK6ee1eaQvUjdUZpIfJgfzGyhixtavUGZljxAtakXwJauwAnqiKEaeojBYNEC3maHE4bD379udR4sDV - Agd0fJdQMs2chfX3oG4MTB/s9eN8yiPFa9fyHVBZpNComW6Ob1XFHsHKZ5GCAaKlPEIYClxFv56/g8+5 - VuCIisL4KiicMi+PFLZC3ROofxDry/qU7BbavzpqD4fgz2kEq/n0K0sQpbt4zEpgvCSMHw1aRa+CtH3x - Tr7LHKdGAW/Qb8Icn4g7Hsa/P1n3W5QX41P4Id/x5SEdyg/lTsuzmWMd28ERhaFc3blMHUrZzEZCygFQ - 5W/nyi4dtkfGIDbL3VW5uOADLh5qJ6B2NHw945MXwnU2ZtihnG3cFwJDOsOep/3wzBwLCjGPcrdxD3nG - egotQMV4MzrI3TufoUOwbrl4xBHB/P5Ha+gN2Vu5zrOpdsgUzNXTymf9AMw0x8oOZjHjpnfZuzB1BAQA - d6UiwoN2MwawDbA2mOHPngl0p9ZkBbE3GvbboswAtvY586lOnqGsQIY4GMAMAo+X6RQvQ4rDOQwId6cI - 2K5wULhm+DPdtQmLUKofU0XNxxzrwCaaSNlIJ1XH2qAEH7ocUhJA4jwGpAh9i7JN96OvnwLzfRto87zN - scCc0K9Q8km+dA+MLQYvugTm+F1IwpyEvC/E4ZoUO2Twpiv+lznWPm/8ZiPIYHelo0FP9ZrhSSD3R6IX - dRviaFGEjOeW6HXUCUphNbd2Mt4zuXduGTwpKyCFm46UI96h0uI8qEHIjQOPY9ZRV4JXKrfA+tTfBEBO - 2ze34jyUU4DwNcMG+KouBvCtwn2BGw2/rfAvTz63Z25Fr1XOAIS/V3w0FsBdiT8QG+NFcpb6OUQQfwME - xz0xnqHypQAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH - DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp - bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE - sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs - AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4 - JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR - 3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd - li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF - ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX - wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF - hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55 - 4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ - VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB - 5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC - qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE - j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I - 1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9 - rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG - fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp - B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ - yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC - YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln - yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v - vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp - vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L - Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA - bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z - llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW - ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s - xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6 - eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw - YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR - XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm - WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl - xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2 - dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8 - V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za - Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v - Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb - PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/ - 0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h - /HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr - XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS - fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+ - tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/ - 6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOvAAADrwBlbxySQAAB7tJREFUSEuFlllQU1ka - x6/MlDPz0k9j1YxTNVbbVTPTNd09Wq3Tbbm0jqMItja0OxhZBFu0RFAG40LAEJCWRUCWgKgsskhkX4Sw - RkhCAoRFIAuSyJIQIGGRELLe/xzp7qrp6od5+NU5t+53vt/9zrn3nkMJjfTPkCw4KekCaefpdb1L9Mae - BfqU1OjMEM85ZV16x7RkxqmXzNKD0jn6cfc8fa53gd4kNtIuYiOoTkLrHE21/A+/EEiJQLJA/54M8u2c - dbaIph3zXTq7TaKzQ6K1Q6pzEEh/2m4nwkXxrLNDZKCDREZs/L8C0TzB6Pycr6Nr2qYciyTxWlLx1Hts - P7Q/XndpbViTEkQ6x/IrPS3oMGAPEaz7mUCyAKqbTIl03km9MtB7qyadfZVqB15N2iAiiToJIj0gNvyI - EegiiGdA7pEYInovFWodaNM55SSpR5uBdmmZB9VEKvpBsEhTnXPOnSUax3CxyoGaN3a0T1iJxAqBlkaL - ZhXNcj2aR7RrNMmn0aoxo0NHQ0Bi2t6uok1jImMs4E/Z1c2ztHvrTwIpEQiN2FCksb/MHrKiSGFDucqC - Zo0FZJpQr1xAVvJ9PPT6BOknNiPJczPYnh8j8T4HL5Xz4I+TpCSmZdSIJrUJLzVWlL219TYasHlN0GHE - ulqt0ze+f3WZO7iKp8NmlMjNaBwnyUdXwE2JR+rRDUg5SCHV3QXJh9cjeu86hP5rAzj3YlCrXAb/rY3E - mlCjXELtmBnPlKu2sknHnboZej3VPIeNmQpL2x3hEtJ6l8GVvUPu4DtUT9Co6BtHxrGPkH1kPdKO/wHx - HhvAPvQBWAc+wMUtFM7v/xjFsmlUTgHFClL9iBkvFCvIGVxCjsIsr9I5P6MqppwnWZKlhdCWWcSTVUzq - MuBhtwFVkzTKulV4cPRDNCZdxnh9PAQPL+DW15tww30Trrl9hGC3v6BUqkD9mxmU9Y+DK1Qhu2cGcaJZ - cKQLqwUaO5N6MmblBrfN2gJqJsBu1yJGoMP9jmmUkzeptHsURUw3zMvbYXn9AlON8ejOD4e8NglqcQWK - bx9EU2MmlA13MVYXh55CXxRXPQGzYRzBZKWTh1bqqAdDpv6A+imcea7A1epR3Hipxt0mDR73LSK7YxSP - 2AGY4KfANFQJ63AZ7PIqmBUN0Itz0MY9jLeN4TANlAEGOVZkOejg+iGirBvhzTNIkC28oaJ7l/Q+lWoc - yxvAyfwBHM/vh1/xAFI7SUV1ShwOTMTzG0dgar0Hs6wAK33PMdueCknWPuj6WLBqCmEQp2NFXg+Hohbi - AiaYJSKEN0wgVjqnp1jS+ZmzPCU8ciTwJBx9JMGpXCnCXsjw71tt2BEgRotwAA3pl1EYfQ5FhFfp7pjt - jwJtqoV16jaMkkuYKvFBV951sAtrEFwkQ3ilElFC/QzF7ll47VU6gsMZAhwlHOF2wDVDhJ03mrHDXwp+ - 3wrKyZcb0rMI/0YtEiuLoO3nAMvVsGhDYJlkYLH3EsTZ3mBl5cIvT4Lgp13kAYfBEs2oqbhB02Mv3rDd - NaUFbimtcE9thevNZzhxPhVP6meRPwoE9wI+bTbEVDdg7HUGYKqBZeoKVifOwDIQhCHut4hgc3CW2wb/ - R+24miXAVd5rOlJq5FPJKjvDr0q15JrchL0pHfBIqoQgahfUxSHIKRUgsMmJszUWsHIrIOOzgSUeHHNh - sE2dxXL/JcifMqArDAT/zj74JjzHubR2BGe240rFiJUzsBJFZb7Fn0MFeuGh9HbsSRfjm6QKjHz/BckT - iMvhRQh6Nou7TyrQUxMLVX0kJrsYMI2dhqkvCK3JfmBe+R7TvFD0cb6ET8xT+Ce14CJXgJCm8bF4lWMb - lTUJF86g+eKxwgHzgUwh9rBKcO/ebbRE7ILv+QTs8q9GYbIvoBdgvPQyOlh/Qnf6DjzneMH9ZDoC/O+i - NfoAMh5EwD+2DBcSXsI3X+K41bMU+0CN31IZE6BSxuiNl1unO/c/4OOf4bnYGf4Yh6/F4QgzF9sYWYj5 - bjuWXsXC2slBX+yXyPH/FAc9ovGJdwW+YWbCOyIRjLsFuBhTAZ+HzbjQoB7mKJ1/ixsjP7uMcVBpRBKr - sB/wLldqdnEqsDUkC59+l4KtQanY5h8NzwN/RULgFjQmnsDjuHPwvh6Fr65mYf91LtzCs3D8VgHOR/LA - SKiDb9mw7vag5UT0KKhENREkvqGpBEL8G7hEjtiOn+bJx3ZzyrEtJBP/CLiPz3yjsZVxB7sDIuF2JQau - IQnYH5qGQ9cfwjMsHd43nsAvsgRe8bU4Wzqo/Y9s5cLNEfrXcUTQaXBQ1D0FvUackqY4KvpXzH6r++ly - pXRfUuPqF8w8fE6q2BKYhO2Er0jf9UoavglNx8mwR/C6lYdTnFJ8m9poPc0bHrrWYz4R1m/5DUfueH9o - oAYWHevWEv8EW+GkWHJQwV1LH3rVjd8+ki8bJuuyspvNo3fdLMA+Zj7cIorhweHBM74aHmnNZo+CbtWZ - GnVskGjx72GDToo9ZCHbL02RP/Yfu+YdjF8IIkZoKljyjvJp0q33bZ7e4l0/zvTkKWq+zutRHXok1B/K - FuqP5veMHX8x0nC6fiLKu2V6O4Ov/d1F0TuKNewghwaaGnoHF7JTMtrnnJ3/BXixa5uWRdAiAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjA2RDcwNjdGNEFDNzExRTQ5NzBEQzM2N0EyMEYx - MUM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjA2RDcwNjdFNEFDNzExRTQ5NzBEQzM2N0EyMEYx - MUM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QUYwQjFGREZDNjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5AqY9iAAACh0lEQVRIS+2UXUiTYRTHjaLcam2T6bRY09yn7Z3TLJit0hmJ - mqL7yG0ZiNKH9iVKVJquDwJLLyqji7qwSN3UrIQIKwqK1yKU6Kroqhu7qcsuutu/c17X3Vw3BQke+MHZ - Of/zf3ifh50UAP+UhMW/yVL8p5ERuGrWBq93EBFiRhsamCN+aEM3MA/lwYGv1Jsl7ViGv/+UpuacjUaX - E8skk4UivbZ3KL3uciy/+wF23nyF6ugH1D/5jIaXX9AozklwzjXusYa1PKOpvjhOFnKCD0ocaeVnUdI9 - i11X3sPVN4Oi3ndwXHoL4cIb5IWnYe0WYesRYQ+LcNDvrT3TcHWKcLa9Bs+ShZ6QSWaJQuU6jnzvGOz+ - CKyhCRiDj5ATmoQ+MAldHM65xj3WsDavahA8SxYCoZTMEoXCsT+qKGyMZRV3ItvdB2PFLVhrhmDzjEPw - PpTgnGvcY01W8RnwzGqb7ylZ2ImFD9DsOR9Ru9tj6yo7kFl2BJriZqgKG6Cw1UNu9kooNtVDVbAPGmcT - tO5WZJafgNJ1KKZ0Nj0nCwuxRjJLFGm7u7D9tIgd4RfY0vUYwskJWNoiMB4dwsbDd5FzYBCGg4MwUW5p - uQehdRhFLVFsbr4PdWk7X1HyA+bfYBSCbxiWQBSGvaPQ+6PQeSNYz3hGoCP0dO+5vhGY/Xx9d2CtuA3V - tmN8QPIrWnoDsljcbzBFFsn/aBSyldqCktTssn5ZbtWUzFjzUW6q+yY3e37+fgMpN9V+p94nWW7ls9QN - pddWqI1+mnUQyVcFBS8qXljphI4wEFaCtyV/PpswnHONe6xhrYZIvuziwSuXRasIHlAQawn+dFUczrnG - Pdaw9s/repFFSsovJqxFMpmOVVQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZFQzJGRUI2NEFFMDExRTRCNEQwQzlGQjVEQTAz - Mjk2IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZFQzJGRUI1NEFFMDExRTRCNEQwQzlGQjVEQTAz - Mjk2IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RUU3Q0MwM0NFMDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz71LrnbAAACUElEQVRIS7WTTUgUYRjHh4g+oWyXiF1dESq0XLsUISR9bSQG - C1FGpSIdyktQVIfq4AYd6qBBhzq01xChrEuBCoIf1VoqbOAHae6mSbtWW22Zpm3w73l2BpoZHp2doj/8 - mGHe5/k9zDvzKgD+K4ozt+ifkKR6xCY7SFI9YpMdLCM12cEyUtMCLCWW6Z9ZRl+8ABXEE9eGrXBv3Aa6 - 7yaqec0yXGRBvc9/HF3dfZiZS+HHz18I9YRRdqiaB93UNPPHJDNzcFfZESS+TGF6NmUgOTWjDfFWaio5 - glRP66PWDiS/z4q0dT3nASHSLFJtQgSpnk+R8TgSyWmRycRX3qYUaZarNiEmoZnkyFgMscS3eaEaOk2K - U7UJMQnNvA8PRTAe/ywyMhbnLZojjVu1CRGkepqCd5vweuKDSMPDZqzJLnhJmhzVJkSQ6vHt2F+O/tF3 - GIzGDfSPxuDzV2KlI/s6aVyqTYggNeDwFAYrTp5Hz0AU4eGJNL2Db3Di9CWsXre+nRR7WJOWSZGkhIu4 - SkSIqNPjfVu4fR9Ona1FzbkAthSXwpGz+SMNn+Q1h8d7g+ryNKUxtCBx68zla3jQ8iwjLgTq+G+6rSmN - MYmZizsPHEN77yt09A1nBNfu9VfxH1Wraf/EJC/J3VSMxsedaHsxZIt7zU/BvbRduzW1GtOAhkDdHbSE - Bv6KK/VB0De5r6nVmAaU0Gs20jV9Qu2S5c7vXLU27yhpl6h2Ci0YoKwg8olS4jBRniFcyz0FBDvUCAMW - E1kEHx4+oXbgHu5lB0VRfgP1p66ckfD+bgAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhBQzA3NjM1NEFEMDExRTRCRDJCQTRBMTUzMERD - QUEwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjhBQzA3NjM0NEFEMDExRTRCRDJCQTRBMTUzMERD - QUEwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7wDFMsAAADRElEQVRIS7WVbUyNYRjH2/iSD2behrAK1SJxTpF3hSZSmbxE - qZYT6SjJvL+sMZIZRqGat0hRmyxLXmq1VUoZHbVSspqQKWPGvMzfdT11Hs+5uz/4wIffdt//63/9r/M8 - z/08xwrAf0Uqyhg02kVPpBOviARimMwnIhVFKMzaxsENlzJz0dbegcTjZ0BaiswrIhVFKCwydlsCvv34 - peLtH8xDpsn8WqSiCAWFRcXtxtfvP1U8F63gAXqZX4tUFKGgPkPtXJGcdgUV1bXYsuvgv71FDAWe8PD0 - R8z2BDjp5vKABJlPRCqKUJij22xfdHR+RNenL2hubYfNODceYi3za5GKIhS0MtgQh3cfPqsMH6vjATEy - vxapKEJBq0PWx+P1+08qZdUmLOg+SWmETtbHSEURCtgeErkFbR0fLGh924WT5zJgN2E6D9ov6+0liFBj - kn7WYpTV1KOlvVMlICgSJZW1yrra1IygiFgecovw0fZbhImQOWV5qBFPG1sVnre9U6Eaho3RIX5volo7 - fy1PGaLNsAjUQsbAZSEbUd/yBidTryLCuFNZm+EBxEAiydl9Hk6lZ6HiSSOG2k1iva85p1ewGTL5LVll - wKLAcG64GrBmA2qbXqmQpgzo8c4hsuxdZrB2QJtjESpCZj8i1EnniQvZt1H0sBaPG9oUNu1Q3uZkwT9Y - u2csNiLU4DF8rB4ZuYWoevYSR5Mvw8NrKdbF7kGlqQW+Kw085LCs14xUZKjRmrh08Hg6yp++QGlNI2Z4 - B3LgbOLO6Qs5uFdugut0H9Y2yzIYqchQ06nwTbtR+rhJYdlaIwed6Kn5O7vPx/2HdcjKL8Eop6lc8xUz - mF4CQ+ZDXn7BeFBVj+LqBsTsSuQAi68n7Y8Z4vYp9WOpmcqRJS1C62EsNgyZjOOnLEBe0SPcr6xHIt33 - Ibau3Dxa8A3gI3kx567iS72WD0c6DKRbvNHqgqFi/5GOU3D+RiEKK+qQnl0AGwd3blqo9Wn80ROmeiPj - ZrHiv36nHCO6v7L9zB6xwbjKEI+CMhOyC8rg0P2LorQeEapvtZ84C2cz8xG94xD7j2jrotnOSe+FwLBY - TJ65mM1/9adCvki+8p7nYPunBqvfgM/pcrxVz6sAAAAASUVORK5CYII= - - 188, 91 864, 17 - - 864, 17 - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj index f9e0618..afce291 100644 --- a/Cyberpipe.csproj +++ b/Cyberpipe.csproj @@ -276,6 +276,33 @@ + + + + Form + + + FormFT.cs + + + Form + + + FormHor.cs + + + Form + + + FormVer.cs + + + Form + + + FrmAnalysis.cs + + Form @@ -1276,6 +1303,18 @@ Form_TaskManager.cs + + FormFT.cs + + + FormHor.cs + + + FormVer.cs + + + FrmAnalysis.cs + FormDocumentManager.cs diff --git a/Cyberpipe.suo b/Cyberpipe.suo index c31cf12..bfbb20b 100644 --- a/Cyberpipe.suo +++ b/Cyberpipe.suo Binary files differ diff --git a/FormAnalysis/AnalysisDataInfo.cs b/FormAnalysis/AnalysisDataInfo.cs new file mode 100644 index 0000000..1e56292 --- /dev/null +++ b/FormAnalysis/AnalysisDataInfo.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + class AnalysisDataInfo + { + public static Dictionary m_FeaturesWithBianhao = new Dictionary(); + public static Dictionary featCount = new Dictionary(); + public static Dictionary featLenth = new Dictionary(); + } + + +} diff --git a/FormAnalysis/FormFT.Designer.cs b/FormAnalysis/FormFT.Designer.cs new file mode 100644 index 0000000..a9dc40e --- /dev/null +++ b/FormAnalysis/FormFT.Designer.cs @@ -0,0 +1,277 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormFT + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxFTSD = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxFTSD); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(1, -1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(685, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "覆土审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(23, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(92, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "覆土深度(m):"; + // + // textBoxFTSD + // + // + // + // + this.textBoxFTSD.Border.Class = "TextBoxBorder"; + this.textBoxFTSD.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxFTSD.Location = new System.Drawing.Point(121, 26); + this.textBoxFTSD.Name = "textBoxFTSD"; + this.textBoxFTSD.Size = new System.Drawing.Size(100, 21); + this.textBoxFTSD.TabIndex = 6; + this.textBoxFTSD.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(1, 99); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(691, 302); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(691, 274); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(691, 274); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(691, 302); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(691, 302); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // FormFT + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormFT"; + this.Text = "覆土审核"; + this.Load += new System.EventHandler(this.FormFT_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxFTSD; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FormFT.cs b/FormAnalysis/FormFT.cs new file mode 100644 index 0000000..6829dc8 --- /dev/null +++ b/FormAnalysis/FormFT.cs @@ -0,0 +1,252 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormFT : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp = null; + + public FormFT(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormFT_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("埋深/m", "埋深/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,埋深/m"; + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxFTSD.Text.Trim() == "") + { + MessageBox.Show("覆土深度不能为空!", "提示"); + return; + } + double dFuTuShenDu = 0; + if (!double.TryParse(textBoxFTSD.Text.Trim(), out dFuTuShenDu)) + { + MessageBox.Show("请输入正确的覆土深度!", "提示"); + return; + } + + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("埋深/m"); + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature rowFeature = features[0]; + + + GSOGeoPolyline3D line = rowFeature.Geometry as GSOGeoPolyline3D; + if (line == null) + { + continue; + } + GSOPipeLineStyle3D style = line.Style as GSOPipeLineStyle3D; + if (style == null) + { + continue; + } + if (line.PartCount <= 0) continue; + GSOPoint3ds pts = line[0]; + GSOPoint3d pt = new GSOPoint3d(); + + for (int m = 0; m < pts.Count; m++) + { + if (Math.Abs(pts[m].Z + (style.Radius)) < Convert.ToDouble(textBoxFTSD.Text.Trim())) + { + DataRow row = dt.NewRow(); + row[0] = rowFeature.Dataset.Caption; + row[1] = rowFeature.Name; + row[2] = Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00"); + dt.Rows.Add(row); + + pt.X = pts[m].X; + pt.Y = pts[m].Y; + pt.Z = 0; + LabelVerticalDistance(layerTemp, pts[m], pt, + Convert.ToDouble(Math.Abs((pts[m].Z + (style.Radius))).ToString("0.00")), true); + break; + } + } + } + winGridViewPager2.DataSource = dt.DefaultView; + globeControl1.Refresh(); + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("所有管线满足覆土净距标准!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + } + + /// + /// 在指定的两点组成的线的中间添加一个marker对象,并将marker对象添加到指定的图层中 + /// + /// + /// + /// + /// + /// + private GSOPoint3d LabelVerticalDistance(GSOLayer markerLayer, GSOPoint3d pntIntersect1, GSOPoint3d pntIntersect2, double distance, bool markerVisible) + { + if (pntIntersect1 == null || pntIntersect2 == null) + { + return new GSOPoint3d(); + } + + GSOGeoPolyline3D disline = new GSOGeoPolyline3D(); + GSOPoint3ds point3Ds = new GSOPoint3ds(); + point3Ds.Add(pntIntersect1); + point3Ds.Add(pntIntersect2); + disline.AddPart(point3Ds); + GSOSimpleLineStyle3D style = new GSOSimpleLineStyle3D(); //创建线的风格 + //设置透明度及颜色,FromArgb()中的四个参数分别为alpha、red、green、blue,取值范围为0到255 + style.LineColor = Color.GreenYellow; + style.LineWidth = 3; //设置线的宽度为3 + style.VertexVisible = true; //显示线的节点 + disline.Style = style; //把风格添加到线上 + disline.AltitudeMode = EnumAltitudeMode.Absolute; + + GSOFeature line = new GSOFeature(); + line.Geometry = disline; + + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = pntIntersect1.X; + dismarker.Y = pntIntersect1.Y; + dismarker.Z = (pntIntersect1.Z + pntIntersect2.Z) / 2; + + string disStr = distance.ToString("0.00"); + if (disStr != "0.00") + { + dismarker.Text = distance.ToString("0.00") + "米"; + } + else + { + dismarker.Text = "交叉"; + } + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + GSOMarkerStyle3D styleMarker = new GSOMarkerStyle3D(); + GSOTextStyle styleText = new GSOTextStyle(); + styleText.IsSizeFixed = true; + styleText.ForeColor = Color.White; + styleText.FontSize = 20; + styleMarker.TextStyle = styleText; + dismarker.Style = styleMarker; + + GSOFeature marker = new GSOFeature(); + marker.Geometry = dismarker; + + line.Visible = marker.Visible = markerVisible; + + markerLayer.AddFeature(line); + markerLayer.AddFeature(marker); + + return dismarker.Position; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/FormAnalysis/FormFT.resx b/FormAnalysis/FormFT.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormFT.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormHor.Designer.cs b/FormAnalysis/FormHor.Designer.cs new file mode 100644 index 0000000..c20934d --- /dev/null +++ b/FormAnalysis/FormHor.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormHor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.groupPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(0, 103); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(686, 291); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 0; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "审核管段"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(686, 263); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(686, 263); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "审核管段"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(686, 291); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(686, 291); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审核结果"; + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(0, 3); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(686, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "水平净距"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(45, 21); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "净距标准/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(126, 21); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // FormHor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.groupPanel1); + this.Controls.Add(this.superTabControl1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormHor"; + this.Text = "水平净距"; + this.Load += new System.EventHandler(this.FormHor_Load); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.groupPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormHor.cs b/FormAnalysis/FormHor.cs new file mode 100644 index 0000000..57d4762 --- /dev/null +++ b/FormAnalysis/FormHor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormHor : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + public FormHor(GSOFeatures _features, GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FormHor_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + HorizontalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// 计算指定feature对象与除了该feature所在图层之外的 所有管线图层中的所有feature对象 的水平距离 并记录符合要求的管线 功能 + /// + /// + /// + /// + private void HorizontalDistanceAnalysis(GSOFeature selectedFeature, List _pipelineLayerNames, double dis) + { + Dictionary featureMap = DoublePanelAnalysis.HorizontalDistanceAnalysis(globeControl1, selectedFeature, + _pipelineLayerNames, dis); + if (featureMap == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + + foreach (KeyValuePair kvp in featureMap) + { + GSOFeature feat2 = kvp.Key; + feat2.HighLight = true; + string feat2Caption = feat2.Dataset.Caption; + + DataRow row = dt.NewRow(); + row[0] = selectedFeature.Dataset.Caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = kvp.Value.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormHor.resx b/FormAnalysis/FormHor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormHor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FormVer.Designer.cs b/FormAnalysis/FormVer.Designer.cs new file mode 100644 index 0000000..74750db --- /dev/null +++ b/FormAnalysis/FormVer.Designer.cs @@ -0,0 +1,276 @@ +namespace Cyberpipe.FormAnalysis +{ + partial class FormVer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.textBoxJJBZ = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.labelX1); + this.groupPanel1.Controls.Add(this.textBoxJJBZ); + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(-1, 1); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 3; + this.groupPanel1.Text = "垂直净距审核"; + // + // labelX1 + // + this.labelX1.BackColor = System.Drawing.Color.Transparent; + // + // + // + this.labelX1.BackgroundStyle.Class = ""; + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(34, 24); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(105, 23); + this.labelX1.TabIndex = 7; + this.labelX1.Text = "垂直净距标注/m:"; + // + // textBoxJJBZ + // + // + // + // + this.textBoxJJBZ.Border.Class = "TextBoxBorder"; + this.textBoxJJBZ.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.textBoxJJBZ.Location = new System.Drawing.Point(145, 26); + this.textBoxJJBZ.Name = "textBoxJJBZ"; + this.textBoxJJBZ.Size = new System.Drawing.Size(100, 21); + this.textBoxJJBZ.TabIndex = 6; + this.textBoxJJBZ.Text = "2"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(-1, 101); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 4; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 0); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 313); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 313); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FormVer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(687, 406); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FormVer"; + this.Text = "垂直净距分析"; + this.Load += new System.EventHandler(this.FormVer_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.Controls.TextBoxX textBoxJJBZ; + } +} \ No newline at end of file diff --git a/FormAnalysis/FormVer.cs b/FormAnalysis/FormVer.cs new file mode 100644 index 0000000..1fbceca --- /dev/null +++ b/FormAnalysis/FormVer.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using DevComponents.DotNetBar; +using GeoScene.Globe; +using GeoScene.Data; +using GeoScene.Engine; + +namespace Cyberpipe.FormAnalysis +{ + public partial class FormVer : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + private GSOLayer layerTemp; + public FormVer(GSOFeatures _features, GSOGlobeControl _globeControl, GSOLayer _layerTemp) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + layerTemp = _layerTemp; + } + + private void FormVer_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);//属性编辑 + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected);//属性编辑 + } + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager2.AddColumnAlias("审核编号", "审核编号"); + winGridViewPager2.AddColumnAlias("问题图层", "问题图层"); + winGridViewPager2.AddColumnAlias("问题编号", "问题编号"); + winGridViewPager2.AddColumnAlias("标准/m", "标准/m"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号,标准/m"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (textBoxJJBZ.Text.Trim() == "") + { + MessageBox.Show("净距标准不能为空!", "提示"); + return; + } + double dJingJuBiaoZhun = 0.0; + if (!double.TryParse(textBoxJJBZ.Text.Trim(), out dJingJuBiaoZhun)) + { + MessageBox.Show("请输入正确的净距标准!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + VerticalDistanceAnalysis(selectFeature, Utility.m_PipelineLayerNames, dJingJuBiaoZhun); + } + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有不符合净距标准的管线!", "提示"); + } + globeControl1.Refresh(); + } + + private void VerticalDistanceAnalysis(GSOFeature selectedFeature, List pipelineLayerNames, double verticalDistance) + { + List result = DoublePanelAnalysis.VerticalDistanceAnalysis(globeControl1, selectedFeature, pipelineLayerNames, + verticalDistance); + if (result == null) + { + MessageBox.Show("请选择一条管线!"); + return; + } + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + dt.Columns.Add("标准/m"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + GSOFeature feat2 = featureAnalysisInfo.feature; + string feat2Caption = feat2.Dataset.Caption; + feat2.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = feat2.Name; + row[4] = featureAnalysisInfo.distance.ToString("0.00"); + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = feat2.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + string markerInfo = featureAnalysisInfo.distance.ToString("0.00") + "米"; + GSOPoint3d markerPosition = DoublePanelAnalysis.MakeLabel(layerTemp, featureAnalysisInfo.point1, featureAnalysisInfo.point2, markerInfo, true); + } + winGridViewPager2.DataSource = dt.DefaultView; + } + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FormVer.resx b/FormAnalysis/FormVer.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FormVer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.Designer.cs b/FormAnalysis/FrmAnalysis.Designer.cs new file mode 100644 index 0000000..a7e95bf --- /dev/null +++ b/FormAnalysis/FrmAnalysis.Designer.cs @@ -0,0 +1,246 @@ +namespace Cyberpipe +{ + partial class FrmAnalysis + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupPanel1 = new DevComponents.DotNetBar.Controls.GroupPanel(); + this.buttonExpCAD = new DevComponents.DotNetBar.ButtonX(); + this.buttonOK = new DevComponents.DotNetBar.ButtonX(); + this.superTabControl1 = new DevComponents.DotNetBar.SuperTabControl(); + this.superTabControlPanel2 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager2 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem2 = new DevComponents.DotNetBar.SuperTabItem(); + this.superTabControlPanel1 = new DevComponents.DotNetBar.SuperTabControlPanel(); + this.winGridViewPager1 = new WHC.Pager.WinControl.WinGridViewPager(); + this.superTabItem1 = new DevComponents.DotNetBar.SuperTabItem(); + this.groupPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).BeginInit(); + this.superTabControl1.SuspendLayout(); + this.superTabControlPanel2.SuspendLayout(); + this.superTabControlPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // groupPanel1 + // + this.groupPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupPanel1.CanvasColor = System.Drawing.SystemColors.Control; + this.groupPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007; + this.groupPanel1.Controls.Add(this.buttonExpCAD); + this.groupPanel1.Controls.Add(this.buttonOK); + this.groupPanel1.Location = new System.Drawing.Point(2, -2); + this.groupPanel1.Name = "groupPanel1"; + this.groupPanel1.Size = new System.Drawing.Size(691, 94); + // + // + // + this.groupPanel1.Style.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2; + this.groupPanel1.Style.BackColorGradientAngle = 90; + this.groupPanel1.Style.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground; + this.groupPanel1.Style.BorderBottom = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderBottomWidth = 1; + this.groupPanel1.Style.BorderColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.groupPanel1.Style.BorderLeft = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderLeftWidth = 1; + this.groupPanel1.Style.BorderRight = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderRightWidth = 1; + this.groupPanel1.Style.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid; + this.groupPanel1.Style.BorderTopWidth = 1; + this.groupPanel1.Style.Class = ""; + this.groupPanel1.Style.CornerDiameter = 4; + this.groupPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Rounded; + this.groupPanel1.Style.TextAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Center; + this.groupPanel1.Style.TextColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; + this.groupPanel1.Style.TextLineAlignment = DevComponents.DotNetBar.eStyleTextAlignment.Near; + // + // + // + this.groupPanel1.StyleMouseDown.Class = ""; + this.groupPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.groupPanel1.StyleMouseOver.Class = ""; + this.groupPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.groupPanel1.TabIndex = 2; + this.groupPanel1.Text = "碰撞审核"; + // + // buttonExpCAD + // + this.buttonExpCAD.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonExpCAD.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonExpCAD.Location = new System.Drawing.Point(580, 21); + this.buttonExpCAD.Name = "buttonExpCAD"; + this.buttonExpCAD.Size = new System.Drawing.Size(75, 26); + this.buttonExpCAD.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonExpCAD.TabIndex = 5; + this.buttonExpCAD.Text = "导出CAD"; + // + // buttonOK + // + this.buttonOK.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.buttonOK.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.buttonOK.Location = new System.Drawing.Point(362, 21); + this.buttonOK.Name = "buttonOK"; + this.buttonOK.Size = new System.Drawing.Size(75, 26); + this.buttonOK.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.buttonOK.TabIndex = 4; + this.buttonOK.Text = "开始分析"; + this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click); + // + // superTabControl1 + // + // + // + // + // + // + // + this.superTabControl1.ControlBox.CloseBox.Name = ""; + // + // + // + this.superTabControl1.ControlBox.MenuBox.Name = ""; + this.superTabControl1.ControlBox.Name = ""; + this.superTabControl1.ControlBox.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabControl1.ControlBox.MenuBox, + this.superTabControl1.ControlBox.CloseBox}); + this.superTabControl1.Controls.Add(this.superTabControlPanel1); + this.superTabControl1.Controls.Add(this.superTabControlPanel2); + this.superTabControl1.Location = new System.Drawing.Point(2, 98); + this.superTabControl1.Name = "superTabControl1"; + this.superTabControl1.ReorderTabsEnabled = true; + this.superTabControl1.SelectedTabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold); + this.superTabControl1.SelectedTabIndex = 0; + this.superTabControl1.Size = new System.Drawing.Size(693, 313); + this.superTabControl1.TabFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.superTabControl1.TabIndex = 3; + this.superTabControl1.Tabs.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.superTabItem1, + this.superTabItem2}); + this.superTabControl1.Text = "superTabControl1"; + // + // superTabControlPanel2 + // + this.superTabControlPanel2.Controls.Add(this.winGridViewPager2); + this.superTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel2.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel2.Name = "superTabControlPanel2"; + this.superTabControlPanel2.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel2.TabIndex = 0; + this.superTabControlPanel2.TabItem = this.superTabItem2; + // + // winGridViewPager2 + // + this.winGridViewPager2.AppendedMenu = null; + this.winGridViewPager2.DataSource = null; + this.winGridViewPager2.DisplayColumns = ""; + this.winGridViewPager2.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager2.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager2.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager2.Name = "winGridViewPager2"; + this.winGridViewPager2.PrintTitle = ""; + this.winGridViewPager2.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager2.TabIndex = 0; + // + // superTabItem2 + // + this.superTabItem2.AttachedControl = this.superTabControlPanel2; + this.superTabItem2.GlobalItem = false; + this.superTabItem2.Name = "superTabItem2"; + this.superTabItem2.Text = "审查结果"; + // + // superTabControlPanel1 + // + this.superTabControlPanel1.Controls.Add(this.winGridViewPager1); + this.superTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.superTabControlPanel1.Location = new System.Drawing.Point(0, 28); + this.superTabControlPanel1.Name = "superTabControlPanel1"; + this.superTabControlPanel1.Size = new System.Drawing.Size(693, 285); + this.superTabControlPanel1.TabIndex = 1; + this.superTabControlPanel1.TabItem = this.superTabItem1; + // + // winGridViewPager1 + // + this.winGridViewPager1.AppendedMenu = null; + this.winGridViewPager1.DataSource = null; + this.winGridViewPager1.DisplayColumns = ""; + this.winGridViewPager1.Dock = System.Windows.Forms.DockStyle.Fill; + this.winGridViewPager1.Location = new System.Drawing.Point(0, 0); + this.winGridViewPager1.MinimumSize = new System.Drawing.Size(540, 0); + this.winGridViewPager1.Name = "winGridViewPager1"; + this.winGridViewPager1.PrintTitle = ""; + this.winGridViewPager1.Size = new System.Drawing.Size(693, 285); + this.winGridViewPager1.TabIndex = 0; + // + // superTabItem1 + // + this.superTabItem1.AttachedControl = this.superTabControlPanel1; + this.superTabItem1.GlobalItem = false; + this.superTabItem1.Name = "superTabItem1"; + this.superTabItem1.Text = "待审查管段"; + // + // FrmAnalysis + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(697, 416); + this.Controls.Add(this.superTabControl1); + this.Controls.Add(this.groupPanel1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FrmAnalysis"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "审核"; + this.Load += new System.EventHandler(this.FrmAnalysis_Load); + this.groupPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.superTabControl1)).EndInit(); + this.superTabControl1.ResumeLayout(false); + this.superTabControlPanel2.ResumeLayout(false); + this.superTabControlPanel1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.GroupPanel groupPanel1; + private DevComponents.DotNetBar.SuperTabControl superTabControl1; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel2; + private DevComponents.DotNetBar.SuperTabItem superTabItem2; + private DevComponents.DotNetBar.SuperTabControlPanel superTabControlPanel1; + private DevComponents.DotNetBar.SuperTabItem superTabItem1; + private DevComponents.DotNetBar.ButtonX buttonExpCAD; + private DevComponents.DotNetBar.ButtonX buttonOK; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager2; + private WHC.Pager.WinControl.WinGridViewPager winGridViewPager1; + + } +} \ No newline at end of file diff --git a/FormAnalysis/FrmAnalysis.cs b/FormAnalysis/FrmAnalysis.cs new file mode 100644 index 0000000..a786809 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.cs @@ -0,0 +1,207 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Cyberpipe.FormAnalysis; +using DevComponents.DotNetBar; +using GeoScene.Data; +using GeoScene.Engine; +using GeoScene.Globe; +using WHC.Pager.WinControl; + +namespace Cyberpipe +{ + public partial class FrmAnalysis : Office2007Form + { + GSOGlobeControl globeControl1 = null; + int maxPageIndex = 20; + int rows = 0; + public static GSODataSource ds = null; + private GSOFeatures features = null; + + public FrmAnalysis(GSOFeatures _features,GSOGlobeControl _globeControl) + { + InitializeComponent(); + features = _features; + globeControl1 = _globeControl; + } + + private void FrmAnalysis_Load(object sender, EventArgs e) + { + InitWinGridView.initlizeDatagrid(winGridViewPager1, rows, maxPageIndex); + InitWinGridView.initlizeDatagrid(winGridViewPager2, rows, maxPageIndex); + initlizeDatagrid(); + addFeaturesToDataGridView(features); + this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected); + this.winGridViewPager2.OnEditSelected += new EventHandler(winGridViewPager2_OnEditSelected); + } + + /// + /// 初始化分页表格 + /// + private void initlizeDatagrid() + { + winGridViewPager1.AddColumnAlias("审核图层", "审核图层"); + winGridViewPager1.AddColumnAlias("编号", "编号"); + winGridViewPager1.DisplayColumns = "审核图层,编号"; + + winGridViewPager2.AddColumnAlias("审核图层","审核图层"); + winGridViewPager2.AddColumnAlias("审核编号","审核编号"); + winGridViewPager2.AddColumnAlias("问题图层","问题图层"); + winGridViewPager2.AddColumnAlias("问题编号","问题编号"); + winGridViewPager2.DisplayColumns = "审核图层,审核编号,问题图层,问题编号"; + + } + + private void addFeaturesToDataGridView(GSOFeatures features) + { + DataTable dt=new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("编号"); + for (int i = 0; i < features.Length; i++) + { + DataRow r = dt.NewRow(); + r[0] = features[i].Dataset.Name; + r[1] = features[i].Name; + dt.Rows.Add(r); + } + winGridViewPager1.DataSource = dt.DefaultView; + } + + private void buttonOK_Click(object sender, EventArgs e) + { + if (winGridViewPager1.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("请选择要审核的管段!", "提示"); + return; + } + + for (int i = 0; i < winGridViewPager1.dataGridView1.Rows.Count; i++) + { + GSOLayer layer = + globeControl1.Globe.Layers.GetLayerByCaption( + winGridViewPager1.dataGridView1.Rows[i].Cells[0].Value.ToString()); + GSOFeatures features = + layer.GetFeatureByName(winGridViewPager1.dataGridView1.Rows[i].Cells[1].Value.ToString(), true); + GSOFeature selectFeature = features[0]; + if (selectFeature == null) continue; + CollisionAnalysis(selectFeature, Utility.m_PipelineLayerNames); + } + + if (winGridViewPager2.dataGridView1.Rows.Count == 0) + { + MessageBox.Show("没有发生碰撞的管线!", "提示"); + } + + globeControl1.Refresh(); + } + + /// + /// + /// + /// + /// + /// + private void CollisionAnalysis(GSOFeature selectedFeature, List pipelineLayerNames) + { + List result = DoublePanelAnalysis.CollisionAnalysis(globeControl1, selectedFeature, pipelineLayerNames); + + string caption = selectedFeature.Dataset.Caption; + DataTable dt = new DataTable(); + dt.Columns.Add("审核图层"); + dt.Columns.Add("审核编号"); + dt.Columns.Add("问题图层"); + dt.Columns.Add("问题编号"); + foreach (FeatureAnalysisInfo featureAnalysisInfo in result) + { + string feat2Caption = featureAnalysisInfo.feature.Dataset.Caption; + featureAnalysisInfo.feature.HighLight = true; + + DataRow row = dt.NewRow(); + row[0] = caption; + row[1] = selectedFeature.Name; + row[2] = feat2Caption; + row[3] = featureAnalysisInfo.feature.Name; + dt.Rows.Add(row); + + GSOGeoPolyline3D line2 = featureAnalysisInfo.feature.Geometry as GSOGeoPolyline3D; + if (line2 == null) continue; + if (AnalysisDataInfo.m_FeaturesWithBianhao.ContainsKey(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name) == false) + { + GSOGeoMarker dismarker = new GSOGeoMarker(); + dismarker.X = featureAnalysisInfo.point1.X; + dismarker.Y = featureAnalysisInfo.point1.Y; + dismarker.Z = (featureAnalysisInfo.point1.Z + featureAnalysisInfo.point1.Z) / 2; + dismarker.AltitudeMode = EnumAltitudeMode.Absolute; + AnalysisDataInfo.m_FeaturesWithBianhao.Add(selectedFeature.Name + "-" + featureAnalysisInfo.feature.Name, dismarker.Position);//添加飞行位置记录 + } + /* + if (AnalysisDataInfo.featCount.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featCount[feat2Caption] = AnalysisDataInfo.featCount[feat2Caption] + 1; + } + else + { + AnalysisDataInfo.featCount.Add(feat2Caption, 1); + } + if (AnalysisDataInfo.featLenth.ContainsKey(feat2Caption)) + { + AnalysisDataInfo.featLenth[feat2Caption] = AnalysisDataInfo.featLenth[feat2Caption] + line2.GetSpaceLength(true, 6378137); + } + else + { + AnalysisDataInfo.featLenth.Add(feat2Caption, line2.GetSpaceLength(true, 6378137)); + } + * */ + } + winGridViewPager2.DataSource = dt.DefaultView; + } + + private void winGridViewPager1_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[0].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[1].Value.ToString(),true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void winGridViewPager2_OnEditSelected(object sender, EventArgs e) + { + DataGridView grid = sender as DataGridView; + if (grid == null || grid.SelectedRows.Count <= 0) + { + MessageBox.Show("没有选择记录", "提示"); + return; + } + DataGridViewRow row = grid.SelectedRows[0]; + try + { + GSOLayer layer = globeControl1.Globe.Layers.GetLayerByCaption(row.Cells[2].Value.ToString()); + GSOFeatures features = layer.GetFeatureByName(row.Cells[3].Value.ToString(), true); + globeControl1.Globe.FlyToFeature(features[0]); + } + catch (Exception ex) + { + MessageBox.Show("定位失败:" + ex, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + } +} diff --git a/FormAnalysis/FrmAnalysis.resx b/FormAnalysis/FrmAnalysis.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/FormAnalysis/FrmAnalysis.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/FormAnalysis/InitWinGridView.cs b/FormAnalysis/InitWinGridView.cs new file mode 100644 index 0000000..4537b42 --- /dev/null +++ b/FormAnalysis/InitWinGridView.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using WHC.Pager.WinControl; + +namespace Cyberpipe.FormAnalysis +{ + class InitWinGridView + { + public static void initlizeDatagrid(WinGridViewPager page, int rows, int maxPageIndex) + { + //控制表格显示的列,以及每一列要显示的列名 + page.Dock = DockStyle.Fill; + page.dataGridView1.Dock = DockStyle.Fill; + page.dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + + page.BackColor = Color.LightCyan;//间隔颜色 + + //隐藏右键功能按钮 + page.dataGridView1.ContextMenuStrip.Items[1].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[2].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[3].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[4].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[5].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[6].Visible = false; + page.dataGridView1.ContextMenuStrip.Items[7].Visible = false; + + //右键菜单宽度 + page.dataGridView1.ContextMenuStrip.AutoSize = false; + page.dataGridView1.ContextMenuStrip.Width = 0; + page.dataGridView1.ContextMenuStrip.Height = 0; + //控制间隔的颜色 + page.BackColor = Color.LightCyan;//间隔颜色 + //控制每页显示的最大数据量 + page.PagerInfo.RecordCount = rows; + page.PagerInfo.PageSize = maxPageIndex; + page.dataGridView1.Refresh(); + } + } +} diff --git a/FrmFlagManagers.cs b/FrmFlagManagers.cs index d9d9a5e..e550c4a 100644 --- a/FrmFlagManagers.cs +++ b/FrmFlagManagers.cs @@ -375,6 +375,7 @@ { this.Show(); } + /// /// 位置查看 /// @@ -436,6 +437,5 @@ } } - } } diff --git a/MainFrm.cs b/MainFrm.cs index 944d7a1..a243d3d 100644 --- a/MainFrm.cs +++ b/MainFrm.cs @@ -13,6 +13,7 @@ using System.Threading; using System.Windows.Forms; using Cyberpipe.EMS_Forms; +using Cyberpipe.FormAnalysis; using Cyberpipe.Forms; using DevComponents.DotNetBar; using GeoScene.Data; @@ -4693,6 +4694,31 @@ sideBar1.Refresh(); Refresh(); } + + private GSOFeatures getSelectedFeatures() + { + GSOFeatures feats = new GSOFeatures(); + + if (globeControl1.Globe.SelObjectCount == 0) + { + feats = null; + } + else + { + for (int i = 0; i < globeControl1.Globe.SelObjectCount; i++) + { + GSOLayer resLayer = null; + GSOFeature feat = null; + globeControl1.Globe.GetSelectObject(i, out feat, out resLayer); + if (feat != null && feat.Geometry.Type == EnumGeometryType.GeoPolyline3D) + { + feats.Add(feat); + } + } + } + return feats; + } + /// /// 碰撞审查 /// @@ -4700,30 +4726,16 @@ /// private void buttonItemSH1_Click(object sender, EventArgs e) { - //日志记录 + //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH1.Text); - - dataGridViewX4.Size = new Size(185, 92); - dataGridViewX5.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "碰撞审查"; - trackflag = "collision"; - controlContainerItem5.Control = panel2; - panel2.Dock = DockStyle.Fill; - panel2.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FrmAnalysis frm = new FrmAnalysis(feats, globeControl1); + frm.Show(); } /// /// 覆土审查 @@ -4734,26 +4746,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH2.Text); - - dataGridViewX6.Size = new Size(185, 92); - dataGridViewX7.Size = new Size(185, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "覆土审查"; - trackflag = "ftAnalysis"; - controlContainerItem5.Control = panel4; - panel4.Visible = true; - panel4.Dock = DockStyle.Fill; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormFT frm = new FormFT(feats, globeControl1, layerTemp); + frm.Show(); } /// /// 水平净距审查 @@ -4764,26 +4764,14 @@ { //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH3.Text); - - dataGridViewX8.Size = new Size(190, 92); - dataGridViewX9.Size = new Size(190, 120); - - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "水平净距审查"; - trackflag = "horizontal"; - controlContainerItem5.Control = panel5; - panel5.Dock = DockStyle.Fill; - panel5.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormHor frm = new FormHor(feats, globeControl1); + frm.Show(); } /// /// 垂直净距审查 @@ -4795,33 +4783,15 @@ //日志记录 LogManager.saveLog(Utility.userName, buttonItemSH4.Text); - dataGridViewX2.Visible = true; - dataGridViewX3.Visible = true; - dataGridViewX2.Size = new Size(185, 92); - dataGridViewX3.Size = new Size(185, 120); + GSOFeatures feats = getSelectedFeatures(); + if (feats.Length == 0) + { + MessageBox.Show("请选择管段!", "提示"); + return; + } + FormVer frm = new FormVer(feats, globeControl1,layerTemp); + frm.Show(); - layerTemp.RemoveAllFeature(); - clearFeatureHighLight(); - - globeControl1.Refresh(); - sideBar1.Visible = true; - sideBarPanelItem3.Visible = true; - buttonItem1.Checked = true; - controlContainerItem3.Visible = true; - sideBarPanelItem4.Visible = true; - sideBarPanelItem4.Text = "垂直净距审查"; - trackflag = "vertical"; - //globeControl1.Globe.Action = EnumAction3D.SelectObject; - panel2.Visible = false; - panel3.Visible = false; - panel5.Visible = false; - panel4.Visible = false; - controlContainerItem5.Control = panel1; - panel1.Dock = DockStyle.Fill; - panel1.Visible = true; - sideBar1.ExpandedPanel = sideBarPanelItem4; - sideBar1.Refresh(); - Refresh(); } #endregion diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs index 6d402a5..64d68d4 100644 --- a/MainFrm.designer.cs +++ b/MainFrm.designer.cs @@ -38,17 +38,17 @@ { this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainFrm)); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = 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 dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle21 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle22 = 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(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = 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 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 dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); this.dotNetBarManager1 = new DevComponents.DotNetBar.DotNetBarManager(this.components); this.dockSite4 = new DevComponents.DotNetBar.DockSite(); this.dockSite1 = new DevComponents.DotNetBar.DockSite(); @@ -239,30 +239,6 @@ this.保存ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.定位ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.ribbonControl1 = new DevComponents.DotNetBar.RibbonControl(); - this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); - this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); - this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); - this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); - this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); - this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); - this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel15 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar20 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItemSH = new DevComponents.DotNetBar.ButtonItem(); @@ -317,13 +293,6 @@ this.buttonItemXT4 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_1 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItemXT4_2 = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); - this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); - this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); - this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); - this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel7 = new DevComponents.DotNetBar.RibbonPanel(); this.gxdw_ribbonbar = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem9 = new DevComponents.DotNetBar.ButtonItem(); @@ -332,6 +301,10 @@ this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem14 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel3 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar4 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_flag = new DevComponents.DotNetBar.ButtonItem(); + this.slider4ground = new DevComponents.DotNetBar.SliderItem(); this.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar(); this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem(); @@ -339,6 +312,33 @@ this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem(); this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem(); this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel12 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar18 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem133 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem132 = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonBar13 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItem127 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem128 = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem1 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItem134 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem130 = new DevComponents.DotNetBar.ButtonItem(); + this.btn_check_history = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel5 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar2 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemHX1 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemHX2 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemDCTP = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem3 = new DevComponents.DotNetBar.SliderItem(); + this.ribbonPanel6 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar6 = new DevComponents.DotNetBar.RibbonBar(); + this.buttonItemSPSZ = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItem8 = new DevComponents.DotNetBar.ButtonItem(); + this.buttonItemLocation = new DevComponents.DotNetBar.ButtonItem(); + this.sliderItem2 = new DevComponents.DotNetBar.SliderItem(); + this.buttonItemGBJC = new DevComponents.DotNetBar.ButtonItem(); + this.ribbonPanel4 = new DevComponents.DotNetBar.RibbonPanel(); + this.ribbonBar1 = new DevComponents.DotNetBar.RibbonBar(); + this.btn_document_info = new DevComponents.DotNetBar.ButtonItem(); this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel(); this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar(); this.btn_user_info = new DevComponents.DotNetBar.ButtonItem(); @@ -520,14 +520,14 @@ this.contextMenuStrip3.SuspendLayout(); this.contextMenuStripDeleteLayerNode.SuspendLayout(); this.ribbonControl1.SuspendLayout(); + this.ribbonPanel15.SuspendLayout(); + this.ribbonPanel7.SuspendLayout(); + this.ribbonPanel3.SuspendLayout(); + this.ribbonPanel1.SuspendLayout(); this.ribbonPanel12.SuspendLayout(); this.ribbonPanel5.SuspendLayout(); this.ribbonPanel6.SuspendLayout(); - this.ribbonPanel15.SuspendLayout(); this.ribbonPanel4.SuspendLayout(); - this.ribbonPanel3.SuspendLayout(); - this.ribbonPanel7.SuspendLayout(); - this.ribbonPanel1.SuspendLayout(); this.ribbonPanel2.SuspendLayout(); this.panelOfTable.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit(); @@ -711,7 +711,7 @@ this.toolStripDropDownButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripDropDownButton1.Image"))); this.toolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta; this.toolStripDropDownButton1.Name = "toolStripDropDownButton1"; - this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 21); + this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 20); this.toolStripDropDownButton1.Text = "帮助"; this.toolStripDropDownButton1.Visible = false; // @@ -2101,13 +2101,13 @@ this.ribbonControl1.BackgroundStyle.Class = ""; this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.ribbonControl1.Controls.Add(this.ribbonPanel15); + this.ribbonControl1.Controls.Add(this.ribbonPanel7); + this.ribbonControl1.Controls.Add(this.ribbonPanel3); + this.ribbonControl1.Controls.Add(this.ribbonPanel1); this.ribbonControl1.Controls.Add(this.ribbonPanel12); this.ribbonControl1.Controls.Add(this.ribbonPanel5); - this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel6); - this.ribbonControl1.Controls.Add(this.ribbonPanel3); - this.ribbonControl1.Controls.Add(this.ribbonPanel7); - this.ribbonControl1.Controls.Add(this.ribbonPanel1); + this.ribbonControl1.Controls.Add(this.ribbonPanel4); this.ribbonControl1.Controls.Add(this.ribbonPanel2); this.ribbonControl1.Dock = System.Windows.Forms.DockStyle.Top; this.ribbonControl1.ImeMode = System.Windows.Forms.ImeMode.NoControl; @@ -2152,389 +2152,6 @@ this.ribbonControl1.Text = "ribbonControl1"; this.ribbonControl1.UseCustomizeDialog = false; // - // ribbonPanel12 - // - this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel12.Controls.Add(this.ribbonBar18); - this.ribbonPanel12.Controls.Add(this.ribbonBar13); - this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel12.Name = "ribbonPanel12"; - this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel12.Style.Class = ""; - this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseDown.Class = ""; - this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel12.StyleMouseOver.Class = ""; - this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel12.TabIndex = 34; - this.ribbonPanel12.Visible = false; - // - // ribbonBar18 - // - this.ribbonBar18.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.BackgroundStyle.Class = ""; - this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.ContainerControlProcessDialogKey = true; - this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem133, - this.buttonItem132}); - this.ribbonBar18.Location = new System.Drawing.Point(508, 0); - this.ribbonBar18.Name = "ribbonBar18"; - this.ribbonBar18.Size = new System.Drawing.Size(75, 59); - this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar18.TabIndex = 1; - // - // - // - this.ribbonBar18.TitleStyle.Class = ""; - this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar18.TitleStyleMouseOver.Class = ""; - this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar18.TitleVisible = false; - // - // buttonItem133 - // - this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); - this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem133.Name = "buttonItem133"; - this.buttonItem133.SubItemsExpandWidth = 14; - this.buttonItem133.Text = "审核入库"; - this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); - // - // buttonItem132 - // - this.buttonItem132.Name = "buttonItem132"; - // - // ribbonBar13 - // - this.ribbonBar13.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.BackgroundStyle.Class = ""; - this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.ContainerControlProcessDialogKey = true; - this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItem127, - this.buttonItem128, - this.sliderItem1, - this.buttonItem134, - this.buttonItem130, - this.btn_check_history}); - this.ribbonBar13.Location = new System.Drawing.Point(3, 0); - this.ribbonBar13.Name = "ribbonBar13"; - this.ribbonBar13.Size = new System.Drawing.Size(505, 59); - this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar13.TabIndex = 0; - // - // - // - this.ribbonBar13.TitleStyle.Class = ""; - this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar13.TitleStyleMouseOver.Class = ""; - this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar13.TitleVisible = false; - // - // buttonItem127 - // - this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); - this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem127.Name = "buttonItem127"; - this.buttonItem127.SubItemsExpandWidth = 14; - this.buttonItem127.Text = "打开数据"; - this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); - // - // buttonItem128 - // - this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); - this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem128.Name = "buttonItem128"; - this.buttonItem128.SubItemsExpandWidth = 14; - this.buttonItem128.Text = "一键审核"; - this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); - // - // sliderItem1 - // - this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem1.LabelWidth = 50; - this.sliderItem1.Name = "sliderItem1"; - this.sliderItem1.Text = "地面透明度"; - this.sliderItem1.TextColor = System.Drawing.Color.Black; - this.sliderItem1.Value = 0; - this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); - // - // buttonItem134 - // - this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); - this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem134.Name = "buttonItem134"; - this.buttonItem134.SubItemsExpandWidth = 14; - this.buttonItem134.Text = "模拟设计修改"; - this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); - // - // buttonItem130 - // - this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); - this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem130.Name = "buttonItem130"; - this.buttonItem130.SubItemsExpandWidth = 14; - this.buttonItem130.Text = "导出审核图"; - this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); - // - // btn_check_history - // - this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); - this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_check_history.Name = "btn_check_history"; - this.btn_check_history.SubItemsExpandWidth = 14; - this.btn_check_history.Text = "审核历史"; - this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); - // - // ribbonPanel5 - // - this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel5.Controls.Add(this.ribbonBar2); - this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel5.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel5.Name = "ribbonPanel5"; - this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel5.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel5.Style.Class = ""; - this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseDown.Class = ""; - this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel5.StyleMouseOver.Class = ""; - this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel5.TabIndex = 37; - this.ribbonPanel5.Visible = false; - // - // ribbonBar2 - // - this.ribbonBar2.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.BackgroundStyle.Class = ""; - this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.ContainerControlProcessDialogKey = true; - this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemHX1, - this.buttonItemHX2, - this.buttonItemDCTP, - this.sliderItem3}); - this.ribbonBar2.Location = new System.Drawing.Point(3, 0); - this.ribbonBar2.Name = "ribbonBar2"; - this.ribbonBar2.Size = new System.Drawing.Size(350, 92); - this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar2.TabIndex = 0; - // - // - // - this.ribbonBar2.TitleStyle.Class = ""; - this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar2.TitleStyleMouseOver.Class = ""; - this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar2.TitleVisible = false; - // - // buttonItemHX1 - // - this.buttonItemHX1.AutoExpandOnClick = true; - this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); - this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX1.Name = "buttonItemHX1"; - this.buttonItemHX1.SubItemsExpandWidth = 14; - this.buttonItemHX1.Text = "导入红线"; - this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); - // - // buttonItemHX2 - // - this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); - this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemHX2.Name = "buttonItemHX2"; - this.buttonItemHX2.SubItemsExpandWidth = 14; - this.buttonItemHX2.Text = "红线审核"; - this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); - // - // buttonItemDCTP - // - this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); - this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemDCTP.Name = "buttonItemDCTP"; - this.buttonItemDCTP.SubItemsExpandWidth = 14; - this.buttonItemDCTP.Text = "导出图片"; - this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); - // - // sliderItem3 - // - this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem3.LabelWidth = 50; - this.sliderItem3.Name = "sliderItem3"; - this.sliderItem3.Text = "地面透明度"; - this.sliderItem3.TextColor = System.Drawing.Color.Black; - this.sliderItem3.Value = 0; - this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); - // - // ribbonPanel6 - // - this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel6.Controls.Add(this.ribbonBar6); - this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel6.Name = "ribbonPanel6"; - this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel6.Style.Class = ""; - this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseDown.Class = ""; - this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel6.StyleMouseOver.Class = ""; - this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel6.TabIndex = 38; - this.ribbonPanel6.Visible = false; - // - // ribbonBar6 - // - this.ribbonBar6.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.BackgroundStyle.Class = ""; - this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.ContainerControlProcessDialogKey = true; - this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.buttonItemSPSZ, - this.buttonItem8, - this.buttonItemLocation, - this.sliderItem2, - this.buttonItemGBJC}); - this.ribbonBar6.Location = new System.Drawing.Point(3, 0); - this.ribbonBar6.Name = "ribbonBar6"; - this.ribbonBar6.Size = new System.Drawing.Size(427, 59); - this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar6.TabIndex = 0; - // - // - // - this.ribbonBar6.TitleStyle.Class = ""; - this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar6.TitleStyleMouseOver.Class = ""; - this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar6.TitleVisible = false; - // - // buttonItemSPSZ - // - this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); - this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemSPSZ.Name = "buttonItemSPSZ"; - this.buttonItemSPSZ.SubItemsExpandWidth = 14; - this.buttonItemSPSZ.Text = "双屏设置"; - this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); - // - // buttonItem8 - // - this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); - this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItem8.Name = "buttonItem8"; - this.buttonItem8.SubItemsExpandWidth = 14; - this.buttonItem8.Text = "双屏分析"; - this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); - // - // buttonItemLocation - // - this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); - this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemLocation.Name = "buttonItemLocation"; - this.buttonItemLocation.SubItemsExpandWidth = 14; - this.buttonItemLocation.Text = "快速定位"; - this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); - // - // sliderItem2 - // - this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.sliderItem2.LabelWidth = 50; - this.sliderItem2.Name = "sliderItem2"; - this.sliderItem2.Text = "地面透明度"; - this.sliderItem2.TextColor = System.Drawing.Color.Black; - this.sliderItem2.Value = 0; - this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); - // - // buttonItemGBJC - // - this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); - this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.buttonItemGBJC.Name = "buttonItemGBJC"; - this.buttonItemGBJC.SubItemsExpandWidth = 14; - this.buttonItemGBJC.Text = "国标检测"; - this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); - // // ribbonPanel15 // this.ribbonPanel15.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3006,157 +2623,6 @@ this.buttonItemXT4_2.Text = "人员修改"; this.buttonItemXT4_2.Click += new System.EventHandler(this.buttonItemXT4_2_Click); // - // ribbonPanel4 - // - this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel4.Controls.Add(this.ribbonBar1); - this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel4.Location = new System.Drawing.Point(0, 0); - this.ribbonPanel4.Name = "ribbonPanel4"; - this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel4.Size = new System.Drawing.Size(1328, 95); - // - // - // - this.ribbonPanel4.Style.Class = ""; - this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseDown.Class = ""; - this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel4.StyleMouseOver.Class = ""; - this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel4.TabIndex = 36; - this.ribbonPanel4.Visible = false; - // - // ribbonBar1 - // - this.ribbonBar1.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.BackgroundStyle.Class = ""; - this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.ContainerControlProcessDialogKey = true; - this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_document_info}); - this.ribbonBar1.Location = new System.Drawing.Point(3, 0); - this.ribbonBar1.Name = "ribbonBar1"; - this.ribbonBar1.Size = new System.Drawing.Size(88, 92); - this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar1.TabIndex = 0; - // - // - // - this.ribbonBar1.TitleStyle.Class = ""; - this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar1.TitleStyleMouseOver.Class = ""; - this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar1.TitleVisible = false; - // - // btn_document_info - // - this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); - this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_document_info.Name = "btn_document_info"; - this.btn_document_info.SubItemsExpandWidth = 14; - this.btn_document_info.Text = "文档管理"; - this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); - // - // ribbonPanel3 - // - this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonPanel3.Controls.Add(this.ribbonBar4); - this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; - this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); - this.ribbonPanel3.Name = "ribbonPanel3"; - this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); - this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); - // - // - // - this.ribbonPanel3.Style.Class = ""; - this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseDown.Class = ""; - this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonPanel3.StyleMouseOver.Class = ""; - this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonPanel3.TabIndex = 40; - this.ribbonPanel3.Visible = false; - // - // ribbonBar4 - // - this.ribbonBar4.AutoOverflowEnabled = true; - // - // - // - this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; - this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.BackgroundStyle.Class = ""; - this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.ContainerControlProcessDialogKey = true; - this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; - this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { - this.btn_flag, - this.slider4ground}); - this.ribbonBar4.Location = new System.Drawing.Point(3, 0); - this.ribbonBar4.Name = "ribbonBar4"; - this.ribbonBar4.Size = new System.Drawing.Size(634, 59); - this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.ribbonBar4.TabIndex = 0; - // - // - // - this.ribbonBar4.TitleStyle.Class = ""; - this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - // - // - // - this.ribbonBar4.TitleStyleMouseOver.Class = ""; - this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.ribbonBar4.TitleVisible = false; - // - // btn_flag - // - this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; - this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; - this.btn_flag.Name = "btn_flag"; - this.btn_flag.SubItemsExpandWidth = 14; - this.btn_flag.Text = "标识器管理"; - this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); - // - // slider4ground - // - this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; - this.slider4ground.LabelWidth = 50; - this.slider4ground.Name = "slider4ground"; - this.slider4ground.Text = "地面透明度"; - this.slider4ground.TextColor = System.Drawing.Color.Black; - this.slider4ground.Value = 0; - this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); - // // ribbonPanel7 // this.ribbonPanel7.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3278,6 +2744,87 @@ this.buttonItem14.Text = "导出施工图"; this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click); // + // ribbonPanel3 + // + this.ribbonPanel3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel3.Controls.Add(this.ribbonBar4); + this.ribbonPanel3.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel3.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel3.Name = "ribbonPanel3"; + this.ribbonPanel3.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel3.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel3.Style.Class = ""; + this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseDown.Class = ""; + this.ribbonPanel3.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel3.StyleMouseOver.Class = ""; + this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel3.TabIndex = 40; + this.ribbonPanel3.Visible = false; + // + // ribbonBar4 + // + this.ribbonBar4.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar4.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar4.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.BackgroundStyle.Class = ""; + this.ribbonBar4.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.ContainerControlProcessDialogKey = true; + this.ribbonBar4.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar4.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_flag, + this.slider4ground}); + this.ribbonBar4.Location = new System.Drawing.Point(3, 0); + this.ribbonBar4.Name = "ribbonBar4"; + this.ribbonBar4.Size = new System.Drawing.Size(634, 59); + this.ribbonBar4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar4.TabIndex = 0; + // + // + // + this.ribbonBar4.TitleStyle.Class = ""; + this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar4.TitleStyleMouseOver.Class = ""; + this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar4.TitleVisible = false; + // + // btn_flag + // + this.btn_flag.Image = global::Cyberpipe.Properties.Resources._24x24icon_03_hover; + this.btn_flag.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_flag.Name = "btn_flag"; + this.btn_flag.SubItemsExpandWidth = 14; + this.btn_flag.Text = "标识器管理"; + this.btn_flag.Click += new System.EventHandler(this.btn_flag_Click); + // + // slider4ground + // + this.slider4ground.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.slider4ground.LabelWidth = 50; + this.slider4ground.Name = "slider4ground"; + this.slider4ground.Text = "地面透明度"; + this.slider4ground.TextColor = System.Drawing.Color.Black; + this.slider4ground.Value = 0; + this.slider4ground.ValueChanged += new System.EventHandler(this.slider4ground_ValueChanged); + // // ribbonPanel1 // this.ribbonPanel1.AutoSize = true; @@ -3332,7 +2879,7 @@ this.btnOutputJPG}); this.ribbonBar21.Location = new System.Drawing.Point(3, 0); this.ribbonBar21.Name = "ribbonBar21"; - this.ribbonBar21.Size = new System.Drawing.Size(649, 59); + this.ribbonBar21.Size = new System.Drawing.Size(447, 59); this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; this.ribbonBar21.TabIndex = 2; this.ribbonBar21.Text = "浏览模式"; @@ -3394,6 +2941,459 @@ this.btnOutputJPG.Text = "导出图片"; this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click); // + // ribbonPanel12 + // + this.ribbonPanel12.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel12.Controls.Add(this.ribbonBar18); + this.ribbonPanel12.Controls.Add(this.ribbonBar13); + this.ribbonPanel12.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel12.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel12.Name = "ribbonPanel12"; + this.ribbonPanel12.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel12.Style.Class = ""; + this.ribbonPanel12.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseDown.Class = ""; + this.ribbonPanel12.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel12.StyleMouseOver.Class = ""; + this.ribbonPanel12.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel12.TabIndex = 34; + this.ribbonPanel12.Visible = false; + // + // ribbonBar18 + // + this.ribbonBar18.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar18.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar18.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.BackgroundStyle.Class = ""; + this.ribbonBar18.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.ContainerControlProcessDialogKey = true; + this.ribbonBar18.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar18.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem133, + this.buttonItem132}); + this.ribbonBar18.Location = new System.Drawing.Point(508, 0); + this.ribbonBar18.Name = "ribbonBar18"; + this.ribbonBar18.Size = new System.Drawing.Size(75, 59); + this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar18.TabIndex = 1; + // + // + // + this.ribbonBar18.TitleStyle.Class = ""; + this.ribbonBar18.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar18.TitleStyleMouseOver.Class = ""; + this.ribbonBar18.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar18.TitleVisible = false; + // + // buttonItem133 + // + this.buttonItem133.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem133.Image"))); + this.buttonItem133.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem133.Name = "buttonItem133"; + this.buttonItem133.SubItemsExpandWidth = 14; + this.buttonItem133.Text = "审核入库"; + this.buttonItem133.Click += new System.EventHandler(this.buttonItem133_Click_1); + // + // buttonItem132 + // + this.buttonItem132.Name = "buttonItem132"; + // + // ribbonBar13 + // + this.ribbonBar13.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar13.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar13.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.BackgroundStyle.Class = ""; + this.ribbonBar13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.ContainerControlProcessDialogKey = true; + this.ribbonBar13.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar13.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItem127, + this.buttonItem128, + this.sliderItem1, + this.buttonItem134, + this.buttonItem130, + this.btn_check_history}); + this.ribbonBar13.Location = new System.Drawing.Point(3, 0); + this.ribbonBar13.Name = "ribbonBar13"; + this.ribbonBar13.Size = new System.Drawing.Size(505, 59); + this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar13.TabIndex = 0; + // + // + // + this.ribbonBar13.TitleStyle.Class = ""; + this.ribbonBar13.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar13.TitleStyleMouseOver.Class = ""; + this.ribbonBar13.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar13.TitleVisible = false; + // + // buttonItem127 + // + this.buttonItem127.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem127.Image"))); + this.buttonItem127.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem127.Name = "buttonItem127"; + this.buttonItem127.SubItemsExpandWidth = 14; + this.buttonItem127.Text = "打开数据"; + this.buttonItem127.Click += new System.EventHandler(this.buttonItem127_Click_2); + // + // buttonItem128 + // + this.buttonItem128.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem128.Image"))); + this.buttonItem128.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem128.Name = "buttonItem128"; + this.buttonItem128.SubItemsExpandWidth = 14; + this.buttonItem128.Text = "一键审核"; + this.buttonItem128.Click += new System.EventHandler(this.buttonItem128_Click); + // + // sliderItem1 + // + this.sliderItem1.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem1.LabelWidth = 50; + this.sliderItem1.Name = "sliderItem1"; + this.sliderItem1.Text = "地面透明度"; + this.sliderItem1.TextColor = System.Drawing.Color.Black; + this.sliderItem1.Value = 0; + this.sliderItem1.ValueChanged += new System.EventHandler(this.sliderItem1_ValueChanged); + // + // buttonItem134 + // + this.buttonItem134.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem134.Image"))); + this.buttonItem134.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem134.Name = "buttonItem134"; + this.buttonItem134.SubItemsExpandWidth = 14; + this.buttonItem134.Text = "模拟设计修改"; + this.buttonItem134.Click += new System.EventHandler(this.buttonItem134_Click_1); + // + // buttonItem130 + // + this.buttonItem130.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem130.Image"))); + this.buttonItem130.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem130.Name = "buttonItem130"; + this.buttonItem130.SubItemsExpandWidth = 14; + this.buttonItem130.Text = "导出审核图"; + this.buttonItem130.Click += new System.EventHandler(this.buttonItem130_Click_1); + // + // btn_check_history + // + this.btn_check_history.Image = ((System.Drawing.Image)(resources.GetObject("btn_check_history.Image"))); + this.btn_check_history.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_check_history.Name = "btn_check_history"; + this.btn_check_history.SubItemsExpandWidth = 14; + this.btn_check_history.Text = "审核历史"; + this.btn_check_history.Click += new System.EventHandler(this.btn_check_history_Click); + // + // ribbonPanel5 + // + this.ribbonPanel5.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel5.Controls.Add(this.ribbonBar2); + this.ribbonPanel5.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel5.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel5.Name = "ribbonPanel5"; + this.ribbonPanel5.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel5.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel5.Style.Class = ""; + this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseDown.Class = ""; + this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel5.StyleMouseOver.Class = ""; + this.ribbonPanel5.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel5.TabIndex = 37; + this.ribbonPanel5.Visible = false; + // + // ribbonBar2 + // + this.ribbonBar2.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar2.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.BackgroundStyle.Class = ""; + this.ribbonBar2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.ContainerControlProcessDialogKey = true; + this.ribbonBar2.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar2.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemHX1, + this.buttonItemHX2, + this.buttonItemDCTP, + this.sliderItem3}); + this.ribbonBar2.Location = new System.Drawing.Point(3, 0); + this.ribbonBar2.Name = "ribbonBar2"; + this.ribbonBar2.Size = new System.Drawing.Size(350, 59); + this.ribbonBar2.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar2.TabIndex = 0; + // + // + // + this.ribbonBar2.TitleStyle.Class = ""; + this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar2.TitleStyleMouseOver.Class = ""; + this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar2.TitleVisible = false; + // + // buttonItemHX1 + // + this.buttonItemHX1.AutoExpandOnClick = true; + this.buttonItemHX1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX1.Image"))); + this.buttonItemHX1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX1.Name = "buttonItemHX1"; + this.buttonItemHX1.SubItemsExpandWidth = 14; + this.buttonItemHX1.Text = "导入红线"; + this.buttonItemHX1.Click += new System.EventHandler(this.buttonItemHX1_Click); + // + // buttonItemHX2 + // + this.buttonItemHX2.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemHX2.Image"))); + this.buttonItemHX2.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemHX2.Name = "buttonItemHX2"; + this.buttonItemHX2.SubItemsExpandWidth = 14; + this.buttonItemHX2.Text = "红线审核"; + this.buttonItemHX2.Click += new System.EventHandler(this.buttonItemHX2_Click); + // + // buttonItemDCTP + // + this.buttonItemDCTP.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemDCTP.Image"))); + this.buttonItemDCTP.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemDCTP.Name = "buttonItemDCTP"; + this.buttonItemDCTP.SubItemsExpandWidth = 14; + this.buttonItemDCTP.Text = "导出图片"; + this.buttonItemDCTP.Click += new System.EventHandler(this.buttonItemDCTP_Click); + // + // sliderItem3 + // + this.sliderItem3.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem3.LabelWidth = 50; + this.sliderItem3.Name = "sliderItem3"; + this.sliderItem3.Text = "地面透明度"; + this.sliderItem3.TextColor = System.Drawing.Color.Black; + this.sliderItem3.Value = 0; + this.sliderItem3.ValueChanged += new System.EventHandler(this.sliderItem3_ValueChanged); + // + // ribbonPanel6 + // + this.ribbonPanel6.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel6.Controls.Add(this.ribbonBar6); + this.ribbonPanel6.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel6.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel6.Name = "ribbonPanel6"; + this.ribbonPanel6.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel6.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel6.Style.Class = ""; + this.ribbonPanel6.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseDown.Class = ""; + this.ribbonPanel6.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel6.StyleMouseOver.Class = ""; + this.ribbonPanel6.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel6.TabIndex = 38; + this.ribbonPanel6.Visible = false; + // + // ribbonBar6 + // + this.ribbonBar6.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar6.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar6.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.BackgroundStyle.Class = ""; + this.ribbonBar6.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.ContainerControlProcessDialogKey = true; + this.ribbonBar6.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar6.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.buttonItemSPSZ, + this.buttonItem8, + this.buttonItemLocation, + this.sliderItem2, + this.buttonItemGBJC}); + this.ribbonBar6.Location = new System.Drawing.Point(3, 0); + this.ribbonBar6.Name = "ribbonBar6"; + this.ribbonBar6.Size = new System.Drawing.Size(427, 59); + this.ribbonBar6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar6.TabIndex = 0; + // + // + // + this.ribbonBar6.TitleStyle.Class = ""; + this.ribbonBar6.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar6.TitleStyleMouseOver.Class = ""; + this.ribbonBar6.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar6.TitleVisible = false; + // + // buttonItemSPSZ + // + this.buttonItemSPSZ.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemSPSZ.Image"))); + this.buttonItemSPSZ.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemSPSZ.Name = "buttonItemSPSZ"; + this.buttonItemSPSZ.SubItemsExpandWidth = 14; + this.buttonItemSPSZ.Text = "双屏设置"; + this.buttonItemSPSZ.Click += new System.EventHandler(this.buttonItemSPSZ_Click); + // + // buttonItem8 + // + this.buttonItem8.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem8.Image"))); + this.buttonItem8.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItem8.Name = "buttonItem8"; + this.buttonItem8.SubItemsExpandWidth = 14; + this.buttonItem8.Text = "双屏分析"; + this.buttonItem8.Click += new System.EventHandler(this.buttonItem8_Click); + // + // buttonItemLocation + // + this.buttonItemLocation.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemLocation.Image"))); + this.buttonItemLocation.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemLocation.Name = "buttonItemLocation"; + this.buttonItemLocation.SubItemsExpandWidth = 14; + this.buttonItemLocation.Text = "快速定位"; + this.buttonItemLocation.Click += new System.EventHandler(this.buttonItemLocation_Click); + // + // sliderItem2 + // + this.sliderItem2.LabelPosition = DevComponents.DotNetBar.eSliderLabelPosition.Top; + this.sliderItem2.LabelWidth = 50; + this.sliderItem2.Name = "sliderItem2"; + this.sliderItem2.Text = "地面透明度"; + this.sliderItem2.TextColor = System.Drawing.Color.Black; + this.sliderItem2.Value = 0; + this.sliderItem2.ValueChanged += new System.EventHandler(this.sliderItem2_ValueChanged); + // + // buttonItemGBJC + // + this.buttonItemGBJC.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGBJC.Image"))); + this.buttonItemGBJC.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.buttonItemGBJC.Name = "buttonItemGBJC"; + this.buttonItemGBJC.SubItemsExpandWidth = 14; + this.buttonItemGBJC.Text = "国标检测"; + this.buttonItemGBJC.Click += new System.EventHandler(this.buttonItemGBJC_Click); + // + // ribbonPanel4 + // + this.ribbonPanel4.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonPanel4.Controls.Add(this.ribbonBar1); + this.ribbonPanel4.Dock = System.Windows.Forms.DockStyle.Fill; + this.ribbonPanel4.Location = new System.Drawing.Point(0, 33); + this.ribbonPanel4.Name = "ribbonPanel4"; + this.ribbonPanel4.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3); + this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62); + // + // + // + this.ribbonPanel4.Style.Class = ""; + this.ribbonPanel4.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseDown.Class = ""; + this.ribbonPanel4.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonPanel4.StyleMouseOver.Class = ""; + this.ribbonPanel4.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonPanel4.TabIndex = 36; + this.ribbonPanel4.Visible = false; + // + // ribbonBar1 + // + this.ribbonBar1.AutoOverflowEnabled = true; + // + // + // + this.ribbonBar1.BackgroundMouseOverStyle.Class = ""; + this.ribbonBar1.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.BackgroundStyle.Class = ""; + this.ribbonBar1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.ContainerControlProcessDialogKey = true; + this.ribbonBar1.Dock = System.Windows.Forms.DockStyle.Left; + this.ribbonBar1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] { + this.btn_document_info}); + this.ribbonBar1.Location = new System.Drawing.Point(3, 0); + this.ribbonBar1.Name = "ribbonBar1"; + this.ribbonBar1.Size = new System.Drawing.Size(88, 59); + this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.ribbonBar1.TabIndex = 0; + // + // + // + this.ribbonBar1.TitleStyle.Class = ""; + this.ribbonBar1.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + // + // + // + this.ribbonBar1.TitleStyleMouseOver.Class = ""; + this.ribbonBar1.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.ribbonBar1.TitleVisible = false; + // + // btn_document_info + // + this.btn_document_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_document_info.Image"))); + this.btn_document_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top; + this.btn_document_info.Name = "btn_document_info"; + this.btn_document_info.SubItemsExpandWidth = 14; + this.btn_document_info.Text = "文档管理"; + this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click); + // // ribbonPanel2 // this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -3736,14 +3736,14 @@ this.dataGridViewX1.AllowUserToAddRows = false; this.dataGridViewX1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells; this.dataGridViewX1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; - dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle12.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle12; + dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle1; this.dataGridViewX1.Dock = System.Windows.Forms.DockStyle.Fill; this.dataGridViewX1.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX1.Location = new System.Drawing.Point(0, 5); @@ -4019,14 +4019,14 @@ this.dataGridViewLineList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn19, this.dataGridViewTextBoxColumn20}); - dataGridViewCellStyle13.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle13.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle13.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle13.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle13.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle13; + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewLineList.DefaultCellStyle = dataGridViewCellStyle2; this.dataGridViewLineList.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewLineList.Location = new System.Drawing.Point(9, 155); this.dataGridViewLineList.Name = "dataGridViewLineList"; @@ -4114,14 +4114,14 @@ this.dataGridViewTextBoxColumn24, this.dataGridViewTextBoxColumn25, this.水平净距}); - dataGridViewCellStyle14.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle14.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle14.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle14.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle14.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle14.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle14; + dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle3.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewAnalysisResult.DefaultCellStyle = dataGridViewCellStyle3; this.dataGridViewAnalysisResult.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewAnalysisResult.Location = new System.Drawing.Point(8, 310); this.dataGridViewAnalysisResult.Name = "dataGridViewAnalysisResult"; @@ -4356,21 +4356,21 @@ this.dataGridViewX2.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn10, this.dataGridViewTextBoxColumn11}); - dataGridViewCellStyle15.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle15.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle15.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle15.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle15.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle15.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle15; + dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle4.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX2.DefaultCellStyle = dataGridViewCellStyle4; this.dataGridViewX2.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX2.Location = new System.Drawing.Point(12, 127); this.dataGridViewX2.Name = "dataGridViewX2"; this.dataGridViewX2.ReadOnly = true; this.dataGridViewX2.RowHeadersVisible = false; this.dataGridViewX2.RowTemplate.Height = 23; - this.dataGridViewX2.Size = new System.Drawing.Size(36130, 92); + this.dataGridViewX2.Size = new System.Drawing.Size(184, 92); this.dataGridViewX2.TabIndex = 11; // // dataGridViewTextBoxColumn10 @@ -4450,21 +4450,21 @@ this.Column6, this.Colomn12, this.Column5}); - dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle16.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle16.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle16; + dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX3.DefaultCellStyle = dataGridViewCellStyle5; this.dataGridViewX3.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX3.Location = new System.Drawing.Point(12, 272); this.dataGridViewX3.Name = "dataGridViewX3"; this.dataGridViewX3.ReadOnly = true; this.dataGridViewX3.RowHeadersVisible = false; this.dataGridViewX3.RowTemplate.Height = 23; - this.dataGridViewX3.Size = new System.Drawing.Size(36129, 127); + this.dataGridViewX3.Size = new System.Drawing.Size(184, 127); this.dataGridViewX3.TabIndex = 5; this.dataGridViewX3.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX3_MouseDoubleClick); // @@ -4678,7 +4678,7 @@ // // textBoxX4 // - this.textBoxX4.Location = new System.Drawing.Point(81, 61); + this.textBoxX4.Location = new System.Drawing.Point(81, 393); this.textBoxX4.Name = "textBoxX4"; this.textBoxX4.Size = new System.Drawing.Size(87, 21); this.textBoxX4.TabIndex = 16; @@ -4692,7 +4692,7 @@ this.labelX24.BackgroundStyle.Class = ""; this.labelX24.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX24.Image = ((System.Drawing.Image)(resources.GetObject("labelX24.Image"))); - this.labelX24.Location = new System.Drawing.Point(7, 403); + this.labelX24.Location = new System.Drawing.Point(7, 735); this.labelX24.Name = "labelX24"; this.labelX24.Size = new System.Drawing.Size(77, 23); this.labelX24.TabIndex = 14; @@ -4708,21 +4708,21 @@ this.dataGridViewX8.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn12, this.dataGridViewTextBoxColumn13}); - dataGridViewCellStyle17.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle17.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle17.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle17.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle17.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle17.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle17; + dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle6.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX8.DefaultCellStyle = dataGridViewCellStyle6; this.dataGridViewX8.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX8.Location = new System.Drawing.Point(10, 120); + this.dataGridViewX8.Location = new System.Drawing.Point(10, 452); this.dataGridViewX8.Name = "dataGridViewX8"; this.dataGridViewX8.ReadOnly = true; this.dataGridViewX8.RowHeadersVisible = false; this.dataGridViewX8.RowTemplate.Height = 23; - this.dataGridViewX8.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX8.Size = new System.Drawing.Size(119, 92); this.dataGridViewX8.TabIndex = 11; // // dataGridViewTextBoxColumn12 @@ -4743,7 +4743,7 @@ // this.listBox3.FormattingEnabled = true; this.listBox3.ItemHeight = 12; - this.listBox3.Location = new System.Drawing.Point(8, 429); + this.listBox3.Location = new System.Drawing.Point(8, 761); this.listBox3.Name = "listBox3"; this.listBox3.Size = new System.Drawing.Size(195, 16); this.listBox3.TabIndex = 0; @@ -4758,7 +4758,7 @@ // this.labelX11.BackgroundStyle.Class = ""; this.labelX11.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX11.Location = new System.Drawing.Point(10, 93); + this.labelX11.Location = new System.Drawing.Point(10, 425); this.labelX11.Name = "labelX11"; this.labelX11.Size = new System.Drawing.Size(63, 23); this.labelX11.TabIndex = 1; @@ -4768,7 +4768,7 @@ this.buttonX12.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX12.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX12.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX12.Location = new System.Drawing.Point(8, 217); + this.buttonX12.Location = new System.Drawing.Point(8, 549); this.buttonX12.Name = "buttonX12"; this.buttonX12.Size = new System.Drawing.Size(65, 23); this.buttonX12.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4781,7 +4781,7 @@ this.buttonX13.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX13.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX13.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX13.Location = new System.Drawing.Point(9, 478); + this.buttonX13.Location = new System.Drawing.Point(9, 810); this.buttonX13.Name = "buttonX13"; this.buttonX13.Size = new System.Drawing.Size(75, 23); this.buttonX13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4803,21 +4803,21 @@ this.dataGridViewTextBoxColumn16, this.dataGridViewTextBoxColumn17, this.dataGridViewTextBoxColumn18}); - dataGridViewCellStyle18.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle18.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle18.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle18.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle18.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle18.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle18; + dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle7.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX9.DefaultCellStyle = dataGridViewCellStyle7; this.dataGridViewX9.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); - this.dataGridViewX9.Location = new System.Drawing.Point(11, 271); + this.dataGridViewX9.Location = new System.Drawing.Point(11, 603); this.dataGridViewX9.Name = "dataGridViewX9"; this.dataGridViewX9.ReadOnly = true; this.dataGridViewX9.RowHeadersVisible = false; this.dataGridViewX9.RowTemplate.Height = 23; - this.dataGridViewX9.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX9.Size = new System.Drawing.Size(193, 127); this.dataGridViewX9.TabIndex = 5; this.dataGridViewX9.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX9_MouseDoubleClick); // @@ -4866,7 +4866,7 @@ this.buttonX14.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX14.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX14.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX14.Location = new System.Drawing.Point(128, 478); + this.buttonX14.Location = new System.Drawing.Point(128, 810); this.buttonX14.Name = "buttonX14"; this.buttonX14.Size = new System.Drawing.Size(75, 23); this.buttonX14.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4879,7 +4879,7 @@ this.buttonX15.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX15.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX15.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX15.Location = new System.Drawing.Point(112, 217); + this.buttonX15.Location = new System.Drawing.Point(112, 549); this.buttonX15.Name = "buttonX15"; this.buttonX15.Size = new System.Drawing.Size(92, 23); this.buttonX15.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4894,7 +4894,7 @@ // this.labelX15.BackgroundStyle.Class = ""; this.labelX15.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX15.Location = new System.Drawing.Point(174, 61); + this.labelX15.Location = new System.Drawing.Point(174, 393); this.labelX15.Name = "labelX15"; this.labelX15.Size = new System.Drawing.Size(20, 23); this.labelX15.TabIndex = 7; @@ -4908,7 +4908,7 @@ this.comboBoxEx4.Enabled = false; this.comboBoxEx4.FormattingEnabled = true; this.comboBoxEx4.ItemHeight = 15; - this.comboBoxEx4.Location = new System.Drawing.Point(81, 29); + this.comboBoxEx4.Location = new System.Drawing.Point(81, 361); this.comboBoxEx4.Name = "comboBoxEx4"; this.comboBoxEx4.Size = new System.Drawing.Size(123, 21); this.comboBoxEx4.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4926,7 +4926,7 @@ this.checkBoxX7.BackgroundStyle.Class = ""; this.checkBoxX7.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX7.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX7.Location = new System.Drawing.Point(8, 5); + this.checkBoxX7.Location = new System.Drawing.Point(8, 337); this.checkBoxX7.Name = "checkBoxX7"; this.checkBoxX7.Size = new System.Drawing.Size(90, 23); this.checkBoxX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4944,7 +4944,7 @@ this.checkBoxX8.BackgroundStyle.Class = ""; this.checkBoxX8.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.checkBoxX8.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton; - this.checkBoxX8.Location = new System.Drawing.Point(118, 5); + this.checkBoxX8.Location = new System.Drawing.Point(118, 337); this.checkBoxX8.Name = "checkBoxX8"; this.checkBoxX8.Size = new System.Drawing.Size(86, 23); this.checkBoxX8.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -4961,7 +4961,7 @@ // this.labelX19.BackgroundStyle.Class = ""; this.labelX19.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX19.Location = new System.Drawing.Point(11, 61); + this.labelX19.Location = new System.Drawing.Point(11, 393); this.labelX19.Name = "labelX19"; this.labelX19.Size = new System.Drawing.Size(70, 23); this.labelX19.TabIndex = 1; @@ -4976,7 +4976,7 @@ // this.labelX21.BackgroundStyle.Class = ""; this.labelX21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; - this.labelX21.Location = new System.Drawing.Point(10, 29); + this.labelX21.Location = new System.Drawing.Point(10, 361); this.labelX21.Name = "labelX21"; this.labelX21.Size = new System.Drawing.Size(70, 23); this.labelX21.TabIndex = 1; @@ -4989,7 +4989,7 @@ this.labelX22.BackgroundStyle.Class = ""; this.labelX22.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; this.labelX22.Image = ((System.Drawing.Image)(resources.GetObject("labelX22.Image"))); - this.labelX22.Location = new System.Drawing.Point(9, 245); + this.labelX22.Location = new System.Drawing.Point(9, 577); this.labelX22.Name = "labelX22"; this.labelX22.Size = new System.Drawing.Size(70, 23); this.labelX22.TabIndex = 1; @@ -5043,7 +5043,7 @@ this.buttonX7.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; this.buttonX7.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX7.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX7.Location = new System.Drawing.Point(119, 440); + this.buttonX7.Location = new System.Drawing.Point(119, 418); this.buttonX7.Name = "buttonX7"; this.buttonX7.Size = new System.Drawing.Size(40, 23); this.buttonX7.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5086,21 +5086,21 @@ this.dataGridViewX4.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn1, this.dataGridViewTextBoxColumn2}); - dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle19.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle19.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle19.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle19; + dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX4.DefaultCellStyle = dataGridViewCellStyle8; this.dataGridViewX4.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX4.Location = new System.Drawing.Point(7, 84); this.dataGridViewX4.Name = "dataGridViewX4"; this.dataGridViewX4.ReadOnly = true; this.dataGridViewX4.RowHeadersVisible = false; this.dataGridViewX4.RowTemplate.Height = 23; - this.dataGridViewX4.Size = new System.Drawing.Size(0, 92); + this.dataGridViewX4.Size = new System.Drawing.Size(130, 92); this.dataGridViewX4.TabIndex = 3; // // dataGridViewTextBoxColumn1 @@ -5150,7 +5150,7 @@ this.buttonX6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(239)))), ((int)(((byte)(246)))), ((int)(((byte)(253))))); this.buttonX6.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; this.buttonX6.Font = new System.Drawing.Font("宋体", 7.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.buttonX6.Location = new System.Drawing.Point(11, 440); + this.buttonX6.Location = new System.Drawing.Point(11, 418); this.buttonX6.Name = "buttonX6"; this.buttonX6.Size = new System.Drawing.Size(75, 23); this.buttonX6.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; @@ -5171,21 +5171,21 @@ this.dataGridViewTextBoxColumn4, this.Column3, this.Column4}); - dataGridViewCellStyle20.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle20.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle20.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle20.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle20.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle20.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle20; + dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle9.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX5.DefaultCellStyle = dataGridViewCellStyle9; this.dataGridViewX5.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX5.Location = new System.Drawing.Point(7, 225); this.dataGridViewX5.Name = "dataGridViewX5"; this.dataGridViewX5.ReadOnly = true; this.dataGridViewX5.RowHeadersVisible = false; this.dataGridViewX5.RowTemplate.Height = 23; - this.dataGridViewX5.Size = new System.Drawing.Size(0, 127); + this.dataGridViewX5.Size = new System.Drawing.Size(132, 127); this.dataGridViewX5.TabIndex = 5; this.dataGridViewX5.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.dataGridViewX5_MouseDoubleClick); // @@ -5372,14 +5372,14 @@ this.dataGridViewX6.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn5, this.dataGridViewTextBoxColumn6}); - dataGridViewCellStyle21.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle21.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle21.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle21.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle21.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle21.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle21; + dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle10.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle10.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle10.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX6.DefaultCellStyle = dataGridViewCellStyle10; this.dataGridViewX6.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX6.Location = new System.Drawing.Point(8, 111); this.dataGridViewX6.Name = "dataGridViewX6"; @@ -5456,14 +5456,14 @@ this.dataGridViewTextBoxColumn7, this.dataGridViewTextBoxColumn8, this.dataGridViewTextBoxColumn9}); - dataGridViewCellStyle22.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; - dataGridViewCellStyle22.BackColor = System.Drawing.SystemColors.Window; - dataGridViewCellStyle22.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - dataGridViewCellStyle22.ForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.SelectionBackColor = System.Drawing.SystemColors.Highlight; - dataGridViewCellStyle22.SelectionForeColor = System.Drawing.SystemColors.ControlText; - dataGridViewCellStyle22.WrapMode = System.Windows.Forms.DataGridViewTriState.False; - this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle22; + dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Window; + dataGridViewCellStyle11.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.ControlText; + dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dataGridViewX7.DefaultCellStyle = dataGridViewCellStyle11; this.dataGridViewX7.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); this.dataGridViewX7.Location = new System.Drawing.Point(9, 262); this.dataGridViewX7.Name = "dataGridViewX7"; @@ -5704,14 +5704,14 @@ this.contextMenuStripDeleteLayerNode.ResumeLayout(false); this.ribbonControl1.ResumeLayout(false); this.ribbonControl1.PerformLayout(); + this.ribbonPanel15.ResumeLayout(false); + this.ribbonPanel7.ResumeLayout(false); + this.ribbonPanel3.ResumeLayout(false); + this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel12.ResumeLayout(false); this.ribbonPanel5.ResumeLayout(false); this.ribbonPanel6.ResumeLayout(false); - this.ribbonPanel15.ResumeLayout(false); this.ribbonPanel4.ResumeLayout(false); - this.ribbonPanel3.ResumeLayout(false); - this.ribbonPanel7.ResumeLayout(false); - this.ribbonPanel1.ResumeLayout(false); this.ribbonPanel2.ResumeLayout(false); this.panelOfTable.ResumeLayout(false); this.panelOfTable.PerformLayout(); diff --git a/MainFrm.resx b/MainFrm.resx index 7adac26..7507c41 100644 --- a/MainFrm.resx +++ b/MainFrm.resx @@ -395,6 +395,365 @@ pHffVcd+IJjI7uGHsRscJEPURMMn2FMtNTwuFusPrjFl48ji7nIAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZCNzIxMDY4NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 + QTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZCNzIxMDY3NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 + QTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjQ3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6N9zpwAAAB70lEQVRIS7WTTShEURTHZyIfk0zRlPKxs7SwsZWFvSQbC0lW + CsNuMMjK9+4tWKAksbCxsWIjipIis3gWhpSPhZTkq+Oc+8697ntz53mFf/3mzDvn3P9/5r2ZEAD8K8bm + X2Js/iXOi4+2qqIWAsgpV4tHvgocsFlZDA8byyDq+pKoPPJV4IC18iK4XV0AUVfmReWRr1wBi2URC4Fs + 3MzPcZ3NmHlQt88VYMUKID0zBunpUUhPJh3oWvamRkDsTCQh1deJPeoj2Kee3KUd9ncHTJfkgT3YC/ZQ + H9jJ/m8SPWAPx8V7sYP1pL3Z6cldek9nEdphf3fAeDTXQiAbB02Nop7FuzJmOoni3GX2/5ZI8VGiKAd2 + G+qA6nFHq6g8CqafAgYiYQuBeCScotpdGBafsrSqxkJAw/z/+Ckgm8j0/RMUdM0jt34T8PL2oeCAfGeq + iQKy4ScyfHp+VXBAzJlqMhlLdKGB957D/eOzwjtDnGdiMpbookPXd4+BoX1x0GQs0UUH7Kv7wHBAvtFY + oosOnF7cBIYDYkZjiS48kPEMjs4vFd5ZtKx6G49VGI0lBtGvpB5pIZO9E1tB19hvoxlDe8G/AYt+5xRS + QYY7hykFB9TSjKG94M/AKzLc3j9TcAAZu2UylvgJDV3PRN1zl0KhL06k1hGgG+rkAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCREI4OERDNEFENjExRTRBMDIyRjhCMTI2OTg1 + QzRCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCREI4OERCNEFENjExRTRBMDIyRjhCMTI2OTg1 + QzRCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjY3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5EAI7UAAAEwElEQVRIS6WVf0yUdRzHv/f7nueeu+cO4UQEIdnNarXUyLUa + IqdOJggklBBuYoDGLw8UFJWTmBYYDEFQiARJgakJOAQHVF5UgIgobYkFRDFdNPgjx3LFr/v2+VzHI9gP + 2fhsr32ez4/n/eX78Pnel/QUOSyIp1p3gcNCkXflOxy6le8wCM8T8Hznq+O6CJCWAiJy84RuIbCdebqW + weYX6J1SZ3ojTzcCOWvfFQP9MlubCwvISUeubt60fagLb8/RdX6SrHGpTtVw8Px5f+Pz1JKlbYz3Z9aA + oGv6NpU37KDv3uXltO4wH0W+Pq6dF61Z2h3gp1qztQ/MYewKiC0/1D9HmzL5CoVM5AriekADsEXvcmu6 + ivX0+gfau8TyPv9UvjjKvwN+6vox/n5GOGtszuTbemtX0Aazptwu7ggwgBgQARLo/Q2YJC2Z/P/SlMFH + gZ9ufo8fyghjjQ1mvqOn2oPWpM0RV9qFbdZo5g3wjvXaEX4QAs1/cjVdEwPe2pCu+flgCGOsO6jp7D7n + Ti+kqM/IpUQQr9qr1kOf5G9xjRx2Zrld7UnLE7lMciVN/a/UHVDvBm8F/1NqMGO8lKK+eeOMG61M4krt + 4otQvPaAOgD6/oS6OdJXoapLU9d0nVtOL+zjruo4kTu5lML9g4v7uHjwVvCDyVuUxqokruubYldaFq86 + DaJLZ8RBJBj6xi+mcKOZYYyxOpmrby/3oOdNXJ2eF7tDjyOpMnFzqNzDJYK3gh9I3Kz0rUjgui0FS2nx + LtWp2eLn93BboW+80sSNpAYxfuVxqqbWIjdaFqeq1alEy6DHCWDI2TiVQHmsygTeWhar6o9cp3jt492q + 7pbcJfTkTrZwlrgC6qEB3u7Ti5a9SGcI8zfQ4hi2RjtbHKeqdBdr46MY1gTeWhLN9gV5yVblbGeyPst1 + ofmRzFloFMRLYtg3oW8CRSenqQDGWtYmPntkCSnaySArgcnCSGY42EvmBWnngh1Ma1mChga+LHsFYvyL + lCcjmbfsfb+i4B8TUwIYQ48L8Fgc7cR2JcmLUFZ+mq6n+wMUMZBaAqhzwpXF9UedqTlYkbHaQ7I4921l + IvROQe9w1Dr5RhQcezQuYF8Ap+uxONrxMCUymr1NOcLIbVvUAdK4DXI95IYuH9ZTqFtD/QzC955h9OEj + gSdrAE4cIcdCFMhk5huKHghxiyyAp1Ic7SMzmAMV1VDrxZcejDycN9gPGoRkBMnJkUB5LzDmqRc/Aykl + 5hAwPJ0qwBFfGLg/Om/sCyjIIX8Z2e8nS6mId6BJG2UlkOQAEebtJo54VWpb4Lsff5k39gWcUJwYn5Uw + KZtk7fBsNa2XFUKMd6EIYhHkN4HvDzR6znxbgVv3hgSerPHOhmbQcCV7N+DNRkQhqyUuJqO0owx2Arnf + k9dLb4Mfzo/mMbbGrpWeEovIS9C7BQhHkbZvBwQwhjxelaF2fAAnYvKV2gATG/QiPvp1aVqCj7QXcpPA + WNxa6bWQlZKtUMfDhiOMo+iGgpau7wXsC6yy1xE8OwqS4CMRAMMZxt92HNXFAE4VimIz3lb4n7f97qNg + c8ddAfsCKDzXYr0lcwBDAdySAsBTiQuiMBaFSwUET6PoDMI3n2OE/AXV7wtcYQSjewAAAABJRU5ErkJg + gg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjk0MDA4MTVGNEFENjExRTRCNjgzRThBMjlFMzdD + NDk4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk0MDA4MTVFNEFENjExRTRCNjgzRThBMjlFMzdD + NDk4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjk3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7U3Gz1AAADLUlEQVRIS7WTa0gUURzFV4mKMqVC0XytgabkmiauZOKDwlQk + wswiycAPGoVSFmRFJC0tQX5Ii4VAc9V87KqhGdima33wQSZWoilqaa1u66qwGSKleZo7OzOM4/gI6sDv + Mvfe//8cZu5cCYD/ivgiT889HFQUYFAxy5zE+vnQw8Lc6xWpc7fHVE0ZprRqkGexGoLQmIUexBpYNK7b + YC57BHNlIcizWA1BaMxCD2INLGWudvj2+AFGFDkoddn67wJayo9W1OT5j2py96A+Lxh1dwOhveULar1S + rF5ozEIPwuLmkriapqKQyZmJ04tzllNgoebQq0OnmtWxNcIeoTELPfAL9er4quaikKnZ6ROUYRLaNRFo + vB+MztpDmDGfBFnXF4dONxfHafh9QmMWeuAXahXeXy3jx/FjIhHlV71QnhmEzpyz0Ocepuffxw/A/Dke + WoWPgfpLbf82wLbq5m7jjCkBfU1RaMwNR3tqErpSE9ESLYfuRjjeP5PDNLwfpC72SOgm621YRcKAyhxP + o8UQg6aCvSg8E4CLW2yQzVCaHoCOUjmM/f4gdZERgZsZm5W1LOCym3F6JAJ9tb7QKaNg0qitF626DE3K + aAzpwmHokSEh0md2p4cMPJbdclqCAInminRwVCdfNPZIUZHhguoML7TlJ0N3OwJ1l6SYGJDjXaXvIjGd + /w0OMmcsl0oYoM+PKa664GIabtgFQ7cnPhbI8OaODP0PA2Hs3YeBlzJUnHc2EcO5XwscTMDyMxEGEBqV + B7VPMpwMrVnO84MNfhh64YeBel+0XvcBtT7WoAh7SgxnZn9yMAGOVleexAIILflx9zRZ0u6SlB3QpLvj + WJgP+605Ji2zHMI9CuuZrBRAoGSj3L4Rvdnn6KYxs2XdkPr1BEhy7TegNzONbhg2TK4bJmDTmgHX7GzR + nZZMN/R+Mq4bJsCRDhDCF3XBVOSShTm50k18uvq/cAj3HJy9dVS725oBApG/JJIiiZi0fRjmIHNqPYXs + MZC6td9AIPKfkxA3Yvjq7QAHExBE9hhInfUMVmI1EUNdRx8HE0CMl0rMmGU1UYYqYsrCffMlkkj+AEZF + 7H7+T6nEAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzNzJDMjE3NEFENjExRTRCNjE0OEVEQzI4MEM0 + RTZDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzNzJDMjE2NEFENjExRTRCNjE0OEVEQzI4MEM0 + RTZDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6PyaLfAAADMElEQVRIS6VUXUiTYRT+vi3Tzd+ps23+3KRigtiPkolEQReG + UYTkhWatpWlWGkRdddfdSPImqUAJjSIT00oxLJIk0cR+tFSyzDJtgaMkDEPkdM7ZPvm2vS6jBx6es3Pe + 8zzvtm+TohLS/ov+AACStLgEQuJyLRJWYK1yzh/+FgCoQrpnfM4fOGBhcUlIMkEVkma4H4i1y2kFcMD8 + wqKQZILKZqTqmlTAWrfvMjhgbv63Dwm0hLWQohn1eNEbzrlfPiTQAtZCKjP1GXdAIC+r4XD+9CGBFrDm + RVJ1re6pZ0GyHHMvIawauYVNCFPfvvuQQAtYC6meKXU0amNsaGN/ZR60xIf9aIgN3cpGE9OzZCZ85nEm + pGiWlLABmuJCnUOXrNB7chdct4TUo32ANDbp4NuielDpqWfePdaPX6GrohSK4uLhlCEo96YlZLbOFHzH + oJXjMSBcGn4/zQGovEDqXXtzeTb+BTrKj0J3+Q54djYP7EZdTU2MPjFSK8eieQR9QtLg6GcOQPWgqKeQ + ZyOfoK30CDw+lg2Ot3Z4VLoNqo269mCNHIa2WjYn9A1PcAAqU6m9VV3TF9psOwwPS3JgZugCdNoyocwU + jU+RlImWBpezGz0vxzkA1YOiHvPFO7Ca1kGHLQtmXp2HdutmqN+/F6JiU+h3kOpyVeHJwBgHoLIpqajm + 189HoaG4CNqsGTA1UAWth9Lg6r490PygGyLjUikgzuWqQlffCAegelDdUwLqigqhpXgjTPYeh+bCFCg2 + RkEk3vxuVz/P0c43oLP3DQegLhspNalSFxiNcLswHT48LYNbBUlQk7ebzenmyhm08w1o7xmiAP6hRZiT + 70eYkzpctUuJWdHmwWs74+F1Uz7cyE+E4ohQB5mHm9a3GywpTXzektyKduIAIsKI3ISkL4rIdYle05C9 + VrZVBmvtl7eboUyv7V4jSQdwRn8FdI72iErtCUxnIuifkJ5hUqUOq9Jr7OeCNU6bTpNVqtMcDJSldOwn + KnOk+jypJ5QANRWc0cs5SEelXr54QidfwVYAMoiHq4W/gNM6OaNCJ+diaUIqN/43+Atwg27t+9ZXBUn6 + A2MdqQeVc5pWAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN + yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc + c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg + 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 + cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 + ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw + O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD + nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz + 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn + k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I + 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df + WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs + T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda + SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjU3QTU3RDNFNEFBOTExRTRBQ0FFQkQxRTZFOTNF + OTIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjU3QTU3RDNENEFBOTExRTRBQ0FFQkQxRTZFOTNF + OTIzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUI3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz70M76IAAAENElEQVRIS52SDUxVZRjHD/SBcFOZSgoqKWQQBhjyofdaQQp3 + E+d0Ko4xW8221kLKRC4QRUCJERKklAXEx4UNYYDJh7guAy4IXTTSGyhfFxQklitNZzmD+ve87+WcLnBc + jHf77T3v857n9z/nvEcAMCfG/zYjt2eJbHE2yAUsdvbcSzSxWaxJN84GanyUOMBmsWYhj/d9IRT6tgvw + DAgGrQ/xgAfj/8waJj+ccARPrvZmgkBWk+QvhuLayBiohl7TdTFkt3D/rwnpKf4PamhppicsO10nhgQR + 7zH54PAoyCWha25j+w3CvfvjsjI5WEBj6wVQD05VmUPYZxm4NsprIj0D1+G9UW1+gzt/PJCVycECGvQG + UA+nqlaH3sERac3o7huC14YQJo9hPcKtu3/KysRR47xwP3GRuFPpbD9R4+aIxhAlruZ9DeqdgvHqAMn5 + t+dy7rl5+94MOd+gcXrlgmPVnqtw6bOjMGnzMKTNgakoB5cyP0GNtws64qNB/ZzOrj7xYA9P8fz8690p + YpHy5fPfqiL5YOFXMGaloWbzBlSsWYaaQH8YM9MwlH8SVV4u+OF4FsiBkoo6LHP1YQFqS48w/MvtKWKR + YkdFV0dqMrqz0qF1VPyevdQuedVK947yg2+j1G05DImxMHyciErVOpCDU1RWLYaEih5hcPS3GXJG3lK7 + CVNmKip3bkWWg20m+2TU2FJZ1wRdvAYlgQEwxkXhG8cnQA6JorJaOJpDbJhH6Bu+yRrnEzGESeSEwzz0 + pb6PXC9X+DmtHpusR7v5BGLHcz4oUK7D5cjXkE33sb/GkhXP+LEABQ+4MjjGAmIOaFKga+2UyHBQ4MeE + Q/hiow/yI8J5TRW8izX6Ji9WFGq3q2F45w2kL7IZp5rLNLicBxj7b/A3WPKUFz7KoAPtv8HJ3aaGdvd2 + nN21FUeW2KJ4/6uIWB+A6EWKiqNO9mg/+Cbyt4Xgw4WP6fgvR0OUWiJ09gzzCwrxYiFJn34JqqEutwCJ + 9o/jZJAS1XQOn7+kRNrzHjgeqETD6/tQHhGGD2g/UvFI+KR/hpwhdHQNSQsKiV3rH4zWzl5QHcWaOCQ9 + 7YwEd1eU7t2Bij07+Zyu8keMwnok0s46hbxWZv1DAtoum/gFk3v4bcG3uu9BNYn6qnpkv7IPcSscELXA + BlF21rciba0KI+ZZqSa90pguZwj6zn4mj2PyinPtoLXEd+1dU9ab1GHskDdN+mYM2QBqCGfy8vrzaLzY + I1Fe34q1/lugScmUair1njkF6E8UVEJnuCJRWqsHC6W9WHbw0UkZvK4KMQfIiR4GfwO39UEoPtOEc+3d + KDnTDHffzVzObqDZg4W8m3gMyrkEnD3/E5PEuPkEISPnFMlfZhINq4vQ+lkW4rTGl+0pLPfkpJYItS1G + DjWGEY1sFmuWUN2KyafX5aT/AeFfWm9WHAbkArwAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdFNUQ0ODMzNEQyQTExRTRBNUQ4RTJGMDI1MThC + RTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdFNUQ0ODMyNEQyQTExRTRBNUQ4RTJGMDI1MThC + RTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzJGNkEzOUYyOTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz41vT1rAAAEBklEQVRIS7WUbUxTZxTHS2/fb6G1VWjrwltfgGGRdgaxbkLV + FawgoKJuyMDotjCrw4ERHC/CQBjWDRQLSHnfmBnBmkBi/LCY+GEO/TBGtiwxYW775odly5aYLC7573ku + LbasJWGJJ/nl5J7n3N957nNvywPwQnnxEW7qaqjjzSSFXwtH2GIkqNx5hQXNZG+CcD0rCVsMJrBjmh1u + Gc7eMnA5MCSwHomwxQD0Znu7lJPR7LqRBN+iA+XjG0PqgWHhHP8pBKA3vdooxZvD8Vw+PpqAke9zUXNX + j/P3LDg4oOXqZf71SENCLgLQ5qxaCYqvbcSF+9loq0/ClF0Dn0kJn1HB5UnbBrTXJaHlm21wXIrl+v1D + hMGuEDGFNmWeFCPPrcX7d7eg7YgaM+ZEzH/aicWJITyeGMTi+CDmuz/G7OZkbv3wZBrsF+Ow5czSB5B+ + TFSqSmUkZFhUiJjbeb0KBUN6VN6xwHVCBR+R/zQ2gIWeLszuysa0UYPZ3CwsdHfh8Ug/fBnJcB1fh73D + JuQPGJHfr+c8lESn0LIsNrwh/H3rBQ3239yEoi9TYfmERY+ZxYOOVvzQ44Y3kcXbpSy2d8jxTrkc3iQW + c811mGtv5vqs3Sws7hjsuJyEHW4DXqmL47y8hGLBaUutGrv7DCgcT4PzuomjYMQEr1aGxe4O3CxxovZA + LIo+S1nmXJkGn+duxUL9aXg1MhSOkfu8Jjh6jcjp1MNcpYZuFzPI0+Yxpdo9zLw2n/mF8JtuD/NU52RA + 6d0gwaOORngz9LDliJBQIoL+kATGI1I4d0oxasvEd65juEb60ipYpL7FIqWchYmQWhkN5Wa+i7wHnoCg + JhgI6QQzIYOQ6VaJn33bUAPPNivOqUS3RKqoHKkuKl8WH1V4dr1oZmJfHuaq3wXp+0du4h8NEJ3Cr4jZ + xH9PwPKsxEPeNI8nIrCEGILCj7JFKbwzcXAfbh9wok0pfNasEA7XxQirmxRCb6dOiftnqjBS4ECDQniP + 9McGEedHzZvvVUWkKZrZ26wUod9uwwx5D1dybOiyvIyruTZ8daIcU2WH0ETWq1imjMiYFdCTYajIQ0Ak + viBfTutLAjSk6nHjcDGmS0u47N6ehQ/XM3+5ZPyPiIieQvj4+pISf/9ZtCq/PtyJqZPJaEqQ4LxOhMZ4 + CUYr4jF9Sk5/ufwlU4S43RzjIWCtPH3iDL72+HVcBP8z8Car5bRGdyEmyFaD9OLJQ+tzHljxxyM7aJ2s + Lz9JyICrldK14CEQeTbHz7PpoNeXj0qHiFe4pF8xoHW/eE20lIj7SMaP40bQXF8oHiNOegzhn6DmdcGa + +WC3oI9knLILhokvRE4jZEDVa8z/ggSV0mMJkdN4PgC8fwGKe+JSzfQhQQAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg4REU0NDQxNEFBOTExRTRBNzQ5RTJDOENEOTZB + MEM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg4REU0NDQwNEFBOTExRTRBNzQ5RTJDOENEOTZB + MEM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUQ3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz55z27YAAADl0lEQVRIS+2Ve0xTZxjGTwgt0EN7WrFqh9MFrdVyE3VMuyVj + WTITRTcz5/6YZHEar0A0JBMBRToMl1QEBURsRSheJhFwVC0yjAtEqJe0IhdtLB0a8TbjNMYtYe7Z+zEx + R9egyzT7xzf55fu+93ne50vO6YWzjRP+EwCGxefQv8FXqBhfQ0uJc8R94sGT1UksJ/7h9xUqhqt/WyFm + a0PkO3Bty4XHaoHXuhueqt1wFebBFh0G0gue8/sMFcPVhMqHWFNH4b2Vu9BRlA/bxzNxWDsGtrhYdBTm + w1tRhrqoMJAvUTTDvbCqNfwQnWdyjOgqMsGq4X8tGS0zpoUEhtI+hbS7jsxUOLZkMq1bNPMkZZiyjJYN + 8YenMAe1C+agSB1UKOozsvfFvYeODclgPrH2wirRju0dRB0Id85GmKMmoGC8+ib1vE8Zr7691zAVFxKX + gPme0YahmGB3BBJq04iAAWdGCkpnTUOWUlpJvbFDGFXSPdb5s+FYuwLMJ9ZeAs6f4I1Kid26cD6Ofz4H + 2UrJwGZBYkkXJEm0lue+pUTbulWoiP8EGwXJKfIrXhrHVhWOZAhhtV8Hd2UqpSj7yIAGeg/bPzQgP0aP + HXEGNC9LQM1Xi7CJdPOnsh9b8pQJ7SbVVQqQsHl7ljKGzq0tearE1nxVOu2Psh7TuJPZArYsloU3GYXT + 5rlBA5ka/z8zJk/AwS8/w+EvFgyupvdjsV7wu5vzrtR5bJPCXLNesYzmHjd/J9xrL9WgYCn/wYksoY3O + j4jfGjcLjcXLgw0smzuSJkdyfODU2lR5m6dpCnrqImCaKR34NsTvcaraH+mhEpTOG4nyBNm9+jT5gwMp + wRW7VvMr2y3jcMs5DT1HI1C3Qd5P2u+3zsfgjmsGaP+I9Vg2V53MozKR77Ym8w+99nD0NUbgZ3sEvCci + ccc5C1ebQtHfGoO+5kj0n4mFNYn/pSqJ73M3RuH6T+G4fioaV2xTcMMRi2vNUTSrRy+dr9j0YNlcyTdB + OFsWhl57NNyH9Og0C+jaq0LPvlG4/P2IQdw1IfDUa+jySLh/0MPdQMEt0+Em7dJ+FS6Rt7s6BJ0WARfL + FYSS5nVg2VzuogC4tk9Ex85JuFCshWsH22vJpEXXnknoqSSsOgrS4fJBHYWydTJBj7NKN+jpJC+bYbMs + y1n098qyufR4KV4n9EnjAgg18fwX5FXB+RHsEvbD8jp4U/93+foffXWA+wv9GwQ30fQQcwAAAABJRU5E + rkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI2OTgxMUNFNEFBOTExRTRBQTEyRTc3RTczN0M4 + QkQzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI2OTgxMUNENEFBOTExRTRBQTEyRTc3RTczN0M4 + QkQzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUY3Qjg1NTlBNzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6CerVFAAAEkElEQVRIS6WVe1BUVRzHd7n37rK7LLtsLs/ltbsgb8RBQDTl + FaGW4SDWmI8sLAGRtRUBRUhUXhKPAkOReKwmsQIOEOboOsofKlDDI6UZCaH4wwbTcey/1Pl27oaEiV6r + 78xnzu+c8zvnM3PvzL289kDt/4Izcx36N3CmNUDL8jMphVdLbQ6Q0YLAn17nhDMt/hre1/6aX0ipvFwk + R0+RvIDUQgKf3eOCM81+at4pP/UkKVXnD8hws8MD5/JlJWRulrD7L4IzJ3zceQYfd7Og+xMZ7t0MwUib + Fl25f0vYnufBmUZvV16Dt6tZ0JFjjfujofhtZBF+MGrRvsd6RsL2zQVn6ua78I7PdzELWrOkuDsSjLs3 + vDE1HIyBr9xhzJTOSNjef/JSqfF0NgtO6a0wNRCEO4MLceuiL273B6GvwRUnP7aakbD9T3LU03m64kiV + 1sksMKRb4faVQPTVk0t1Vv39TW6Y7PHHlWMuaEx7VlKtdZquOFKudjQL6lIkmLwYgNOZMsQGMqFfpkou + 9VSrMH7OF5eqVKhNljwlqVA7sgN3DrvZmwVfbBVjotsXJ3RShHrQfgvcKKfabRKTqcwRox1euFDmhOok + 8Yyk1M2ePc6dAldbs6Byswhjp71Rl2yFUC3tQ9akMf60oup9senbQnv82OyJs4UOKN8kmvOdPDf5zsrJ + Y47SXad9rNHtIUenWoZOF9nvhKEzzrJtkb60omyjyNS53xbXGz3QkW+P4vWWLy+pVckfdPq7YbC8CGOG + OowbajHWVIvBimJ0BarR7mxdvsyLVhS/Y2lq22uLoVot2vbZ4WCikFtidJKmtpPLbzUexXBlCbqiw9Dq + YY+uiBAMV5RgvL4G7QFqtDhJ05Z6UoqDCUJTS4YS31dp0JJli7x4DskJB8n1vsJ83KgsRYNKgo61dihY + LUK5o6jE4CC515uXhd5DeSD1CGm3CNdSity3hCZjhi36ytU4qVci+80XSOrsxI/GKgrRtmYlDvlZYqBC + g8JEMV7zpcKOOIgqT0aEYjh7B9i+3SsEipQoZt6GxbR6zyrBtQv7VbhW4o4m3TxkxAnmllQrLR/fLNyH + 4wEaZIQI8E22A/SxzHdZK5iHBa9aoiF8AYa2bwHpI4/jL/ITRNgdxwxlxjEP2vS26CZn6re/Al0M86zk + U4Xwj4EcPY4sXohcDwHK1kuxLphK0kXTY/kawYRh9evo1X2EUoXw8Y4oun1nDD2aFkmfSVpKZadH072p + EbSRzC+T9cnjyQqQ+dOSQ3Kmy7B2Nc4mrMRBGwY5WgZ6Z7ohx535tchRjqs7k1H/Riz2KumfNoVRKanL + 6fMbQqm0LeFUFluvX0Rt/GAJXUAu7kuPosGybdksSa6UWpUnF6AmMhyd5D18tjwcJUE++DwiHKakjTC+ + uw65ZP89sUUSOSCbxmZ6tCbIZ63ZEdjvh5IgIbC/Xx4vRco83iWhHuZ4adD8djxaE9eYx9IlIdBLqEcf + WjH3N8ssJ6YZnzXOrp/sz7CJrJsFJJI4AT8mWcRv1In5U4T7hDtbRXxjtIAfT/ZV/w2e6k+0FURyr64p + kAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkExMzE0MEIyNEFDRTExRTQ5MjFBQ0MwRThGNTU3 + REFDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkExMzE0MEIxNEFDRTExRTQ5MjFBQ0MwRThGNTU3 + REFDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RERENjE4NDBDRDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7V3v1pAAABvklEQVRIS6WUMUtCURiGHSKhQSURRbJBIRcbgmjtD7TVL2hv + qCFoaW5oaPI3tERBS+BgEIRR0WCUUEgUgkESYYIhcXrfc++p6+0cPRdfeOD77jnf811vUCg+PTsSQoiB + aIeCoJN60Q4FYWh0Qz6KQBgouhpzcGkYovcttPDM1Zjjk2nftgubzTOX/l+FB15Ep9sbCTpctRP/go/O + 10i4C8KOHfEtGPQHtSKWnjmCNuHYETzsA0nwYrPVDgRnMLsCFumgSMYrJ0iYl19e3wPBGczmAOXGT6QQ + 9cabhLXqTbXqoft7cxUc6BC1p6aEtepNteqhm3KsnuBAh6g+NiSsVW+qVQ+d/YLr+2cJa9WbatVDZ7+g + Uq1LWKveVKseOvsFZzcPEtaqN9Wqh856Qeu4fCXKlzUreDeeKbShs16wt7G9K0qVOyvWtnZENJU7hM56 + QT6ZnRPrWHJQuhAn57daeMY7vDs+EV2FLuVYPdHIJdFkbj6Wzu/jp3+i//3mXiYzhU4kmT2FfBOqBRCR + Um9wUQsyBvhGHFwCy4D/a7zwGc94Jwk40x+dXIFwgG/FRfy+OnjGO//ljE4chMEJhX4AMnDyVRS80DQA + AAAASUVORK5CYII= + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -832,6 +1191,207 @@ FGwBmuRtkA3cGO3whcZUlEdeqKKU8sgLVZRSfjw+MP4DJ2GPpDR9OIsAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkY5QzgyODdDNEFBNjExRTRBQjc4QTlDNkE4RTgy + QzFEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkY5QzgyODdCNEFBNjExRTRBQjc4QTlDNkE4RTgy + QzFEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTkwNkVCNzZBNjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5gwa99AAAE3ElEQVRIS63Re0xTZxgG8E+WbFMXGSI3K1AElAlRJgFUVNYI + qIAXLiIFKXcjq7IxHajRMYZDRASDAspNBStoy0QKCojcKQJHtAgqCEwnHuY2dCbG/bPk2XeIPdOFxsX4 + Js8ffb5z3l9PPvKuA+B/5c0RRsXT5P2byATa6tBMmTh/bSZbNlneHGFkgbydBZfyDhbETHKKth/RcMh7 + GGFkYVbVCA5euIfDij4QwaZztJ1K88HffzURTd59hBGnMioGkSi7g+SSbpDZG+W0nUbz3oAzqfTfJ5b0 + YX9hJwcoaPtWQBJLCmgYTUJ2kEJaT3J3wvCSRFk/EgrV2Jun4oCfaPtWgC5kBh+l4P5oBs0xiLeRHlpP + cnfm4ef2nbmNuBM9+Ca7jQMu0fZ1QEeTiedfTfB2wtwa3IXrfeFQ3YqATxhR03ri7iYe4Mc8rCw+/xak + x7oRe7SZAhuUtJ324lmdiC4VTxJX7jWxlDBd/WFoU29GvSoI3sGkl3uP5r9AqDw2h0HUkQ7EpDdwQDVt + p718fjVYmb20XZ72GasJ/a2i8BZ6PiXgS8K09wahqccfNW0SrA3SCkjKpVldEB9oQ8TBegqsv7JggfAT + DriQasO+fLYZmsgOzB8be1QR7u/7xYf+2wjTcjMUtZ1uUDb5Y7VYG2AmqQhNUyEgqQnipBoQk/V1PPDj + PPbFbyI87LTG+OgyFO2z/HVk8Hy060r7j322EuZqlycuq9xxsd4D7pu1AiGVoamtWLf3GgK/q+aAqxrg + fLI1+3xsCYZbLcEOOSJv99wJYImz7dQN0YSpux6MimYnlNf5YFWAVmBLte/+BnjuugLvnZcosK6BB763 + ZP8cdcRAvQUeDzggb5eQB7wjCXOpeSkU15whUzpC5K8dqPHdUwuRtBJeXys4oFkDlO2zYJ8+XIz+KnM8 + umOPk3FmPLA2nDAVjW6Q1cxDcaUjVvppA0yD69bGVWHF1nK4xZSCGHu38MAeITs+shBqhSl+6bPDyVhT + HlgdRpjS2kUoqpyPfIUdlvtqBYKuuUkvYkloKVZElHBAuwYojTdjf7+/AMzZ2XigtsEJqYAH3CSEOaW0 + Ra7cGlkyKyzbqBUQN7pGXcCigGK4SIoo4NWhAc7tnMM+uWuNjgIjjNywRG6MCQ+IQgiTp7BFerExMk/b + wXmDdqDFKaQUC/2KYB+QT+/Aq5MHvprNjvXNRetxAwx1CZEbbcwDrsGEyThritQiUyTnCuC0TisQ2LY4 + sBjWnifwuV8O/QLPbg0g227MPlaboTFdHwOqOciJMOSB5WLCpJ02QWKOHpKyzeHgpQ2YE6iy31QES/dM + 2HgeATFa08MDMUbsaI8Al5P00NdoguMSAx5YFkiYlHwBdqfPQsJhfdivIbfptjcAXRoBEfjdnOeZRYFD + sHJLAjFYdXfGjOlWvTdOS89EGzwZbDOCut4QndUGyAic+UdTfda3urrTLZz9iXp35qeIS9HF9sSZsFtF + Bug+Mxp9bjk3c2kciKGHkhi6D5JZomFi4DpM9F1qaL+0pip9b8E2y94s8czx9E1644f89J5mhlnclZf9 + kEzPnW09iJLmvo2IjMxfSX62diG1tHd6tZcf7pO4L5lFY/ha9Ibula15MCSP6leXxPR0Fu7QpLsjz4ee + z6CZ9D1CiM4/X3QnEat9eLkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVENUYwQThBNEQyOTExRTQ5QzUzQzdFMkFGQkQy + NTA1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVENUYwQTg5NEQyOTExRTQ5QzUzQzdFMkFGQkQy + NTA1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkRGNkEzOUYyOTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6npMy1AAAGEUlEQVRIS7WVeVDUZRjHf7Ase8ECu+wl4LIXcqyyHC783AWW + 5QaRFTHkMi9SQvE+UhLzwk0BUcQSgQBBgcYDzStMSzOPcpqcmo5pmqk/+rOapqb+iG/PbzfFcSz/6pn5 + zPN739/7fp/nvZn/3TSLjj+XJy2/RaItPCT5vaBd8m1+q2Qku1lcrcvki+iXr7fFU6ZZeOx5KDU1b7jU + 1Z2bVPMPWNMbRXrXkWAc+ywVLbcS8fKwFjlu8VdpW0XzSc6f8PEIPzJ19dFnU3WEJdHL9P3X9O1nkdB8 + CQrX7i3mKn9zfqsUq29ZsPfjRBx5aMO2cTMy94gm7FuF7XyJTwDJTo5GVdHxNALVgsPd5Ceye+9g8b0f + UXbjB8RtH4Msd+MeXS7f6twjxbILZiy7pEHDtTBsvG7BqivTUXpsClLWCbtJNpDwBlGVH3ySIFV520eW + nedRcf0HVJGwbeRrOHs/h2n1CGRZDe7wND/W1hiI8sEYlJ4KRcVpJcrfVqByNBILhqLh3KeA+UXBOpL2 + jkRZduARPGXZ/vH4pnMou/gd7INfIPn4QyQc/RSOzk9hrBtEiKPerUn1Y5PXBaDojWlwdgUjr0+G/H4Z + cnpCUNJrQNZ+LeLrBD/LYnixFEDAKFz7vJQ0r49dO4zikS8x8/ADxLd9jIT2B5ix/z7SX78Pw+K3EJy2 + wq1M4rEz6sRwthgw82Ag2KNS2I5JPZ4rZx00ImGNHIZSfisFkDGhxbs5AkKLd/3kaLkDlgTjXrsNc/Md + mPfeQeyOD2HbcRu6yi4E2Wrd8ngeG71IBPtePWa4JUhsD0DykQAkHQqApUWCFLcGyZvDoZ/P/5oCTGXk + hU2MvGB7rbGmG47dd2Fa+x6iX/kAMa/eQvS2m4jaeAPspvcROb8TQexid3CcL2usFCJjnwE5nQYU9RhR + PGDC7D4TCrqMyDqkR9oePbRz/SZEKh8rI8vdyshyXhmzLD8DS/1VGOquwtgw7glkXH0Nhvp3kbL2GrSl + hyC11ril03xZfbkQKZuVsDeq4NihRtYuDbJ2auBoUsO2TQXrJiWMlWIExflWMiHOjRzfJy0bg776HCKX + vANd7WXol1/xeN3Si7A2XIXW1YbAxAq3UO0zPTSd1yG38bplLK//vxBrffKY4PQ1HH9aKk8jonQUUyvO + Qlt9HtqaCx4/tXIMyXWXMXXOAQTEv+D2zCvDhBBTCN1zCGOCZq3k+DXO1YcpRYOY4hpF2LzTCCs74/VE + 3IvnEVd1EhGFblBbWot6BKXWQZq64tlYa2+TuJwQM9KU5cRL35hyOxCe2w913hA0hcPQFI16KRzxEFtO + a1Q9htSVN5C+5S5x7x/uIm3DR7CvuomUReOImt1FU7nwEolHECImMGkJE5i46EJkejNM+X1QOPqhzBqC + KvskVDmnJuHKT/K4bgjKzBMItXcjJv84NOwWiKPndJK40TOCgPgaRmIur1dZ1yM6txvyWT0ITR+AImOQ + gg39N1ybDBJP60PorC5My3oTwQm18FdNryBxbq0EJL6AEUTYZBTkF0NGKyKdvZDb3qJOAxSIOqcP/jtp + JyC3D1BSvYgp6EN4aiNlP/cTEk4gFASPEUeXkWd8RaY5jcrEBkTn9UCT4Q3gzfBfRvJE9rrsfpicHSRe + NsFXmJeSXhTBXXY+jMjk8uArVkpExuKb6pkbYJ7L7Ria37xTUBeMeCkcncRTN0z/TyLKNYy4khNQJq2G + IMLBXdUWQkXwCYYR6md7IPP1k8WEC3UFDzSpG2BZeAZJtXQWFpyls3HOC50JzkdQnbFqDInLLiC2rBcq + 6xoSzzzP+NDVwDBaQkx4XzahNv8xZH48sVotCHeOUnnCWNJG18Q4UjddB7vlfbBbPwC7+YannLTyIrS5 + OyHU5v3hr07poL7JBHe4Jh8bzgQROY8h46IKCAVfbi73D3PcpfoJlX0VtEVN0JXsQlj2ZoRaaynj7N/8 + NfZLPLFmHrXnpiWSCCL8iMl32T/M6YGMq+R+covD7QADwfoIgqt4QVGtfvIZJ4lRv5CY4zypbjfjy+eE + M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF + MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN + yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc + c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg + 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 + cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 + ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw + O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD + nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz + 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn + k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I + 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df + WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs + T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda + SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNEQkVBN0RENEFEOTExRTRBOTRFODY3NkE0MTRG + NDA5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNEQkVBN0RDNEFEOTExRTRBOTRFODY3NkE0MTRG + NDA5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTY0QjI3MEFEODRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7lChSUAAADYElEQVRIS62VaUhUYRSGz9geETlWP9RxXBK0cq3csNWaKS1z + Q5oJS8NMMvpTP1qgDSJabLFssQ0NQqJpETNq0mJGk2kxsrLMMhiyZUonzZK0PJ3vu46Mcq/F4AsPfOe9 + 3PedOXeYCy4eAQwtYSRwEGF5WluBsdJUg11/cNBgeSzXVoC/uroHHZbbW9DR+Rstzd/sv6LDsCwGOwMT + O7R3dOFHixVdFFN/kqUlUhzBlsXoU9D64xdav3cws5usYMLdEWxZjD4FLW0/OT2mG7/ggESyBNNibef0 + mOzTOCSRLMH88LWNY1+wYj0MI/wJbzb/j0SyBNP82cqxL7Bp+TpIJlLpKBMcaYlkCWZjUzNHrIAk0+TA + mdRsWEpnJ8ESl0iWYL42WzgSBUDhqctywBCTCBNolCwRyRLMusaPHKmClDUQtnmfoj4pE9bQOJQQXZdI + lmDWNrznSBUkZUH01lzvhoRMKKJxOCFZ0C9LMGtemXHH/hPoE+RqmhoBkWT3CUhYDavzCqOaFqdDJY0j + CdE12bIY9gXHt+7OQ88AX1RpnN4GRUM02b0B8ZkgJ27frE7oVGnhIVmjiCH8Yj+x0AfP33HsC/w8A5W6 + +Rqn+vSNLo2hcyGcbL7nuFUQSlzKPR/SdEWf2DknBSrIH7Dg/tO3nN6ChRngq14JxuPFYdbDRVFfVSug + QJ0Op8gvW7vDtf60LrJFb1qCO496tUYsgXy6ZcACQ00DhxcsWAlKQn+wMOhLiWERXigLxNxCn9aCy9Pb + dOULOkurVHjdEIP5F6dgctZYc3AMxFLOCELyGdx99IrDC+alwbndBf6fLlfMw7xiJR4t9iGUeOZqMOZf + 8sFjFyNwzylvTMqciL5hzihXTGF/6fxmKe6Y6jjsDLOWgcdsLeg37B1vyS3ywL1n3XFPgRfuynfHLQe8 + ujM2TKRwJWZv1qDudhWWGp7gzapavFX94p/wApJsRjz4RSSDMXvbuJac7c7tcemjzTNih32Ypp6AWZs0 + mFd4Fq+VP8SSe4/xhvEpllXWUsmzATlyTofObv4v+d5IspCFEDJtMZjUaSPMftEQT29ST7n75JO0kt9y + tpJ/rKU/zm5+b8a4KA715HPJAlUQFaCGx5PCIYhm9iDZr0VBzCQSCNHXpASJABD5F6q3LHH6EbaVAAAA + AElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGOUFCQzZDNEE5RjExRTRCOUJBREM4MzEzMUQ1 + NzQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGOUFCQzZCNEE5RjExRTRCOUJBREM4MzEzMUQ1 + NzQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODlBOTk3NTY5QzRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz6aIUJsAAAE0klEQVRIS6WVbVBUVRjH79297/fu3l2EFRCCdBit6YOROU2p + yALioLwkmRiWKCDx5oLyKqy4IwoEgyAYRC4gb/mGmIKBFi8mIBLql2iChnJyhtQPzTh9CKE9PWdDBCOk + 4T/zm+ec5zznv+funmcvcbfUZkG8UAPFNguF6S+yOfBdkc0IjJ/A+M71PG0oWFMASdw6pl0IQl+h9upI + 22voToU9ulmofQg5y9BFN9SZqymAD2CI3gLtvOn+RLu9J1/bdypR7diQrJZg/PVwy6uoI0fTEruJXw2G + TpnbxLXwBEM/nF+KmjLkcOLbPM286MrR7IQ40ZWruW8MEZbDvOPHS6+gVpNczdKkE5jrADUglH4sre4v + 06H2o5rviY4j8gv55rC8G+JEe7b8a9Z2Qd9mkrsHLyxHzUZ15aS5LcADCoAElFD7OzBOXDXJc9KaJYdD + /KvtkHwvK0TQNxvl3rsNrqgxbYY5N2lsVYtRdoM9lisH5RGYqP+Ty5nqSIiW5kz1L+nBvL4pXd03UOOC + TiepTjIUMWVev0+lgzrlP+ZqBp6s43bDMlQZL5mIi2mqWWlKVUVBtED8OTmI159NUt26edIZ1SVIFZPm + i7D5hVTVZqj7E9aNYZ6s2JSmauyvWYpO75cuayXShTibJP2LM/ulWIgWiCOJ/py+PkHqv1HmhMyx4qdg + uuSpOZgEQd3YmSTpkSmE1zckSpd6Kl1RrUFq0skKF6ixJeoN0gzq9krxEC0Qf4r34zyr46SBjuIlqGyP + eGK6ee1eaQvUjdUZpIfJgfzGyhixtavUGZljxAtakXwJauwAnqiKEaeojBYNEC3maHE4bD379udR4sDV + Agd0fJdQMs2chfX3oG4MTB/s9eN8yiPFa9fyHVBZpNComW6Ob1XFHsHKZ5GCAaKlPEIYClxFv56/g8+5 + VuCIisL4KiicMi+PFLZC3ROofxDry/qU7BbavzpqD4fgz2kEq/n0K0sQpbt4zEpgvCSMHw1aRa+CtH3x + Tr7LHKdGAW/Qb8Icn4g7Hsa/P1n3W5QX41P4Id/x5SEdyg/lTsuzmWMd28ERhaFc3blMHUrZzEZCygFQ + 5W/nyi4dtkfGIDbL3VW5uOADLh5qJ6B2NHw945MXwnU2ZtihnG3cFwJDOsOep/3wzBwLCjGPcrdxD3nG + egotQMV4MzrI3TufoUOwbrl4xBHB/P5Ha+gN2Vu5zrOpdsgUzNXTymf9AMw0x8oOZjHjpnfZuzB1BAQA + d6UiwoN2MwawDbA2mOHPngl0p9ZkBbE3GvbboswAtvY586lOnqGsQIY4GMAMAo+X6RQvQ4rDOQwId6cI + 2K5wULhm+DPdtQmLUKofU0XNxxzrwCaaSNlIJ1XH2qAEH7ocUhJA4jwGpAh9i7JN96OvnwLzfRto87zN + scCc0K9Q8km+dA+MLQYvugTm+F1IwpyEvC/E4ZoUO2Twpiv+lznWPm/8ZiPIYHelo0FP9ZrhSSD3R6IX + dRviaFGEjOeW6HXUCUphNbd2Mt4zuXduGTwpKyCFm46UI96h0uI8qEHIjQOPY9ZRV4JXKrfA+tTfBEBO + 2ze34jyUU4DwNcMG+KouBvCtwn2BGw2/rfAvTz63Z25Fr1XOAIS/V3w0FsBdiT8QG+NFcpb6OUQQfwME + xz0xnqHypQAAAABJRU5ErkJggg== + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -864,6 +1424,359 @@ lh7gOXXZq9sAAAAASUVORK5CYII= + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp + bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE + sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs + AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4 + JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR + 3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd + li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF + ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX + wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF + hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55 + 4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ + VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB + 5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC + qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE + j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I + 1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9 + rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG + fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp + B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ + yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC + YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln + yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v + vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp + vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L + Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA + bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z + llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW + ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s + xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6 + eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw + YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR + XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm + WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl + xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2 + dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8 + V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za + Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v + Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb + PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/ + 0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h + /HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr + XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS + fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+ + tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/ + 6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOvAAADrwBlbxySQAAB7tJREFUSEuFlllQU1ka + x6/MlDPz0k9j1YxTNVbbVTPTNd09Wq3Tbbm0jqMItja0OxhZBFu0RFAG40LAEJCWRUCWgKgsskhkX4Sw + RkhCAoRFIAuSyJIQIGGRELLe/xzp7qrp6od5+NU5t+53vt/9zrn3nkMJjfTPkCw4KekCaefpdb1L9Mae + BfqU1OjMEM85ZV16x7RkxqmXzNKD0jn6cfc8fa53gd4kNtIuYiOoTkLrHE21/A+/EEiJQLJA/54M8u2c + dbaIph3zXTq7TaKzQ6K1Q6pzEEh/2m4nwkXxrLNDZKCDREZs/L8C0TzB6Pycr6Nr2qYciyTxWlLx1Hts + P7Q/XndpbViTEkQ6x/IrPS3oMGAPEaz7mUCyAKqbTIl03km9MtB7qyadfZVqB15N2iAiiToJIj0gNvyI + EegiiGdA7pEYInovFWodaNM55SSpR5uBdmmZB9VEKvpBsEhTnXPOnSUax3CxyoGaN3a0T1iJxAqBlkaL + ZhXNcj2aR7RrNMmn0aoxo0NHQ0Bi2t6uok1jImMs4E/Z1c2ztHvrTwIpEQiN2FCksb/MHrKiSGFDucqC + Zo0FZJpQr1xAVvJ9PPT6BOknNiPJczPYnh8j8T4HL5Xz4I+TpCSmZdSIJrUJLzVWlL219TYasHlN0GHE + ulqt0ze+f3WZO7iKp8NmlMjNaBwnyUdXwE2JR+rRDUg5SCHV3QXJh9cjeu86hP5rAzj3YlCrXAb/rY3E + mlCjXELtmBnPlKu2sknHnboZej3VPIeNmQpL2x3hEtJ6l8GVvUPu4DtUT9Co6BtHxrGPkH1kPdKO/wHx + HhvAPvQBWAc+wMUtFM7v/xjFsmlUTgHFClL9iBkvFCvIGVxCjsIsr9I5P6MqppwnWZKlhdCWWcSTVUzq + MuBhtwFVkzTKulV4cPRDNCZdxnh9PAQPL+DW15tww30Trrl9hGC3v6BUqkD9mxmU9Y+DK1Qhu2cGcaJZ + cKQLqwUaO5N6MmblBrfN2gJqJsBu1yJGoMP9jmmUkzeptHsURUw3zMvbYXn9AlON8ejOD4e8NglqcQWK + bx9EU2MmlA13MVYXh55CXxRXPQGzYRzBZKWTh1bqqAdDpv6A+imcea7A1epR3Hipxt0mDR73LSK7YxSP + 2AGY4KfANFQJ63AZ7PIqmBUN0Itz0MY9jLeN4TANlAEGOVZkOejg+iGirBvhzTNIkC28oaJ7l/Q+lWoc + yxvAyfwBHM/vh1/xAFI7SUV1ShwOTMTzG0dgar0Hs6wAK33PMdueCknWPuj6WLBqCmEQp2NFXg+Hohbi + AiaYJSKEN0wgVjqnp1jS+ZmzPCU8ciTwJBx9JMGpXCnCXsjw71tt2BEgRotwAA3pl1EYfQ5FhFfp7pjt + jwJtqoV16jaMkkuYKvFBV951sAtrEFwkQ3ilElFC/QzF7ll47VU6gsMZAhwlHOF2wDVDhJ03mrHDXwp+ + 3wrKyZcb0rMI/0YtEiuLoO3nAMvVsGhDYJlkYLH3EsTZ3mBl5cIvT4Lgp13kAYfBEs2oqbhB02Mv3rDd + NaUFbimtcE9thevNZzhxPhVP6meRPwoE9wI+bTbEVDdg7HUGYKqBZeoKVifOwDIQhCHut4hgc3CW2wb/ + R+24miXAVd5rOlJq5FPJKjvDr0q15JrchL0pHfBIqoQgahfUxSHIKRUgsMmJszUWsHIrIOOzgSUeHHNh + sE2dxXL/JcifMqArDAT/zj74JjzHubR2BGe240rFiJUzsBJFZb7Fn0MFeuGh9HbsSRfjm6QKjHz/BckT + iMvhRQh6Nou7TyrQUxMLVX0kJrsYMI2dhqkvCK3JfmBe+R7TvFD0cb6ET8xT+Ce14CJXgJCm8bF4lWMb + lTUJF86g+eKxwgHzgUwh9rBKcO/ebbRE7ILv+QTs8q9GYbIvoBdgvPQyOlh/Qnf6DjzneMH9ZDoC/O+i + NfoAMh5EwD+2DBcSXsI3X+K41bMU+0CN31IZE6BSxuiNl1unO/c/4OOf4bnYGf4Yh6/F4QgzF9sYWYj5 + bjuWXsXC2slBX+yXyPH/FAc9ovGJdwW+YWbCOyIRjLsFuBhTAZ+HzbjQoB7mKJ1/ixsjP7uMcVBpRBKr + sB/wLldqdnEqsDUkC59+l4KtQanY5h8NzwN/RULgFjQmnsDjuHPwvh6Fr65mYf91LtzCs3D8VgHOR/LA + SKiDb9mw7vag5UT0KKhENREkvqGpBEL8G7hEjtiOn+bJx3ZzyrEtJBP/CLiPz3yjsZVxB7sDIuF2JQau + IQnYH5qGQ9cfwjMsHd43nsAvsgRe8bU4Wzqo/Y9s5cLNEfrXcUTQaXBQ1D0FvUackqY4KvpXzH6r++ly + pXRfUuPqF8w8fE6q2BKYhO2Er0jf9UoavglNx8mwR/C6lYdTnFJ8m9poPc0bHrrWYz4R1m/5DUfueH9o + oAYWHevWEv8EW+GkWHJQwV1LH3rVjd8+ki8bJuuyspvNo3fdLMA+Zj7cIorhweHBM74aHmnNZo+CbtWZ + GnVskGjx72GDToo9ZCHbL02RP/Yfu+YdjF8IIkZoKljyjvJp0q33bZ7e4l0/zvTkKWq+zutRHXok1B/K + FuqP5veMHX8x0nC6fiLKu2V6O4Ov/d1F0TuKNewghwaaGnoHF7JTMtrnnJ3/BXixa5uWRdAiAAAAAElF + TkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjA2RDcwNjdGNEFDNzExRTQ5NzBEQzM2N0EyMEYx + MUM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjA2RDcwNjdFNEFDNzExRTQ5NzBEQzM2N0EyMEYx + MUM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QUYwQjFGREZDNjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5AqY9iAAACh0lEQVRIS+2UXUiTYRTHjaLcam2T6bRY09yn7Z3TLJit0hmJ + mqL7yG0ZiNKH9iVKVJquDwJLLyqji7qwSN3UrIQIKwqK1yKU6Kroqhu7qcsuutu/c17X3Vw3BQke+MHZ + Of/zf3ifh50UAP+UhMW/yVL8p5ERuGrWBq93EBFiRhsamCN+aEM3MA/lwYGv1Jsl7ViGv/+UpuacjUaX + E8skk4UivbZ3KL3uciy/+wF23nyF6ugH1D/5jIaXX9AozklwzjXusYa1PKOpvjhOFnKCD0ocaeVnUdI9 + i11X3sPVN4Oi3ndwXHoL4cIb5IWnYe0WYesRYQ+LcNDvrT3TcHWKcLa9Bs+ShZ6QSWaJQuU6jnzvGOz+ + CKyhCRiDj5ATmoQ+MAldHM65xj3WsDavahA8SxYCoZTMEoXCsT+qKGyMZRV3ItvdB2PFLVhrhmDzjEPw + PpTgnGvcY01W8RnwzGqb7ylZ2ImFD9DsOR9Ru9tj6yo7kFl2BJriZqgKG6Cw1UNu9kooNtVDVbAPGmcT + tO5WZJafgNJ1KKZ0Nj0nCwuxRjJLFGm7u7D9tIgd4RfY0vUYwskJWNoiMB4dwsbDd5FzYBCGg4MwUW5p + uQehdRhFLVFsbr4PdWk7X1HyA+bfYBSCbxiWQBSGvaPQ+6PQeSNYz3hGoCP0dO+5vhGY/Xx9d2CtuA3V + tmN8QPIrWnoDsljcbzBFFsn/aBSyldqCktTssn5ZbtWUzFjzUW6q+yY3e37+fgMpN9V+p94nWW7ls9QN + pddWqI1+mnUQyVcFBS8qXljphI4wEFaCtyV/PpswnHONe6xhrYZIvuziwSuXRasIHlAQawn+dFUczrnG + Pdaw9s/repFFSsovJqxFMpmOVVQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZFQzJGRUI2NEFFMDExRTRCNEQwQzlGQjVEQTAz + Mjk2IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZFQzJGRUI1NEFFMDExRTRCNEQwQzlGQjVEQTAz + Mjk2IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RUU3Q0MwM0NFMDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz71LrnbAAACUElEQVRIS7WTTUgUYRjHh4g+oWyXiF1dESq0XLsUISR9bSQG + C1FGpSIdyktQVIfq4AYd6qBBhzq01xChrEuBCoIf1VoqbOAHae6mSbtWW22Zpm3w73l2BpoZHp2doj/8 + mGHe5/k9zDvzKgD+K4ozt+ifkKR6xCY7SFI9YpMdLCM12cEyUtMCLCWW6Z9ZRl+8ABXEE9eGrXBv3Aa6 + 7yaqec0yXGRBvc9/HF3dfZiZS+HHz18I9YRRdqiaB93UNPPHJDNzcFfZESS+TGF6NmUgOTWjDfFWaio5 + glRP66PWDiS/z4q0dT3nASHSLFJtQgSpnk+R8TgSyWmRycRX3qYUaZarNiEmoZnkyFgMscS3eaEaOk2K + U7UJMQnNvA8PRTAe/ywyMhbnLZojjVu1CRGkepqCd5vweuKDSMPDZqzJLnhJmhzVJkSQ6vHt2F+O/tF3 + GIzGDfSPxuDzV2KlI/s6aVyqTYggNeDwFAYrTp5Hz0AU4eGJNL2Db3Di9CWsXre+nRR7WJOWSZGkhIu4 + SkSIqNPjfVu4fR9Ona1FzbkAthSXwpGz+SMNn+Q1h8d7g+ryNKUxtCBx68zla3jQ8iwjLgTq+G+6rSmN + MYmZizsPHEN77yt09A1nBNfu9VfxH1Wraf/EJC/J3VSMxsedaHsxZIt7zU/BvbRduzW1GtOAhkDdHbSE + Bv6KK/VB0De5r6nVmAaU0Gs20jV9Qu2S5c7vXLU27yhpl6h2Ci0YoKwg8olS4jBRniFcyz0FBDvUCAMW + E1kEHx4+oXbgHu5lB0VRfgP1p66ckfD+bgAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhBQzA3NjM1NEFEMDExRTRCRDJCQTRBMTUzMERD + QUEwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjhBQzA3NjM0NEFEMDExRTRCRDJCQTRBMTUzMERD + QUEwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7wDFMsAAADRElEQVRIS7WVbUyNYRjH2/iSD2behrAK1SJxTpF3hSZSmbxE + qZYT6SjJvL+sMZIZRqGat0hRmyxLXmq1VUoZHbVSspqQKWPGvMzfdT11Hs+5uz/4wIffdt//63/9r/M8 + z/08xwrAf0Uqyhg02kVPpBOviARimMwnIhVFKMzaxsENlzJz0dbegcTjZ0BaiswrIhVFKCwydlsCvv34 + peLtH8xDpsn8WqSiCAWFRcXtxtfvP1U8F63gAXqZX4tUFKGgPkPtXJGcdgUV1bXYsuvgv71FDAWe8PD0 + R8z2BDjp5vKABJlPRCqKUJij22xfdHR+RNenL2hubYfNODceYi3za5GKIhS0MtgQh3cfPqsMH6vjATEy + vxapKEJBq0PWx+P1+08qZdUmLOg+SWmETtbHSEURCtgeErkFbR0fLGh924WT5zJgN2E6D9ov6+0liFBj + kn7WYpTV1KOlvVMlICgSJZW1yrra1IygiFgecovw0fZbhImQOWV5qBFPG1sVnre9U6Eaho3RIX5volo7 + fy1PGaLNsAjUQsbAZSEbUd/yBidTryLCuFNZm+EBxEAiydl9Hk6lZ6HiSSOG2k1iva85p1ewGTL5LVll + wKLAcG64GrBmA2qbXqmQpgzo8c4hsuxdZrB2QJtjESpCZj8i1EnniQvZt1H0sBaPG9oUNu1Q3uZkwT9Y + u2csNiLU4DF8rB4ZuYWoevYSR5Mvw8NrKdbF7kGlqQW+Kw085LCs14xUZKjRmrh08Hg6yp++QGlNI2Z4 + B3LgbOLO6Qs5uFdugut0H9Y2yzIYqchQ06nwTbtR+rhJYdlaIwed6Kn5O7vPx/2HdcjKL8Eop6lc8xUz + mF4CQ+ZDXn7BeFBVj+LqBsTsSuQAi68n7Y8Z4vYp9WOpmcqRJS1C62EsNgyZjOOnLEBe0SPcr6xHIt33 + Ibau3Dxa8A3gI3kx567iS72WD0c6DKRbvNHqgqFi/5GOU3D+RiEKK+qQnl0AGwd3blqo9Wn80ROmeiPj + ZrHiv36nHCO6v7L9zB6xwbjKEI+CMhOyC8rg0P2LorQeEapvtZ84C2cz8xG94xD7j2jrotnOSe+FwLBY + TJ65mM1/9adCvki+8p7nYPunBqvfgM/pcrxVz6sAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjYxRjlCRTY3NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 + MTg4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjYxRjlCRTY2NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 + MTg4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDRkI1RDVEMTRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5JUenqAAACPElEQVRIS7WT3UsUURjGhyCiixbaUC/awuyq7OOuq2y3smxT + +1LT1LL+h6ib/odAKFBiIyssHNJKy740EZGC+hO6qhshDBKSIt6e58w5NXM8M9MQPfCD877nfZ53Z3fH + E5H/irdh885/whUaxmnKgis0jNOUhVS5TFlIlcsUw2kwreFZ9VNlBhNQwS0dF2Rm7q2CZ/Z4p2PipUNc + BMHt52V69o0sf/8ZgT3ecYazOm6ldNiK4GaYX87My9K3H4lwhrP00Ktj/0iHGorltj6ZnJqTxa/LmaCH + Xmbo6EDWglL5VJ9MvJiVhcWlTNBD7/qN25oQuypIh6wFxaYTZ0Vx8pyMTb6WjwtfEuEMZ40vV1PXhtjV + QTpkLSgdxpA/PiUjj1/JoeO9YuoPnz5HYI93nOGsqXPVW7oQuyZIh6wFxcZjPaKAcXjsuQyPPovWgGf2 + eBeuSa66rh2xsQtKB1t75Lb/VIb8J3KgtVvsmvDMHu/sGl9RB2Ljn2B/8xlRtHRL5f6EVO6NR2vAM3u8 + C9ck9QlKGBq8+0gG7jyU4tEusWvCM3u8s+u0J/Dyhfre/Kb6eRqvD43KtVsPZF+5UwWxJjyzxztT5wvb + 3+MHvozIAohfAPEvVoNHvQjTuwYE9d/0pb/iS8ORTgXP7PGOweuqaq/AswfsoFdnBHIs4EuyFlSBrfhU + l7hoL4Kv3hhR8GwF7+as9tAb+6L9BnIu+utgI1d4GCiyCOzSJAcbuUJdQGZRXpMcbOQKy0KyPO8X3VzO + Z+EVt84AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJEMDQyOEZBNEFEMjExRTRBN0MxRDBCNzJGRUND + MDEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJEMDQyOEY5NEFEMjExRTRBN0MxRDBCNzJGRUND + MDEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkRDRkI1RDVEMTRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz59jfe3AAAEbUlEQVRIS8WTeUybZRzHF48/pnFOuQRajkFLgQFb5iRLNJr4 + l/EPgsniUI4xZDAY1zyxwApsMJyIME61rByl3DfoYGBrgbWUY06FcZSCha4rQ8jYxkqPr2/fvkv8o2Sg + S/wkT970eb6/T5/39z7Prv8dt/Oql4mR4HZJ3ccoXFxhVCzB9DT9JueJdSq6c1wzVZFupepVzxu34XVj + CaEDi1jX6hF8ZQoeokl4iBVwzV9YdU1XRlIl28eVo8phCdXwGltEeOUsro6psaHVwcSDh5volc4iOO8X + 7KuVwb1hEi7J8myq9PEQO//I85oafr0KtEpUpNSETm+AwWDAvfv3YTQaybnm/t/AyO6Ga+UonJOnIijF + 1hA9tWI2qle9RxcI+RIpmZpTIfBULhIyyqHVahHPKcN70TmYnFFCp9OhqXcc9KwW0DOHVl3YU1aUyjJu + F1SpfhO3EM6bMMsVt+D8Zhz2HIpC4oU6bG5uIu4cD3tfTwAjIBNypQYbGxsISquBU34PaDHiVEplGXee + SuIjVaBv3Lz7gJg8vHg4FlZvc+ATVoLipiHsD8qCXWAO7IPK8MG5FjLXKboOeoYADkldUkplGWb7vOb4 + 4BzxIXXQE/1m59WDXdgBvxPfwz6UC4eQUth/WIBDZ2qQXj+K7IYRImeE5s5fOFrcDPvPapcJzVNmmwVY + VxWG9U09uau1tTVymPpc0iYFLew7OEUJ4BwtALfvJpl5xMrKCu6s3cUrn5YbCM1us80CrJZZVWjXr7j3 + 4CE0y8v4IrcaH+cK4Bv+DRyPl8ApphYuia3wZ3eCUzOA1PIfcVuzjHnlIgK/vgy7mHzTG+w12yzA5E53 + edYPo1c2i/X1dQTEfwvbwDQ4hhXg8OcN4P48Df+UTrgkNIAeW4Hg3Hbo9Xq0iGSgs4ls5CUhoXnObLOA + S8pkhG/bdZzgDZJnffT3GXieLAA9XgB2/RjZjuQqMWhxfBw824H55XWyhcfy+HDNqoB1SH4Codn6G7iw + p3d78EaVPlXX0CaZgkqlgly1gpCiK0htHCH/IL6oFcEF3ZjT3CUvXqv0DzDSS0FPq1a/8EbYS5Rqa+if + SAJ8KoeNR7gitEsnoVQqSbGOkJmYX1ggxaY70SabwIGMUrjn8I3WIXnBRPnWu/8nDnE9Sd7cAaP/ZSES + 6/rRKJRArpiHXC7HzekZNIukiCyrhW9mGZgXa4w2kUVnibJnzdXbxP5URzyDO4QjxGl5i9uNpMZeKP5U + IrywAq9yCnGAOGGMonbYxpVnEPGdyR9BO/MTj8kfgXeNFPt5IngVtoF1kQ9WcTs8qgfgmNreQMS21xZL + 0E6Ln6ef75tg8sfgXT8O77oReAkkYNXJ4PRV/4ztyfo9VPTf4xjdf9CpQKzdxxuGe6UMbhXEmc8V6mze + r3qNivx3HGN7UmglQ6CVDMIxXwybo5UcaunJQD8te9rhyx4JrWwItlGNUut3y5+hlp4cDhFCpl14k9jq + nR+Y1NTjIe7NlmMnWKoHsOtvjWYcKpheqFQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1 + RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI4QTVDNDc0NEM2NzExRTQ5NTE5REU3N0RCMjJE + QjdBIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI4QTVDNDczNEM2NzExRTQ5NTE5REU3N0RCMjJE + QjdBIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzQ5NEZCOEM2MzRDRTQxMTg4NERE + MUVBOEQ4QTgyNTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz4VEc0+AAADBUlEQVRIS62Ve0iTURTAr1ZaBkoWOTWn+bYyNTENMh/5yCSd + cyMf03xsva0/jEqjF2JIRL4yiGnaNFYRCkYtR2OWMtOm5ivFxyTTqS0VN2UU1el+X2MYVMjnDvz44Nxz + z4/LPZcPfdc2MjCJ/4BYI2r+II59TA8A/BdiQ2JdoU/PkwJ35VJqb/v0LMyJOQghoxULHuW5Ti3OsGAp + NVedJ9taHlxksI6240ZyKugFNbku6rlPu6Ff5EAyNbwLyrPtp6QS/nUsAFxMCRxyUiA8T1eqhrZBm8AG + mu9bw5DcDe6etNUJeH/dvByIIAUPz9ooFXJ7GJDRoavRDjokdlCcbjVtMIHglH1vyRFrTWHqlm+l6faL + txI3TZdm2A0Qgtj4lQviiGlpaa661NstfvXlc6dIMfiYRzDQK0wvKatMGh75CFQgBbowYjGDTRSKYa+R + kSG/AP/t63DOBLN6YmLCDNf5UoXszslCIk6W8Xv8bcfIdYjwkjHGiCxaEvj4y38HRLCPr5/oG70M/aP5 + mAL4MHoFmDzUER6V4I3HdBY3ooRewOBazEnlbHghC8cEwcumwxCZhLpCw1l+K3wHs6QgKh3Ja6W+UP3c + HcprXYH/1BP2MlCPAQS/jxCWsqa/SLAVbvKdIb/MBa4VOYLfQdRnMEEgk6YOiNnwNTCO9sM/2mLGcz/q + 3xmOGg0miGFyQ5qaW4dfv3mr6OruaxgfH0/DaTOM6cLCghdZSTFIAQ4jrVYbgptFEKhUKjecW4UxzJia + OGfyLXdw35l7cCXIIbNCR2Fg8KG1sfFcJ9zIkQp6Ac07c7JSMgbV0jEQ6ED0ZGFEVKLvCu/AkRSYOqWJ + cyo6gVfYCieKW+HMHRkgW+Yzg10yoqfUc240QWxuAxzIrgdWTh0gWrTEYAJLj9TZYJ4QgjKqYF/qPdiT + VAbIKlJmMIG5M3two1v8T3PHaC3dO2HG2pOtRJvDJEGhDM+E5NN95y7kAxX0AhzG8/PzeXhEpzQaTY9Y + LHbBOfIdqNVqV1xH/MApAPJfzP33dTxioZgAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzMkNDMkY0NEFEMDExRTQ4MDc0ODRFNENDMkU3 + RDczIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzMkNDMkYzNEFEMDExRTQ4MDc0ODRFNENDMkU3 + RDczIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjdGOUQzNUFDRjRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz5/YJCyAAABkUlEQVRIS7WUvUoDQRSFtxErBVfShFUEG4mKYGUh+AS+QB7H + p9BWtLFLZ2EjkUDAHyISFFEUIkhAIigYDGE8J7MTbiYzJjvigY9d7r3n3NliJ1JK/SvR7Pzqn3CFSpym + LLhCJU5TFkbKZcrCSFmGIigDFQi9xTRaCwVJ+ax6qTpdFQS9zEijtawFqv3dtU81NsaL2AmdDqEwsODz + q2OGNsHGuFjeGGilwf0FrY+2GVoDybhY3jzQSoP7C5qtTzNEk90fwgjvA15dheQwm43me/AC6dVVSA6z + +fjyFrxAenUVksNs3j69Bi+QXl2F5DCb1/eN4AXSq6uQHGbzvP4cvEB6dRWSw2xWag+9oRCMF7HeBeXd + g5I6vbgLYu+wpOKkUEOsd0Exnlup4jl0OnJSrfdw9UicLF9N5RZ2EOv90Vjib74OelcFjceVGyfscUZA + D73eq4IlXlQc4CkSfPI+g1zM5JeOMLPIuRR66PVedk6gaVAAW2A7he+sseeXK9AGmgQ5YE5qYI09v1yB + WfhdUfQD3zQ4bV9fKQQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl + LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi + Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv + cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE + RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 + cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv + bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw + ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w + TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkM4QUEwRERENEFENDExRTRBQTE0RThCQzEyOEQy + OTc1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM4QUEwRERDNEFENDExRTRBQTE0RThCQzEyOEQy + OTc1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjI3NUQ0QkNENDRBRTQxMTk3NEFD + QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ + eHBhY2tldCBlbmQ9InIiPz7dyRkqAAAD9ElEQVRIS7WWe0xbZRiH95+T6DQxcc7NLfrHTBaR4NyFmDAy + ljFwwERGpmRxxmyY6QbqgogDhqluOpFLlm6AFslGRVlXKISVS7tByzgUOF1vtLUtLVBogQ4YsLoN9ec5 + 3+xXyIiJWdrkyfed9/u979PLSdsVz6wPfyQA/Cehf3DPQsiBECHkBVj4CyGBn00E9xb+DglU4L/35xIM + 7j78qCpAlVqAg6KNkOtqMTPnx9TcLOzjFty5u4CJWR9u++/AM+NBh7WRnM3/cX/JHCqY899fwu35u/BN + z2HM60NcURjB7hwmNX4/PjmNWzPzZL/v3FPIEK9DQskTNOudmML0rD8oiD0d9hAutxej4z6yZ3pZaA0D + ZO8c8dDM8d9egtSxGxetMTiri8Ih8XpS79cZ4fZOBgVu7y2YrINg9QOIPvU4QcPqyWp1DJM6vwbOUivW + QGSMgdi8E7mqSGQqIpAoXE3OmuRtuKHRwjU6HhQMe6dgG/LA4hhBVM5KJJatJmsPa8TNARup8xm+1tnd + R9bkc88hicsllnGrcC2p1Te1QKliYLQ6SZ4KhriLYe80oaa9Ghk/JEMkqYJS3Q0DF3a4J7D9s1V4s2QN + Nmc+hviTLyOvIgv55SeQe/4YUgu3QlRXjbbrN6A12TDoniSzqMDh9lEszjEoGQbF4u/wa+tlmOxu2Ecm + 0dglR86FjxEteBZx2Zsgab4KhaoH17lXJFO04nKLDCrus+L7A7OowOLyUsxODwy2EaTm78BrWU/io6KD + YE126KxDaFDKEZ4Rhg8E+1HbKAOjNZP6TYsL0mtNaFYrUCmrAGu2YWBwLCgw2Ecf4qeGakRmPo203D1Q + dPWjz8TdBGYX0guSIK5vgLyDQa/BDr3NTdAYrYg68iI2HliJiitV6DM6ggLWwt0p/8J9PeFMsRDnJSLE + H38DsXEJSEhKAaOzod88hMjXt+KTz/PQ2WtCLyfl8wE2RbyKkyWFqJLUQdqu4ASvPBBojE4KH9wVtxel + v5Tj5zopuU5MSQOjt6NG0swJtmHtCxtwrUePHsMDQaA3J/9rfJpTgDY1CwWjDwq6dHYK37BzdwJqZe3I + E3yP9ENHsG//u+TsvcNH8dXZMryVlo4ioYjmA73ZnCA7T4BO1gqV1hp8izr6f6fwDafOlKLgdAlidsXj + 29JKJHOCFrWOnAXga4F8gIjN21Df1k1nUYFSY6bwwUvSVjy/bgN2cILKmnokvf0O8r8pRvr7H5JMcwdL + zvkcn1/cvxgqaGVMFL6BX6Nj9+BLQREuXLyCvSkHEB65BcXll2ju8LETyPqikOaXgwqudhlCQkAQ8p/M + R2K5fxKLWbbp/7Dc0CBY8Q+pPmOq0VkzzQAAAABJRU5ErkJggg== + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -1193,40 +2106,6 @@ M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJERjY3MEZENEQyMzExRTRCNDlGQUMwMzk0OTAw - Qzc4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJERjY3MEZDNEQyMzExRTRCNDlGQUMwMzk0OTAw - Qzc4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NjhGOUEyRDEyMTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6GKmpFAAAC+UlEQVRIS63T20vTYRzH8Yforj/Ei24UiSgKIygKi8oyxZQo - cvNYeXaesmzqPGu2POd0ulSsnIdaurTSTJ3O6UxTPGya5vCQx5AuPn39RbHop7nZxQt+z3ie93e/Z4w1 - p7nsCoBt8R6yBF/UHPv+Wb0rfFFzm99CRIwEW1gnqXzxTXxRc0ydctm4OlID2sxrw6iCtiwItC+A2P/D - frLnjwGNSZdMq6N1WOvLwFpP4l/WdRlY6Jaio9Ab7QXba8sVoDHZGdT8PYS9THDqMGnLsKpNw0qXGCua - BO55VZdNQ6U/DRRibVCGb+N1pH5bukoRqHmDHOIG1N8/X2F4I8WyNhtf2+9hqSsZxqZ4upbb6HsSZLHO - Im90ym6hNVcIaktYTexZyUelGEvaHMy/jcFiZxo0xX5Y7ivGcn8JkVmA9uvlWBmqwpJeAWovs+poR99O - eRgWtQWYVUdgrj0FH+i+F3XF3NoappZYGJrEoLaOVYpOOTY/FGJB+xjTqnDMtMTTAC/Ma/Ix/TLUKl9e - x0JfFQpql7PykBP7lWIXzPeUYLIhHCPKCLr/AMy2ZsKoDLTKdNNdvM8TgNpRTBZwfJ885CTmaIChPhwa - mS+GnkdhqjEWY9X+VplqvIMXEhdQ24mZeuSs0N/BNNWWj4k6EdSZHhhXxWH0aSCGFd4c4Tk7zk7XBlUM - FKLToK4Nm+0qYnneRzqGGiSYaIiiyZdhVCdgqFSIwRJPjucZW85O1pvnRmvDkO9zFNTdy2Y6HjGp4HCF - 5kk4xhoiURd/EROv4tBfeM0qAyUC9Mp9QM0+7o829T6LZV0/mNycS6+nFKFWfAGj9ZHozfGwil7miZYH - 7qCmghsw+S6VpV894KuUuKFbfhNNqa749CwY3dm0toK+VABl3HlQM5obYHybwFLc7W1y/Y5BlX6FfgNn - DNcEY0DhZZX+MiGKbh0DNR24AYYWMSfJzc6GZBApwS5skIzNODcg0dV2V36FtsJ7yBJ8UXO8hyzBFzXH - ++H/A/YDv9/V87iOlrYAAAAASUVORK5CYII= - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -1363,7 +2242,7 @@ OkHDH7XWtYa2It66Y4eCQ8cRfpvUNa2hTUD8A6JMaBvCyTdJAAAAAElFTkSuQmCC - + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl @@ -1375,163 +2254,26 @@ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjYxRjlCRTY3NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 - MTg4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjYxRjlCRTY2NEFEMjExRTQ4MTU2QUUzNEE5ODQ3 - MTg4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDRkI1RDVEMTRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC + MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJERjY3MEZENEQyMzExRTRCNDlGQUMwMzk0OTAw + Qzc4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJERjY3MEZDNEQyMzExRTRCNDlGQUMwMzk0OTAw + Qzc4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N + OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NjhGOUEyRDEyMTRERTQxMUIzNkJE + NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5JUenqAAACPElEQVRIS7WT3UsUURjGhyCiixbaUC/awuyq7OOuq2y3smxT - +1LT1LL+h6ib/odAKFBiIyssHNJKy740EZGC+hO6qhshDBKSIt6e58w5NXM8M9MQPfCD877nfZ53Z3fH - E5H/irdh885/whUaxmnKgis0jNOUhVS5TFlIlcsUw2kwreFZ9VNlBhNQwS0dF2Rm7q2CZ/Z4p2PipUNc - BMHt52V69o0sf/8ZgT3ecYazOm6ldNiK4GaYX87My9K3H4lwhrP00Ktj/0iHGorltj6ZnJqTxa/LmaCH - Xmbo6EDWglL5VJ9MvJiVhcWlTNBD7/qN25oQuypIh6wFxaYTZ0Vx8pyMTb6WjwtfEuEMZ40vV1PXhtjV - QTpkLSgdxpA/PiUjj1/JoeO9YuoPnz5HYI93nOGsqXPVW7oQuyZIh6wFxcZjPaKAcXjsuQyPPovWgGf2 - eBeuSa66rh2xsQtKB1t75Lb/VIb8J3KgtVvsmvDMHu/sGl9RB2Ljn2B/8xlRtHRL5f6EVO6NR2vAM3u8 - C9ck9QlKGBq8+0gG7jyU4tEusWvCM3u8s+u0J/Dyhfre/Kb6eRqvD43KtVsPZF+5UwWxJjyzxztT5wvb - 3+MHvozIAohfAPEvVoNHvQjTuwYE9d/0pb/iS8ORTgXP7PGOweuqaq/AswfsoFdnBHIs4EuyFlSBrfhU - l7hoL4Kv3hhR8GwF7+as9tAb+6L9BnIu+utgI1d4GCiyCOzSJAcbuUJdQGZRXpMcbOQKy0KyPO8X3VzO - Z+EVt84AAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJEMDQyOEZBNEFEMjExRTRBN0MxRDBCNzJGRUND - MDEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJEMDQyOEY5NEFEMjExRTRBN0MxRDBCNzJGRUND - MDEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QkRDRkI1RDVEMTRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz59jfe3AAAEbUlEQVRIS8WTeUybZRzHF48/pnFOuQRajkFLgQFb5iRLNJr4 - l/EPgsniUI4xZDAY1zyxwApsMJyIME61rByl3DfoYGBrgbWUY06FcZSCha4rQ8jYxkqPr2/fvkv8o2Sg - S/wkT970eb6/T5/39z7Prv8dt/Oql4mR4HZJ3ccoXFxhVCzB9DT9JueJdSq6c1wzVZFupepVzxu34XVj - CaEDi1jX6hF8ZQoeokl4iBVwzV9YdU1XRlIl28eVo8phCdXwGltEeOUsro6psaHVwcSDh5volc4iOO8X - 7KuVwb1hEi7J8myq9PEQO//I85oafr0KtEpUpNSETm+AwWDAvfv3YTQaybnm/t/AyO6Ga+UonJOnIijF - 1hA9tWI2qle9RxcI+RIpmZpTIfBULhIyyqHVahHPKcN70TmYnFFCp9OhqXcc9KwW0DOHVl3YU1aUyjJu - F1SpfhO3EM6bMMsVt+D8Zhz2HIpC4oU6bG5uIu4cD3tfTwAjIBNypQYbGxsISquBU34PaDHiVEplGXee - SuIjVaBv3Lz7gJg8vHg4FlZvc+ATVoLipiHsD8qCXWAO7IPK8MG5FjLXKboOeoYADkldUkplGWb7vOb4 - 4BzxIXXQE/1m59WDXdgBvxPfwz6UC4eQUth/WIBDZ2qQXj+K7IYRImeE5s5fOFrcDPvPapcJzVNmmwVY - VxWG9U09uau1tTVymPpc0iYFLew7OEUJ4BwtALfvJpl5xMrKCu6s3cUrn5YbCM1us80CrJZZVWjXr7j3 - 4CE0y8v4IrcaH+cK4Bv+DRyPl8ApphYuia3wZ3eCUzOA1PIfcVuzjHnlIgK/vgy7mHzTG+w12yzA5E53 - edYPo1c2i/X1dQTEfwvbwDQ4hhXg8OcN4P48Df+UTrgkNIAeW4Hg3Hbo9Xq0iGSgs4ls5CUhoXnObLOA - S8pkhG/bdZzgDZJnffT3GXieLAA9XgB2/RjZjuQqMWhxfBw824H55XWyhcfy+HDNqoB1SH4Codn6G7iw - p3d78EaVPlXX0CaZgkqlgly1gpCiK0htHCH/IL6oFcEF3ZjT3CUvXqv0DzDSS0FPq1a/8EbYS5Rqa+if - SAJ8KoeNR7gitEsnoVQqSbGOkJmYX1ggxaY70SabwIGMUrjn8I3WIXnBRPnWu/8nDnE9Sd7cAaP/ZSES - 6/rRKJRArpiHXC7HzekZNIukiCyrhW9mGZgXa4w2kUVnibJnzdXbxP5URzyDO4QjxGl5i9uNpMZeKP5U - IrywAq9yCnGAOGGMonbYxpVnEPGdyR9BO/MTj8kfgXeNFPt5IngVtoF1kQ9WcTs8qgfgmNreQMS21xZL - 0E6Ln6ef75tg8sfgXT8O77oReAkkYNXJ4PRV/4ztyfo9VPTf4xjdf9CpQKzdxxuGe6UMbhXEmc8V6mze - r3qNivx3HGN7UmglQ6CVDMIxXwybo5UcaunJQD8te9rhyx4JrWwItlGNUut3y5+hlp4cDhFCpl14k9jq - nR+Y1NTjIe7NlmMnWKoHsOtvjWYcKpheqFQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1 - RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI4QTVDNDc0NEM2NzExRTQ5NTE5REU3N0RCMjJE - QjdBIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI4QTVDNDczNEM2NzExRTQ5NTE5REU3N0RCMjJE - QjdBIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzQ5NEZCOEM2MzRDRTQxMTg4NERE - MUVBOEQ4QTgyNTUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz4VEc0+AAADBUlEQVRIS62Ve0iTURTAr1ZaBkoWOTWn+bYyNTENMh/5yCSd - cyMf03xsva0/jEqjF2JIRL4yiGnaNFYRCkYtR2OWMtOm5ivFxyTTqS0VN2UU1el+X2MYVMjnDvz44Nxz - z4/LPZcPfdc2MjCJ/4BYI2r+II59TA8A/BdiQ2JdoU/PkwJ35VJqb/v0LMyJOQghoxULHuW5Ti3OsGAp - NVedJ9taHlxksI6240ZyKugFNbku6rlPu6Ff5EAyNbwLyrPtp6QS/nUsAFxMCRxyUiA8T1eqhrZBm8AG - mu9bw5DcDe6etNUJeH/dvByIIAUPz9ooFXJ7GJDRoavRDjokdlCcbjVtMIHglH1vyRFrTWHqlm+l6faL - txI3TZdm2A0Qgtj4lQviiGlpaa661NstfvXlc6dIMfiYRzDQK0wvKatMGh75CFQgBbowYjGDTRSKYa+R - kSG/AP/t63DOBLN6YmLCDNf5UoXszslCIk6W8Xv8bcfIdYjwkjHGiCxaEvj4y38HRLCPr5/oG70M/aP5 - mAL4MHoFmDzUER6V4I3HdBY3ooRewOBazEnlbHghC8cEwcumwxCZhLpCw1l+K3wHs6QgKh3Ja6W+UP3c - HcprXYH/1BP2MlCPAQS/jxCWsqa/SLAVbvKdIb/MBa4VOYLfQdRnMEEgk6YOiNnwNTCO9sM/2mLGcz/q - 3xmOGg0miGFyQ5qaW4dfv3mr6OruaxgfH0/DaTOM6cLCghdZSTFIAQ4jrVYbgptFEKhUKjecW4UxzJia - OGfyLXdw35l7cCXIIbNCR2Fg8KG1sfFcJ9zIkQp6Ac07c7JSMgbV0jEQ6ED0ZGFEVKLvCu/AkRSYOqWJ - cyo6gVfYCieKW+HMHRkgW+Yzg10yoqfUc240QWxuAxzIrgdWTh0gWrTEYAJLj9TZYJ4QgjKqYF/qPdiT - VAbIKlJmMIG5M3two1v8T3PHaC3dO2HG2pOtRJvDJEGhDM+E5NN95y7kAxX0AhzG8/PzeXhEpzQaTY9Y - LHbBOfIdqNVqV1xH/MApAPJfzP33dTxioZgAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzMkNDMkY0NEFEMDExRTQ4MDc0ODRFNENDMkU3 - RDczIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzMkNDMkYzNEFEMDExRTQ4MDc0ODRFNENDMkU3 - RDczIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjdGOUQzNUFDRjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5/YJCyAAABkUlEQVRIS7WUvUoDQRSFtxErBVfShFUEG4mKYGUh+AS+QB7H - p9BWtLFLZ2EjkUDAHyISFFEUIkhAIigYDGE8J7MTbiYzJjvigY9d7r3n3NliJ1JK/SvR7Pzqn3CFSpym - LLhCJU5TFkbKZcrCSFmGIigDFQi9xTRaCwVJ+ax6qTpdFQS9zEijtawFqv3dtU81NsaL2AmdDqEwsODz - q2OGNsHGuFjeGGilwf0FrY+2GVoDybhY3jzQSoP7C5qtTzNEk90fwgjvA15dheQwm43me/AC6dVVSA6z - +fjyFrxAenUVksNs3j69Bi+QXl2F5DCb1/eN4AXSq6uQHGbzvP4cvEB6dRWSw2xWag+9oRCMF7HeBeXd - g5I6vbgLYu+wpOKkUEOsd0Exnlup4jl0OnJSrfdw9UicLF9N5RZ2EOv90Vjib74OelcFjceVGyfscUZA - D73eq4IlXlQc4CkSfPI+g1zM5JeOMLPIuRR66PVedk6gaVAAW2A7he+sseeXK9AGmgQ5YE5qYI09v1yB - WfhdUfQD3zQ4bV9fKQQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkM4QUEwRERENEFENDExRTRBQTE0RThCQzEyOEQy - OTc1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM4QUEwRERDNEFENDExRTRBQTE0RThCQzEyOEQy - OTc1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjI3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7dyRkqAAAD9ElEQVRIS7WWe0xbZRiH95+T6DQxcc7NLfrHTBaR4NyFmDAy - ljFwwERGpmRxxmyY6QbqgogDhqluOpFLlm6AFslGRVlXKISVS7tByzgUOF1vtLUtLVBogQ4YsLoN9ec5 - 3+xXyIiJWdrkyfed9/u979PLSdsVz6wPfyQA/Cehf3DPQsiBECHkBVj4CyGBn00E9xb+DglU4L/35xIM - 7j78qCpAlVqAg6KNkOtqMTPnx9TcLOzjFty5u4CJWR9u++/AM+NBh7WRnM3/cX/JHCqY899fwu35u/BN - z2HM60NcURjB7hwmNX4/PjmNWzPzZL/v3FPIEK9DQskTNOudmML0rD8oiD0d9hAutxej4z6yZ3pZaA0D - ZO8c8dDM8d9egtSxGxetMTiri8Ih8XpS79cZ4fZOBgVu7y2YrINg9QOIPvU4QcPqyWp1DJM6vwbOUivW - QGSMgdi8E7mqSGQqIpAoXE3OmuRtuKHRwjU6HhQMe6dgG/LA4hhBVM5KJJatJmsPa8TNARup8xm+1tnd - R9bkc88hicsllnGrcC2p1Te1QKliYLQ6SZ4KhriLYe80oaa9Ghk/JEMkqYJS3Q0DF3a4J7D9s1V4s2QN - Nmc+hviTLyOvIgv55SeQe/4YUgu3QlRXjbbrN6A12TDoniSzqMDh9lEszjEoGQbF4u/wa+tlmOxu2Ecm - 0dglR86FjxEteBZx2Zsgab4KhaoH17lXJFO04nKLDCrus+L7A7OowOLyUsxODwy2EaTm78BrWU/io6KD - YE126KxDaFDKEZ4Rhg8E+1HbKAOjNZP6TYsL0mtNaFYrUCmrAGu2YWBwLCgw2Ecf4qeGakRmPo203D1Q - dPWjz8TdBGYX0guSIK5vgLyDQa/BDr3NTdAYrYg68iI2HliJiitV6DM6ggLWwt0p/8J9PeFMsRDnJSLE - H38DsXEJSEhKAaOzod88hMjXt+KTz/PQ2WtCLyfl8wE2RbyKkyWFqJLUQdqu4ASvPBBojE4KH9wVtxel - v5Tj5zopuU5MSQOjt6NG0swJtmHtCxtwrUePHsMDQaA3J/9rfJpTgDY1CwWjDwq6dHYK37BzdwJqZe3I - E3yP9ENHsG//u+TsvcNH8dXZMryVlo4ioYjmA73ZnCA7T4BO1gqV1hp8izr6f6fwDafOlKLgdAlidsXj - 29JKJHOCFrWOnAXga4F8gIjN21Df1k1nUYFSY6bwwUvSVjy/bgN2cILKmnokvf0O8r8pRvr7H5JMcwdL - zvkcn1/cvxgqaGVMFL6BX6Nj9+BLQREuXLyCvSkHEB65BcXll2ju8LETyPqikOaXgwqudhlCQkAQ8p/M - R2K5fxKLWbbp/7Dc0CBY8Q+pPmOq0VkzzQAAAABJRU5ErkJggg== + eHBhY2tldCBlbmQ9InIiPz6GKmpFAAAC+UlEQVRIS63T20vTYRzH8Yforj/Ei24UiSgKIygKi8oyxZQo + cvNYeXaesmzqPGu2POd0ulSsnIdaurTSTJ3O6UxTPGya5vCQx5AuPn39RbHop7nZxQt+z3ie93e/Z4w1 + p7nsCoBt8R6yBF/UHPv+Wb0rfFFzm99CRIwEW1gnqXzxTXxRc0ydctm4OlID2sxrw6iCtiwItC+A2P/D + frLnjwGNSZdMq6N1WOvLwFpP4l/WdRlY6Jaio9Ab7QXba8sVoDHZGdT8PYS9THDqMGnLsKpNw0qXGCua + BO55VZdNQ6U/DRRibVCGb+N1pH5bukoRqHmDHOIG1N8/X2F4I8WyNhtf2+9hqSsZxqZ4upbb6HsSZLHO + Im90ym6hNVcIaktYTexZyUelGEvaHMy/jcFiZxo0xX5Y7ivGcn8JkVmA9uvlWBmqwpJeAWovs+poR99O + eRgWtQWYVUdgrj0FH+i+F3XF3NoappZYGJrEoLaOVYpOOTY/FGJB+xjTqnDMtMTTAC/Ma/Ix/TLUKl9e + x0JfFQpql7PykBP7lWIXzPeUYLIhHCPKCLr/AMy2ZsKoDLTKdNNdvM8TgNpRTBZwfJ885CTmaIChPhwa + mS+GnkdhqjEWY9X+VplqvIMXEhdQ24mZeuSs0N/BNNWWj4k6EdSZHhhXxWH0aSCGFd4c4Tk7zk7XBlUM + FKLToK4Nm+0qYnneRzqGGiSYaIiiyZdhVCdgqFSIwRJPjucZW85O1pvnRmvDkO9zFNTdy2Y6HjGp4HCF + 5kk4xhoiURd/EROv4tBfeM0qAyUC9Mp9QM0+7o829T6LZV0/mNycS6+nFKFWfAGj9ZHozfGwil7miZYH + 7qCmghsw+S6VpV894KuUuKFbfhNNqa749CwY3dm0toK+VABl3HlQM5obYHybwFLc7W1y/Y5BlX6FfgNn + DNcEY0DhZZX+MiGKbh0DNR24AYYWMSfJzc6GZBApwS5skIzNODcg0dV2V36FtsJ7yBJ8UXO8hyzBFzXH + ++H/A/YDv9/V87iOlrYAAAAASUVORK5CYII= @@ -2271,757 +3013,12 @@ AElFTkSuQmCC - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZCNzIxMDY4NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 - QTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZCNzIxMDY3NEFENTExRTQ5NjNCQjQ0Mzg1Q0E2 - QTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjQ3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6N9zpwAAAB70lEQVRIS7WTTShEURTHZyIfk0zRlPKxs7SwsZWFvSQbC0lW - CsNuMMjK9+4tWKAksbCxsWIjipIis3gWhpSPhZTkq+Oc+8697ntz53mFf/3mzDvn3P9/5r2ZEAD8K8bm - X2Js/iXOi4+2qqIWAsgpV4tHvgocsFlZDA8byyDq+pKoPPJV4IC18iK4XV0AUVfmReWRr1wBi2URC4Fs - 3MzPcZ3NmHlQt88VYMUKID0zBunpUUhPJh3oWvamRkDsTCQh1deJPeoj2Kee3KUd9ncHTJfkgT3YC/ZQ - H9jJ/m8SPWAPx8V7sYP1pL3Z6cldek9nEdphf3fAeDTXQiAbB02Nop7FuzJmOoni3GX2/5ZI8VGiKAd2 - G+qA6nFHq6g8CqafAgYiYQuBeCScotpdGBafsrSqxkJAw/z/+Ckgm8j0/RMUdM0jt34T8PL2oeCAfGeq - iQKy4ScyfHp+VXBAzJlqMhlLdKGB957D/eOzwjtDnGdiMpbookPXd4+BoX1x0GQs0UUH7Kv7wHBAvtFY - oosOnF7cBIYDYkZjiS48kPEMjs4vFd5ZtKx6G49VGI0lBtGvpB5pIZO9E1tB19hvoxlDe8G/AYt+5xRS - QYY7hykFB9TSjKG94M/AKzLc3j9TcAAZu2UylvgJDV3PRN1zl0KhL06k1hGgG+rkAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCREI4OERDNEFENjExRTRBMDIyRjhCMTI2OTg1 - QzRCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCREI4OERCNEFENjExRTRBMDIyRjhCMTI2OTg1 - QzRCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RjY3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5EAI7UAAAEwElEQVRIS6WVf0yUdRzHv/f7nueeu+cO4UQEIdnNarXUyLUa - IqdOJggklBBuYoDGLw8UFJWTmBYYDEFQiARJgakJOAQHVF5UgIgobYkFRDFdNPgjx3LFr/v2+VzHI9gP - 2fhsr32ez4/n/eX78Pnel/QUOSyIp1p3gcNCkXflOxy6le8wCM8T8Hznq+O6CJCWAiJy84RuIbCdebqW - weYX6J1SZ3ojTzcCOWvfFQP9MlubCwvISUeubt60fagLb8/RdX6SrHGpTtVw8Px5f+Pz1JKlbYz3Z9aA - oGv6NpU37KDv3uXltO4wH0W+Pq6dF61Z2h3gp1qztQ/MYewKiC0/1D9HmzL5CoVM5AriekADsEXvcmu6 - ivX0+gfau8TyPv9UvjjKvwN+6vox/n5GOGtszuTbemtX0Aazptwu7ggwgBgQARLo/Q2YJC2Z/P/SlMFH - gZ9ufo8fyghjjQ1mvqOn2oPWpM0RV9qFbdZo5g3wjvXaEX4QAs1/cjVdEwPe2pCu+flgCGOsO6jp7D7n - Ti+kqM/IpUQQr9qr1kOf5G9xjRx2Zrld7UnLE7lMciVN/a/UHVDvBm8F/1NqMGO8lKK+eeOMG61M4krt - 4otQvPaAOgD6/oS6OdJXoapLU9d0nVtOL+zjruo4kTu5lML9g4v7uHjwVvCDyVuUxqokruubYldaFq86 - DaJLZ8RBJBj6xi+mcKOZYYyxOpmrby/3oOdNXJ2eF7tDjyOpMnFzqNzDJYK3gh9I3Kz0rUjgui0FS2nx - LtWp2eLn93BboW+80sSNpAYxfuVxqqbWIjdaFqeq1alEy6DHCWDI2TiVQHmsygTeWhar6o9cp3jt492q - 7pbcJfTkTrZwlrgC6qEB3u7Ti5a9SGcI8zfQ4hi2RjtbHKeqdBdr46MY1gTeWhLN9gV5yVblbGeyPst1 - ofmRzFloFMRLYtg3oW8CRSenqQDGWtYmPntkCSnaySArgcnCSGY42EvmBWnngh1Ma1mChga+LHsFYvyL - lCcjmbfsfb+i4B8TUwIYQ48L8Fgc7cR2JcmLUFZ+mq6n+wMUMZBaAqhzwpXF9UedqTlYkbHaQ7I4921l - IvROQe9w1Dr5RhQcezQuYF8Ap+uxONrxMCUymr1NOcLIbVvUAdK4DXI95IYuH9ZTqFtD/QzC955h9OEj - gSdrAE4cIcdCFMhk5huKHghxiyyAp1Ic7SMzmAMV1VDrxZcejDycN9gPGoRkBMnJkUB5LzDmqRc/Aykl - 5hAwPJ0qwBFfGLg/Om/sCyjIIX8Z2e8nS6mId6BJG2UlkOQAEebtJo54VWpb4Lsff5k39gWcUJwYn5Uw - KZtk7fBsNa2XFUKMd6EIYhHkN4HvDzR6znxbgVv3hgSerPHOhmbQcCV7N+DNRkQhqyUuJqO0owx2Arnf - k9dLb4Mfzo/mMbbGrpWeEovIS9C7BQhHkbZvBwQwhjxelaF2fAAnYvKV2gATG/QiPvp1aVqCj7QXcpPA - WNxa6bWQlZKtUMfDhiOMo+iGgpau7wXsC6yy1xE8OwqS4CMRAMMZxt92HNXFAE4VimIz3lb4n7f97qNg - c8ddAfsCKDzXYr0lcwBDAdySAsBTiQuiMBaFSwUET6PoDMI3n2OE/AXV7wtcYQSjewAAAABJRU5ErkJg - gg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjk0MDA4MTVGNEFENjExRTRCNjgzRThBMjlFMzdD - NDk4IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjk0MDA4MTVFNEFENjExRTRCNjgzRThBMjlFMzdD - NDk4IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Rjk3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7U3Gz1AAADLUlEQVRIS7WTa0gUURzFV4mKMqVC0XytgabkmiauZOKDwlQk - wswiycAPGoVSFmRFJC0tQX5Ii4VAc9V87KqhGdima33wQSZWoilqaa1u66qwGSKleZo7OzOM4/gI6sDv - Mvfe//8cZu5cCYD/ivgiT889HFQUYFAxy5zE+vnQw8Lc6xWpc7fHVE0ZprRqkGexGoLQmIUexBpYNK7b - YC57BHNlIcizWA1BaMxCD2INLGWudvj2+AFGFDkoddn67wJayo9W1OT5j2py96A+Lxh1dwOhveULar1S - rF5ozEIPwuLmkriapqKQyZmJ04tzllNgoebQq0OnmtWxNcIeoTELPfAL9er4quaikKnZ6ROUYRLaNRFo - vB+MztpDmDGfBFnXF4dONxfHafh9QmMWeuAXahXeXy3jx/FjIhHlV71QnhmEzpyz0Ocepuffxw/A/Dke - WoWPgfpLbf82wLbq5m7jjCkBfU1RaMwNR3tqErpSE9ESLYfuRjjeP5PDNLwfpC72SOgm621YRcKAyhxP - o8UQg6aCvSg8E4CLW2yQzVCaHoCOUjmM/f4gdZERgZsZm5W1LOCym3F6JAJ9tb7QKaNg0qitF626DE3K - aAzpwmHokSEh0md2p4cMPJbdclqCAInminRwVCdfNPZIUZHhguoML7TlJ0N3OwJ1l6SYGJDjXaXvIjGd - /w0OMmcsl0oYoM+PKa664GIabtgFQ7cnPhbI8OaODP0PA2Hs3YeBlzJUnHc2EcO5XwscTMDyMxEGEBqV - B7VPMpwMrVnO84MNfhh64YeBel+0XvcBtT7WoAh7SgxnZn9yMAGOVleexAIILflx9zRZ0u6SlB3QpLvj - WJgP+605Ji2zHMI9CuuZrBRAoGSj3L4Rvdnn6KYxs2XdkPr1BEhy7TegNzONbhg2TK4bJmDTmgHX7GzR - nZZMN/R+Mq4bJsCRDhDCF3XBVOSShTm50k18uvq/cAj3HJy9dVS725oBApG/JJIiiZi0fRjmIHNqPYXs - MZC6td9AIPKfkxA3Yvjq7QAHExBE9hhInfUMVmI1EUNdRx8HE0CMl0rMmGU1UYYqYsrCffMlkkj+AEZF - 7H7+T6nEAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkUzNzJDMjE3NEFENjExRTRCNjE0OEVEQzI4MEM0 - RTZDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkUzNzJDMjE2NEFENjExRTRCNjE0OEVEQzI4MEM0 - RTZDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI3NUQ0QkNENDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6PyaLfAAADMElEQVRIS6VUXUiTYRT+vi3Tzd+ps23+3KRigtiPkolEQReG - UYTkhWatpWlWGkRdddfdSPImqUAJjSIT00oxLJIk0cR+tFSyzDJtgaMkDEPkdM7ZPvm2vS6jBx6es3Pe - 8zzvtm+TohLS/ov+AACStLgEQuJyLRJWYK1yzh/+FgCoQrpnfM4fOGBhcUlIMkEVkma4H4i1y2kFcMD8 - wqKQZILKZqTqmlTAWrfvMjhgbv63Dwm0hLWQohn1eNEbzrlfPiTQAtZCKjP1GXdAIC+r4XD+9CGBFrDm - RVJ1re6pZ0GyHHMvIawauYVNCFPfvvuQQAtYC6meKXU0amNsaGN/ZR60xIf9aIgN3cpGE9OzZCZ85nEm - pGiWlLABmuJCnUOXrNB7chdct4TUo32ANDbp4NuielDpqWfePdaPX6GrohSK4uLhlCEo96YlZLbOFHzH - oJXjMSBcGn4/zQGovEDqXXtzeTb+BTrKj0J3+Q54djYP7EZdTU2MPjFSK8eieQR9QtLg6GcOQPWgqKeQ - ZyOfoK30CDw+lg2Ot3Z4VLoNqo269mCNHIa2WjYn9A1PcAAqU6m9VV3TF9psOwwPS3JgZugCdNoyocwU - jU+RlImWBpezGz0vxzkA1YOiHvPFO7Ca1kGHLQtmXp2HdutmqN+/F6JiU+h3kOpyVeHJwBgHoLIpqajm - 189HoaG4CNqsGTA1UAWth9Lg6r490PygGyLjUikgzuWqQlffCAegelDdUwLqigqhpXgjTPYeh+bCFCg2 - RkEk3vxuVz/P0c43oLP3DQegLhspNalSFxiNcLswHT48LYNbBUlQk7ebzenmyhm08w1o7xmiAP6hRZiT - 70eYkzpctUuJWdHmwWs74+F1Uz7cyE+E4ohQB5mHm9a3GywpTXzektyKduIAIsKI3ISkL4rIdYle05C9 - VrZVBmvtl7eboUyv7V4jSQdwRn8FdI72iErtCUxnIuifkJ5hUqUOq9Jr7OeCNU6bTpNVqtMcDJSldOwn - KnOk+jypJ5QANRWc0cs5SEelXr54QidfwVYAMoiHq4W/gNM6OaNCJ+diaUIqN/43+Atwg27t+9ZXBUn6 - A2MdqQeVc5pWAAAAAElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN - yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc - c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg - 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 - cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 - ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw - O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD - nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz - 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn - k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I - 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df - WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs - T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda - SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjU3QTU3RDNFNEFBOTExRTRBQ0FFQkQxRTZFOTNF - OTIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjU3QTU3RDNENEFBOTExRTRBQ0FFQkQxRTZFOTNF - OTIzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUI3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz70M76IAAAENElEQVRIS52SDUxVZRjHD/SBcFOZSgoqKWQQBhjyofdaQQp3 - E+d0Ko4xW8221kLKRC4QRUCJERKklAXEx4UNYYDJh7guAy4IXTTSGyhfFxQklitNZzmD+ve87+WcLnBc - jHf77T3v857n9z/nvEcAMCfG/zYjt2eJbHE2yAUsdvbcSzSxWaxJN84GanyUOMBmsWYhj/d9IRT6tgvw - DAgGrQ/xgAfj/8waJj+ccARPrvZmgkBWk+QvhuLayBiohl7TdTFkt3D/rwnpKf4PamhppicsO10nhgQR - 7zH54PAoyCWha25j+w3CvfvjsjI5WEBj6wVQD05VmUPYZxm4NsprIj0D1+G9UW1+gzt/PJCVycECGvQG - UA+nqlaH3sERac3o7huC14YQJo9hPcKtu3/KysRR47xwP3GRuFPpbD9R4+aIxhAlruZ9DeqdgvHqAMn5 - t+dy7rl5+94MOd+gcXrlgmPVnqtw6bOjMGnzMKTNgakoB5cyP0GNtws64qNB/ZzOrj7xYA9P8fz8690p - YpHy5fPfqiL5YOFXMGaloWbzBlSsWYaaQH8YM9MwlH8SVV4u+OF4FsiBkoo6LHP1YQFqS48w/MvtKWKR - YkdFV0dqMrqz0qF1VPyevdQuedVK947yg2+j1G05DImxMHyciErVOpCDU1RWLYaEih5hcPS3GXJG3lK7 - CVNmKip3bkWWg20m+2TU2FJZ1wRdvAYlgQEwxkXhG8cnQA6JorJaOJpDbJhH6Bu+yRrnEzGESeSEwzz0 - pb6PXC9X+DmtHpusR7v5BGLHcz4oUK7D5cjXkE33sb/GkhXP+LEABQ+4MjjGAmIOaFKga+2UyHBQ4MeE - Q/hiow/yI8J5TRW8izX6Ji9WFGq3q2F45w2kL7IZp5rLNLicBxj7b/A3WPKUFz7KoAPtv8HJ3aaGdvd2 - nN21FUeW2KJ4/6uIWB+A6EWKiqNO9mg/+Cbyt4Xgw4WP6fgvR0OUWiJ09gzzCwrxYiFJn34JqqEutwCJ - 9o/jZJAS1XQOn7+kRNrzHjgeqETD6/tQHhGGD2g/UvFI+KR/hpwhdHQNSQsKiV3rH4zWzl5QHcWaOCQ9 - 7YwEd1eU7t2Bij07+Zyu8keMwnok0s46hbxWZv1DAtoum/gFk3v4bcG3uu9BNYn6qnpkv7IPcSscELXA - BlF21rciba0KI+ZZqSa90pguZwj6zn4mj2PyinPtoLXEd+1dU9ab1GHskDdN+mYM2QBqCGfy8vrzaLzY - I1Fe34q1/lugScmUair1njkF6E8UVEJnuCJRWqsHC6W9WHbw0UkZvK4KMQfIiR4GfwO39UEoPtOEc+3d - KDnTDHffzVzObqDZg4W8m3gMyrkEnD3/E5PEuPkEISPnFMlfZhINq4vQ+lkW4rTGl+0pLPfkpJYItS1G - DjWGEY1sFmuWUN2KyafX5aT/AeFfWm9WHAbkArwAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdFNUQ0ODMzNEQyQTExRTRBNUQ4RTJGMDI1MThC - RTdCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdFNUQ0ODMyNEQyQTExRTRBNUQ4RTJGMDI1MThC - RTdCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzJGNkEzOUYyOTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz41vT1rAAAEBklEQVRIS7WUbUxTZxTHS2/fb6G1VWjrwltfgGGRdgaxbkLV - FawgoKJuyMDotjCrw4ERHC/CQBjWDRQLSHnfmBnBmkBi/LCY+GEO/TBGtiwxYW775odly5aYLC7573ku - LbasJWGJJ/nl5J7n3N957nNvywPwQnnxEW7qaqjjzSSFXwtH2GIkqNx5hQXNZG+CcD0rCVsMJrBjmh1u - Gc7eMnA5MCSwHomwxQD0Znu7lJPR7LqRBN+iA+XjG0PqgWHhHP8pBKA3vdooxZvD8Vw+PpqAke9zUXNX - j/P3LDg4oOXqZf71SENCLgLQ5qxaCYqvbcSF+9loq0/ClF0Dn0kJn1HB5UnbBrTXJaHlm21wXIrl+v1D - hMGuEDGFNmWeFCPPrcX7d7eg7YgaM+ZEzH/aicWJITyeGMTi+CDmuz/G7OZkbv3wZBrsF+Ow5czSB5B+ - TFSqSmUkZFhUiJjbeb0KBUN6VN6xwHVCBR+R/zQ2gIWeLszuysa0UYPZ3CwsdHfh8Ug/fBnJcB1fh73D - JuQPGJHfr+c8lESn0LIsNrwh/H3rBQ3239yEoi9TYfmERY+ZxYOOVvzQ44Y3kcXbpSy2d8jxTrkc3iQW - c811mGtv5vqs3Sws7hjsuJyEHW4DXqmL47y8hGLBaUutGrv7DCgcT4PzuomjYMQEr1aGxe4O3CxxovZA - LIo+S1nmXJkGn+duxUL9aXg1MhSOkfu8Jjh6jcjp1MNcpYZuFzPI0+Yxpdo9zLw2n/mF8JtuD/NU52RA - 6d0gwaOORngz9LDliJBQIoL+kATGI1I4d0oxasvEd65juEb60ipYpL7FIqWchYmQWhkN5Wa+i7wHnoCg - JhgI6QQzIYOQ6VaJn33bUAPPNivOqUS3RKqoHKkuKl8WH1V4dr1oZmJfHuaq3wXp+0du4h8NEJ3Cr4jZ - xH9PwPKsxEPeNI8nIrCEGILCj7JFKbwzcXAfbh9wok0pfNasEA7XxQirmxRCb6dOiftnqjBS4ECDQniP - 9McGEedHzZvvVUWkKZrZ26wUod9uwwx5D1dybOiyvIyruTZ8daIcU2WH0ETWq1imjMiYFdCTYajIQ0Ak - viBfTutLAjSk6nHjcDGmS0u47N6ehQ/XM3+5ZPyPiIieQvj4+pISf/9ZtCq/PtyJqZPJaEqQ4LxOhMZ4 - CUYr4jF9Sk5/ufwlU4S43RzjIWCtPH3iDL72+HVcBP8z8Car5bRGdyEmyFaD9OLJQ+tzHljxxyM7aJ2s - Lz9JyICrldK14CEQeTbHz7PpoNeXj0qHiFe4pF8xoHW/eE20lIj7SMaP40bQXF8oHiNOegzhn6DmdcGa - +WC3oI9knLILhokvRE4jZEDVa8z/ggSV0mMJkdN4PgC8fwGKe+JSzfQhQQAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg4REU0NDQxNEFBOTExRTRBNzQ5RTJDOENEOTZB - MEM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg4REU0NDQwNEFBOTExRTRBNzQ5RTJDOENEOTZB - MEM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUQ3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz55z27YAAADl0lEQVRIS+2Ve0xTZxjGTwgt0EN7WrFqh9MFrdVyE3VMuyVj - WTITRTcz5/6YZHEar0A0JBMBRToMl1QEBURsRSheJhFwVC0yjAtEqJe0IhdtLB0a8TbjNMYtYe7Z+zEx - R9egyzT7xzf55fu+93ne50vO6YWzjRP+EwCGxefQv8FXqBhfQ0uJc8R94sGT1UksJ/7h9xUqhqt/WyFm - a0PkO3Bty4XHaoHXuhueqt1wFebBFh0G0gue8/sMFcPVhMqHWFNH4b2Vu9BRlA/bxzNxWDsGtrhYdBTm - w1tRhrqoMJAvUTTDvbCqNfwQnWdyjOgqMsGq4X8tGS0zpoUEhtI+hbS7jsxUOLZkMq1bNPMkZZiyjJYN - 8YenMAe1C+agSB1UKOozsvfFvYeODclgPrH2wirRju0dRB0Id85GmKMmoGC8+ib1vE8Zr7691zAVFxKX - gPme0YahmGB3BBJq04iAAWdGCkpnTUOWUlpJvbFDGFXSPdb5s+FYuwLMJ9ZeAs6f4I1Kid26cD6Ofz4H - 2UrJwGZBYkkXJEm0lue+pUTbulWoiP8EGwXJKfIrXhrHVhWOZAhhtV8Hd2UqpSj7yIAGeg/bPzQgP0aP - HXEGNC9LQM1Xi7CJdPOnsh9b8pQJ7SbVVQqQsHl7ljKGzq0tearE1nxVOu2Psh7TuJPZArYsloU3GYXT - 5rlBA5ka/z8zJk/AwS8/w+EvFgyupvdjsV7wu5vzrtR5bJPCXLNesYzmHjd/J9xrL9WgYCn/wYksoY3O - j4jfGjcLjcXLgw0smzuSJkdyfODU2lR5m6dpCnrqImCaKR34NsTvcaraH+mhEpTOG4nyBNm9+jT5gwMp - wRW7VvMr2y3jcMs5DT1HI1C3Qd5P2u+3zsfgjmsGaP+I9Vg2V53MozKR77Ym8w+99nD0NUbgZ3sEvCci - ccc5C1ebQtHfGoO+5kj0n4mFNYn/pSqJ73M3RuH6T+G4fioaV2xTcMMRi2vNUTSrRy+dr9j0YNlcyTdB - OFsWhl57NNyH9Og0C+jaq0LPvlG4/P2IQdw1IfDUa+jySLh/0MPdQMEt0+Em7dJ+FS6Rt7s6BJ0WARfL - FYSS5nVg2VzuogC4tk9Ex85JuFCshWsH22vJpEXXnknoqSSsOgrS4fJBHYWydTJBj7NKN+jpJC+bYbMs - y1n098qyufR4KV4n9EnjAgg18fwX5FXB+RHsEvbD8jp4U/93+foffXWA+wv9GwQ30fQQcwAAAABJRU5E - rkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI2OTgxMUNFNEFBOTExRTRBQTEyRTc3RTczN0M4 - QkQzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI2OTgxMUNENEFBOTExRTRBQTEyRTc3RTczN0M4 - QkQzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OUY3Qjg1NTlBNzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6CerVFAAAEkElEQVRIS6WVe1BUVRzHd7n37rK7LLtsLs/ltbsgb8RBQDTl - FaGW4SDWmI8sLAGRtRUBRUhUXhKPAkOReKwmsQIOEOboOsofKlDDI6UZCaH4wwbTcey/1Pl27oaEiV6r - 78xnzu+c8zvnM3PvzL289kDt/4Izcx36N3CmNUDL8jMphVdLbQ6Q0YLAn17nhDMt/hre1/6aX0ipvFwk - R0+RvIDUQgKf3eOCM81+at4pP/UkKVXnD8hws8MD5/JlJWRulrD7L4IzJ3zceQYfd7Og+xMZ7t0MwUib - Fl25f0vYnufBmUZvV16Dt6tZ0JFjjfujofhtZBF+MGrRvsd6RsL2zQVn6ua78I7PdzELWrOkuDsSjLs3 - vDE1HIyBr9xhzJTOSNjef/JSqfF0NgtO6a0wNRCEO4MLceuiL273B6GvwRUnP7aakbD9T3LU03m64kiV - 1sksMKRb4faVQPTVk0t1Vv39TW6Y7PHHlWMuaEx7VlKtdZquOFKudjQL6lIkmLwYgNOZMsQGMqFfpkou - 9VSrMH7OF5eqVKhNljwlqVA7sgN3DrvZmwVfbBVjotsXJ3RShHrQfgvcKKfabRKTqcwRox1euFDmhOok - 8Yyk1M2ePc6dAldbs6Byswhjp71Rl2yFUC3tQ9akMf60oup9senbQnv82OyJs4UOKN8kmvOdPDf5zsrJ - Y47SXad9rNHtIUenWoZOF9nvhKEzzrJtkb60omyjyNS53xbXGz3QkW+P4vWWLy+pVckfdPq7YbC8CGOG - OowbajHWVIvBimJ0BarR7mxdvsyLVhS/Y2lq22uLoVot2vbZ4WCikFtidJKmtpPLbzUexXBlCbqiw9Dq - YY+uiBAMV5RgvL4G7QFqtDhJ05Z6UoqDCUJTS4YS31dp0JJli7x4DskJB8n1vsJ83KgsRYNKgo61dihY - LUK5o6jE4CC515uXhd5DeSD1CGm3CNdSity3hCZjhi36ytU4qVci+80XSOrsxI/GKgrRtmYlDvlZYqBC - g8JEMV7zpcKOOIgqT0aEYjh7B9i+3SsEipQoZt6GxbR6zyrBtQv7VbhW4o4m3TxkxAnmllQrLR/fLNyH - 4wEaZIQI8E22A/SxzHdZK5iHBa9aoiF8AYa2bwHpI4/jL/ITRNgdxwxlxjEP2vS26CZn6re/Al0M86zk - U4Xwj4EcPY4sXohcDwHK1kuxLphK0kXTY/kawYRh9evo1X2EUoXw8Y4oun1nDD2aFkmfSVpKZadH072p - EbSRzC+T9cnjyQqQ+dOSQ3Kmy7B2Nc4mrMRBGwY5WgZ6Z7ohx535tchRjqs7k1H/Riz2KumfNoVRKanL - 6fMbQqm0LeFUFluvX0Rt/GAJXUAu7kuPosGybdksSa6UWpUnF6AmMhyd5D18tjwcJUE++DwiHKakjTC+ - uw65ZP89sUUSOSCbxmZ6tCbIZ63ZEdjvh5IgIbC/Xx4vRco83iWhHuZ4adD8djxaE9eYx9IlIdBLqEcf - WjH3N8ssJ6YZnzXOrp/sz7CJrJsFJJI4AT8mWcRv1In5U4T7hDtbRXxjtIAfT/ZV/w2e6k+0FURyr64p - kAAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkExMzE0MEIyNEFDRTExRTQ5MjFBQ0MwRThGNTU3 - REFDIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkExMzE0MEIxNEFDRTExRTQ5MjFBQ0MwRThGNTU3 - REFDIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RERENjE4NDBDRDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7V3v1pAAABvklEQVRIS6WUMUtCURiGHSKhQSURRbJBIRcbgmjtD7TVL2hv - qCFoaW5oaPI3tERBS+BgEIRR0WCUUEgUgkESYYIhcXrfc++p6+0cPRdfeOD77jnf811vUCg+PTsSQoiB - aIeCoJN60Q4FYWh0Qz6KQBgouhpzcGkYovcttPDM1Zjjk2nftgubzTOX/l+FB15Ep9sbCTpctRP/go/O - 10i4C8KOHfEtGPQHtSKWnjmCNuHYETzsA0nwYrPVDgRnMLsCFumgSMYrJ0iYl19e3wPBGczmAOXGT6QQ - 9cabhLXqTbXqoft7cxUc6BC1p6aEtepNteqhm3KsnuBAh6g+NiSsVW+qVQ+d/YLr+2cJa9WbatVDZ7+g - Uq1LWKveVKseOvsFZzcPEtaqN9Wqh856Qeu4fCXKlzUreDeeKbShs16wt7G9K0qVOyvWtnZENJU7hM56 - QT6ZnRPrWHJQuhAn57daeMY7vDs+EV2FLuVYPdHIJdFkbj6Wzu/jp3+i//3mXiYzhU4kmT2FfBOqBRCR - Um9wUQsyBvhGHFwCy4D/a7zwGc94Jwk40x+dXIFwgG/FRfy+OnjGO//ljE4chMEJhX4AMnDyVRS80DQA - AAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkY5QzgyODdDNEFBNjExRTRBQjc4QTlDNkE4RTgy - QzFEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkY5QzgyODdCNEFBNjExRTRBQjc4QTlDNkE4RTgy - QzFEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTkwNkVCNzZBNjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5gwa99AAAE3ElEQVRIS63Re0xTZxgG8E+WbFMXGSI3K1AElAlRJgFUVNYI - qIAXLiIFKXcjq7IxHajRMYZDRASDAspNBStoy0QKCojcKQJHtAgqCEwnHuY2dCbG/bPk2XeIPdOFxsX4 - Js8ffb5z3l9PPvKuA+B/5c0RRsXT5P2byATa6tBMmTh/bSZbNlneHGFkgbydBZfyDhbETHKKth/RcMh7 - GGFkYVbVCA5euIfDij4QwaZztJ1K88HffzURTd59hBGnMioGkSi7g+SSbpDZG+W0nUbz3oAzqfTfJ5b0 - YX9hJwcoaPtWQBJLCmgYTUJ2kEJaT3J3wvCSRFk/EgrV2Jun4oCfaPtWgC5kBh+l4P5oBs0xiLeRHlpP - cnfm4ef2nbmNuBM9+Ca7jQMu0fZ1QEeTiedfTfB2wtwa3IXrfeFQ3YqATxhR03ri7iYe4Mc8rCw+/xak - x7oRe7SZAhuUtJ324lmdiC4VTxJX7jWxlDBd/WFoU29GvSoI3sGkl3uP5r9AqDw2h0HUkQ7EpDdwQDVt - p718fjVYmb20XZ72GasJ/a2i8BZ6PiXgS8K09wahqccfNW0SrA3SCkjKpVldEB9oQ8TBegqsv7JggfAT - DriQasO+fLYZmsgOzB8be1QR7u/7xYf+2wjTcjMUtZ1uUDb5Y7VYG2AmqQhNUyEgqQnipBoQk/V1PPDj - PPbFbyI87LTG+OgyFO2z/HVk8Hy060r7j322EuZqlycuq9xxsd4D7pu1AiGVoamtWLf3GgK/q+aAqxrg - fLI1+3xsCYZbLcEOOSJv99wJYImz7dQN0YSpux6MimYnlNf5YFWAVmBLte/+BnjuugLvnZcosK6BB763 - ZP8cdcRAvQUeDzggb5eQB7wjCXOpeSkU15whUzpC5K8dqPHdUwuRtBJeXys4oFkDlO2zYJ8+XIz+KnM8 - umOPk3FmPLA2nDAVjW6Q1cxDcaUjVvppA0yD69bGVWHF1nK4xZSCGHu38MAeITs+shBqhSl+6bPDyVhT - HlgdRpjS2kUoqpyPfIUdlvtqBYKuuUkvYkloKVZElHBAuwYojTdjf7+/AMzZ2XigtsEJqYAH3CSEOaW0 - Ra7cGlkyKyzbqBUQN7pGXcCigGK4SIoo4NWhAc7tnMM+uWuNjgIjjNywRG6MCQ+IQgiTp7BFerExMk/b - wXmDdqDFKaQUC/2KYB+QT+/Aq5MHvprNjvXNRetxAwx1CZEbbcwDrsGEyThritQiUyTnCuC0TisQ2LY4 - sBjWnifwuV8O/QLPbg0g227MPlaboTFdHwOqOciJMOSB5WLCpJ02QWKOHpKyzeHgpQ2YE6iy31QES/dM - 2HgeATFa08MDMUbsaI8Al5P00NdoguMSAx5YFkiYlHwBdqfPQsJhfdivIbfptjcAXRoBEfjdnOeZRYFD - sHJLAjFYdXfGjOlWvTdOS89EGzwZbDOCut4QndUGyAic+UdTfda3urrTLZz9iXp35qeIS9HF9sSZsFtF - Bug+Mxp9bjk3c2kciKGHkhi6D5JZomFi4DpM9F1qaL+0pip9b8E2y94s8czx9E1644f89J5mhlnclZf9 - kEzPnW09iJLmvo2IjMxfSX62diG1tHd6tZcf7pO4L5lFY/ha9Ibula15MCSP6leXxPR0Fu7QpLsjz4ee - z6CZ9D1CiM4/X3QnEat9eLkAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVENUYwQThBNEQyOTExRTQ5QzUzQzdFMkFGQkQy - NTA1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVENUYwQTg5NEQyOTExRTQ5QzUzQzdFMkFGQkQy - NTA1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkRGNkEzOUYyOTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6npMy1AAAGEUlEQVRIS7WVeVDUZRjHf7Ase8ECu+wl4LIXcqyyHC783AWW - 5QaRFTHkMi9SQvE+UhLzwk0BUcQSgQBBgcYDzStMSzOPcpqcmo5pmqk/+rOapqb+iG/PbzfFcSz/6pn5 - zPN739/7fp/nvZn/3TSLjj+XJy2/RaItPCT5vaBd8m1+q2Qku1lcrcvki+iXr7fFU6ZZeOx5KDU1b7jU - 1Z2bVPMPWNMbRXrXkWAc+ywVLbcS8fKwFjlu8VdpW0XzSc6f8PEIPzJ19dFnU3WEJdHL9P3X9O1nkdB8 - CQrX7i3mKn9zfqsUq29ZsPfjRBx5aMO2cTMy94gm7FuF7XyJTwDJTo5GVdHxNALVgsPd5Ceye+9g8b0f - UXbjB8RtH4Msd+MeXS7f6twjxbILZiy7pEHDtTBsvG7BqivTUXpsClLWCbtJNpDwBlGVH3ySIFV520eW - nedRcf0HVJGwbeRrOHs/h2n1CGRZDe7wND/W1hiI8sEYlJ4KRcVpJcrfVqByNBILhqLh3KeA+UXBOpL2 - jkRZduARPGXZ/vH4pnMou/gd7INfIPn4QyQc/RSOzk9hrBtEiKPerUn1Y5PXBaDojWlwdgUjr0+G/H4Z - cnpCUNJrQNZ+LeLrBD/LYnixFEDAKFz7vJQ0r49dO4zikS8x8/ADxLd9jIT2B5ix/z7SX78Pw+K3EJy2 - wq1M4rEz6sRwthgw82Ag2KNS2I5JPZ4rZx00ImGNHIZSfisFkDGhxbs5AkKLd/3kaLkDlgTjXrsNc/Md - mPfeQeyOD2HbcRu6yi4E2Wrd8ngeG71IBPtePWa4JUhsD0DykQAkHQqApUWCFLcGyZvDoZ/P/5oCTGXk - hU2MvGB7rbGmG47dd2Fa+x6iX/kAMa/eQvS2m4jaeAPspvcROb8TQexid3CcL2usFCJjnwE5nQYU9RhR - PGDC7D4TCrqMyDqkR9oePbRz/SZEKh8rI8vdyshyXhmzLD8DS/1VGOquwtgw7glkXH0Nhvp3kbL2GrSl - hyC11ril03xZfbkQKZuVsDeq4NihRtYuDbJ2auBoUsO2TQXrJiWMlWIExflWMiHOjRzfJy0bg776HCKX - vANd7WXol1/xeN3Si7A2XIXW1YbAxAq3UO0zPTSd1yG38bplLK//vxBrffKY4PQ1HH9aKk8jonQUUyvO - Qlt9HtqaCx4/tXIMyXWXMXXOAQTEv+D2zCvDhBBTCN1zCGOCZq3k+DXO1YcpRYOY4hpF2LzTCCs74/VE - 3IvnEVd1EhGFblBbWot6BKXWQZq64tlYa2+TuJwQM9KU5cRL35hyOxCe2w913hA0hcPQFI16KRzxEFtO - a1Q9htSVN5C+5S5x7x/uIm3DR7CvuomUReOImt1FU7nwEolHECImMGkJE5i46EJkejNM+X1QOPqhzBqC - KvskVDmnJuHKT/K4bgjKzBMItXcjJv84NOwWiKPndJK40TOCgPgaRmIur1dZ1yM6txvyWT0ITR+AImOQ - gg39N1ybDBJP60PorC5My3oTwQm18FdNryBxbq0EJL6AEUTYZBTkF0NGKyKdvZDb3qJOAxSIOqcP/jtp - JyC3D1BSvYgp6EN4aiNlP/cTEk4gFASPEUeXkWd8RaY5jcrEBkTn9UCT4Q3gzfBfRvJE9rrsfpicHSRe - NsFXmJeSXhTBXXY+jMjk8uArVkpExuKb6pkbYJ7L7Ria37xTUBeMeCkcncRTN0z/TyLKNYy4khNQJq2G - IMLBXdUWQkXwCYYR6md7IPP1k8WEC3UFDzSpG2BZeAZJtXQWFpyls3HOC50JzkdQnbFqDInLLiC2rBcq - 6xoSzzzP+NDVwDBaQkx4XzahNv8xZH48sVotCHeOUnnCWNJG18Q4UjddB7vlfbBbPwC7+YannLTyIrS5 - OyHU5v3hr07poL7JBHe4Jh8bzgQROY8h46IKCAVfbi73D3PcpfoJlX0VtEVN0JXsQlj2ZoRaaynj7N/8 - NfZLPLFmHrXnpiWSCCL8iMl32T/M6YGMq+R+covD7QADwfoIgqt4QVGtfvIZJ4lRv5CY4zypbjfjy+eE - M4l4gtuSwYSQ4DS4EZAew/wNiCYQJlvQU3cAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAIAAABvFaqvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUzQzNGNDI5NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUzQzNGNDI4NEQyQzExRTQ4QkE1QUNCMEVDRDZF - MDVEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkI1NUY4OTYyQTRERTQxMUIzNkJE - NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6IsaOmAAADF0lEQVQ4T62U/UuTURTH+0nICqRI1ERMMyNQe8N0ChqBwQhN - yvwhEgJjVCqJ/qCibZo6tzQ339h6Nre5prapUzc1XzItX1ilzuWMLLVAen+xf6DTuTxjdxsFVj58ebjc - c+7nnud7z3228DbpIaDFH/CfoqCn72DIDvNfPDM2KAqyr8PcJxqY+QBTb8kkjocXQTsKigGwfqYJHqIg - 1OxHGHvlWPx4hXB1YyA3g4CBhqst+piEnrDA3rA95vBAY1x8d7lq/DVZwm5PQZNvoKYdypSgHgbVEIh1 - cLOZzOCbSSsyRQRba6uWtcpVLbPcwlglInNUCJNWWKqABqMLCGvGlfpJELaQ/V1Vd1lujAhe0chtUrH5 - ZExnmJ85MdomEa+qZMbIEF2BHGunILSjdZwYgTt4gJqjjj0Rltml1Zq9AeL0Mn71Wn2mtDU80MIvsFTw - O+KPIoWC8BNYRIUaqrRQroJKjQOk9N+xLBF2pXJFKfnsDGYa8gS6xOO2whyMuoHaHpGzZ/pBM0IMrtXD - nT4HqNHXe0lYoogMFeQP4jbSDkCPTUyXmnNoPutSo+9WN5DEQDyeWCWnhqm4p7Oimt3b54rzmmKPVHKz - 0Xg0AU1pz87VJp+yXOfd9t3mBmLXsGrsJhSsDtF4iOWxKdpzyQNnuRW7vEUp13obFG05OVUBPtO5V1Sn - k5q4SX8ENfWA6C7xHsP981Bb2sf38ZKd4JhSuXUJHPHhg/WJnAeZFw0Xzt/w8erRtLmBnB/CSmaC599I - 2PYVRl+CXigu3R9SfCC0Pf1MZ1oqvqvjogX7gtRFJfb1n24g7GblfQcFP2fkBYm5anxqQcbLKgzyK/Df - WRTkV5+RMTg84ZrgAOHo4ZIDVNdJw67CpsVLZ5gifj97Typlq2ZFQXj8LKh5EHpnaIar8N+Al5l9Y9Vs - T7OiIAzjqaMsa6QJnBkeWvgOHdPkAuIV67PSeQpCYYZplsZ+KyyWLRyFF8D553EDbURY770J0rrYJbda - SYE4iWb9NcgpRKDrOMAWwYP6d5BTaC52zyaAWDlAm/DweL8AX9zXukfxHsIAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNEQkVBN0RENEFEOTExRTRBOTRFODY3NkE0MTRG - NDA5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNEQkVBN0RDNEFEOTExRTRBOTRFODY3NkE0MTRG - NDA5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTY0QjI3MEFEODRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7lChSUAAADYElEQVRIS62VaUhUYRSGz9geETlWP9RxXBK0cq3csNWaKS1z - Q5oJS8NMMvpTP1qgDSJabLFssQ0NQqJpETNq0mJGk2kxsrLMMhiyZUonzZK0PJ3vu46Mcq/F4AsPfOe9 - 3PedOXeYCy4eAQwtYSRwEGF5WluBsdJUg11/cNBgeSzXVoC/uroHHZbbW9DR+Rstzd/sv6LDsCwGOwMT - O7R3dOFHixVdFFN/kqUlUhzBlsXoU9D64xdav3cws5usYMLdEWxZjD4FLW0/OT2mG7/ggESyBNNibef0 - mOzTOCSRLMH88LWNY1+wYj0MI/wJbzb/j0SyBNP82cqxL7Bp+TpIJlLpKBMcaYlkCWZjUzNHrIAk0+TA - mdRsWEpnJ8ESl0iWYL42WzgSBUDhqctywBCTCBNolCwRyRLMusaPHKmClDUQtnmfoj4pE9bQOJQQXZdI - lmDWNrznSBUkZUH01lzvhoRMKKJxOCFZ0C9LMGtemXHH/hPoE+RqmhoBkWT3CUhYDavzCqOaFqdDJY0j - CdE12bIY9gXHt+7OQ88AX1RpnN4GRUM02b0B8ZkgJ27frE7oVGnhIVmjiCH8Yj+x0AfP33HsC/w8A5W6 - +Rqn+vSNLo2hcyGcbL7nuFUQSlzKPR/SdEWf2DknBSrIH7Dg/tO3nN6ChRngq14JxuPFYdbDRVFfVSug - QJ0Op8gvW7vDtf60LrJFb1qCO496tUYsgXy6ZcACQ00DhxcsWAlKQn+wMOhLiWERXigLxNxCn9aCy9Pb - dOULOkurVHjdEIP5F6dgctZYc3AMxFLOCELyGdx99IrDC+alwbndBf6fLlfMw7xiJR4t9iGUeOZqMOZf - 8sFjFyNwzylvTMqciL5hzihXTGF/6fxmKe6Y6jjsDLOWgcdsLeg37B1vyS3ywL1n3XFPgRfuynfHLQe8 - ujM2TKRwJWZv1qDudhWWGp7gzapavFX94p/wApJsRjz4RSSDMXvbuJac7c7tcemjzTNih32Ypp6AWZs0 - mFd4Fq+VP8SSe4/xhvEpllXWUsmzATlyTofObv4v+d5IspCFEDJtMZjUaSPMftEQT29ST7n75JO0kt9y - tpJ/rKU/zm5+b8a4KA715HPJAlUQFaCGx5PCIYhm9iDZr0VBzCQSCNHXpASJABD5F6q3LHH6EbaVAAAA - AElFTkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGOUFCQzZDNEE5RjExRTRCOUJBREM4MzEzMUQ1 - NzQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGOUFCQzZCNEE5RjExRTRCOUJBREM4MzEzMUQ1 - NzQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODlBOTk3NTY5QzRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz6aIUJsAAAE0klEQVRIS6WVbVBUVRjH79297/fu3l2EFRCCdBit6YOROU2p - yALioLwkmRiWKCDx5oLyKqy4IwoEgyAYRC4gb/mGmIKBFi8mIBLql2iChnJyhtQPzTh9CKE9PWdDBCOk - 4T/zm+ec5zznv+funmcvcbfUZkG8UAPFNguF6S+yOfBdkc0IjJ/A+M71PG0oWFMASdw6pl0IQl+h9upI - 22voToU9ulmofQg5y9BFN9SZqymAD2CI3gLtvOn+RLu9J1/bdypR7diQrJZg/PVwy6uoI0fTEruJXw2G - TpnbxLXwBEM/nF+KmjLkcOLbPM286MrR7IQ40ZWruW8MEZbDvOPHS6+gVpNczdKkE5jrADUglH4sre4v - 06H2o5rviY4j8gv55rC8G+JEe7b8a9Z2Qd9mkrsHLyxHzUZ15aS5LcADCoAElFD7OzBOXDXJc9KaJYdD - /KvtkHwvK0TQNxvl3rsNrqgxbYY5N2lsVYtRdoM9lisH5RGYqP+Ty5nqSIiW5kz1L+nBvL4pXd03UOOC - TiepTjIUMWVev0+lgzrlP+ZqBp6s43bDMlQZL5mIi2mqWWlKVUVBtED8OTmI159NUt26edIZ1SVIFZPm - i7D5hVTVZqj7E9aNYZ6s2JSmauyvWYpO75cuayXShTibJP2LM/ulWIgWiCOJ/py+PkHqv1HmhMyx4qdg - uuSpOZgEQd3YmSTpkSmE1zckSpd6Kl1RrUFq0skKF6ixJeoN0gzq9krxEC0Qf4r34zyr46SBjuIlqGyP - eGK6ee1eaQvUjdUZpIfJgfzGyhixtavUGZljxAtakXwJauwAnqiKEaeojBYNEC3maHE4bD379udR4sDV - Agd0fJdQMs2chfX3oG4MTB/s9eN8yiPFa9fyHVBZpNComW6Ob1XFHsHKZ5GCAaKlPEIYClxFv56/g8+5 - VuCIisL4KiicMi+PFLZC3ROofxDry/qU7BbavzpqD4fgz2kEq/n0K0sQpbt4zEpgvCSMHw1aRa+CtH3x - Tr7LHKdGAW/Qb8Icn4g7Hsa/P1n3W5QX41P4Id/x5SEdyg/lTsuzmWMd28ERhaFc3blMHUrZzEZCygFQ - 5W/nyi4dtkfGIDbL3VW5uOADLh5qJ6B2NHw945MXwnU2ZtihnG3cFwJDOsOep/3wzBwLCjGPcrdxD3nG - egotQMV4MzrI3TufoUOwbrl4xBHB/P5Ha+gN2Vu5zrOpdsgUzNXTymf9AMw0x8oOZjHjpnfZuzB1BAQA - d6UiwoN2MwawDbA2mOHPngl0p9ZkBbE3GvbboswAtvY586lOnqGsQIY4GMAMAo+X6RQvQ4rDOQwId6cI - 2K5wULhm+DPdtQmLUKofU0XNxxzrwCaaSNlIJ1XH2qAEH7ocUhJA4jwGpAh9i7JN96OvnwLzfRto87zN - scCc0K9Q8km+dA+MLQYvugTm+F1IwpyEvC/E4ZoUO2Twpiv+lznWPm/8ZiPIYHelo0FP9ZrhSSD3R6IX - dRviaFGEjOeW6HXUCUphNbd2Mt4zuXduGTwpKyCFm46UI96h0uI8qEHIjQOPY9ZRV4JXKrfA+tTfBEBO - 2ze34jyUU4DwNcMG+KouBvCtwn2BGw2/rfAvTz63Z25Fr1XOAIS/V3w0FsBdiT8QG+NFcpb6OUQQfwME - xz0xnqHypQAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH - DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp - bGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZE - sRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTs - AIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4 - JUuQLrbPipgalyxmGCVmvihBEcuJOWGRDT77LLKjmNmpPLaIxTmns1PZYu4V8bZMIUfEiK+ICzO5nCwR - 3xKxRoowlSviN+LYVA4zAwAUSWwXcFiJIjYRMYkfEuQi4uUA4EgJX3HcVyzgZAvEl3JJS8/hcxMSBXQd - li7d1NqaQffkZKVwBALDACYrmcln013SUtOZvBwAFu/8WTLi2tJFRbY0tba0NDQzMv2qUP91829K3NtF - ehn4uWcQrf+L7a/80hoAYMyJarPziy2uCoDOLQDI3fti0zgAgKSobx3Xv7oPTTwviQJBuo2xcVZWlhGX - wzISF/QP/U+Hv6GvvmckPu6P8tBdOfFMYYqALq4bKy0lTcinZ6QzWRy64Z+H+B8H/nUeBkGceA6fwxNF - hImmjMtLELWbx+YKuGk8Opf3n5r4D8P+pMW5FonS+BFQY4yA1HUqQH7tBygKESDR+8Vd/6NvvvgwIH55 - 4SqTi3P/7zf9Z8Gl4iWDm/A5ziUohM4S8jMX98TPEqABAUgCKpAHykAd6ABDYAasgC1wBG7AG/iDEBAJ - VgMWSASpgA+yQB7YBApBMdgJ9oBqUAcaQTNoBcdBJzgFzoNL4Bq4AW6D+2AUTIBnYBa8BgsQBGEhMkSB - 5CEVSBPSh8wgBmQPuUG+UBAUCcVCCRAPEkJ50GaoGCqDqqF6qBn6HjoJnYeuQIPQXWgMmoZ+h97BCEyC - qbASrAUbwwzYCfaBQ+BVcAK8Bs6FC+AdcCXcAB+FO+Dz8DX4NjwKP4PnEIAQERqiihgiDMQF8UeikHiE - j6xHipAKpAFpRbqRPuQmMorMIG9RGBQFRUcZomxRnqhQFAu1BrUeVYKqRh1GdaB6UTdRY6hZ1Ec0Ga2I - 1kfboL3QEegEdBa6EF2BbkK3oy+ib6Mn0K8xGAwNo42xwnhiIjFJmLWYEsw+TBvmHGYQM46Zw2Kx8lh9 - rB3WH8vECrCF2CrsUexZ7BB2AvsGR8Sp4Mxw7rgoHA+Xj6vAHcGdwQ3hJnELeCm8Jt4G749n43PwpfhG - fDf+On4Cv0CQJmgT7AghhCTCJkIloZVwkfCA8JJIJKoRrYmBRC5xI7GSeIx4mThGfEuSIemRXEjRJCFp - B+kQ6RzpLuklmUzWIjuSo8gC8g5yM/kC+RH5jQRFwkjCS4ItsUGiRqJDYkjiuSReUlPSSXK1ZK5kheQJ - yeuSM1J4KS0pFymm1HqpGqmTUiNSc9IUaVNpf+lU6RLpI9JXpKdksDJaMm4ybJkCmYMyF2TGKQhFneJC - YVE2UxopFykTVAxVm+pFTaIWU7+jDlBnZWVkl8mGyWbL1sielh2lITQtmhcthVZKO04bpr1borTEaQln - yfYlrUuGlszLLZVzlOPIFcm1yd2WeydPl3eTT5bfJd8p/1ABpaCnEKiQpbBf4aLCzFLqUtulrKVFS48v - vacIK+opBimuVTyo2K84p6Ss5KGUrlSldEFpRpmm7KicpFyufEZ5WoWiYq/CVSlXOavylC5Ld6Kn0Cvp - vfRZVUVVT1Whar3qgOqCmrZaqFq+WpvaQ3WCOkM9Xr1cvUd9VkNFw08jT6NF454mXpOhmai5V7NPc15L - Wytca6tWp9aUtpy2l3audov2Ax2yjoPOGp0GnVu6GF2GbrLuPt0berCehV6iXo3edX1Y31Kfq79Pf9AA - bWBtwDNoMBgxJBk6GWYathiOGdGMfI3yjTqNnhtrGEcZ7zLuM/5oYmGSYtJoct9UxtTbNN+02/R3Mz0z - llmN2S1zsrm7+QbzLvMXy/SXcZbtX3bHgmLhZ7HVosfig6WVJd+y1XLaSsMq1qrWaoRBZQQwShiXrdHW - ztYbrE9Zv7WxtBHYHLf5zdbQNtn2iO3Ucu3lnOWNy8ft1OyYdvV2o/Z0+1j7A/ajDqoOTIcGh8eO6o5s - xybHSSddpySno07PnU2c+c7tzvMuNi7rXM65Iq4erkWuA24ybqFu1W6P3NXcE9xb3Gc9LDzWepzzRHv6 - eO7yHPFS8mJ5NXvNelt5r/Pu9SH5BPtU+zz21fPl+3b7wX7efrv9HqzQXMFb0ekP/L38d/s/DNAOWBPw - YyAmMCCwJvBJkGlQXlBfMCU4JvhI8OsQ55DSkPuhOqHC0J4wybDosOaw+XDX8LLw0QjjiHUR1yIVIrmR - XVHYqLCopqi5lW4r96yciLaILoweXqW9KnvVldUKq1NWn46RjGHGnIhFx4bHHol9z/RnNjDn4rziauNm - WS6svaxnbEd2OXuaY8cp40zG28WXxU8l2CXsTphOdEisSJzhunCruS+SPJPqkuaT/ZMPJX9KCU9pS8Wl - xqae5Mnwknm9acpp2WmD6frphemja2zW7Fkzy/fhN2VAGasyugRU0c9Uv1BHuEU4lmmfWZP5Jiss60S2 - dDYvuz9HL2d7zmSue+63a1FrWWt78lTzNuWNrXNaV78eWh+3vmeD+oaCDRMbPTYe3kTYlLzpp3yT/LL8 - V5vDN3cXKBVsLBjf4rGlpVCikF84stV2a9021DbutoHt5turtn8sYhddLTYprih+X8IqufqN6TeV33za - Eb9joNSydP9OzE7ezuFdDrsOl0mX5ZaN7/bb3VFOLy8qf7UnZs+VimUVdXsJe4V7Ryt9K7uqNKp2Vr2v - Tqy+XeNc01arWLu9dn4fe9/Qfsf9rXVKdcV17w5wD9yp96jvaNBqqDiIOZh58EljWGPft4xvm5sUmoqb - PhziHRo9HHS4t9mqufmI4pHSFrhF2DJ9NProje9cv+tqNWytb6O1FR8Dx4THnn4f+/3wcZ/jPScYJ1p/ - 0Pyhtp3SXtQBdeR0zHYmdo52RXYNnvQ+2dNt293+o9GPh06pnqo5LXu69AzhTMGZT2dzz86dSz83cz7h - /HhPTM/9CxEXbvUG9g5c9Ll4+ZL7pQt9Tn1nL9tdPnXF5srJq4yrndcsr3X0W/S3/2TxU/uA5UDHdavr - XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS - fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+ - tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/ - 6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOvAAADrwBlbxySQAAB7tJREFUSEuFlllQU1ka - x6/MlDPz0k9j1YxTNVbbVTPTNd09Wq3Tbbm0jqMItja0OxhZBFu0RFAG40LAEJCWRUCWgKgsskhkX4Sw - RkhCAoRFIAuSyJIQIGGRELLe/xzp7qrp6od5+NU5t+53vt/9zrn3nkMJjfTPkCw4KekCaefpdb1L9Mae - BfqU1OjMEM85ZV16x7RkxqmXzNKD0jn6cfc8fa53gd4kNtIuYiOoTkLrHE21/A+/EEiJQLJA/54M8u2c - dbaIph3zXTq7TaKzQ6K1Q6pzEEh/2m4nwkXxrLNDZKCDREZs/L8C0TzB6Pycr6Nr2qYciyTxWlLx1Hts - P7Q/XndpbViTEkQ6x/IrPS3oMGAPEaz7mUCyAKqbTIl03km9MtB7qyadfZVqB15N2iAiiToJIj0gNvyI - EegiiGdA7pEYInovFWodaNM55SSpR5uBdmmZB9VEKvpBsEhTnXPOnSUax3CxyoGaN3a0T1iJxAqBlkaL - ZhXNcj2aR7RrNMmn0aoxo0NHQ0Bi2t6uok1jImMs4E/Z1c2ztHvrTwIpEQiN2FCksb/MHrKiSGFDucqC - Zo0FZJpQr1xAVvJ9PPT6BOknNiPJczPYnh8j8T4HL5Xz4I+TpCSmZdSIJrUJLzVWlL219TYasHlN0GHE - ulqt0ze+f3WZO7iKp8NmlMjNaBwnyUdXwE2JR+rRDUg5SCHV3QXJh9cjeu86hP5rAzj3YlCrXAb/rY3E - mlCjXELtmBnPlKu2sknHnboZej3VPIeNmQpL2x3hEtJ6l8GVvUPu4DtUT9Co6BtHxrGPkH1kPdKO/wHx - HhvAPvQBWAc+wMUtFM7v/xjFsmlUTgHFClL9iBkvFCvIGVxCjsIsr9I5P6MqppwnWZKlhdCWWcSTVUzq - MuBhtwFVkzTKulV4cPRDNCZdxnh9PAQPL+DW15tww30Trrl9hGC3v6BUqkD9mxmU9Y+DK1Qhu2cGcaJZ - cKQLqwUaO5N6MmblBrfN2gJqJsBu1yJGoMP9jmmUkzeptHsURUw3zMvbYXn9AlON8ejOD4e8NglqcQWK - bx9EU2MmlA13MVYXh55CXxRXPQGzYRzBZKWTh1bqqAdDpv6A+imcea7A1epR3Hipxt0mDR73LSK7YxSP - 2AGY4KfANFQJ63AZ7PIqmBUN0Itz0MY9jLeN4TANlAEGOVZkOejg+iGirBvhzTNIkC28oaJ7l/Q+lWoc - yxvAyfwBHM/vh1/xAFI7SUV1ShwOTMTzG0dgar0Hs6wAK33PMdueCknWPuj6WLBqCmEQp2NFXg+Hohbi - AiaYJSKEN0wgVjqnp1jS+ZmzPCU8ciTwJBx9JMGpXCnCXsjw71tt2BEgRotwAA3pl1EYfQ5FhFfp7pjt - jwJtqoV16jaMkkuYKvFBV951sAtrEFwkQ3ilElFC/QzF7ll47VU6gsMZAhwlHOF2wDVDhJ03mrHDXwp+ - 3wrKyZcb0rMI/0YtEiuLoO3nAMvVsGhDYJlkYLH3EsTZ3mBl5cIvT4Lgp13kAYfBEs2oqbhB02Mv3rDd - NaUFbimtcE9thevNZzhxPhVP6meRPwoE9wI+bTbEVDdg7HUGYKqBZeoKVifOwDIQhCHut4hgc3CW2wb/ - R+24miXAVd5rOlJq5FPJKjvDr0q15JrchL0pHfBIqoQgahfUxSHIKRUgsMmJszUWsHIrIOOzgSUeHHNh - sE2dxXL/JcifMqArDAT/zj74JjzHubR2BGe240rFiJUzsBJFZb7Fn0MFeuGh9HbsSRfjm6QKjHz/BckT - iMvhRQh6Nou7TyrQUxMLVX0kJrsYMI2dhqkvCK3JfmBe+R7TvFD0cb6ET8xT+Ce14CJXgJCm8bF4lWMb - lTUJF86g+eKxwgHzgUwh9rBKcO/ebbRE7ILv+QTs8q9GYbIvoBdgvPQyOlh/Qnf6DjzneMH9ZDoC/O+i - NfoAMh5EwD+2DBcSXsI3X+K41bMU+0CN31IZE6BSxuiNl1unO/c/4OOf4bnYGf4Yh6/F4QgzF9sYWYj5 - bjuWXsXC2slBX+yXyPH/FAc9ovGJdwW+YWbCOyIRjLsFuBhTAZ+HzbjQoB7mKJ1/ixsjP7uMcVBpRBKr - sB/wLldqdnEqsDUkC59+l4KtQanY5h8NzwN/RULgFjQmnsDjuHPwvh6Fr65mYf91LtzCs3D8VgHOR/LA - SKiDb9mw7vag5UT0KKhENREkvqGpBEL8G7hEjtiOn+bJx3ZzyrEtJBP/CLiPz3yjsZVxB7sDIuF2JQau - IQnYH5qGQ9cfwjMsHd43nsAvsgRe8bU4Wzqo/Y9s5cLNEfrXcUTQaXBQ1D0FvUackqY4KvpXzH6r++ly - pXRfUuPqF8w8fE6q2BKYhO2Er0jf9UoavglNx8mwR/C6lYdTnFJ8m9poPc0bHrrWYz4R1m/5DUfueH9o - oAYWHevWEv8EW+GkWHJQwV1LH3rVjd8+ki8bJuuyspvNo3fdLMA+Zj7cIorhweHBM74aHmnNZo+CbtWZ - GnVskGjx72GDToo9ZCHbL02RP/Yfu+YdjF8IIkZoKljyjvJp0q33bZ7e4l0/zvTkKWq+zutRHXok1B/K - FuqP5veMHX8x0nC6fiLKu2V6O4Ov/d1F0TuKNewghwaaGnoHF7JTMtrnnJ3/BXixa5uWRdAiAAAAAElF - TkSuQmCC - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjA2RDcwNjdGNEFDNzExRTQ5NzBEQzM2N0EyMEYx - MUM5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjA2RDcwNjdFNEFDNzExRTQ5NzBEQzM2N0EyMEYx - MUM5IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QUYwQjFGREZDNjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz5AqY9iAAACh0lEQVRIS+2UXUiTYRTHjaLcam2T6bRY09yn7Z3TLJit0hmJ - mqL7yG0ZiNKH9iVKVJquDwJLLyqji7qwSN3UrIQIKwqK1yKU6Kroqhu7qcsuutu/c17X3Vw3BQke+MHZ - Of/zf3ifh50UAP+UhMW/yVL8p5ERuGrWBq93EBFiRhsamCN+aEM3MA/lwYGv1Jsl7ViGv/+UpuacjUaX - E8skk4UivbZ3KL3uciy/+wF23nyF6ugH1D/5jIaXX9AozklwzjXusYa1PKOpvjhOFnKCD0ocaeVnUdI9 - i11X3sPVN4Oi3ndwXHoL4cIb5IWnYe0WYesRYQ+LcNDvrT3TcHWKcLa9Bs+ShZ6QSWaJQuU6jnzvGOz+ - CKyhCRiDj5ATmoQ+MAldHM65xj3WsDavahA8SxYCoZTMEoXCsT+qKGyMZRV3ItvdB2PFLVhrhmDzjEPw - PpTgnGvcY01W8RnwzGqb7ylZ2ImFD9DsOR9Ru9tj6yo7kFl2BJriZqgKG6Cw1UNu9kooNtVDVbAPGmcT - tO5WZJafgNJ1KKZ0Nj0nCwuxRjJLFGm7u7D9tIgd4RfY0vUYwskJWNoiMB4dwsbDd5FzYBCGg4MwUW5p - uQehdRhFLVFsbr4PdWk7X1HyA+bfYBSCbxiWQBSGvaPQ+6PQeSNYz3hGoCP0dO+5vhGY/Xx9d2CtuA3V - tmN8QPIrWnoDsljcbzBFFsn/aBSyldqCktTssn5ZbtWUzFjzUW6q+yY3e37+fgMpN9V+p94nWW7ls9QN - pddWqI1+mnUQyVcFBS8qXljphI4wEFaCtyV/PpswnHONe6xhrYZIvuziwSuXRasIHlAQawn+dFUczrnG - Pdaw9s/repFFSsovJqxFMpmOVVQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZFQzJGRUI2NEFFMDExRTRCNEQwQzlGQjVEQTAz - Mjk2IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZFQzJGRUI1NEFFMDExRTRCNEQwQzlGQjVEQTAz - Mjk2IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RUU3Q0MwM0NFMDRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz71LrnbAAACUElEQVRIS7WTTUgUYRjHh4g+oWyXiF1dESq0XLsUISR9bSQG - C1FGpSIdyktQVIfq4AYd6qBBhzq01xChrEuBCoIf1VoqbOAHae6mSbtWW22Zpm3w73l2BpoZHp2doj/8 - mGHe5/k9zDvzKgD+K4ozt+ifkKR6xCY7SFI9YpMdLCM12cEyUtMCLCWW6Z9ZRl+8ABXEE9eGrXBv3Aa6 - 7yaqec0yXGRBvc9/HF3dfZiZS+HHz18I9YRRdqiaB93UNPPHJDNzcFfZESS+TGF6NmUgOTWjDfFWaio5 - glRP66PWDiS/z4q0dT3nASHSLFJtQgSpnk+R8TgSyWmRycRX3qYUaZarNiEmoZnkyFgMscS3eaEaOk2K - U7UJMQnNvA8PRTAe/ywyMhbnLZojjVu1CRGkepqCd5vweuKDSMPDZqzJLnhJmhzVJkSQ6vHt2F+O/tF3 - GIzGDfSPxuDzV2KlI/s6aVyqTYggNeDwFAYrTp5Hz0AU4eGJNL2Db3Di9CWsXre+nRR7WJOWSZGkhIu4 - SkSIqNPjfVu4fR9Ona1FzbkAthSXwpGz+SMNn+Q1h8d7g+ryNKUxtCBx68zla3jQ8iwjLgTq+G+6rSmN - MYmZizsPHEN77yt09A1nBNfu9VfxH1Wraf/EJC/J3VSMxsedaHsxZIt7zU/BvbRduzW1GtOAhkDdHbSE - Bv6KK/VB0De5r6nVmAaU0Gs20jV9Qu2S5c7vXLU27yhpl6h2Ci0YoKwg8olS4jBRniFcyz0FBDvUCAMW - E1kEHx4+oXbgHu5lB0VRfgP1p66ckfD+bgAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl - LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi - Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv - cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE - RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8 - cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv - bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw - ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w - TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC - MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhBQzA3NjM1NEFEMDExRTRCRDJCQTRBMTUzMERD - QUEwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjhBQzA3NjM0NEFEMDExRTRCRDJCQTRBMTUzMERD - QUEwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N - OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD - QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC - NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/ - eHBhY2tldCBlbmQ9InIiPz7wDFMsAAADRElEQVRIS7WVbUyNYRjH2/iSD2behrAK1SJxTpF3hSZSmbxE - qZYT6SjJvL+sMZIZRqGat0hRmyxLXmq1VUoZHbVSspqQKWPGvMzfdT11Hs+5uz/4wIffdt//63/9r/M8 - z/08xwrAf0Uqyhg02kVPpBOviARimMwnIhVFKMzaxsENlzJz0dbegcTjZ0BaiswrIhVFKCwydlsCvv34 - peLtH8xDpsn8WqSiCAWFRcXtxtfvP1U8F63gAXqZX4tUFKGgPkPtXJGcdgUV1bXYsuvgv71FDAWe8PD0 - R8z2BDjp5vKABJlPRCqKUJij22xfdHR+RNenL2hubYfNODceYi3za5GKIhS0MtgQh3cfPqsMH6vjATEy - vxapKEJBq0PWx+P1+08qZdUmLOg+SWmETtbHSEURCtgeErkFbR0fLGh924WT5zJgN2E6D9ov6+0liFBj - kn7WYpTV1KOlvVMlICgSJZW1yrra1IygiFgecovw0fZbhImQOWV5qBFPG1sVnre9U6Eaho3RIX5volo7 - fy1PGaLNsAjUQsbAZSEbUd/yBidTryLCuFNZm+EBxEAiydl9Hk6lZ6HiSSOG2k1iva85p1ewGTL5LVll - wKLAcG64GrBmA2qbXqmQpgzo8c4hsuxdZrB2QJtjESpCZj8i1EnniQvZt1H0sBaPG9oUNu1Q3uZkwT9Y - u2csNiLU4DF8rB4ZuYWoevYSR5Mvw8NrKdbF7kGlqQW+Kw085LCs14xUZKjRmrh08Hg6yp++QGlNI2Z4 - B3LgbOLO6Qs5uFdugut0H9Y2yzIYqchQ06nwTbtR+rhJYdlaIwed6Kn5O7vPx/2HdcjKL8Eop6lc8xUz - mF4CQ+ZDXn7BeFBVj+LqBsTsSuQAi68n7Y8Z4vYp9WOpmcqRJS1C62EsNgyZjOOnLEBe0SPcr6xHIt33 - Ibau3Dxa8A3gI3kx567iS72WD0c6DKRbvNHqgqFi/5GOU3D+RiEKK+qQnl0AGwd3blqo9Wn80ROmeiPj - ZrHiv36nHCO6v7L9zB6xwbjKEI+CMhOyC8rg0P2LorQeEapvtZ84C2cz8xG94xD7j2jrotnOSe+FwLBY - TJ65mM1/9adCvki+8p7nYPunBqvfgM/pcrxVz6sAAAAASUVORK5CYII= - - 188, 91 864, 17 - - 864, 17 - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 diff --git a/bin/x86/Debug/Cyberpipe.vshost.exe.manifest b/bin/x86/Debug/Cyberpipe.vshost.exe.manifest deleted file mode 100644 index 061c9ca..0000000 --- a/bin/x86/Debug/Cyberpipe.vshost.exe.manifest +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - -