diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 24f70a6..bc11a9d 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;
@@ -330,6 +331,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(沿线开挖ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("创建隧道") < 0)
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(创建隧道ToolStripMenuItem);
@@ -342,6 +344,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(删除隧道ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -402,6 +405,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(纵断面分析ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("道路断面分析") < 0)
{
断面分析ToolStripMenuItem.DropDownItems.Remove(道路断面分析ToolStripMenuItem);
@@ -410,6 +414,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(基线剖面分析ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -774,6 +779,7 @@
}
else
{
+ /*
if (Utility.userRole.IndexOf("地上模式") < 0)
{
buttonItem87.Visible = false;
@@ -786,6 +792,8 @@
{
buttonItem27.Visible = false;
}
+ * */
+
if (Utility.userRole.IndexOf("透明度设置") < 0)
{
sliderGroundTransSet1.Visible = false;
@@ -993,7 +1001,7 @@
splitContainer1.Panel2Collapsed = true;
- buttonItem87.Checked = true; //默认地上模式
+ //buttonItem87.Checked = true; //默认地上模式
ribbonTabItem1.Select(); //初始化状态为浏览
sideBarPanelItem3.Visible = false;
@@ -2447,6 +2455,7 @@
return null;
}
+ /*
///
/// 地上模式 菜单按钮
///
@@ -2538,6 +2547,7 @@
globeControl1.Globe.CameraMode = EnumCameraMode.Walk;
}
+ */
///
/// 地面透明度设置 菜单
///
@@ -4701,6 +4711,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;
+ }
+
///
/// 碰撞审查
///
@@ -4708,30 +4743,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();
}
///
/// 覆土审查
@@ -4742,26 +4763,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();
}
///
/// 水平净距审查
@@ -4772,26 +4781,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();
}
///
/// 垂直净距审查
@@ -4803,33 +4800,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
@@ -5842,6 +5821,7 @@
FrmProfileAnalysis frm = new FrmProfileAnalysis(globeControl1, feats);
frm.Show(this);
}
+ /*
///
/// 道路断面分析
///
@@ -5854,6 +5834,7 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.DLDM_Analysis;
}
+
///
/// 基线剖面分析
///
@@ -5865,7 +5846,8 @@
globeControl1.Globe.TrackPolylineTool.VerticalLineVisible = true;
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.JXPM_Analysis;
- }
+ }
+ * * */
#endregion
///
/// 创建拓扑
@@ -6059,6 +6041,8 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.YXKW_Analysis;
}
+
+ /*
///
/// 创建隧道
///
@@ -6131,6 +6115,7 @@
MessageBox.Show("请选中要删除的隧道!", "提示");
}
}
+ * */
///
/// 通视分析
///
@@ -7563,9 +7548,7 @@
modelBuilder.batchInsert(dataSpace, redDt, redFeatures);
}
-
#endregion
-
}
#endregion
}
@@ -7835,6 +7818,7 @@
frm.Show();
}
+ /*
private void buttonItem查看数据_Click(object sender, EventArgs e)
{
LogManager.saveLog(Utility.userName, buttonItem查看数据.Text);
@@ -7847,6 +7831,7 @@
globeControl1.Refresh();
}
}
+ * */
///
/// 规划数据入库
///
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 24f70a6..bc11a9d 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;
@@ -330,6 +331,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(沿线开挖ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("创建隧道") < 0)
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(创建隧道ToolStripMenuItem);
@@ -342,6 +344,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(删除隧道ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -402,6 +405,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(纵断面分析ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("道路断面分析") < 0)
{
断面分析ToolStripMenuItem.DropDownItems.Remove(道路断面分析ToolStripMenuItem);
@@ -410,6 +414,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(基线剖面分析ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -774,6 +779,7 @@
}
else
{
+ /*
if (Utility.userRole.IndexOf("地上模式") < 0)
{
buttonItem87.Visible = false;
@@ -786,6 +792,8 @@
{
buttonItem27.Visible = false;
}
+ * */
+
if (Utility.userRole.IndexOf("透明度设置") < 0)
{
sliderGroundTransSet1.Visible = false;
@@ -993,7 +1001,7 @@
splitContainer1.Panel2Collapsed = true;
- buttonItem87.Checked = true; //默认地上模式
+ //buttonItem87.Checked = true; //默认地上模式
ribbonTabItem1.Select(); //初始化状态为浏览
sideBarPanelItem3.Visible = false;
@@ -2447,6 +2455,7 @@
return null;
}
+ /*
///
/// 地上模式 菜单按钮
///
@@ -2538,6 +2547,7 @@
globeControl1.Globe.CameraMode = EnumCameraMode.Walk;
}
+ */
///
/// 地面透明度设置 菜单
///
@@ -4701,6 +4711,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;
+ }
+
///
/// 碰撞审查
///
@@ -4708,30 +4743,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();
}
///
/// 覆土审查
@@ -4742,26 +4763,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();
}
///
/// 水平净距审查
@@ -4772,26 +4781,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();
}
///
/// 垂直净距审查
@@ -4803,33 +4800,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
@@ -5842,6 +5821,7 @@
FrmProfileAnalysis frm = new FrmProfileAnalysis(globeControl1, feats);
frm.Show(this);
}
+ /*
///
/// 道路断面分析
///
@@ -5854,6 +5834,7 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.DLDM_Analysis;
}
+
///
/// 基线剖面分析
///
@@ -5865,7 +5846,8 @@
globeControl1.Globe.TrackPolylineTool.VerticalLineVisible = true;
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.JXPM_Analysis;
- }
+ }
+ * * */
#endregion
///
/// 创建拓扑
@@ -6059,6 +6041,8 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.YXKW_Analysis;
}
+
+ /*
///
/// 创建隧道
///
@@ -6131,6 +6115,7 @@
MessageBox.Show("请选中要删除的隧道!", "提示");
}
}
+ * */
///
/// 通视分析
///
@@ -7563,9 +7548,7 @@
modelBuilder.batchInsert(dataSpace, redDt, redFeatures);
}
-
#endregion
-
}
#endregion
}
@@ -7835,6 +7818,7 @@
frm.Show();
}
+ /*
private void buttonItem查看数据_Click(object sender, EventArgs e)
{
LogManager.saveLog(Utility.userName, buttonItem查看数据.Text);
@@ -7847,6 +7831,7 @@
globeControl1.Refresh();
}
}
+ * */
///
/// 规划数据入库
///
diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs
index abcf2ec..92ea9e1 100644
--- a/MainFrm.designer.cs
+++ b/MainFrm.designer.cs
@@ -177,8 +177,6 @@
this.断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.横断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.纵断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.道路断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.基线剖面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.拓扑分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.创建拓扑ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上游分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -191,9 +189,6 @@
this.多边形开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.挖方量分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.沿线开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.创建隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.隐藏隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.删除隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.通视分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.可视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -274,7 +269,6 @@
this.buttonItemSJGL7 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL8 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL9 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem查看数据 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemGHRK = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT1 = new DevComponents.DotNetBar.ButtonItem();
@@ -328,12 +322,17 @@
this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem14 = 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.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();
+ this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
+ 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();
@@ -345,19 +344,31 @@
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.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel();
- this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar();
- this.buttonItem87 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem88 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem27 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem();
- this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem();
- this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem();
+ this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel();
+ this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar();
+ this.btn_user_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_resc_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_resc = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_user_role = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_password_edit = new DevComponents.DotNetBar.ButtonItem();
+ this.buttonItemPasswordReset = new DevComponents.DotNetBar.ButtonItem();
this.ribbonTabItem1 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem11 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem6 = new DevComponents.DotNetBar.RibbonTabItem();
@@ -540,14 +551,14 @@
this.contextMenuStripDeleteLayerNode.SuspendLayout();
this.ribbonControl1.SuspendLayout();
this.ribbonPanel15.SuspendLayout();
- this.ribbonPanel6.SuspendLayout();
- this.ribbonPanel2.SuspendLayout();
- this.ribbonPanel3.SuspendLayout();
this.ribbonPanel7.SuspendLayout();
- this.ribbonPanel5.SuspendLayout();
- this.ribbonPanel12.SuspendLayout();
- this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel3.SuspendLayout();
this.ribbonPanel1.SuspendLayout();
+ this.ribbonPanel12.SuspendLayout();
+ this.ribbonPanel5.SuspendLayout();
+ this.ribbonPanel6.SuspendLayout();
+ this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel2.SuspendLayout();
this.panelOfTable.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit();
this.statusStrip2.SuspendLayout();
@@ -1672,9 +1683,7 @@
//
this.断面分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.横断面分析ToolStripMenuItem,
- this.纵断面分析ToolStripMenuItem,
- this.道路断面分析ToolStripMenuItem,
- this.基线剖面分析ToolStripMenuItem});
+ this.纵断面分析ToolStripMenuItem});
this.断面分析ToolStripMenuItem.Name = "断面分析ToolStripMenuItem";
this.断面分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.断面分析ToolStripMenuItem.Text = "断面分析";
@@ -1682,31 +1691,17 @@
// 横断面分析ToolStripMenuItem
//
this.横断面分析ToolStripMenuItem.Name = "横断面分析ToolStripMenuItem";
- this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.横断面分析ToolStripMenuItem.Text = "横断面分析";
this.横断面分析ToolStripMenuItem.Click += new System.EventHandler(this.横断面分析ToolStripMenuItem_Click);
//
// 纵断面分析ToolStripMenuItem
//
this.纵断面分析ToolStripMenuItem.Name = "纵断面分析ToolStripMenuItem";
- this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.纵断面分析ToolStripMenuItem.Text = "纵断面分析";
this.纵断面分析ToolStripMenuItem.Click += new System.EventHandler(this.纵断面分析ToolStripMenuItem_Click);
//
- // 道路断面分析ToolStripMenuItem
- //
- this.道路断面分析ToolStripMenuItem.Name = "道路断面分析ToolStripMenuItem";
- this.道路断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.道路断面分析ToolStripMenuItem.Text = "道路断面分析";
- this.道路断面分析ToolStripMenuItem.Click += new System.EventHandler(this.道路断面分析ToolStripMenuItem_Click);
- //
- // 基线剖面分析ToolStripMenuItem
- //
- this.基线剖面分析ToolStripMenuItem.Name = "基线剖面分析ToolStripMenuItem";
- this.基线剖面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.基线剖面分析ToolStripMenuItem.Text = "基线剖面分析";
- this.基线剖面分析ToolStripMenuItem.Click += new System.EventHandler(this.基线剖面分析ToolStripMenuItem_Click);
- //
// 拓扑分析ToolStripMenuItem
//
this.拓扑分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -1775,10 +1770,7 @@
this.开挖分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.多边形开挖ToolStripMenuItem,
this.挖方量分析ToolStripMenuItem,
- this.沿线开挖ToolStripMenuItem,
- this.创建隧道ToolStripMenuItem,
- this.隐藏隧道ToolStripMenuItem,
- this.删除隧道ToolStripMenuItem});
+ this.沿线开挖ToolStripMenuItem});
this.开挖分析ToolStripMenuItem.Name = "开挖分析ToolStripMenuItem";
this.开挖分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.开挖分析ToolStripMenuItem.Text = "开挖分析";
@@ -1804,27 +1796,6 @@
this.沿线开挖ToolStripMenuItem.Text = "沿线开挖";
this.沿线开挖ToolStripMenuItem.Click += new System.EventHandler(this.沿线开挖ToolStripMenuItem_Click);
//
- // 创建隧道ToolStripMenuItem
- //
- this.创建隧道ToolStripMenuItem.Name = "创建隧道ToolStripMenuItem";
- this.创建隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.创建隧道ToolStripMenuItem.Text = "创建隧道";
- this.创建隧道ToolStripMenuItem.Click += new System.EventHandler(this.创建隧道ToolStripMenuItem_Click);
- //
- // 隐藏隧道ToolStripMenuItem
- //
- this.隐藏隧道ToolStripMenuItem.Name = "隐藏隧道ToolStripMenuItem";
- this.隐藏隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.隐藏隧道ToolStripMenuItem.Text = "隐藏隧道";
- this.隐藏隧道ToolStripMenuItem.Click += new System.EventHandler(this.隐藏隧道ToolStripMenuItem_Click);
- //
- // 删除隧道ToolStripMenuItem
- //
- this.删除隧道ToolStripMenuItem.Name = "删除隧道ToolStripMenuItem";
- this.删除隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.删除隧道ToolStripMenuItem.Text = "删除隧道";
- this.删除隧道ToolStripMenuItem.Click += new System.EventHandler(this.删除隧道ToolStripMenuItem_Click);
- //
// 视域分析ToolStripMenuItem
//
this.视域分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -2172,14 +2143,14 @@
this.ribbonControl1.BackgroundStyle.Class = "";
this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.ribbonControl1.Controls.Add(this.ribbonPanel15);
- this.ribbonControl1.Controls.Add(this.ribbonPanel6);
- this.ribbonControl1.Controls.Add(this.ribbonPanel2);
- this.ribbonControl1.Controls.Add(this.ribbonPanel3);
this.ribbonControl1.Controls.Add(this.ribbonPanel7);
- this.ribbonControl1.Controls.Add(this.ribbonPanel5);
- this.ribbonControl1.Controls.Add(this.ribbonPanel12);
- this.ribbonControl1.Controls.Add(this.ribbonPanel4);
+ 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.ribbonPanel6);
+ 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;
this.ribbonControl1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
@@ -2393,7 +2364,6 @@
this.buttonItemSJGL7,
this.buttonItemSJGL8,
this.buttonItemSJGL9,
- this.buttonItem查看数据,
this.buttonItemGHRK});
this.buttonItemSJGL.SubItemsExpandWidth = 14;
this.buttonItemSJGL.Text = "数据管理";
@@ -2503,13 +2473,6 @@
this.buttonItemSJGL9.Text = "数据备份";
this.buttonItemSJGL9.Click += new System.EventHandler(this.buttonItemSJGL9_Click);
//
- // buttonItem查看数据
- //
- this.buttonItem查看数据.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem查看数据.Image")));
- this.buttonItem查看数据.Name = "buttonItem查看数据";
- this.buttonItem查看数据.Text = "查看数据";
- this.buttonItem查看数据.Click += new System.EventHandler(this.buttonItem查看数据_Click);
- //
// buttonItemGHRK
//
this.buttonItemGHRK.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGHRK.Image")));
@@ -3145,107 +3108,202 @@
this.buttonItem14.Text = "导出施工图";
this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click);
//
- // ribbonPanel5
+ // ribbonPanel3
//
- 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.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.ribbonPanel5.Style.Class = "";
- this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.Style.Class = "";
+ this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel5.StyleMouseDown.Class = "";
- this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.StyleMouseDown.Class = "";
+ this.ribbonPanel3.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;
+ this.ribbonPanel3.StyleMouseOver.Class = "";
+ this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.TabIndex = 40;
+ this.ribbonPanel3.Visible = false;
//
- // ribbonBar2
+ // ribbonBar4
//
- this.ribbonBar2.AutoOverflowEnabled = true;
+ this.ribbonBar4.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar2.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar4.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.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.ribbonBar2.TitleStyle.Class = "";
- this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleStyle.Class = "";
+ this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar2.TitleStyleMouseOver.Class = "";
- this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar2.TitleVisible = false;
+ this.ribbonBar4.TitleStyleMouseOver.Class = "";
+ this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleVisible = false;
//
- // buttonItemHX1
+ // btn_flag
//
- 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);
+ 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);
//
- // buttonItemHX2
+ // slider4ground
//
- 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);
+ 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);
//
- // buttonItemDCTP
+ // ribbonPanel1
//
- 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);
+ this.ribbonPanel1.AutoSize = true;
+ this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
+ this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel1.Controls.Add(this.ribbonBar21);
+ this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel1.Name = "ribbonPanel1";
+ this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
//
- // 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);
+ //
+ this.ribbonPanel1.Style.Class = "";
+ this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseDown.Class = "";
+ this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseOver.Class = "";
+ this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel1.TabIndex = 1;
+ this.ribbonPanel1.Visible = false;
+ //
+ // ribbonBar21
+ //
+ this.ribbonBar21.AutoOverflowEnabled = true;
+ this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundStyle.Class = "";
+ this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.ContainerControlProcessDialogKey = true;
+ this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.buttonItem1,
+ this.sliderGroundTransSet1,
+ this.buttonItem91,
+ this.btnlegendSet,
+ this.buttonItem89,
+ this.btnOutputJPG});
+ this.ribbonBar21.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar21.Name = "ribbonBar21";
+ this.ribbonBar21.Size = new System.Drawing.Size(447, 59);
+ this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar21.TabIndex = 2;
+ this.ribbonBar21.Text = "浏览模式";
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyle.Class = "";
+ this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyleMouseOver.Class = "";
+ this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.TitleVisible = false;
+ //
+ // buttonItem1
+ //
+ this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
+ this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem1.Name = "buttonItem1";
+ this.buttonItem1.SubItemsExpandWidth = 14;
+ this.buttonItem1.Text = "图层管理";
+ this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ //
+ // buttonItem91
+ //
+ this.buttonItem91.ForeColor = System.Drawing.Color.Black;
+ this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
+ this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem91.Name = "buttonItem91";
+ this.buttonItem91.SubItemsExpandWidth = 14;
+ this.buttonItem91.Text = "快速定位";
+ this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ //
+ // btnlegendSet
+ //
+ this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
+ this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnlegendSet.Name = "btnlegendSet";
+ this.btnlegendSet.SubItemsExpandWidth = 14;
+ this.btnlegendSet.Text = "图例";
+ this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ //
+ // buttonItem89
+ //
+ this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
+ this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem89.Name = "buttonItem89";
+ this.buttonItem89.SubItemsExpandWidth = 14;
+ this.buttonItem89.Text = "全屏显示";
+ this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
+ //
+ // btnOutputJPG
+ //
+ this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
+ this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnOutputJPG.Name = "btnOutputJPG";
+ this.btnOutputJPG.SubItemsExpandWidth = 14;
+ this.btnOutputJPG.Text = "导出图片";
+ this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
//
// ribbonPanel12
//
@@ -3253,10 +3311,10 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3295,7 +3353,7 @@
this.buttonItem132});
this.ribbonBar18.Location = new System.Drawing.Point(508, 0);
this.ribbonBar18.Name = "ribbonBar18";
- this.ribbonBar18.Size = new System.Drawing.Size(75, 92);
+ this.ribbonBar18.Size = new System.Drawing.Size(75, 59);
this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar18.TabIndex = 1;
//
@@ -3347,7 +3405,7 @@
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, 92);
+ this.ribbonBar13.Size = new System.Drawing.Size(505, 59);
this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar13.TabIndex = 0;
//
@@ -3417,15 +3475,228 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3463,7 +3734,7 @@
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.Size = new System.Drawing.Size(88, 59);
this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar1.TabIndex = 0;
//
@@ -3487,151 +3758,135 @@
this.btn_document_info.Text = "文档管理";
this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click);
//
- // ribbonPanel1
+ // ribbonPanel2
//
- this.ribbonPanel1.AutoSize = true;
- this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
- this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonPanel1.Controls.Add(this.ribbonBar21);
- this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
- this.ribbonPanel1.Name = "ribbonPanel1";
- this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
- this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
+ this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel2.Controls.Add(this.ribbonBar3);
+ this.ribbonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel2.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel2.Name = "ribbonPanel2";
+ this.ribbonPanel2.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel2.Size = new System.Drawing.Size(1328, 62);
//
//
//
- this.ribbonPanel1.Style.Class = "";
- this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.Style.Class = "";
+ this.ribbonPanel2.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseDown.Class = "";
- this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.StyleMouseDown.Class = "";
+ this.ribbonPanel2.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseOver.Class = "";
- this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonPanel1.TabIndex = 1;
- this.ribbonPanel1.Visible = false;
+ this.ribbonPanel2.StyleMouseOver.Class = "";
+ this.ribbonPanel2.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.TabIndex = 39;
+ this.ribbonPanel2.Visible = false;
//
- // ribbonBar21
+ // ribbonBar3
//
- this.ribbonBar21.AutoOverflowEnabled = true;
- this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ this.ribbonBar3.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar3.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.BackgroundStyle.Class = "";
- this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.ContainerControlProcessDialogKey = true;
- this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
- this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
- this.buttonItem87,
- this.buttonItem88,
- this.buttonItem27,
- this.sliderGroundTransSet1,
- this.buttonItem91,
- this.buttonItem1,
- this.btnlegendSet,
- this.buttonItem89,
- 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.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonBar21.TabIndex = 2;
- this.ribbonBar21.Text = "浏览模式";
+ this.ribbonBar3.BackgroundStyle.Class = "";
+ this.ribbonBar3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.ContainerControlProcessDialogKey = true;
+ this.ribbonBar3.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar3.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.btn_user_info,
+ this.btn_role_info,
+ this.btn_resc_info,
+ this.btn_role_resc,
+ this.btn_user_role,
+ this.btn_password_edit,
+ this.buttonItemPasswordReset});
+ this.ribbonBar3.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar3.Name = "ribbonBar3";
+ this.ribbonBar3.Size = new System.Drawing.Size(551, 59);
+ this.ribbonBar3.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar3.TabIndex = 1;
//
//
//
- this.ribbonBar21.TitleStyle.Class = "";
- this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleStyle.Class = "";
+ this.ribbonBar3.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.TitleStyleMouseOver.Class = "";
- this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.TitleVisible = false;
+ this.ribbonBar3.TitleStyleMouseOver.Class = "";
+ this.ribbonBar3.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleVisible = false;
//
- // buttonItem87
+ // btn_user_info
//
- this.buttonItem87.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem87.Image")));
- this.buttonItem87.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem87.Name = "buttonItem87";
- this.buttonItem87.SubItemsExpandWidth = 14;
- this.buttonItem87.Text = "地上模式";
- this.buttonItem87.Click += new System.EventHandler(this.buttonItem87_Click);
+ this.btn_user_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_info.Image")));
+ this.btn_user_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_info.Name = "btn_user_info";
+ this.btn_user_info.SubItemsExpandWidth = 14;
+ this.btn_user_info.Text = "用户管理";
+ this.btn_user_info.Click += new System.EventHandler(this.btn_user_info_Click);
//
- // buttonItem88
+ // btn_role_info
//
- this.buttonItem88.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem88.Image")));
- this.buttonItem88.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem88.Name = "buttonItem88";
- this.buttonItem88.SubItemsExpandWidth = 14;
- this.buttonItem88.Text = "地下模式";
- this.buttonItem88.Click += new System.EventHandler(this.buttonItem88_Click);
+ this.btn_role_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_info.Image")));
+ this.btn_role_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_info.Name = "btn_role_info";
+ this.btn_role_info.SubItemsExpandWidth = 14;
+ this.btn_role_info.Text = "角色管理";
+ this.btn_role_info.Click += new System.EventHandler(this.btn_role_info_Click);
//
- // buttonItem27
+ // btn_resc_info
//
- this.buttonItem27.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem27.Image")));
- this.buttonItem27.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem27.Name = "buttonItem27";
- this.buttonItem27.SubItemsExpandWidth = 14;
- this.buttonItem27.Text = "行走模式";
- this.buttonItem27.Click += new System.EventHandler(this.buttonItem27_Click);
+ this.btn_resc_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_resc_info.Image")));
+ this.btn_resc_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_resc_info.Name = "btn_resc_info";
+ this.btn_resc_info.SubItemsExpandWidth = 14;
+ this.btn_resc_info.Text = "资源管理";
+ this.btn_resc_info.Click += new System.EventHandler(this.btn_resc_info_Click);
//
- // buttonItem91
+ // btn_role_resc
//
- this.buttonItem91.ForeColor = System.Drawing.Color.Black;
- this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
- this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem91.Name = "buttonItem91";
- this.buttonItem91.SubItemsExpandWidth = 14;
- this.buttonItem91.Text = "快速定位";
- this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ this.btn_role_resc.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_resc.Image")));
+ this.btn_role_resc.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_resc.Name = "btn_role_resc";
+ this.btn_role_resc.SubItemsExpandWidth = 14;
+ this.btn_role_resc.Text = "角色授权";
+ this.btn_role_resc.Click += new System.EventHandler(this.btn_role_resc_Click);
//
- // buttonItem1
+ // btn_user_role
//
- this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
- this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem1.Name = "buttonItem1";
- this.buttonItem1.SubItemsExpandWidth = 14;
- this.buttonItem1.Text = "图层管理";
- this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ this.btn_user_role.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_role.Image")));
+ this.btn_user_role.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_role.Name = "btn_user_role";
+ this.btn_user_role.SubItemsExpandWidth = 14;
+ this.btn_user_role.Text = "用户授权";
+ this.btn_user_role.Click += new System.EventHandler(this.btn_user_role_Click);
//
- // btnlegendSet
+ // btn_password_edit
//
- this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
- this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnlegendSet.Name = "btnlegendSet";
- this.btnlegendSet.SubItemsExpandWidth = 14;
- this.btnlegendSet.Text = "图例";
- this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ this.btn_password_edit.Image = ((System.Drawing.Image)(resources.GetObject("btn_password_edit.Image")));
+ this.btn_password_edit.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_password_edit.Name = "btn_password_edit";
+ this.btn_password_edit.SubItemsExpandWidth = 14;
+ this.btn_password_edit.Text = "密码修改";
+ this.btn_password_edit.Click += new System.EventHandler(this.btn_password_edit_Click);
//
- // buttonItem89
+ // buttonItemPasswordReset
//
- this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
- this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem89.Name = "buttonItem89";
- this.buttonItem89.SubItemsExpandWidth = 14;
- this.buttonItem89.Text = "全屏显示";
- this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
- //
- // btnOutputJPG
- //
- this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
- this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnOutputJPG.Name = "btnOutputJPG";
- this.btnOutputJPG.SubItemsExpandWidth = 14;
- this.btnOutputJPG.Text = "导出图片";
- this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
+ this.buttonItemPasswordReset.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemPasswordReset.Image")));
+ this.buttonItemPasswordReset.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItemPasswordReset.Name = "buttonItemPasswordReset";
+ this.buttonItemPasswordReset.SubItemsExpandWidth = 14;
+ this.buttonItemPasswordReset.Text = "重置密码";
+ this.buttonItemPasswordReset.Click += new System.EventHandler(this.buttonItemPasswordReset_Click);
//
// ribbonTabItem1
//
@@ -3992,6 +4247,7 @@
this.toolStripDropDownButton3.Name = "toolStripDropDownButton3";
this.toolStripDropDownButton3.Size = new System.Drawing.Size(75, 21);
this.toolStripDropDownButton3.Text = "导出xls文件";
+ this.toolStripDropDownButton3.Visible = false;
this.toolStripDropDownButton3.Click += new System.EventHandler(this.toolStripDropDownButton3_Click);
//
// expandableSplitter2
@@ -4876,7 +5132,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;
@@ -4890,7 +5146,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;
@@ -4915,12 +5171,12 @@
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
@@ -4941,7 +5197,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;
@@ -4956,7 +5212,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;
@@ -4966,7 +5222,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;
@@ -4979,7 +5235,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;
@@ -5010,12 +5266,12 @@
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);
//
@@ -5064,7 +5320,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;
@@ -5077,7 +5333,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;
@@ -5092,7 +5348,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;
@@ -5106,7 +5362,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;
@@ -5124,7 +5380,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;
@@ -5142,7 +5398,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;
@@ -5159,7 +5415,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;
@@ -5174,7 +5430,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;
@@ -5187,7 +5443,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;
@@ -5241,7 +5497,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;
@@ -5298,7 +5554,7 @@
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
@@ -5348,7 +5604,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;
@@ -5383,7 +5639,7 @@
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);
//
@@ -5891,14 +6147,14 @@
this.ribbonControl1.ResumeLayout(false);
this.ribbonControl1.PerformLayout();
this.ribbonPanel15.ResumeLayout(false);
- this.ribbonPanel6.ResumeLayout(false);
- this.ribbonPanel2.ResumeLayout(false);
- this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel7.ResumeLayout(false);
- this.ribbonPanel5.ResumeLayout(false);
- this.ribbonPanel12.ResumeLayout(false);
- this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel1.ResumeLayout(false);
+ this.ribbonPanel12.ResumeLayout(false);
+ this.ribbonPanel5.ResumeLayout(false);
+ this.ribbonPanel6.ResumeLayout(false);
+ this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel2.ResumeLayout(false);
this.panelOfTable.ResumeLayout(false);
this.panelOfTable.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).EndInit();
@@ -5959,8 +6215,6 @@
private RibbonControl ribbonControl1;
private RibbonPanel ribbonPanel1;
private RibbonBar ribbonBar21;
- private ButtonItem buttonItem87;
- private ButtonItem buttonItem88;
private SliderItem sliderGroundTransSet1;
private ButtonItem buttonItem89;
private ButtonItem buttonItem91;
@@ -6020,7 +6274,6 @@
private ButtonItem buttonItem16;
private ButtonItem buttonItem26;
private GalleryContainer galleryContainer4;
- private ButtonItem buttonItem27;
private ButtonItem buttonItem51;
private ControlContainerItem controlContainerItem5;
private PrintDocument printDocument1;
@@ -6153,8 +6406,6 @@
private ToolStripMenuItem 断面分析ToolStripMenuItem;
private ToolStripMenuItem 横断面分析ToolStripMenuItem;
private ToolStripMenuItem 纵断面分析ToolStripMenuItem;
- private ToolStripMenuItem 道路断面分析ToolStripMenuItem;
- private ToolStripMenuItem 基线剖面分析ToolStripMenuItem;
private ToolStripMenuItem 拓扑分析ToolStripMenuItem;
private ToolStripMenuItem 创建拓扑ToolStripMenuItem;
private ToolStripMenuItem 上游分析ToolStripMenuItem;
@@ -6176,9 +6427,6 @@
private ToolStripMenuItem 多边形开挖ToolStripMenuItem;
private ToolStripMenuItem 挖方量分析ToolStripMenuItem;
private ToolStripMenuItem 沿线开挖ToolStripMenuItem;
- private ToolStripMenuItem 创建隧道ToolStripMenuItem;
- private ToolStripMenuItem 隐藏隧道ToolStripMenuItem;
- private ToolStripMenuItem 删除隧道ToolStripMenuItem;
private ToolStripMenuItem 全区域统计ToolStripMenuItem;
private ToolStripMenuItem 管线长度统计ToolStripMenuItem;
private ToolStripMenuItem 阀门数量统计ToolStripMenuItem;
@@ -6230,7 +6478,6 @@
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem;
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem1;
private ButtonItem btn_check_history;
- private ButtonItem buttonItem查看数据;
private ButtonItem buttonItemGHRK;
private RibbonPanel ribbonPanel2;
private RibbonBar ribbonBar3;
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 24f70a6..bc11a9d 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;
@@ -330,6 +331,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(沿线开挖ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("创建隧道") < 0)
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(创建隧道ToolStripMenuItem);
@@ -342,6 +344,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(删除隧道ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -402,6 +405,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(纵断面分析ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("道路断面分析") < 0)
{
断面分析ToolStripMenuItem.DropDownItems.Remove(道路断面分析ToolStripMenuItem);
@@ -410,6 +414,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(基线剖面分析ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -774,6 +779,7 @@
}
else
{
+ /*
if (Utility.userRole.IndexOf("地上模式") < 0)
{
buttonItem87.Visible = false;
@@ -786,6 +792,8 @@
{
buttonItem27.Visible = false;
}
+ * */
+
if (Utility.userRole.IndexOf("透明度设置") < 0)
{
sliderGroundTransSet1.Visible = false;
@@ -993,7 +1001,7 @@
splitContainer1.Panel2Collapsed = true;
- buttonItem87.Checked = true; //默认地上模式
+ //buttonItem87.Checked = true; //默认地上模式
ribbonTabItem1.Select(); //初始化状态为浏览
sideBarPanelItem3.Visible = false;
@@ -2447,6 +2455,7 @@
return null;
}
+ /*
///
/// 地上模式 菜单按钮
///
@@ -2538,6 +2547,7 @@
globeControl1.Globe.CameraMode = EnumCameraMode.Walk;
}
+ */
///
/// 地面透明度设置 菜单
///
@@ -4701,6 +4711,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;
+ }
+
///
/// 碰撞审查
///
@@ -4708,30 +4743,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();
}
///
/// 覆土审查
@@ -4742,26 +4763,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();
}
///
/// 水平净距审查
@@ -4772,26 +4781,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();
}
///
/// 垂直净距审查
@@ -4803,33 +4800,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
@@ -5842,6 +5821,7 @@
FrmProfileAnalysis frm = new FrmProfileAnalysis(globeControl1, feats);
frm.Show(this);
}
+ /*
///
/// 道路断面分析
///
@@ -5854,6 +5834,7 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.DLDM_Analysis;
}
+
///
/// 基线剖面分析
///
@@ -5865,7 +5846,8 @@
globeControl1.Globe.TrackPolylineTool.VerticalLineVisible = true;
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.JXPM_Analysis;
- }
+ }
+ * * */
#endregion
///
/// 创建拓扑
@@ -6059,6 +6041,8 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.YXKW_Analysis;
}
+
+ /*
///
/// 创建隧道
///
@@ -6131,6 +6115,7 @@
MessageBox.Show("请选中要删除的隧道!", "提示");
}
}
+ * */
///
/// 通视分析
///
@@ -7563,9 +7548,7 @@
modelBuilder.batchInsert(dataSpace, redDt, redFeatures);
}
-
#endregion
-
}
#endregion
}
@@ -7835,6 +7818,7 @@
frm.Show();
}
+ /*
private void buttonItem查看数据_Click(object sender, EventArgs e)
{
LogManager.saveLog(Utility.userName, buttonItem查看数据.Text);
@@ -7847,6 +7831,7 @@
globeControl1.Refresh();
}
}
+ * */
///
/// 规划数据入库
///
diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs
index abcf2ec..92ea9e1 100644
--- a/MainFrm.designer.cs
+++ b/MainFrm.designer.cs
@@ -177,8 +177,6 @@
this.断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.横断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.纵断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.道路断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.基线剖面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.拓扑分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.创建拓扑ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上游分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -191,9 +189,6 @@
this.多边形开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.挖方量分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.沿线开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.创建隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.隐藏隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.删除隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.通视分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.可视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -274,7 +269,6 @@
this.buttonItemSJGL7 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL8 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL9 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem查看数据 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemGHRK = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT1 = new DevComponents.DotNetBar.ButtonItem();
@@ -328,12 +322,17 @@
this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem14 = 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.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();
+ this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
+ 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();
@@ -345,19 +344,31 @@
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.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel();
- this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar();
- this.buttonItem87 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem88 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem27 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem();
- this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem();
- this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem();
+ this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel();
+ this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar();
+ this.btn_user_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_resc_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_resc = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_user_role = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_password_edit = new DevComponents.DotNetBar.ButtonItem();
+ this.buttonItemPasswordReset = new DevComponents.DotNetBar.ButtonItem();
this.ribbonTabItem1 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem11 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem6 = new DevComponents.DotNetBar.RibbonTabItem();
@@ -540,14 +551,14 @@
this.contextMenuStripDeleteLayerNode.SuspendLayout();
this.ribbonControl1.SuspendLayout();
this.ribbonPanel15.SuspendLayout();
- this.ribbonPanel6.SuspendLayout();
- this.ribbonPanel2.SuspendLayout();
- this.ribbonPanel3.SuspendLayout();
this.ribbonPanel7.SuspendLayout();
- this.ribbonPanel5.SuspendLayout();
- this.ribbonPanel12.SuspendLayout();
- this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel3.SuspendLayout();
this.ribbonPanel1.SuspendLayout();
+ this.ribbonPanel12.SuspendLayout();
+ this.ribbonPanel5.SuspendLayout();
+ this.ribbonPanel6.SuspendLayout();
+ this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel2.SuspendLayout();
this.panelOfTable.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit();
this.statusStrip2.SuspendLayout();
@@ -1672,9 +1683,7 @@
//
this.断面分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.横断面分析ToolStripMenuItem,
- this.纵断面分析ToolStripMenuItem,
- this.道路断面分析ToolStripMenuItem,
- this.基线剖面分析ToolStripMenuItem});
+ this.纵断面分析ToolStripMenuItem});
this.断面分析ToolStripMenuItem.Name = "断面分析ToolStripMenuItem";
this.断面分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.断面分析ToolStripMenuItem.Text = "断面分析";
@@ -1682,31 +1691,17 @@
// 横断面分析ToolStripMenuItem
//
this.横断面分析ToolStripMenuItem.Name = "横断面分析ToolStripMenuItem";
- this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.横断面分析ToolStripMenuItem.Text = "横断面分析";
this.横断面分析ToolStripMenuItem.Click += new System.EventHandler(this.横断面分析ToolStripMenuItem_Click);
//
// 纵断面分析ToolStripMenuItem
//
this.纵断面分析ToolStripMenuItem.Name = "纵断面分析ToolStripMenuItem";
- this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.纵断面分析ToolStripMenuItem.Text = "纵断面分析";
this.纵断面分析ToolStripMenuItem.Click += new System.EventHandler(this.纵断面分析ToolStripMenuItem_Click);
//
- // 道路断面分析ToolStripMenuItem
- //
- this.道路断面分析ToolStripMenuItem.Name = "道路断面分析ToolStripMenuItem";
- this.道路断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.道路断面分析ToolStripMenuItem.Text = "道路断面分析";
- this.道路断面分析ToolStripMenuItem.Click += new System.EventHandler(this.道路断面分析ToolStripMenuItem_Click);
- //
- // 基线剖面分析ToolStripMenuItem
- //
- this.基线剖面分析ToolStripMenuItem.Name = "基线剖面分析ToolStripMenuItem";
- this.基线剖面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.基线剖面分析ToolStripMenuItem.Text = "基线剖面分析";
- this.基线剖面分析ToolStripMenuItem.Click += new System.EventHandler(this.基线剖面分析ToolStripMenuItem_Click);
- //
// 拓扑分析ToolStripMenuItem
//
this.拓扑分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -1775,10 +1770,7 @@
this.开挖分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.多边形开挖ToolStripMenuItem,
this.挖方量分析ToolStripMenuItem,
- this.沿线开挖ToolStripMenuItem,
- this.创建隧道ToolStripMenuItem,
- this.隐藏隧道ToolStripMenuItem,
- this.删除隧道ToolStripMenuItem});
+ this.沿线开挖ToolStripMenuItem});
this.开挖分析ToolStripMenuItem.Name = "开挖分析ToolStripMenuItem";
this.开挖分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.开挖分析ToolStripMenuItem.Text = "开挖分析";
@@ -1804,27 +1796,6 @@
this.沿线开挖ToolStripMenuItem.Text = "沿线开挖";
this.沿线开挖ToolStripMenuItem.Click += new System.EventHandler(this.沿线开挖ToolStripMenuItem_Click);
//
- // 创建隧道ToolStripMenuItem
- //
- this.创建隧道ToolStripMenuItem.Name = "创建隧道ToolStripMenuItem";
- this.创建隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.创建隧道ToolStripMenuItem.Text = "创建隧道";
- this.创建隧道ToolStripMenuItem.Click += new System.EventHandler(this.创建隧道ToolStripMenuItem_Click);
- //
- // 隐藏隧道ToolStripMenuItem
- //
- this.隐藏隧道ToolStripMenuItem.Name = "隐藏隧道ToolStripMenuItem";
- this.隐藏隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.隐藏隧道ToolStripMenuItem.Text = "隐藏隧道";
- this.隐藏隧道ToolStripMenuItem.Click += new System.EventHandler(this.隐藏隧道ToolStripMenuItem_Click);
- //
- // 删除隧道ToolStripMenuItem
- //
- this.删除隧道ToolStripMenuItem.Name = "删除隧道ToolStripMenuItem";
- this.删除隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.删除隧道ToolStripMenuItem.Text = "删除隧道";
- this.删除隧道ToolStripMenuItem.Click += new System.EventHandler(this.删除隧道ToolStripMenuItem_Click);
- //
// 视域分析ToolStripMenuItem
//
this.视域分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -2172,14 +2143,14 @@
this.ribbonControl1.BackgroundStyle.Class = "";
this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.ribbonControl1.Controls.Add(this.ribbonPanel15);
- this.ribbonControl1.Controls.Add(this.ribbonPanel6);
- this.ribbonControl1.Controls.Add(this.ribbonPanel2);
- this.ribbonControl1.Controls.Add(this.ribbonPanel3);
this.ribbonControl1.Controls.Add(this.ribbonPanel7);
- this.ribbonControl1.Controls.Add(this.ribbonPanel5);
- this.ribbonControl1.Controls.Add(this.ribbonPanel12);
- this.ribbonControl1.Controls.Add(this.ribbonPanel4);
+ 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.ribbonPanel6);
+ 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;
this.ribbonControl1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
@@ -2393,7 +2364,6 @@
this.buttonItemSJGL7,
this.buttonItemSJGL8,
this.buttonItemSJGL9,
- this.buttonItem查看数据,
this.buttonItemGHRK});
this.buttonItemSJGL.SubItemsExpandWidth = 14;
this.buttonItemSJGL.Text = "数据管理";
@@ -2503,13 +2473,6 @@
this.buttonItemSJGL9.Text = "数据备份";
this.buttonItemSJGL9.Click += new System.EventHandler(this.buttonItemSJGL9_Click);
//
- // buttonItem查看数据
- //
- this.buttonItem查看数据.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem查看数据.Image")));
- this.buttonItem查看数据.Name = "buttonItem查看数据";
- this.buttonItem查看数据.Text = "查看数据";
- this.buttonItem查看数据.Click += new System.EventHandler(this.buttonItem查看数据_Click);
- //
// buttonItemGHRK
//
this.buttonItemGHRK.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGHRK.Image")));
@@ -3145,107 +3108,202 @@
this.buttonItem14.Text = "导出施工图";
this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click);
//
- // ribbonPanel5
+ // ribbonPanel3
//
- 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.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.ribbonPanel5.Style.Class = "";
- this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.Style.Class = "";
+ this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel5.StyleMouseDown.Class = "";
- this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.StyleMouseDown.Class = "";
+ this.ribbonPanel3.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;
+ this.ribbonPanel3.StyleMouseOver.Class = "";
+ this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.TabIndex = 40;
+ this.ribbonPanel3.Visible = false;
//
- // ribbonBar2
+ // ribbonBar4
//
- this.ribbonBar2.AutoOverflowEnabled = true;
+ this.ribbonBar4.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar2.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar4.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.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.ribbonBar2.TitleStyle.Class = "";
- this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleStyle.Class = "";
+ this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar2.TitleStyleMouseOver.Class = "";
- this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar2.TitleVisible = false;
+ this.ribbonBar4.TitleStyleMouseOver.Class = "";
+ this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleVisible = false;
//
- // buttonItemHX1
+ // btn_flag
//
- 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);
+ 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);
//
- // buttonItemHX2
+ // slider4ground
//
- 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);
+ 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);
//
- // buttonItemDCTP
+ // ribbonPanel1
//
- 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);
+ this.ribbonPanel1.AutoSize = true;
+ this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
+ this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel1.Controls.Add(this.ribbonBar21);
+ this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel1.Name = "ribbonPanel1";
+ this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
//
- // 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);
+ //
+ this.ribbonPanel1.Style.Class = "";
+ this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseDown.Class = "";
+ this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseOver.Class = "";
+ this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel1.TabIndex = 1;
+ this.ribbonPanel1.Visible = false;
+ //
+ // ribbonBar21
+ //
+ this.ribbonBar21.AutoOverflowEnabled = true;
+ this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundStyle.Class = "";
+ this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.ContainerControlProcessDialogKey = true;
+ this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.buttonItem1,
+ this.sliderGroundTransSet1,
+ this.buttonItem91,
+ this.btnlegendSet,
+ this.buttonItem89,
+ this.btnOutputJPG});
+ this.ribbonBar21.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar21.Name = "ribbonBar21";
+ this.ribbonBar21.Size = new System.Drawing.Size(447, 59);
+ this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar21.TabIndex = 2;
+ this.ribbonBar21.Text = "浏览模式";
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyle.Class = "";
+ this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyleMouseOver.Class = "";
+ this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.TitleVisible = false;
+ //
+ // buttonItem1
+ //
+ this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
+ this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem1.Name = "buttonItem1";
+ this.buttonItem1.SubItemsExpandWidth = 14;
+ this.buttonItem1.Text = "图层管理";
+ this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ //
+ // buttonItem91
+ //
+ this.buttonItem91.ForeColor = System.Drawing.Color.Black;
+ this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
+ this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem91.Name = "buttonItem91";
+ this.buttonItem91.SubItemsExpandWidth = 14;
+ this.buttonItem91.Text = "快速定位";
+ this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ //
+ // btnlegendSet
+ //
+ this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
+ this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnlegendSet.Name = "btnlegendSet";
+ this.btnlegendSet.SubItemsExpandWidth = 14;
+ this.btnlegendSet.Text = "图例";
+ this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ //
+ // buttonItem89
+ //
+ this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
+ this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem89.Name = "buttonItem89";
+ this.buttonItem89.SubItemsExpandWidth = 14;
+ this.buttonItem89.Text = "全屏显示";
+ this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
+ //
+ // btnOutputJPG
+ //
+ this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
+ this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnOutputJPG.Name = "btnOutputJPG";
+ this.btnOutputJPG.SubItemsExpandWidth = 14;
+ this.btnOutputJPG.Text = "导出图片";
+ this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
//
// ribbonPanel12
//
@@ -3253,10 +3311,10 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3295,7 +3353,7 @@
this.buttonItem132});
this.ribbonBar18.Location = new System.Drawing.Point(508, 0);
this.ribbonBar18.Name = "ribbonBar18";
- this.ribbonBar18.Size = new System.Drawing.Size(75, 92);
+ this.ribbonBar18.Size = new System.Drawing.Size(75, 59);
this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar18.TabIndex = 1;
//
@@ -3347,7 +3405,7 @@
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, 92);
+ this.ribbonBar13.Size = new System.Drawing.Size(505, 59);
this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar13.TabIndex = 0;
//
@@ -3417,15 +3475,228 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3463,7 +3734,7 @@
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.Size = new System.Drawing.Size(88, 59);
this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar1.TabIndex = 0;
//
@@ -3487,151 +3758,135 @@
this.btn_document_info.Text = "文档管理";
this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click);
//
- // ribbonPanel1
+ // ribbonPanel2
//
- this.ribbonPanel1.AutoSize = true;
- this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
- this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonPanel1.Controls.Add(this.ribbonBar21);
- this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
- this.ribbonPanel1.Name = "ribbonPanel1";
- this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
- this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
+ this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel2.Controls.Add(this.ribbonBar3);
+ this.ribbonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel2.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel2.Name = "ribbonPanel2";
+ this.ribbonPanel2.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel2.Size = new System.Drawing.Size(1328, 62);
//
//
//
- this.ribbonPanel1.Style.Class = "";
- this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.Style.Class = "";
+ this.ribbonPanel2.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseDown.Class = "";
- this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.StyleMouseDown.Class = "";
+ this.ribbonPanel2.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseOver.Class = "";
- this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonPanel1.TabIndex = 1;
- this.ribbonPanel1.Visible = false;
+ this.ribbonPanel2.StyleMouseOver.Class = "";
+ this.ribbonPanel2.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.TabIndex = 39;
+ this.ribbonPanel2.Visible = false;
//
- // ribbonBar21
+ // ribbonBar3
//
- this.ribbonBar21.AutoOverflowEnabled = true;
- this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ this.ribbonBar3.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar3.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.BackgroundStyle.Class = "";
- this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.ContainerControlProcessDialogKey = true;
- this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
- this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
- this.buttonItem87,
- this.buttonItem88,
- this.buttonItem27,
- this.sliderGroundTransSet1,
- this.buttonItem91,
- this.buttonItem1,
- this.btnlegendSet,
- this.buttonItem89,
- 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.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonBar21.TabIndex = 2;
- this.ribbonBar21.Text = "浏览模式";
+ this.ribbonBar3.BackgroundStyle.Class = "";
+ this.ribbonBar3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.ContainerControlProcessDialogKey = true;
+ this.ribbonBar3.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar3.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.btn_user_info,
+ this.btn_role_info,
+ this.btn_resc_info,
+ this.btn_role_resc,
+ this.btn_user_role,
+ this.btn_password_edit,
+ this.buttonItemPasswordReset});
+ this.ribbonBar3.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar3.Name = "ribbonBar3";
+ this.ribbonBar3.Size = new System.Drawing.Size(551, 59);
+ this.ribbonBar3.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar3.TabIndex = 1;
//
//
//
- this.ribbonBar21.TitleStyle.Class = "";
- this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleStyle.Class = "";
+ this.ribbonBar3.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.TitleStyleMouseOver.Class = "";
- this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.TitleVisible = false;
+ this.ribbonBar3.TitleStyleMouseOver.Class = "";
+ this.ribbonBar3.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleVisible = false;
//
- // buttonItem87
+ // btn_user_info
//
- this.buttonItem87.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem87.Image")));
- this.buttonItem87.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem87.Name = "buttonItem87";
- this.buttonItem87.SubItemsExpandWidth = 14;
- this.buttonItem87.Text = "地上模式";
- this.buttonItem87.Click += new System.EventHandler(this.buttonItem87_Click);
+ this.btn_user_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_info.Image")));
+ this.btn_user_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_info.Name = "btn_user_info";
+ this.btn_user_info.SubItemsExpandWidth = 14;
+ this.btn_user_info.Text = "用户管理";
+ this.btn_user_info.Click += new System.EventHandler(this.btn_user_info_Click);
//
- // buttonItem88
+ // btn_role_info
//
- this.buttonItem88.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem88.Image")));
- this.buttonItem88.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem88.Name = "buttonItem88";
- this.buttonItem88.SubItemsExpandWidth = 14;
- this.buttonItem88.Text = "地下模式";
- this.buttonItem88.Click += new System.EventHandler(this.buttonItem88_Click);
+ this.btn_role_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_info.Image")));
+ this.btn_role_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_info.Name = "btn_role_info";
+ this.btn_role_info.SubItemsExpandWidth = 14;
+ this.btn_role_info.Text = "角色管理";
+ this.btn_role_info.Click += new System.EventHandler(this.btn_role_info_Click);
//
- // buttonItem27
+ // btn_resc_info
//
- this.buttonItem27.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem27.Image")));
- this.buttonItem27.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem27.Name = "buttonItem27";
- this.buttonItem27.SubItemsExpandWidth = 14;
- this.buttonItem27.Text = "行走模式";
- this.buttonItem27.Click += new System.EventHandler(this.buttonItem27_Click);
+ this.btn_resc_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_resc_info.Image")));
+ this.btn_resc_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_resc_info.Name = "btn_resc_info";
+ this.btn_resc_info.SubItemsExpandWidth = 14;
+ this.btn_resc_info.Text = "资源管理";
+ this.btn_resc_info.Click += new System.EventHandler(this.btn_resc_info_Click);
//
- // buttonItem91
+ // btn_role_resc
//
- this.buttonItem91.ForeColor = System.Drawing.Color.Black;
- this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
- this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem91.Name = "buttonItem91";
- this.buttonItem91.SubItemsExpandWidth = 14;
- this.buttonItem91.Text = "快速定位";
- this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ this.btn_role_resc.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_resc.Image")));
+ this.btn_role_resc.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_resc.Name = "btn_role_resc";
+ this.btn_role_resc.SubItemsExpandWidth = 14;
+ this.btn_role_resc.Text = "角色授权";
+ this.btn_role_resc.Click += new System.EventHandler(this.btn_role_resc_Click);
//
- // buttonItem1
+ // btn_user_role
//
- this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
- this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem1.Name = "buttonItem1";
- this.buttonItem1.SubItemsExpandWidth = 14;
- this.buttonItem1.Text = "图层管理";
- this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ this.btn_user_role.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_role.Image")));
+ this.btn_user_role.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_role.Name = "btn_user_role";
+ this.btn_user_role.SubItemsExpandWidth = 14;
+ this.btn_user_role.Text = "用户授权";
+ this.btn_user_role.Click += new System.EventHandler(this.btn_user_role_Click);
//
- // btnlegendSet
+ // btn_password_edit
//
- this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
- this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnlegendSet.Name = "btnlegendSet";
- this.btnlegendSet.SubItemsExpandWidth = 14;
- this.btnlegendSet.Text = "图例";
- this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ this.btn_password_edit.Image = ((System.Drawing.Image)(resources.GetObject("btn_password_edit.Image")));
+ this.btn_password_edit.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_password_edit.Name = "btn_password_edit";
+ this.btn_password_edit.SubItemsExpandWidth = 14;
+ this.btn_password_edit.Text = "密码修改";
+ this.btn_password_edit.Click += new System.EventHandler(this.btn_password_edit_Click);
//
- // buttonItem89
+ // buttonItemPasswordReset
//
- this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
- this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem89.Name = "buttonItem89";
- this.buttonItem89.SubItemsExpandWidth = 14;
- this.buttonItem89.Text = "全屏显示";
- this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
- //
- // btnOutputJPG
- //
- this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
- this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnOutputJPG.Name = "btnOutputJPG";
- this.btnOutputJPG.SubItemsExpandWidth = 14;
- this.btnOutputJPG.Text = "导出图片";
- this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
+ this.buttonItemPasswordReset.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemPasswordReset.Image")));
+ this.buttonItemPasswordReset.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItemPasswordReset.Name = "buttonItemPasswordReset";
+ this.buttonItemPasswordReset.SubItemsExpandWidth = 14;
+ this.buttonItemPasswordReset.Text = "重置密码";
+ this.buttonItemPasswordReset.Click += new System.EventHandler(this.buttonItemPasswordReset_Click);
//
// ribbonTabItem1
//
@@ -3992,6 +4247,7 @@
this.toolStripDropDownButton3.Name = "toolStripDropDownButton3";
this.toolStripDropDownButton3.Size = new System.Drawing.Size(75, 21);
this.toolStripDropDownButton3.Text = "导出xls文件";
+ this.toolStripDropDownButton3.Visible = false;
this.toolStripDropDownButton3.Click += new System.EventHandler(this.toolStripDropDownButton3_Click);
//
// expandableSplitter2
@@ -4876,7 +5132,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;
@@ -4890,7 +5146,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;
@@ -4915,12 +5171,12 @@
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
@@ -4941,7 +5197,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;
@@ -4956,7 +5212,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;
@@ -4966,7 +5222,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;
@@ -4979,7 +5235,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;
@@ -5010,12 +5266,12 @@
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);
//
@@ -5064,7 +5320,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;
@@ -5077,7 +5333,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;
@@ -5092,7 +5348,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;
@@ -5106,7 +5362,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;
@@ -5124,7 +5380,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;
@@ -5142,7 +5398,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;
@@ -5159,7 +5415,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;
@@ -5174,7 +5430,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;
@@ -5187,7 +5443,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;
@@ -5241,7 +5497,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;
@@ -5298,7 +5554,7 @@
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
@@ -5348,7 +5604,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;
@@ -5383,7 +5639,7 @@
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);
//
@@ -5891,14 +6147,14 @@
this.ribbonControl1.ResumeLayout(false);
this.ribbonControl1.PerformLayout();
this.ribbonPanel15.ResumeLayout(false);
- this.ribbonPanel6.ResumeLayout(false);
- this.ribbonPanel2.ResumeLayout(false);
- this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel7.ResumeLayout(false);
- this.ribbonPanel5.ResumeLayout(false);
- this.ribbonPanel12.ResumeLayout(false);
- this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel1.ResumeLayout(false);
+ this.ribbonPanel12.ResumeLayout(false);
+ this.ribbonPanel5.ResumeLayout(false);
+ this.ribbonPanel6.ResumeLayout(false);
+ this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel2.ResumeLayout(false);
this.panelOfTable.ResumeLayout(false);
this.panelOfTable.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).EndInit();
@@ -5959,8 +6215,6 @@
private RibbonControl ribbonControl1;
private RibbonPanel ribbonPanel1;
private RibbonBar ribbonBar21;
- private ButtonItem buttonItem87;
- private ButtonItem buttonItem88;
private SliderItem sliderGroundTransSet1;
private ButtonItem buttonItem89;
private ButtonItem buttonItem91;
@@ -6020,7 +6274,6 @@
private ButtonItem buttonItem16;
private ButtonItem buttonItem26;
private GalleryContainer galleryContainer4;
- private ButtonItem buttonItem27;
private ButtonItem buttonItem51;
private ControlContainerItem controlContainerItem5;
private PrintDocument printDocument1;
@@ -6153,8 +6406,6 @@
private ToolStripMenuItem 断面分析ToolStripMenuItem;
private ToolStripMenuItem 横断面分析ToolStripMenuItem;
private ToolStripMenuItem 纵断面分析ToolStripMenuItem;
- private ToolStripMenuItem 道路断面分析ToolStripMenuItem;
- private ToolStripMenuItem 基线剖面分析ToolStripMenuItem;
private ToolStripMenuItem 拓扑分析ToolStripMenuItem;
private ToolStripMenuItem 创建拓扑ToolStripMenuItem;
private ToolStripMenuItem 上游分析ToolStripMenuItem;
@@ -6176,9 +6427,6 @@
private ToolStripMenuItem 多边形开挖ToolStripMenuItem;
private ToolStripMenuItem 挖方量分析ToolStripMenuItem;
private ToolStripMenuItem 沿线开挖ToolStripMenuItem;
- private ToolStripMenuItem 创建隧道ToolStripMenuItem;
- private ToolStripMenuItem 隐藏隧道ToolStripMenuItem;
- private ToolStripMenuItem 删除隧道ToolStripMenuItem;
private ToolStripMenuItem 全区域统计ToolStripMenuItem;
private ToolStripMenuItem 管线长度统计ToolStripMenuItem;
private ToolStripMenuItem 阀门数量统计ToolStripMenuItem;
@@ -6230,7 +6478,6 @@
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem;
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem1;
private ButtonItem btn_check_history;
- private ButtonItem buttonItem查看数据;
private ButtonItem buttonItemGHRK;
private RibbonPanel ribbonPanel2;
private RibbonBar ribbonBar3;
diff --git a/MainFrm.resx b/MainFrm.resx
index f3955ec..7507c41 100644
--- a/MainFrm.resx
+++ b/MainFrm.resx
@@ -1127,40 +1127,6 @@
pdYK/uczRU8882zI+QPBTkk4sL23wAAAAABJRU5ErkJggg==
-
-
- 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
@@ -1640,6 +1606,506 @@
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
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1
+ RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFFRUUzNDdFNEFGMTExRTQ5M0I5QzUwRjVCODdC
+ MERFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFFRUUzNDdENEFGMTExRTQ5M0I5QzUwRjVCODdC
+ MERFIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkI0NEVFQkRFRjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz4Ym8PVAAAC+UlEQVRIS6WVbUhTYRTHr5tuc073YoSmmyuwNPWLKdaHEgpL
+ ISg/VB8Ugj5oRi9C9iEDe8UKMzDKKRVIRfRCaR8Ko8xEK6PMbDInmqlroKit+YYiejrnaa47dreye+DH
+ s+f8z/M/57lw77jPV3Wi8BcAwHFtFdqlgqe4IERCe3/BGrwv1y4VIPC8CpEwJx/BGrRc1PwrAYjsTZkW
+ uh6vBPz91yaswatzal8oXp5R72k4q65FBnEPjaUasNTFgfNrGpjvxQDl0MdnE9ag/mSYF89KwnbiOvCx
+ xgj9zSkwZk2HKXsWTH7PhElbBoyZY+GHJQU+3dID1vm/yZPiUA/qjocewHWhr2kdTroZbO9SoeNBLDRd
+ iYCnpzTQdjsGRtqTofVmNGAdaFesAV30WgjXJ0K4IanSZfsnHhap3Nw/qsrFdWEQTTtr46G+dBncLVRZ
+ qvJDTBuSjdDd1QG1xWpoMUUB1oG1uwcGbHZwOCdgdm6eGtBtPOPO4ZBFopDxL48SANf5qjxl3aEseTaW
+ GDSRq2t00fFsUtQYGpxcGxUHOn0CM3ajT6z+7eyKG/uVjOv5StPrKiNU5ym78zPkO1EyIMuRMB1e/+fE
+ NIxPzQDWQu+3AcbwqAMmpmdhambOjdctru0LJpTIeMXe4IYkgzQO05GIGpHjRCb+hNSMbuI1OR/+LS7n
+ KrhLOYrs8hxFe5JeasQUTR2CSEmjA2POaTcjjkkYGnWylZ/nQ2fIm8WF3XLu/C552ZGtsjTc0sdFiUiw
+ qNI90f9TyZ3OlnElO2QFaEpTk7mUclRgG3aIgjy4E9tlXFGmLBWNFUgg7QkS++yjomANjm0L4vI2BWrI
+ HJHQniDR2j8kCtagcEsgt36VhF7zAIL2BInmXrsoWIOD6VJBSGzrGhQFa1CwUSoIia3mPg8o5w+henwq
+ wkFic3uPB0K5RXzVu+y8g8TGD1YPKOcPoXqXnXeQ+KLV4gHfTAihepedd5BY/7ZTFKwB/a3xWQwURX8q
+ 1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJBREU3RDk2NEFCMDExRTQ4OUM5QjZFOENGQzJF
+ MDk1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJBREU3RDk1NEFCMDExRTQ4OUM5QjZFOENGQzJF
+ MDk1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEM5Mzk2NTZBRjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz52g1XsAAADeUlEQVRIS62Va0hTYRiAXzVNoQs6oUCttJu3aqatrLxr2k0n
+ W6bLLlLSxTKCKLoQQUg3IbLMflSgBRGRP7JSSzGnWalYdpnV1MQu1tBWWklqvr3fp2dsOytSfOFh3/l2
+ eJ7tnDMGkkmzGCqigsARhPlUQqCi8nEd9v7GEYP5mFcI4K/e/hGHeQ2B7p4+1HV8Nf6Kw4a5GGxtCHzv
+ 7sU2nR4lbr4/AUBFKIeD4GKYBL79+IX6rm622U8nSgnX4SC4GCaBL50/OXwTwIUY1ohcQkCn/84ZDLBP
+ I5p16TBl7XYIoaXVwI54RC4h8LG9k/OvQPIOmEZUJW2F+XRoPbBrOiKXEGj9rOdYCqi2gxXhnLQNIo6f
+ n9tEa7ViI79PoojIJQSaP3RwjAOJaSAjjhL3N+9zrD+W499UVJnSeeVmWDvtlcWlgCedZnK5RC4h8KZV
+ x2FryQSYmrAVjh/MnP46/57yS7VmZ9+zxr1Yr92NtQ1pWFmfiBevL9QpUqE0JhHcyWuImLsMAU1zG4et
+ V6yHC1l5oe+evNmD1ZoteL9OgaW1K7GkRoF3H8ZigTocb5bFY8bZWbpoFVwh7yiCR8xdhsAz7XuOh9QD
+ D2R6twyIEzG/JApz88N7z+T5d+VcDezKL43Ea4UxeCjTqyNUDpUBYeBFXjvjgOAyCdS9asXDJ3NQFj3u
+ 7eWCyG/FjxR45OyMr6s3S1qCYqE8RA654Uq4dOiUV/v+E9P0i1ZA9Zwg8COnA2HyDZiLYRw4dyAjC50n
+ z8awBBvNbbWyZ+8x10+By+GONARCbe1gDBPJloCvfKODluQ10mD+qDK5LWFyD6pfvOUYBzydXL0v2I+V
+ rI9Mhud5BQE9i+RQPt2P30BBYrM4HmYSNf5REGS0b5CzYdKq+iaOITA44wmPiLXwaFfGhDbZMkinYxNJ
+ 8CpwXxgHobQcPbhv8XegrtNyzAPsOtqHJUPeml1jm/1jYDkdM5G5hB3bDL6KhknLal9xzAN8gpMgVZHm
+ oKUAuwx29H420c9O/l9KHms4bC0KLFCAY6CSHr+VoHJy88lWbEjHoqoXWPzw5ZCxGKCxkslBLo22L1+6
+ ahPeUj/FwgfPh8zpSzfQ0cWrwVKAjfXcWFjjPm9isWSSbx/7JEPF0cWzcYzE7dTfAmysfSLB2z0Awm1H
+ 8ycnjrD4N/kX4gEg8A9sAFSe4VuPvgAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzN0Y5NjgxNEE5MDExRTRBMzU1RUM1MkVEQTU3
+ REQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzN0Y5NjgwNEE5MDExRTRBMzU1RUM1MkVEQTU3
+ REQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUU1QUVCQUI4RjRBRTQxMUI2QTlC
+ RjEwMkVGQzEyNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz4Oz1B+AAABO0lEQVRIS7WUP0sDQRDFt0snIcEiklhGJLH3k6bNp0ifYCUo
+ KWwMIRCx0EYxEEL+IOPO4SxzczN7d7gGfuzd7Hszd9nHOQD4V9RiStRiStQi0b68GXkgwkjzcdQigU1O
+ 32CC+9IjUYsENvjY7EySDHhev5skGXA3X5r8aYA3lx0wET1otYgmNMcOku+jXtMg4QJFJMb1a7uPmjUd
+ rVzHDfDy9pmJaZViCe5rPq7hYpgvXjPw2hNtTqBOevk+F8L0YRGQQosyHxfSf0jUegPLZwkrNedYfi6o
+ 9Y2RWP6cACPHYnf4XauQablfHYAxo6jt9sfwRGWgVvrVASKmdd7g2OoN4P5pVYhqbgCPmnPuzHPtua1C
+ s9OHyeyxEFU+IJcCb2p4zj3dKjQvrsat3jD4CwNCIcEv14/fpAfcDwXsled4Tu6+AAAAAElFTkSuQmCC
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGMEQ1RDBCNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
+ MzBCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGMEQ1RDBBNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
+ MzBCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDMDRERTRENjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz6zemTaAAABh0lEQVRIS7WUvUoDQRSFEwiBKPEHsRAkb+ArWIsv4CNYCSKI
+ jRD8a1S0m9QhdTobG5uARZogBJSkiLASFJJChQiRcJ2z2bnMZtbxCnrhY3YO556z1aSI6F9JFP+SRBEs
+ FFaUhoSopAyQKGIBi58jEuErcQSAhY/hyP5DL8Y7mQMcAcD8Phh+u2Tzk9cRAMz914G4wOd1BABzt/cm
+ LvB5HQHA3On2xQU+ryMAmB8en8UFPq8jAJjvWk/iAp/XEQDM9WZHXODzOgKAudZoiwt8XkcAMN/U78Ml
+ CcY7mQMcAWhz+FRc3zZFREXypwKYEiG/e+ykc1WYVRrCGUk8nGUHsyic6nKeetUK4dTESjjLDjZUlqaV
+ hiS8lEsh0Z1LTFYs2FBazFFwcUzB+YE+T8bffD+i4LRIwSV0jdZaO5vhHXtRPmfFgg1n81mlIQnt/W1q
+ bKyH34dz2XKUz1mxYBaFU5zJUG1tlXDu5TMcjuEsO5hF4exOpZWGtnLpWDiGs+xgFv9gxlmU+gIVyyIX
+ YCSg/AAAAABJRU5ErkJggg==
+
+
+
+
+ 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=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVGNUQ0RjNENEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
+ RkEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVGNUQ0RjNDNEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
+ RkEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzUxNUY0MjEyRDRERTQxMUIzNkJE
+ NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz7jldwbAAAEyklEQVRIS6WWDUzUdRjHoeXWVktIc74MLREMUxBQV4RYkBmL
+ SBwSoZIFCgULlOJFDJDxqkiAqGgoiIQ6jaFLB1EqUaC8iMgdL8cJB3fHwR13HO8Hh3x7fn+pwN01nM/2
+ 2X77Pb/n+33+v/3/95zBbGOVnZM58QHhRKwgnp9KPXuQ2CtJ6ScOjGo0fcMjI93llVX55us3rqbUc49P
+ zDLyw9auL4iw5l+IsMY//BRujcygdcg+ug83rpzCsVhf3C6+hHg/W+R++985BtU3pey1cCCpOYQhJzo9
+ 8kPX1tZcDoS0Jp2jrCgWmakhOJMVA4GwBd1KNSQ9veiUdeNifjqyMsJxveD7f8+z2rPBlg0kNZ9gJjMj
+ L8RqQlSegIbLX6CuYAcOBm9FHe8B2rt70SZTgNfehTphJ+paCaEYjSIJkmP24PaPnrhfsBP8okCcCbZ8
+ RFLmxIuc6PTICV5Dh4IxNqSEemAA6adzwBdJ8VeDEL/XNqGkmo/iKh4HW5fWNCL7QiEqq2sw3N+Dijwf
+ nPx6FUjKkpjLiU6P7MDVqL/gj8nJSY4bpbcQnZyK8EOJCI2Ox3dRcY+JjkNYTAIi4w4j7+JlKBQKjI+P
+ 42qqJ9J832AGawkjTnR6ZPm/iXvn9+ARiWsnJjCu1YLeGshJQCKVolMs5hBLJOiSydAjl0OpUmFweBhj
+ ZJAfuxVJ3ub6DTJ9LVCd40Pij6AZ01IRoWVGumE5dmZEM45RjRbnolwR72Wm3yDt85W4e2o3FVLnGg1G
+ xsYwSvDEdxB03gEa6vJwSopOhkZHkRPhgkPbTfUbpOwwR+XxXdT9OM79EQ/lgBLNkjpsz1iMP5t/oU7H
+ dIoz+oeGcTbUGVHblus3SPJYgfI0LxLSIPmaL4LyHOB5bClK6gswNDLKoUucoezvx+n9W3Dg49f0G8S5
+ LUfZEU8MkpC8T43YQi8UVp3kutOFenAIvep+dClUkClVOPXNZoQ6L9NvEE3uN+PdMUBvRXevCgqVmjob
+ gGpgEH1PwPZYTq7soy9bDolcgRNfOWL/ZhP9BpEfLsVvMW70kQ1C2qMgEyVnUiUoQ2CuPZTUra7rYYi6
+ ZDi+910EvbdEv0GYkwlKIj+BijrL+jUKbdJO1LZWwD19EUrrr0Cu6tMpzhCKJcj40gEB9ov1G4RsWoLi
+ UBe6V7r/n70RkPMOPDJMcLXqLPc0DF3ijBaRCOneG+H31kL9BkF2i3B9nzN1qoagQ4yDlzxQUE6/lHRd
+ XfLeGbA9cbccwk4JHggegi8UIc3LDj7rFug3CNiwENcCt6CH3ojm9g7qqoN79HZpF9rpjjumYGu2x3I8
+ 4UNU85pwv0WAox5vY7f1/xj42SxAkf/7kCmUuNfUiho+FTa3gtfaRh22o6lNxMHWbI/lKut5uFVdh7sN
+ jTiybQN2rpmv18DQ1+rViUJfRwia+bjXLEB1YxNqyai+VUiditDY1sHB1myP5e408FFR34Cb5WVIdLXF
+ Zxbz2DywJYw51WkxZ9eqebxUFyvk7rDHD24bkOhig4RZEM/4yAZhm1Ziq6lRG2mxscmm2owwdF72suOn
+ ZkZCTzNjuJsaYdtT4vr63E4L4xcCSYv9IXiJU30i2BxlzmzkWRHsLp8GVsNqp2aygcHfZtZtYIryU78A
+ AAAASUVORK5CYII=
+
+
+
+
+ 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
+ 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=
+
+
iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
@@ -1776,6 +2242,40 @@
OkHDH7XWtYa2It66Y4eCQ8cRfpvUNa2hTUD8A6JMaBvCyTdJAAAAAElFTkSuQmCC
+
+
+ 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
@@ -2023,651 +2523,6 @@
1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
-
-
- 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
- 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=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1
- RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFFRUUzNDdFNEFGMTExRTQ5M0I5QzUwRjVCODdC
- MERFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFFRUUzNDdENEFGMTExRTQ5M0I5QzUwRjVCODdC
- MERFIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkI0NEVFQkRFRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4Ym8PVAAAC+UlEQVRIS6WVbUhTYRTHr5tuc073YoSmmyuwNPWLKdaHEgpL
- ISg/VB8Ugj5oRi9C9iEDe8UKMzDKKRVIRfRCaR8Ko8xEK6PMbDInmqlroKit+YYiejrnaa47dreye+DH
- s+f8z/M/57lw77jPV3Wi8BcAwHFtFdqlgqe4IERCe3/BGrwv1y4VIPC8CpEwJx/BGrRc1PwrAYjsTZkW
- uh6vBPz91yaswatzal8oXp5R72k4q65FBnEPjaUasNTFgfNrGpjvxQDl0MdnE9ag/mSYF89KwnbiOvCx
- xgj9zSkwZk2HKXsWTH7PhElbBoyZY+GHJQU+3dID1vm/yZPiUA/qjocewHWhr2kdTroZbO9SoeNBLDRd
- iYCnpzTQdjsGRtqTofVmNGAdaFesAV30WgjXJ0K4IanSZfsnHhap3Nw/qsrFdWEQTTtr46G+dBncLVRZ
- qvJDTBuSjdDd1QG1xWpoMUUB1oG1uwcGbHZwOCdgdm6eGtBtPOPO4ZBFopDxL48SANf5qjxl3aEseTaW
- GDSRq2t00fFsUtQYGpxcGxUHOn0CM3ajT6z+7eyKG/uVjOv5StPrKiNU5ym78zPkO1EyIMuRMB1e/+fE
- NIxPzQDWQu+3AcbwqAMmpmdhambOjdctru0LJpTIeMXe4IYkgzQO05GIGpHjRCb+hNSMbuI1OR/+LS7n
- KrhLOYrs8hxFe5JeasQUTR2CSEmjA2POaTcjjkkYGnWylZ/nQ2fIm8WF3XLu/C552ZGtsjTc0sdFiUiw
- qNI90f9TyZ3OlnElO2QFaEpTk7mUclRgG3aIgjy4E9tlXFGmLBWNFUgg7QkS++yjomANjm0L4vI2BWrI
- HJHQniDR2j8kCtagcEsgt36VhF7zAIL2BInmXrsoWIOD6VJBSGzrGhQFa1CwUSoIia3mPg8o5w+henwq
- wkFic3uPB0K5RXzVu+y8g8TGD1YPKOcPoXqXnXeQ+KLV4gHfTAihepedd5BY/7ZTFKwB/a3xWQwURX8q
- 1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJBREU3RDk2NEFCMDExRTQ4OUM5QjZFOENGQzJF
- MDk1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJBREU3RDk1NEFCMDExRTQ4OUM5QjZFOENGQzJF
- MDk1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEM5Mzk2NTZBRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz52g1XsAAADeUlEQVRIS62Va0hTYRiAXzVNoQs6oUCttJu3aqatrLxr2k0n
- W6bLLlLSxTKCKLoQQUg3IbLMflSgBRGRP7JSSzGnWalYdpnV1MQu1tBWWklqvr3fp2dsOytSfOFh3/l2
- eJ7tnDMGkkmzGCqigsARhPlUQqCi8nEd9v7GEYP5mFcI4K/e/hGHeQ2B7p4+1HV8Nf6Kw4a5GGxtCHzv
- 7sU2nR4lbr4/AUBFKIeD4GKYBL79+IX6rm622U8nSgnX4SC4GCaBL50/OXwTwIUY1ohcQkCn/84ZDLBP
- I5p16TBl7XYIoaXVwI54RC4h8LG9k/OvQPIOmEZUJW2F+XRoPbBrOiKXEGj9rOdYCqi2gxXhnLQNIo6f
- n9tEa7ViI79PoojIJQSaP3RwjAOJaSAjjhL3N+9zrD+W499UVJnSeeVmWDvtlcWlgCedZnK5RC4h8KZV
- x2FryQSYmrAVjh/MnP46/57yS7VmZ9+zxr1Yr92NtQ1pWFmfiBevL9QpUqE0JhHcyWuImLsMAU1zG4et
- V6yHC1l5oe+evNmD1ZoteL9OgaW1K7GkRoF3H8ZigTocb5bFY8bZWbpoFVwh7yiCR8xdhsAz7XuOh9QD
- D2R6twyIEzG/JApz88N7z+T5d+VcDezKL43Ea4UxeCjTqyNUDpUBYeBFXjvjgOAyCdS9asXDJ3NQFj3u
- 7eWCyG/FjxR45OyMr6s3S1qCYqE8RA654Uq4dOiUV/v+E9P0i1ZA9Zwg8COnA2HyDZiLYRw4dyAjC50n
- z8awBBvNbbWyZ+8x10+By+GONARCbe1gDBPJloCvfKODluQ10mD+qDK5LWFyD6pfvOUYBzydXL0v2I+V
- rI9Mhud5BQE9i+RQPt2P30BBYrM4HmYSNf5REGS0b5CzYdKq+iaOITA44wmPiLXwaFfGhDbZMkinYxNJ
- 8CpwXxgHobQcPbhv8XegrtNyzAPsOtqHJUPeml1jm/1jYDkdM5G5hB3bDL6KhknLal9xzAN8gpMgVZHm
- oKUAuwx29H420c9O/l9KHms4bC0KLFCAY6CSHr+VoHJy88lWbEjHoqoXWPzw5ZCxGKCxkslBLo22L1+6
- ahPeUj/FwgfPh8zpSzfQ0cWrwVKAjfXcWFjjPm9isWSSbx/7JEPF0cWzcYzE7dTfAmysfSLB2z0Awm1H
- 8ycnjrD4N/kX4gEg8A9sAFSe4VuPvgAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzN0Y5NjgxNEE5MDExRTRBMzU1RUM1MkVEQTU3
- REQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzN0Y5NjgwNEE5MDExRTRBMzU1RUM1MkVEQTU3
- REQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUU1QUVCQUI4RjRBRTQxMUI2QTlC
- RjEwMkVGQzEyNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4Oz1B+AAABO0lEQVRIS7WUP0sDQRDFt0snIcEiklhGJLH3k6bNp0ifYCUo
- KWwMIRCx0EYxEEL+IOPO4SxzczN7d7gGfuzd7Hszd9nHOQD4V9RiStRiStQi0b68GXkgwkjzcdQigU1O
- 32CC+9IjUYsENvjY7EySDHhev5skGXA3X5r8aYA3lx0wET1otYgmNMcOku+jXtMg4QJFJMb1a7uPmjUd
- rVzHDfDy9pmJaZViCe5rPq7hYpgvXjPw2hNtTqBOevk+F8L0YRGQQosyHxfSf0jUegPLZwkrNedYfi6o
- 9Y2RWP6cACPHYnf4XauQablfHYAxo6jt9sfwRGWgVvrVASKmdd7g2OoN4P5pVYhqbgCPmnPuzHPtua1C
- s9OHyeyxEFU+IJcCb2p4zj3dKjQvrsat3jD4CwNCIcEv14/fpAfcDwXsled4Tu6+AAAAAElFTkSuQmCC
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGMEQ1RDBCNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
- MzBCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGMEQ1RDBBNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
- MzBCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDMDRERTRENjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz6zemTaAAABh0lEQVRIS7WUvUoDQRSFEwiBKPEHsRAkb+ArWIsv4CNYCSKI
- jRD8a1S0m9QhdTobG5uARZogBJSkiLASFJJChQiRcJ2z2bnMZtbxCnrhY3YO556z1aSI6F9JFP+SRBEs
- FFaUhoSopAyQKGIBi58jEuErcQSAhY/hyP5DL8Y7mQMcAcD8Phh+u2Tzk9cRAMz914G4wOd1BABzt/cm
- LvB5HQHA3On2xQU+ryMAmB8en8UFPq8jAJjvWk/iAp/XEQDM9WZHXODzOgKAudZoiwt8XkcAMN/U78Ml
- CcY7mQMcAWhz+FRc3zZFREXypwKYEiG/e+ykc1WYVRrCGUk8nGUHsyic6nKeetUK4dTESjjLDjZUlqaV
- hiS8lEsh0Z1LTFYs2FBazFFwcUzB+YE+T8bffD+i4LRIwSV0jdZaO5vhHXtRPmfFgg1n81mlIQnt/W1q
- bKyH34dz2XKUz1mxYBaFU5zJUG1tlXDu5TMcjuEsO5hF4exOpZWGtnLpWDiGs+xgFv9gxlmU+gIVyyIX
- YCSg/AAAAABJRU5ErkJggg==
-
-
-
-
- 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=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVGNUQ0RjNENEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
- RkEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVGNUQ0RjNDNEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
- RkEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzUxNUY0MjEyRDRERTQxMUIzNkJE
- NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz7jldwbAAAEyklEQVRIS6WWDUzUdRjHoeXWVktIc74MLREMUxBQV4RYkBmL
- SBwSoZIFCgULlOJFDJDxqkiAqGgoiIQ6jaFLB1EqUaC8iMgdL8cJB3fHwR13HO8Hh3x7fn+pwN01nM/2
- 2X77Pb/n+33+v/3/95zBbGOVnZM58QHhRKwgnp9KPXuQ2CtJ6ScOjGo0fcMjI93llVX55us3rqbUc49P
- zDLyw9auL4iw5l+IsMY//BRujcygdcg+ug83rpzCsVhf3C6+hHg/W+R++985BtU3pey1cCCpOYQhJzo9
- 8kPX1tZcDoS0Jp2jrCgWmakhOJMVA4GwBd1KNSQ9veiUdeNifjqyMsJxveD7f8+z2rPBlg0kNZ9gJjMj
- L8RqQlSegIbLX6CuYAcOBm9FHe8B2rt70SZTgNfehTphJ+paCaEYjSIJkmP24PaPnrhfsBP8okCcCbZ8
- RFLmxIuc6PTICV5Dh4IxNqSEemAA6adzwBdJ8VeDEL/XNqGkmo/iKh4HW5fWNCL7QiEqq2sw3N+Dijwf
- nPx6FUjKkpjLiU6P7MDVqL/gj8nJSY4bpbcQnZyK8EOJCI2Ox3dRcY+JjkNYTAIi4w4j7+JlKBQKjI+P
- 42qqJ9J832AGawkjTnR6ZPm/iXvn9+ARiWsnJjCu1YLeGshJQCKVolMs5hBLJOiSydAjl0OpUmFweBhj
- ZJAfuxVJ3ub6DTJ9LVCd40Pij6AZ01IRoWVGumE5dmZEM45RjRbnolwR72Wm3yDt85W4e2o3FVLnGg1G
- xsYwSvDEdxB03gEa6vJwSopOhkZHkRPhgkPbTfUbpOwwR+XxXdT9OM79EQ/lgBLNkjpsz1iMP5t/oU7H
- dIoz+oeGcTbUGVHblus3SPJYgfI0LxLSIPmaL4LyHOB5bClK6gswNDLKoUucoezvx+n9W3Dg49f0G8S5
- LUfZEU8MkpC8T43YQi8UVp3kutOFenAIvep+dClUkClVOPXNZoQ6L9NvEE3uN+PdMUBvRXevCgqVmjob
- gGpgEH1PwPZYTq7soy9bDolcgRNfOWL/ZhP9BpEfLsVvMW70kQ1C2qMgEyVnUiUoQ2CuPZTUra7rYYi6
- ZDi+910EvbdEv0GYkwlKIj+BijrL+jUKbdJO1LZWwD19EUrrr0Cu6tMpzhCKJcj40gEB9ov1G4RsWoLi
- UBe6V7r/n70RkPMOPDJMcLXqLPc0DF3ijBaRCOneG+H31kL9BkF2i3B9nzN1qoagQ4yDlzxQUE6/lHRd
- XfLeGbA9cbccwk4JHggegi8UIc3LDj7rFug3CNiwENcCt6CH3ojm9g7qqoN79HZpF9rpjjumYGu2x3I8
- 4UNU85pwv0WAox5vY7f1/xj42SxAkf/7kCmUuNfUiho+FTa3gtfaRh22o6lNxMHWbI/lKut5uFVdh7sN
- jTiybQN2rpmv18DQ1+rViUJfRwia+bjXLEB1YxNqyai+VUiditDY1sHB1myP5e408FFR34Cb5WVIdLXF
- Zxbz2DywJYw51WkxZ9eqebxUFyvk7rDHD24bkOhig4RZEM/4yAZhm1Ziq6lRG2mxscmm2owwdF72suOn
- ZkZCTzNjuJsaYdtT4vr63E4L4xcCSYv9IXiJU30i2BxlzmzkWRHsLp8GVsNqp2aygcHfZtZtYIryU78A
- AAAASUVORK5CYII=
-
-
-
-
- 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
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjgzMjEyRkFGNEFDRjExRTQ4MENGRkEzRDEwQ0Uw
- RjZEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgzMjEyRkFFNEFDRjExRTQ4MENGRkEzRDEwQ0Uw
- RjZEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjFGOUQzNUFDRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz48kEQ/AAADtUlEQVRIS62UbUxTVxjHbwSHm0R5SRSHsOGkcVoTB26a2AnL
- Ok0AgegSt0QqoJuKK4ggTmAOQUbFt2XZJpUqIKPtBpmtqAxfELSgFF+SbUbNPugn4wc/6aJuyfzveU45
- t1e4zmXzJL/8z/Oc5/z/l0tbJTp+9v8CwD+ie4lYQfQTDwk3kULozemaahl5gY3cxrfMGPBfwe8PHqHD
- 24WXE+eC+uM0cyp6plq0w6ZkUxpcHUfhG7yC+w/+VLFuqkJUnLFAM6uiZ6pFDqbFvJYER2sHbt+9NwrX
- 4eG/Is6YpTVn9Ey1yMHOA04Prt+681Sa3UfoNRm7teaMnqkWOfjQd/kG/L/efCp8znOKorwgzZlnruHB
- PWtLq9Hd/zN6/NdGcazvMvILKxExxeCmK5H/JWBS1NSZDaR/EPykTxJnfDRhUsKJkLFh2ZGxryPaEBJK
- V8fQme5rkWgDeDuBmENkEMuI9zVwnT4xJhGfuF4VoVSPJ8boGUvE0gTwU3FIDDFVEhk7gyfj+MnNthcf
- t19/F8WeBBkSzpr8cRjfGxUmlgwYibn+pVBSkIrXxtpwcT7afnsHNn8S14+H+3+xkhWHhPzrAAJrXQlo
- uZqKrT8Z4aInb7q6EBUD8bANvYma80ko+jGRzlOQ1xqv/r/IMpwIVQN4yUMt+c2vwP5LKip8BpT1zkJl
- fyKsp2JVSnoM2NI3B9sGZmJz7xvYem4uLE3BIIasOUxR5pWNw/rTySj3zUPt4ALUD5mw+5IJBd3TkOOZ
- rGLxPonsrzg8GbneeKzpnA1L+yysIy/2JOvpIiC5KAzpdgPMjRFIb41CpjMKWa5oQbb72fBcpjMaGXT3
- PQd5kBd7kjV/KhXl0g+1GHRWEdtwoe1zXPx+u9hz3++qFnA95K5R+zzPfZ4P9AP3WQP3q4IBAy0VOH+o
- Av3NW8B71gutlWIvlc99TZ+KPau21t4b/O4z0nKccZQFA842bsSZfYVg7bNvENrbUKTqOUeJOO/bXxxQ
- mpF1z7dWoXKe6+6vrWivyw8GdO3Kw8kvP8Jx0uO7VuGIbSWO1uehc0cuju3MV2tvnUX0PHU5ar9r92pR
- y3MP9ZxVH6KlcnkwwFvzAdrKl6J5czYaNqTDUZqJ/RszcKA0S9QHN2XBXpyBxpIlAj7nms9lzXO830f6
- TWEa9hYsDgbYrYvw1Toz6nIXEimoXfk2vqD9dosJtrxUoSP7vK/JWaDWrPK8mvrspQbQ4i8Ef2a58TwJ
- fA9o8Q8dh0Q8X5TwvwE0C9fB+8UTrQAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkIxQTMzQzlGNEFDRjExRTQ5OEMwQ0Y0Q0Y4QzlC
- ODkwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkIxQTMzQzlFNEFDRjExRTQ5OEMwQ0Y0Q0Y4QzlC
- ODkwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4XXXQtAAAELElEQVRIS7VV20/TZxhmk8TFmWWRCy+WsGgmF3MmTragkznE
- LtuEoaJjKqUTFCggp4IFWg7lOAQ5CIyjUJCWAuNQ6mTgCmsVykmvFpMl/iW7mM/e92u/X39s7HCzL3l4
- 3ud5Dw9ctITwA/CfERZ+BGERu0Jp7dWd+moob6fmTuDjBudBMNPa64R/DFHeTk2JwLFXmD9v2/Ny+oUG
- hc4DMmQvc2TG7jeo/kuY8v7cYGia9oTyMvFvknufHof9xWk0bh5j/TLg/x4I45Bd6hvKU5sSvKR3HMDI
- 8xhULrwHx69nYH1+CmZfOBq3PkTt2jHkzxyi/idIHQ0Xf1EgaC8hlG8oTzbVSBt+G32/xMC8EgGj5zDK
- Vw8h1/2WgqLlCJR5j6La9y5KPO+j8skH0FmDQQw6zWEhIVHG15CzFAnTShTqN06iaSsaLc+ikb14ECnO
- /Qp0c9shfe3sflybC0fmgyPQfX8YWXSLb9Lpd0RAZP5uxPVFQDPwJuJG9yFhbB/OOcIEzo//O3guYSwM
- 8bT76T26Qbf4Jp0+KgKeTdZjY8xCqMa6vQpPJ+pEzf6mo0aA9dZ4reLzPPs87/f9+8z+fUswYMPOTQvW
- bJXgmnnTQcNUS+a+b7RC1IJVWr23NU6htip4rWZVADV8I2Ywr/ES6/vlCm/Sb8n9dVuFYJ6RenXY5PcD
- 86w9Q6VwtecFA54MGmnBhBVrKdZpkJn16nAZ1uiQ1CtDJcLjeelvUJiyT33vYAnmuwow05ITDFgZMuLx
- vWIaMMLTbxDMepUWWPvokHegiA7dEuA+a+5LzXNcL/UWYr4zD5ON6cGAn3vy8HjAAGZvfyE8vfnw9hUI
- /Xc+18vduYpmZs/dnQfXnQxMNqSpArpvYqkrB8vf3YS7MxuenlyF1b66/1NH1jZf6oV2PVzNNzBWo+MA
- /+fgUVs63B16MC93ZQte6swS7L6bqfBCy3Uxt9h6Q2jJcp/1QlsGput1sFuSOcD/SX7Ueh0/Nl/DYkva
- Nl64k4qHt3Winm/6RviS2eM91jwn+UGjDlO1ybCWXuQA/5urvwpXQzKYHzamwFl3BT98qxV6ngK4J32u
- Z2svC581++yxZt/VoIWjIgnDMoC/9Vw0OG1JguQ5GpR6quorOGu+VvyZ6iShmaVW+xMVl2A3JaKnII5O
- Uwb/mCxPxAwdYp6quIhx03lMV17ChPmC0NKX2lF2DrMUyJr31DxhTsSgIQ79BfHBgCk6ME5LE6YLsBrO
- 4v6tL2Et/AIjxfFCCyZtMyYIPVwUt21O+AEeIr8n9zO0ZcQGA2zFZ8VAlz4WXVkatKfHoEN/Bq0Bvptx
- WkD6XHdkxgqt9pl553bqKQEloC9Hg+bUj9GgOwnLFfqfkBLk6uQTqNMSXz2OWu1HAvW6aOHLOe5Lrroc
- RbMnYKF5JeD/A0L+ALgaUQ70/qVMAAAAAElFTkSuQmCC
-
-
-
-
- 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
- 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
- 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
- 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
diff --git a/Cyberpipe.csproj b/Cyberpipe.csproj
index a2e0440..e7e449a 100644
--- a/Cyberpipe.csproj
+++ b/Cyberpipe.csproj
@@ -276,6 +276,33 @@
+
+
+
+ Form
+
+
+ FormFT.cs
+
+
+ Form
+
+
+ FormHor.cs
+
+
+ Form
+
+
+ FormVer.cs
+
+
+ Form
+
+
+ FrmAnalysis.cs
+
+
Form
@@ -1278,6 +1305,18 @@
Form_TaskManager.cs
+
+ FormFT.cs
+
+
+ FormHor.cs
+
+
+ FormVer.cs
+
+
+ FrmAnalysis.cs
+
FormDocumentManager.cs
diff --git a/Cyberpipe.suo b/Cyberpipe.suo
index 409acc5..d686f5f 100644
--- a/Cyberpipe.suo
+++ b/Cyberpipe.suo
Binary files differ
diff --git a/DoublePanelAnalysis.cs b/DoublePanelAnalysis.cs
index 955bf70..5185321 100644
--- a/DoublePanelAnalysis.cs
+++ b/DoublePanelAnalysis.cs
@@ -379,11 +379,11 @@
GSOPoint3d pntIntersect1, pntIntersect2;
double dDist = globeControl.Globe.Analysis3D.ComputeTwoGeoPolylineDistance(line1, line2, out pntIntersect1,
out pntIntersect2,out horLen,out verLen,true,true,dNoIntersetStartRatio);
-// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
+// dDist = Math.Abs(pntIntersect1.Z - pntIntersect2.Z) - pipeStyle1.Radius - pipeStyle2.Radius;
dDist = dDist - pipeStyle1.Radius - pipeStyle2.Radius;
if (dDist <= 0)
{
- FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
+ FeatureAnalysisInfo featureAnalysisInfo = new FeatureAnalysisInfo();
featureAnalysisInfo.feature = feat2;
featureAnalysisInfo.point1 = pntIntersect1;
featureAnalysisInfo.point2 = pntIntersect2;
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 24f70a6..bc11a9d 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;
@@ -330,6 +331,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(沿线开挖ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("创建隧道") < 0)
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(创建隧道ToolStripMenuItem);
@@ -342,6 +344,7 @@
{
开挖分析ToolStripMenuItem.DropDownItems.Remove(删除隧道ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -402,6 +405,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(纵断面分析ToolStripMenuItem);
}
+ /*
if (Utility.userRole.IndexOf("道路断面分析") < 0)
{
断面分析ToolStripMenuItem.DropDownItems.Remove(道路断面分析ToolStripMenuItem);
@@ -410,6 +414,7 @@
{
断面分析ToolStripMenuItem.DropDownItems.Remove(基线剖面分析ToolStripMenuItem);
}
+ * */
}
#endregion
@@ -774,6 +779,7 @@
}
else
{
+ /*
if (Utility.userRole.IndexOf("地上模式") < 0)
{
buttonItem87.Visible = false;
@@ -786,6 +792,8 @@
{
buttonItem27.Visible = false;
}
+ * */
+
if (Utility.userRole.IndexOf("透明度设置") < 0)
{
sliderGroundTransSet1.Visible = false;
@@ -993,7 +1001,7 @@
splitContainer1.Panel2Collapsed = true;
- buttonItem87.Checked = true; //默认地上模式
+ //buttonItem87.Checked = true; //默认地上模式
ribbonTabItem1.Select(); //初始化状态为浏览
sideBarPanelItem3.Visible = false;
@@ -2447,6 +2455,7 @@
return null;
}
+ /*
///
/// 地上模式 菜单按钮
///
@@ -2538,6 +2547,7 @@
globeControl1.Globe.CameraMode = EnumCameraMode.Walk;
}
+ */
///
/// 地面透明度设置 菜单
///
@@ -4701,6 +4711,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;
+ }
+
///
/// 碰撞审查
///
@@ -4708,30 +4743,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();
}
///
/// 覆土审查
@@ -4742,26 +4763,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();
}
///
/// 水平净距审查
@@ -4772,26 +4781,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();
}
///
/// 垂直净距审查
@@ -4803,33 +4800,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
@@ -5842,6 +5821,7 @@
FrmProfileAnalysis frm = new FrmProfileAnalysis(globeControl1, feats);
frm.Show(this);
}
+ /*
///
/// 道路断面分析
///
@@ -5854,6 +5834,7 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.DLDM_Analysis;
}
+
///
/// 基线剖面分析
///
@@ -5865,7 +5846,8 @@
globeControl1.Globe.TrackPolylineTool.VerticalLineVisible = true;
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.JXPM_Analysis;
- }
+ }
+ * * */
#endregion
///
/// 创建拓扑
@@ -6059,6 +6041,8 @@
globeControl1.Globe.TrackPolylineTool.TrackMode = EnumTrackMode.SpaceTrack;
trackPolylineEndMode = EnumTrackPolylineEndMode.YXKW_Analysis;
}
+
+ /*
///
/// 创建隧道
///
@@ -6131,6 +6115,7 @@
MessageBox.Show("请选中要删除的隧道!", "提示");
}
}
+ * */
///
/// 通视分析
///
@@ -7563,9 +7548,7 @@
modelBuilder.batchInsert(dataSpace, redDt, redFeatures);
}
-
#endregion
-
}
#endregion
}
@@ -7835,6 +7818,7 @@
frm.Show();
}
+ /*
private void buttonItem查看数据_Click(object sender, EventArgs e)
{
LogManager.saveLog(Utility.userName, buttonItem查看数据.Text);
@@ -7847,6 +7831,7 @@
globeControl1.Refresh();
}
}
+ * */
///
/// 规划数据入库
///
diff --git a/MainFrm.designer.cs b/MainFrm.designer.cs
index abcf2ec..92ea9e1 100644
--- a/MainFrm.designer.cs
+++ b/MainFrm.designer.cs
@@ -177,8 +177,6 @@
this.断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.横断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.纵断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.道路断面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.基线剖面分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.拓扑分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.创建拓扑ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.上游分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -191,9 +189,6 @@
this.多边形开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.挖方量分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.沿线开挖ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.创建隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.隐藏隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.删除隧道ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.通视分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.可视域分析ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -274,7 +269,6 @@
this.buttonItemSJGL7 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL8 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemSJGL9 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem查看数据 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemGHRK = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT = new DevComponents.DotNetBar.ButtonItem();
this.buttonItemZTT1 = new DevComponents.DotNetBar.ButtonItem();
@@ -328,12 +322,17 @@
this.buttonItem12 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem13 = new DevComponents.DotNetBar.ButtonItem();
this.buttonItem14 = 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.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();
+ this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
+ 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();
@@ -345,19 +344,31 @@
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.ribbonPanel1 = new DevComponents.DotNetBar.RibbonPanel();
- this.ribbonBar21 = new DevComponents.DotNetBar.RibbonBar();
- this.buttonItem87 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem88 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem27 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem91 = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem();
- this.btnlegendSet = new DevComponents.DotNetBar.ButtonItem();
- this.buttonItem89 = new DevComponents.DotNetBar.ButtonItem();
- this.btnOutputJPG = new DevComponents.DotNetBar.ButtonItem();
+ this.ribbonPanel2 = new DevComponents.DotNetBar.RibbonPanel();
+ this.ribbonBar3 = new DevComponents.DotNetBar.RibbonBar();
+ this.btn_user_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_resc_info = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_role_resc = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_user_role = new DevComponents.DotNetBar.ButtonItem();
+ this.btn_password_edit = new DevComponents.DotNetBar.ButtonItem();
+ this.buttonItemPasswordReset = new DevComponents.DotNetBar.ButtonItem();
this.ribbonTabItem1 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem11 = new DevComponents.DotNetBar.RibbonTabItem();
this.ribbonTabItem6 = new DevComponents.DotNetBar.RibbonTabItem();
@@ -540,14 +551,14 @@
this.contextMenuStripDeleteLayerNode.SuspendLayout();
this.ribbonControl1.SuspendLayout();
this.ribbonPanel15.SuspendLayout();
- this.ribbonPanel6.SuspendLayout();
- this.ribbonPanel2.SuspendLayout();
- this.ribbonPanel3.SuspendLayout();
this.ribbonPanel7.SuspendLayout();
- this.ribbonPanel5.SuspendLayout();
- this.ribbonPanel12.SuspendLayout();
- this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel3.SuspendLayout();
this.ribbonPanel1.SuspendLayout();
+ this.ribbonPanel12.SuspendLayout();
+ this.ribbonPanel5.SuspendLayout();
+ this.ribbonPanel6.SuspendLayout();
+ this.ribbonPanel4.SuspendLayout();
+ this.ribbonPanel2.SuspendLayout();
this.panelOfTable.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).BeginInit();
this.statusStrip2.SuspendLayout();
@@ -1672,9 +1683,7 @@
//
this.断面分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.横断面分析ToolStripMenuItem,
- this.纵断面分析ToolStripMenuItem,
- this.道路断面分析ToolStripMenuItem,
- this.基线剖面分析ToolStripMenuItem});
+ this.纵断面分析ToolStripMenuItem});
this.断面分析ToolStripMenuItem.Name = "断面分析ToolStripMenuItem";
this.断面分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.断面分析ToolStripMenuItem.Text = "断面分析";
@@ -1682,31 +1691,17 @@
// 横断面分析ToolStripMenuItem
//
this.横断面分析ToolStripMenuItem.Name = "横断面分析ToolStripMenuItem";
- this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.横断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.横断面分析ToolStripMenuItem.Text = "横断面分析";
this.横断面分析ToolStripMenuItem.Click += new System.EventHandler(this.横断面分析ToolStripMenuItem_Click);
//
// 纵断面分析ToolStripMenuItem
//
this.纵断面分析ToolStripMenuItem.Name = "纵断面分析ToolStripMenuItem";
- this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
+ this.纵断面分析ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
this.纵断面分析ToolStripMenuItem.Text = "纵断面分析";
this.纵断面分析ToolStripMenuItem.Click += new System.EventHandler(this.纵断面分析ToolStripMenuItem_Click);
//
- // 道路断面分析ToolStripMenuItem
- //
- this.道路断面分析ToolStripMenuItem.Name = "道路断面分析ToolStripMenuItem";
- this.道路断面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.道路断面分析ToolStripMenuItem.Text = "道路断面分析";
- this.道路断面分析ToolStripMenuItem.Click += new System.EventHandler(this.道路断面分析ToolStripMenuItem_Click);
- //
- // 基线剖面分析ToolStripMenuItem
- //
- this.基线剖面分析ToolStripMenuItem.Name = "基线剖面分析ToolStripMenuItem";
- this.基线剖面分析ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
- this.基线剖面分析ToolStripMenuItem.Text = "基线剖面分析";
- this.基线剖面分析ToolStripMenuItem.Click += new System.EventHandler(this.基线剖面分析ToolStripMenuItem_Click);
- //
// 拓扑分析ToolStripMenuItem
//
this.拓扑分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -1775,10 +1770,7 @@
this.开挖分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.多边形开挖ToolStripMenuItem,
this.挖方量分析ToolStripMenuItem,
- this.沿线开挖ToolStripMenuItem,
- this.创建隧道ToolStripMenuItem,
- this.隐藏隧道ToolStripMenuItem,
- this.删除隧道ToolStripMenuItem});
+ this.沿线开挖ToolStripMenuItem});
this.开挖分析ToolStripMenuItem.Name = "开挖分析ToolStripMenuItem";
this.开挖分析ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.开挖分析ToolStripMenuItem.Text = "开挖分析";
@@ -1804,27 +1796,6 @@
this.沿线开挖ToolStripMenuItem.Text = "沿线开挖";
this.沿线开挖ToolStripMenuItem.Click += new System.EventHandler(this.沿线开挖ToolStripMenuItem_Click);
//
- // 创建隧道ToolStripMenuItem
- //
- this.创建隧道ToolStripMenuItem.Name = "创建隧道ToolStripMenuItem";
- this.创建隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.创建隧道ToolStripMenuItem.Text = "创建隧道";
- this.创建隧道ToolStripMenuItem.Click += new System.EventHandler(this.创建隧道ToolStripMenuItem_Click);
- //
- // 隐藏隧道ToolStripMenuItem
- //
- this.隐藏隧道ToolStripMenuItem.Name = "隐藏隧道ToolStripMenuItem";
- this.隐藏隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.隐藏隧道ToolStripMenuItem.Text = "隐藏隧道";
- this.隐藏隧道ToolStripMenuItem.Click += new System.EventHandler(this.隐藏隧道ToolStripMenuItem_Click);
- //
- // 删除隧道ToolStripMenuItem
- //
- this.删除隧道ToolStripMenuItem.Name = "删除隧道ToolStripMenuItem";
- this.删除隧道ToolStripMenuItem.Size = new System.Drawing.Size(136, 22);
- this.删除隧道ToolStripMenuItem.Text = "删除隧道";
- this.删除隧道ToolStripMenuItem.Click += new System.EventHandler(this.删除隧道ToolStripMenuItem_Click);
- //
// 视域分析ToolStripMenuItem
//
this.视域分析ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
@@ -2172,14 +2143,14 @@
this.ribbonControl1.BackgroundStyle.Class = "";
this.ribbonControl1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
this.ribbonControl1.Controls.Add(this.ribbonPanel15);
- this.ribbonControl1.Controls.Add(this.ribbonPanel6);
- this.ribbonControl1.Controls.Add(this.ribbonPanel2);
- this.ribbonControl1.Controls.Add(this.ribbonPanel3);
this.ribbonControl1.Controls.Add(this.ribbonPanel7);
- this.ribbonControl1.Controls.Add(this.ribbonPanel5);
- this.ribbonControl1.Controls.Add(this.ribbonPanel12);
- this.ribbonControl1.Controls.Add(this.ribbonPanel4);
+ 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.ribbonPanel6);
+ 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;
this.ribbonControl1.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
@@ -2393,7 +2364,6 @@
this.buttonItemSJGL7,
this.buttonItemSJGL8,
this.buttonItemSJGL9,
- this.buttonItem查看数据,
this.buttonItemGHRK});
this.buttonItemSJGL.SubItemsExpandWidth = 14;
this.buttonItemSJGL.Text = "数据管理";
@@ -2503,13 +2473,6 @@
this.buttonItemSJGL9.Text = "数据备份";
this.buttonItemSJGL9.Click += new System.EventHandler(this.buttonItemSJGL9_Click);
//
- // buttonItem查看数据
- //
- this.buttonItem查看数据.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem查看数据.Image")));
- this.buttonItem查看数据.Name = "buttonItem查看数据";
- this.buttonItem查看数据.Text = "查看数据";
- this.buttonItem查看数据.Click += new System.EventHandler(this.buttonItem查看数据_Click);
- //
// buttonItemGHRK
//
this.buttonItemGHRK.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemGHRK.Image")));
@@ -3145,107 +3108,202 @@
this.buttonItem14.Text = "导出施工图";
this.buttonItem14.Click += new System.EventHandler(this.buttonItem14_Click);
//
- // ribbonPanel5
+ // ribbonPanel3
//
- 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.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.ribbonPanel5.Style.Class = "";
- this.ribbonPanel5.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.Style.Class = "";
+ this.ribbonPanel3.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel5.StyleMouseDown.Class = "";
- this.ribbonPanel5.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.StyleMouseDown.Class = "";
+ this.ribbonPanel3.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;
+ this.ribbonPanel3.StyleMouseOver.Class = "";
+ this.ribbonPanel3.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel3.TabIndex = 40;
+ this.ribbonPanel3.Visible = false;
//
- // ribbonBar2
+ // ribbonBar4
//
- this.ribbonBar2.AutoOverflowEnabled = true;
+ this.ribbonBar4.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar2.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar2.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar4.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.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.ribbonBar2.TitleStyle.Class = "";
- this.ribbonBar2.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleStyle.Class = "";
+ this.ribbonBar4.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar2.TitleStyleMouseOver.Class = "";
- this.ribbonBar2.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar2.TitleVisible = false;
+ this.ribbonBar4.TitleStyleMouseOver.Class = "";
+ this.ribbonBar4.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar4.TitleVisible = false;
//
- // buttonItemHX1
+ // btn_flag
//
- 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);
+ 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);
//
- // buttonItemHX2
+ // slider4ground
//
- 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);
+ 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);
//
- // buttonItemDCTP
+ // ribbonPanel1
//
- 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);
+ this.ribbonPanel1.AutoSize = true;
+ this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
+ this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel1.Controls.Add(this.ribbonBar21);
+ this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel1.Name = "ribbonPanel1";
+ this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
//
- // 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);
+ //
+ this.ribbonPanel1.Style.Class = "";
+ this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseDown.Class = "";
+ this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonPanel1.StyleMouseOver.Class = "";
+ this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel1.TabIndex = 1;
+ this.ribbonPanel1.Visible = false;
+ //
+ // ribbonBar21
+ //
+ this.ribbonBar21.AutoOverflowEnabled = true;
+ this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.BackgroundStyle.Class = "";
+ this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.ContainerControlProcessDialogKey = true;
+ this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.buttonItem1,
+ this.sliderGroundTransSet1,
+ this.buttonItem91,
+ this.btnlegendSet,
+ this.buttonItem89,
+ this.btnOutputJPG});
+ this.ribbonBar21.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar21.Name = "ribbonBar21";
+ this.ribbonBar21.Size = new System.Drawing.Size(447, 59);
+ this.ribbonBar21.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar21.TabIndex = 2;
+ this.ribbonBar21.Text = "浏览模式";
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyle.Class = "";
+ this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ //
+ //
+ //
+ this.ribbonBar21.TitleStyleMouseOver.Class = "";
+ this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar21.TitleVisible = false;
+ //
+ // buttonItem1
+ //
+ this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
+ this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem1.Name = "buttonItem1";
+ this.buttonItem1.SubItemsExpandWidth = 14;
+ this.buttonItem1.Text = "图层管理";
+ this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ //
+ // buttonItem91
+ //
+ this.buttonItem91.ForeColor = System.Drawing.Color.Black;
+ this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
+ this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem91.Name = "buttonItem91";
+ this.buttonItem91.SubItemsExpandWidth = 14;
+ this.buttonItem91.Text = "快速定位";
+ this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ //
+ // btnlegendSet
+ //
+ this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
+ this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnlegendSet.Name = "btnlegendSet";
+ this.btnlegendSet.SubItemsExpandWidth = 14;
+ this.btnlegendSet.Text = "图例";
+ this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ //
+ // buttonItem89
+ //
+ this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
+ this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItem89.Name = "buttonItem89";
+ this.buttonItem89.SubItemsExpandWidth = 14;
+ this.buttonItem89.Text = "全屏显示";
+ this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
+ //
+ // btnOutputJPG
+ //
+ this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
+ this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btnOutputJPG.Name = "btnOutputJPG";
+ this.btnOutputJPG.SubItemsExpandWidth = 14;
+ this.btnOutputJPG.Text = "导出图片";
+ this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
//
// ribbonPanel12
//
@@ -3253,10 +3311,10 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel12.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3295,7 +3353,7 @@
this.buttonItem132});
this.ribbonBar18.Location = new System.Drawing.Point(508, 0);
this.ribbonBar18.Name = "ribbonBar18";
- this.ribbonBar18.Size = new System.Drawing.Size(75, 92);
+ this.ribbonBar18.Size = new System.Drawing.Size(75, 59);
this.ribbonBar18.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar18.TabIndex = 1;
//
@@ -3347,7 +3405,7 @@
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, 92);
+ this.ribbonBar13.Size = new System.Drawing.Size(505, 59);
this.ribbonBar13.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar13.TabIndex = 0;
//
@@ -3417,15 +3475,228 @@
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, 0);
+ 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, 95);
+ this.ribbonPanel4.Size = new System.Drawing.Size(1328, 62);
//
//
//
@@ -3463,7 +3734,7 @@
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.Size = new System.Drawing.Size(88, 59);
this.ribbonBar1.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
this.ribbonBar1.TabIndex = 0;
//
@@ -3487,151 +3758,135 @@
this.btn_document_info.Text = "文档管理";
this.btn_document_info.Click += new System.EventHandler(this.btn_document_info_Click);
//
- // ribbonPanel1
+ // ribbonPanel2
//
- this.ribbonPanel1.AutoSize = true;
- this.ribbonPanel1.CanvasColor = System.Drawing.Color.Gray;
- this.ribbonPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonPanel1.Controls.Add(this.ribbonBar21);
- this.ribbonPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.ribbonPanel1.Location = new System.Drawing.Point(0, 33);
- this.ribbonPanel1.Name = "ribbonPanel1";
- this.ribbonPanel1.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
- this.ribbonPanel1.Size = new System.Drawing.Size(1328, 62);
+ this.ribbonPanel2.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonPanel2.Controls.Add(this.ribbonBar3);
+ this.ribbonPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.ribbonPanel2.Location = new System.Drawing.Point(0, 33);
+ this.ribbonPanel2.Name = "ribbonPanel2";
+ this.ribbonPanel2.Padding = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.ribbonPanel2.Size = new System.Drawing.Size(1328, 62);
//
//
//
- this.ribbonPanel1.Style.Class = "";
- this.ribbonPanel1.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.Style.Class = "";
+ this.ribbonPanel2.Style.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseDown.Class = "";
- this.ribbonPanel1.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.StyleMouseDown.Class = "";
+ this.ribbonPanel2.StyleMouseDown.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonPanel1.StyleMouseOver.Class = "";
- this.ribbonPanel1.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonPanel1.TabIndex = 1;
- this.ribbonPanel1.Visible = false;
+ this.ribbonPanel2.StyleMouseOver.Class = "";
+ this.ribbonPanel2.StyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonPanel2.TabIndex = 39;
+ this.ribbonPanel2.Visible = false;
//
- // ribbonBar21
+ // ribbonBar3
//
- this.ribbonBar21.AutoOverflowEnabled = true;
- this.ribbonBar21.BackColor = System.Drawing.Color.White;
+ this.ribbonBar3.AutoOverflowEnabled = true;
//
//
//
- this.ribbonBar21.BackgroundMouseOverStyle.Class = "";
- this.ribbonBar21.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.BackgroundMouseOverStyle.Class = "";
+ this.ribbonBar3.BackgroundMouseOverStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.BackgroundStyle.Class = "";
- this.ribbonBar21.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.ContainerControlProcessDialogKey = true;
- this.ribbonBar21.Dock = System.Windows.Forms.DockStyle.Left;
- this.ribbonBar21.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
- this.buttonItem87,
- this.buttonItem88,
- this.buttonItem27,
- this.sliderGroundTransSet1,
- this.buttonItem91,
- this.buttonItem1,
- this.btnlegendSet,
- this.buttonItem89,
- 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.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
- this.ribbonBar21.TabIndex = 2;
- this.ribbonBar21.Text = "浏览模式";
+ this.ribbonBar3.BackgroundStyle.Class = "";
+ this.ribbonBar3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.ContainerControlProcessDialogKey = true;
+ this.ribbonBar3.Dock = System.Windows.Forms.DockStyle.Left;
+ this.ribbonBar3.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this.btn_user_info,
+ this.btn_role_info,
+ this.btn_resc_info,
+ this.btn_role_resc,
+ this.btn_user_role,
+ this.btn_password_edit,
+ this.buttonItemPasswordReset});
+ this.ribbonBar3.Location = new System.Drawing.Point(3, 0);
+ this.ribbonBar3.Name = "ribbonBar3";
+ this.ribbonBar3.Size = new System.Drawing.Size(551, 59);
+ this.ribbonBar3.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
+ this.ribbonBar3.TabIndex = 1;
//
//
//
- this.ribbonBar21.TitleStyle.Class = "";
- this.ribbonBar21.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleStyle.Class = "";
+ this.ribbonBar3.TitleStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
//
//
//
- this.ribbonBar21.TitleStyleMouseOver.Class = "";
- this.ribbonBar21.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
- this.ribbonBar21.TitleVisible = false;
+ this.ribbonBar3.TitleStyleMouseOver.Class = "";
+ this.ribbonBar3.TitleStyleMouseOver.CornerType = DevComponents.DotNetBar.eCornerType.Square;
+ this.ribbonBar3.TitleVisible = false;
//
- // buttonItem87
+ // btn_user_info
//
- this.buttonItem87.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem87.Image")));
- this.buttonItem87.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem87.Name = "buttonItem87";
- this.buttonItem87.SubItemsExpandWidth = 14;
- this.buttonItem87.Text = "地上模式";
- this.buttonItem87.Click += new System.EventHandler(this.buttonItem87_Click);
+ this.btn_user_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_info.Image")));
+ this.btn_user_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_info.Name = "btn_user_info";
+ this.btn_user_info.SubItemsExpandWidth = 14;
+ this.btn_user_info.Text = "用户管理";
+ this.btn_user_info.Click += new System.EventHandler(this.btn_user_info_Click);
//
- // buttonItem88
+ // btn_role_info
//
- this.buttonItem88.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem88.Image")));
- this.buttonItem88.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem88.Name = "buttonItem88";
- this.buttonItem88.SubItemsExpandWidth = 14;
- this.buttonItem88.Text = "地下模式";
- this.buttonItem88.Click += new System.EventHandler(this.buttonItem88_Click);
+ this.btn_role_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_info.Image")));
+ this.btn_role_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_info.Name = "btn_role_info";
+ this.btn_role_info.SubItemsExpandWidth = 14;
+ this.btn_role_info.Text = "角色管理";
+ this.btn_role_info.Click += new System.EventHandler(this.btn_role_info_Click);
//
- // buttonItem27
+ // btn_resc_info
//
- this.buttonItem27.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem27.Image")));
- this.buttonItem27.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem27.Name = "buttonItem27";
- this.buttonItem27.SubItemsExpandWidth = 14;
- this.buttonItem27.Text = "行走模式";
- this.buttonItem27.Click += new System.EventHandler(this.buttonItem27_Click);
+ this.btn_resc_info.Image = ((System.Drawing.Image)(resources.GetObject("btn_resc_info.Image")));
+ this.btn_resc_info.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_resc_info.Name = "btn_resc_info";
+ this.btn_resc_info.SubItemsExpandWidth = 14;
+ this.btn_resc_info.Text = "资源管理";
+ this.btn_resc_info.Click += new System.EventHandler(this.btn_resc_info_Click);
//
- // buttonItem91
+ // btn_role_resc
//
- this.buttonItem91.ForeColor = System.Drawing.Color.Black;
- this.buttonItem91.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem91.Image")));
- this.buttonItem91.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem91.Name = "buttonItem91";
- this.buttonItem91.SubItemsExpandWidth = 14;
- this.buttonItem91.Text = "快速定位";
- this.buttonItem91.Click += new System.EventHandler(this.buttonItem91_Click);
+ this.btn_role_resc.Image = ((System.Drawing.Image)(resources.GetObject("btn_role_resc.Image")));
+ this.btn_role_resc.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_role_resc.Name = "btn_role_resc";
+ this.btn_role_resc.SubItemsExpandWidth = 14;
+ this.btn_role_resc.Text = "角色授权";
+ this.btn_role_resc.Click += new System.EventHandler(this.btn_role_resc_Click);
//
- // buttonItem1
+ // btn_user_role
//
- this.buttonItem1.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem1.Image")));
- this.buttonItem1.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem1.Name = "buttonItem1";
- this.buttonItem1.SubItemsExpandWidth = 14;
- this.buttonItem1.Text = "图层管理";
- this.buttonItem1.Click += new System.EventHandler(this.buttonItem1_Click);
+ this.btn_user_role.Image = ((System.Drawing.Image)(resources.GetObject("btn_user_role.Image")));
+ this.btn_user_role.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_user_role.Name = "btn_user_role";
+ this.btn_user_role.SubItemsExpandWidth = 14;
+ this.btn_user_role.Text = "用户授权";
+ this.btn_user_role.Click += new System.EventHandler(this.btn_user_role_Click);
//
- // btnlegendSet
+ // btn_password_edit
//
- this.btnlegendSet.Image = ((System.Drawing.Image)(resources.GetObject("btnlegendSet.Image")));
- this.btnlegendSet.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnlegendSet.Name = "btnlegendSet";
- this.btnlegendSet.SubItemsExpandWidth = 14;
- this.btnlegendSet.Text = "图例";
- this.btnlegendSet.Click += new System.EventHandler(this.btnlegendSet_Click);
+ this.btn_password_edit.Image = ((System.Drawing.Image)(resources.GetObject("btn_password_edit.Image")));
+ this.btn_password_edit.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.btn_password_edit.Name = "btn_password_edit";
+ this.btn_password_edit.SubItemsExpandWidth = 14;
+ this.btn_password_edit.Text = "密码修改";
+ this.btn_password_edit.Click += new System.EventHandler(this.btn_password_edit_Click);
//
- // buttonItem89
+ // buttonItemPasswordReset
//
- this.buttonItem89.Image = ((System.Drawing.Image)(resources.GetObject("buttonItem89.Image")));
- this.buttonItem89.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.buttonItem89.Name = "buttonItem89";
- this.buttonItem89.SubItemsExpandWidth = 14;
- this.buttonItem89.Text = "全屏显示";
- this.buttonItem89.Click += new System.EventHandler(this.buttonItem89_Click);
- //
- // btnOutputJPG
- //
- this.btnOutputJPG.Image = ((System.Drawing.Image)(resources.GetObject("btnOutputJPG.Image")));
- this.btnOutputJPG.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
- this.btnOutputJPG.Name = "btnOutputJPG";
- this.btnOutputJPG.SubItemsExpandWidth = 14;
- this.btnOutputJPG.Text = "导出图片";
- this.btnOutputJPG.Click += new System.EventHandler(this.btnOutputJPG_Click);
+ this.buttonItemPasswordReset.Image = ((System.Drawing.Image)(resources.GetObject("buttonItemPasswordReset.Image")));
+ this.buttonItemPasswordReset.ImagePosition = DevComponents.DotNetBar.eImagePosition.Top;
+ this.buttonItemPasswordReset.Name = "buttonItemPasswordReset";
+ this.buttonItemPasswordReset.SubItemsExpandWidth = 14;
+ this.buttonItemPasswordReset.Text = "重置密码";
+ this.buttonItemPasswordReset.Click += new System.EventHandler(this.buttonItemPasswordReset_Click);
//
// ribbonTabItem1
//
@@ -3992,6 +4247,7 @@
this.toolStripDropDownButton3.Name = "toolStripDropDownButton3";
this.toolStripDropDownButton3.Size = new System.Drawing.Size(75, 21);
this.toolStripDropDownButton3.Text = "导出xls文件";
+ this.toolStripDropDownButton3.Visible = false;
this.toolStripDropDownButton3.Click += new System.EventHandler(this.toolStripDropDownButton3_Click);
//
// expandableSplitter2
@@ -4876,7 +5132,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;
@@ -4890,7 +5146,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;
@@ -4915,12 +5171,12 @@
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
@@ -4941,7 +5197,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;
@@ -4956,7 +5212,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;
@@ -4966,7 +5222,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;
@@ -4979,7 +5235,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;
@@ -5010,12 +5266,12 @@
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);
//
@@ -5064,7 +5320,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;
@@ -5077,7 +5333,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;
@@ -5092,7 +5348,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;
@@ -5106,7 +5362,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;
@@ -5124,7 +5380,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;
@@ -5142,7 +5398,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;
@@ -5159,7 +5415,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;
@@ -5174,7 +5430,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;
@@ -5187,7 +5443,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;
@@ -5241,7 +5497,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;
@@ -5298,7 +5554,7 @@
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
@@ -5348,7 +5604,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;
@@ -5383,7 +5639,7 @@
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);
//
@@ -5891,14 +6147,14 @@
this.ribbonControl1.ResumeLayout(false);
this.ribbonControl1.PerformLayout();
this.ribbonPanel15.ResumeLayout(false);
- this.ribbonPanel6.ResumeLayout(false);
- this.ribbonPanel2.ResumeLayout(false);
- this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel7.ResumeLayout(false);
- this.ribbonPanel5.ResumeLayout(false);
- this.ribbonPanel12.ResumeLayout(false);
- this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel3.ResumeLayout(false);
this.ribbonPanel1.ResumeLayout(false);
+ this.ribbonPanel12.ResumeLayout(false);
+ this.ribbonPanel5.ResumeLayout(false);
+ this.ribbonPanel6.ResumeLayout(false);
+ this.ribbonPanel4.ResumeLayout(false);
+ this.ribbonPanel2.ResumeLayout(false);
this.panelOfTable.ResumeLayout(false);
this.panelOfTable.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridViewX1)).EndInit();
@@ -5959,8 +6215,6 @@
private RibbonControl ribbonControl1;
private RibbonPanel ribbonPanel1;
private RibbonBar ribbonBar21;
- private ButtonItem buttonItem87;
- private ButtonItem buttonItem88;
private SliderItem sliderGroundTransSet1;
private ButtonItem buttonItem89;
private ButtonItem buttonItem91;
@@ -6020,7 +6274,6 @@
private ButtonItem buttonItem16;
private ButtonItem buttonItem26;
private GalleryContainer galleryContainer4;
- private ButtonItem buttonItem27;
private ButtonItem buttonItem51;
private ControlContainerItem controlContainerItem5;
private PrintDocument printDocument1;
@@ -6153,8 +6406,6 @@
private ToolStripMenuItem 断面分析ToolStripMenuItem;
private ToolStripMenuItem 横断面分析ToolStripMenuItem;
private ToolStripMenuItem 纵断面分析ToolStripMenuItem;
- private ToolStripMenuItem 道路断面分析ToolStripMenuItem;
- private ToolStripMenuItem 基线剖面分析ToolStripMenuItem;
private ToolStripMenuItem 拓扑分析ToolStripMenuItem;
private ToolStripMenuItem 创建拓扑ToolStripMenuItem;
private ToolStripMenuItem 上游分析ToolStripMenuItem;
@@ -6176,9 +6427,6 @@
private ToolStripMenuItem 多边形开挖ToolStripMenuItem;
private ToolStripMenuItem 挖方量分析ToolStripMenuItem;
private ToolStripMenuItem 沿线开挖ToolStripMenuItem;
- private ToolStripMenuItem 创建隧道ToolStripMenuItem;
- private ToolStripMenuItem 隐藏隧道ToolStripMenuItem;
- private ToolStripMenuItem 删除隧道ToolStripMenuItem;
private ToolStripMenuItem 全区域统计ToolStripMenuItem;
private ToolStripMenuItem 管线长度统计ToolStripMenuItem;
private ToolStripMenuItem 阀门数量统计ToolStripMenuItem;
@@ -6230,7 +6478,6 @@
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem;
private ToolStripMenuItem 标识器分类统计ToolStripMenuItem1;
private ButtonItem btn_check_history;
- private ButtonItem buttonItem查看数据;
private ButtonItem buttonItemGHRK;
private RibbonPanel ribbonPanel2;
private RibbonBar ribbonBar3;
diff --git a/MainFrm.resx b/MainFrm.resx
index f3955ec..7507c41 100644
--- a/MainFrm.resx
+++ b/MainFrm.resx
@@ -1127,40 +1127,6 @@
pdYK/uczRU8882zI+QPBTkk4sL23wAAAAABJRU5ErkJggg==
-
-
- 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
@@ -1640,6 +1606,506 @@
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
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1
+ RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFFRUUzNDdFNEFGMTExRTQ5M0I5QzUwRjVCODdC
+ MERFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFFRUUzNDdENEFGMTExRTQ5M0I5QzUwRjVCODdC
+ MERFIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkI0NEVFQkRFRjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz4Ym8PVAAAC+UlEQVRIS6WVbUhTYRTHr5tuc073YoSmmyuwNPWLKdaHEgpL
+ ISg/VB8Ugj5oRi9C9iEDe8UKMzDKKRVIRfRCaR8Ko8xEK6PMbDInmqlroKit+YYiejrnaa47dreye+DH
+ s+f8z/M/57lw77jPV3Wi8BcAwHFtFdqlgqe4IERCe3/BGrwv1y4VIPC8CpEwJx/BGrRc1PwrAYjsTZkW
+ uh6vBPz91yaswatzal8oXp5R72k4q65FBnEPjaUasNTFgfNrGpjvxQDl0MdnE9ag/mSYF89KwnbiOvCx
+ xgj9zSkwZk2HKXsWTH7PhElbBoyZY+GHJQU+3dID1vm/yZPiUA/qjocewHWhr2kdTroZbO9SoeNBLDRd
+ iYCnpzTQdjsGRtqTofVmNGAdaFesAV30WgjXJ0K4IanSZfsnHhap3Nw/qsrFdWEQTTtr46G+dBncLVRZ
+ qvJDTBuSjdDd1QG1xWpoMUUB1oG1uwcGbHZwOCdgdm6eGtBtPOPO4ZBFopDxL48SANf5qjxl3aEseTaW
+ GDSRq2t00fFsUtQYGpxcGxUHOn0CM3ajT6z+7eyKG/uVjOv5StPrKiNU5ym78zPkO1EyIMuRMB1e/+fE
+ NIxPzQDWQu+3AcbwqAMmpmdhambOjdctru0LJpTIeMXe4IYkgzQO05GIGpHjRCb+hNSMbuI1OR/+LS7n
+ KrhLOYrs8hxFe5JeasQUTR2CSEmjA2POaTcjjkkYGnWylZ/nQ2fIm8WF3XLu/C552ZGtsjTc0sdFiUiw
+ qNI90f9TyZ3OlnElO2QFaEpTk7mUclRgG3aIgjy4E9tlXFGmLBWNFUgg7QkS++yjomANjm0L4vI2BWrI
+ HJHQniDR2j8kCtagcEsgt36VhF7zAIL2BInmXrsoWIOD6VJBSGzrGhQFa1CwUSoIia3mPg8o5w+henwq
+ wkFic3uPB0K5RXzVu+y8g8TGD1YPKOcPoXqXnXeQ+KLV4gHfTAihepedd5BY/7ZTFKwB/a3xWQwURX8q
+ 1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJBREU3RDk2NEFCMDExRTQ4OUM5QjZFOENGQzJF
+ MDk1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJBREU3RDk1NEFCMDExRTQ4OUM5QjZFOENGQzJF
+ MDk1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEM5Mzk2NTZBRjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz52g1XsAAADeUlEQVRIS62Va0hTYRiAXzVNoQs6oUCttJu3aqatrLxr2k0n
+ W6bLLlLSxTKCKLoQQUg3IbLMflSgBRGRP7JSSzGnWalYdpnV1MQu1tBWWklqvr3fp2dsOytSfOFh3/l2
+ eJ7tnDMGkkmzGCqigsARhPlUQqCi8nEd9v7GEYP5mFcI4K/e/hGHeQ2B7p4+1HV8Nf6Kw4a5GGxtCHzv
+ 7sU2nR4lbr4/AUBFKIeD4GKYBL79+IX6rm622U8nSgnX4SC4GCaBL50/OXwTwIUY1ohcQkCn/84ZDLBP
+ I5p16TBl7XYIoaXVwI54RC4h8LG9k/OvQPIOmEZUJW2F+XRoPbBrOiKXEGj9rOdYCqi2gxXhnLQNIo6f
+ n9tEa7ViI79PoojIJQSaP3RwjAOJaSAjjhL3N+9zrD+W499UVJnSeeVmWDvtlcWlgCedZnK5RC4h8KZV
+ x2FryQSYmrAVjh/MnP46/57yS7VmZ9+zxr1Yr92NtQ1pWFmfiBevL9QpUqE0JhHcyWuImLsMAU1zG4et
+ V6yHC1l5oe+evNmD1ZoteL9OgaW1K7GkRoF3H8ZigTocb5bFY8bZWbpoFVwh7yiCR8xdhsAz7XuOh9QD
+ D2R6twyIEzG/JApz88N7z+T5d+VcDezKL43Ea4UxeCjTqyNUDpUBYeBFXjvjgOAyCdS9asXDJ3NQFj3u
+ 7eWCyG/FjxR45OyMr6s3S1qCYqE8RA654Uq4dOiUV/v+E9P0i1ZA9Zwg8COnA2HyDZiLYRw4dyAjC50n
+ z8awBBvNbbWyZ+8x10+By+GONARCbe1gDBPJloCvfKODluQ10mD+qDK5LWFyD6pfvOUYBzydXL0v2I+V
+ rI9Mhud5BQE9i+RQPt2P30BBYrM4HmYSNf5REGS0b5CzYdKq+iaOITA44wmPiLXwaFfGhDbZMkinYxNJ
+ 8CpwXxgHobQcPbhv8XegrtNyzAPsOtqHJUPeml1jm/1jYDkdM5G5hB3bDL6KhknLal9xzAN8gpMgVZHm
+ oKUAuwx29H420c9O/l9KHms4bC0KLFCAY6CSHr+VoHJy88lWbEjHoqoXWPzw5ZCxGKCxkslBLo22L1+6
+ ahPeUj/FwgfPh8zpSzfQ0cWrwVKAjfXcWFjjPm9isWSSbx/7JEPF0cWzcYzE7dTfAmysfSLB2z0Awm1H
+ 8ycnjrD4N/kX4gEg8A9sAFSe4VuPvgAAAABJRU5ErkJggg==
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzN0Y5NjgxNEE5MDExRTRBMzU1RUM1MkVEQTU3
+ REQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzN0Y5NjgwNEE5MDExRTRBMzU1RUM1MkVEQTU3
+ REQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUU1QUVCQUI4RjRBRTQxMUI2QTlC
+ RjEwMkVGQzEyNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz4Oz1B+AAABO0lEQVRIS7WUP0sDQRDFt0snIcEiklhGJLH3k6bNp0ifYCUo
+ KWwMIRCx0EYxEEL+IOPO4SxzczN7d7gGfuzd7Hszd9nHOQD4V9RiStRiStQi0b68GXkgwkjzcdQigU1O
+ 32CC+9IjUYsENvjY7EySDHhev5skGXA3X5r8aYA3lx0wET1otYgmNMcOku+jXtMg4QJFJMb1a7uPmjUd
+ rVzHDfDy9pmJaZViCe5rPq7hYpgvXjPw2hNtTqBOevk+F8L0YRGQQosyHxfSf0jUegPLZwkrNedYfi6o
+ 9Y2RWP6cACPHYnf4XauQablfHYAxo6jt9sfwRGWgVvrVASKmdd7g2OoN4P5pVYhqbgCPmnPuzHPtua1C
+ s9OHyeyxEFU+IJcCb2p4zj3dKjQvrsat3jD4CwNCIcEv14/fpAfcDwXsled4Tu6+AAAAAElFTkSuQmCC
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGMEQ1RDBCNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
+ MzBCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGMEQ1RDBBNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
+ MzBCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDMDRERTRENjRBRTQxMTk3NEFD
+ QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz6zemTaAAABh0lEQVRIS7WUvUoDQRSFEwiBKPEHsRAkb+ArWIsv4CNYCSKI
+ jRD8a1S0m9QhdTobG5uARZogBJSkiLASFJJChQiRcJ2z2bnMZtbxCnrhY3YO556z1aSI6F9JFP+SRBEs
+ FFaUhoSopAyQKGIBi58jEuErcQSAhY/hyP5DL8Y7mQMcAcD8Phh+u2Tzk9cRAMz914G4wOd1BABzt/cm
+ LvB5HQHA3On2xQU+ryMAmB8en8UFPq8jAJjvWk/iAp/XEQDM9WZHXODzOgKAudZoiwt8XkcAMN/U78Ml
+ CcY7mQMcAWhz+FRc3zZFREXypwKYEiG/e+ykc1WYVRrCGUk8nGUHsyic6nKeetUK4dTESjjLDjZUlqaV
+ hiS8lEsh0Z1LTFYs2FBazFFwcUzB+YE+T8bffD+i4LRIwSV0jdZaO5vhHXtRPmfFgg1n81mlIQnt/W1q
+ bKyH34dz2XKUz1mxYBaFU5zJUG1tlXDu5TMcjuEsO5hF4exOpZWGtnLpWDiGs+xgFv9gxlmU+gIVyyIX
+ YCSg/AAAAABJRU5ErkJggg==
+
+
+
+
+ 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=
+
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
+ LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
+ Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
+ cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
+ RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
+ cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
+ bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
+ ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
+ TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
+ MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVGNUQ0RjNENEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
+ RkEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVGNUQ0RjNDNEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
+ RkEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
+ OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzUxNUY0MjEyRDRERTQxMUIzNkJE
+ NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
+ NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
+ eHBhY2tldCBlbmQ9InIiPz7jldwbAAAEyklEQVRIS6WWDUzUdRjHoeXWVktIc74MLREMUxBQV4RYkBmL
+ SBwSoZIFCgULlOJFDJDxqkiAqGgoiIQ6jaFLB1EqUaC8iMgdL8cJB3fHwR13HO8Hh3x7fn+pwN01nM/2
+ 2X77Pb/n+33+v/3/95zBbGOVnZM58QHhRKwgnp9KPXuQ2CtJ6ScOjGo0fcMjI93llVX55us3rqbUc49P
+ zDLyw9auL4iw5l+IsMY//BRujcygdcg+ug83rpzCsVhf3C6+hHg/W+R++985BtU3pey1cCCpOYQhJzo9
+ 8kPX1tZcDoS0Jp2jrCgWmakhOJMVA4GwBd1KNSQ9veiUdeNifjqyMsJxveD7f8+z2rPBlg0kNZ9gJjMj
+ L8RqQlSegIbLX6CuYAcOBm9FHe8B2rt70SZTgNfehTphJ+paCaEYjSIJkmP24PaPnrhfsBP8okCcCbZ8
+ RFLmxIuc6PTICV5Dh4IxNqSEemAA6adzwBdJ8VeDEL/XNqGkmo/iKh4HW5fWNCL7QiEqq2sw3N+Dijwf
+ nPx6FUjKkpjLiU6P7MDVqL/gj8nJSY4bpbcQnZyK8EOJCI2Ox3dRcY+JjkNYTAIi4w4j7+JlKBQKjI+P
+ 42qqJ9J832AGawkjTnR6ZPm/iXvn9+ARiWsnJjCu1YLeGshJQCKVolMs5hBLJOiSydAjl0OpUmFweBhj
+ ZJAfuxVJ3ub6DTJ9LVCd40Pij6AZ01IRoWVGumE5dmZEM45RjRbnolwR72Wm3yDt85W4e2o3FVLnGg1G
+ xsYwSvDEdxB03gEa6vJwSopOhkZHkRPhgkPbTfUbpOwwR+XxXdT9OM79EQ/lgBLNkjpsz1iMP5t/oU7H
+ dIoz+oeGcTbUGVHblus3SPJYgfI0LxLSIPmaL4LyHOB5bClK6gswNDLKoUucoezvx+n9W3Dg49f0G8S5
+ LUfZEU8MkpC8T43YQi8UVp3kutOFenAIvep+dClUkClVOPXNZoQ6L9NvEE3uN+PdMUBvRXevCgqVmjob
+ gGpgEH1PwPZYTq7soy9bDolcgRNfOWL/ZhP9BpEfLsVvMW70kQ1C2qMgEyVnUiUoQ2CuPZTUra7rYYi6
+ ZDi+910EvbdEv0GYkwlKIj+BijrL+jUKbdJO1LZWwD19EUrrr0Cu6tMpzhCKJcj40gEB9ov1G4RsWoLi
+ UBe6V7r/n70RkPMOPDJMcLXqLPc0DF3ijBaRCOneG+H31kL9BkF2i3B9nzN1qoagQ4yDlzxQUE6/lHRd
+ XfLeGbA9cbccwk4JHggegi8UIc3LDj7rFug3CNiwENcCt6CH3ojm9g7qqoN79HZpF9rpjjumYGu2x3I8
+ 4UNU85pwv0WAox5vY7f1/xj42SxAkf/7kCmUuNfUiho+FTa3gtfaRh22o6lNxMHWbI/lKut5uFVdh7sN
+ jTiybQN2rpmv18DQ1+rViUJfRwia+bjXLEB1YxNqyai+VUiditDY1sHB1myP5e408FFR34Cb5WVIdLXF
+ Zxbz2DywJYw51WkxZ9eqebxUFyvk7rDHD24bkOhig4RZEM/4yAZhm1Ziq6lRG2mxscmm2owwdF72suOn
+ ZkZCTzNjuJsaYdtT4vr63E4L4xcCSYv9IXiJU30i2BxlzmzkWRHsLp8GVsNqp2aygcHfZtZtYIryU78A
+ AAAASUVORK5CYII=
+
+
+
+
+ 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
+ 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=
+
+
iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
@@ -1776,6 +2242,40 @@
OkHDH7XWtYa2It66Y4eCQ8cRfpvUNa2hTUD8A6JMaBvCyTdJAAAAAElFTkSuQmCC
+
+
+ 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
@@ -2023,651 +2523,6 @@
1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
-
-
- 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
- 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=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkVGN0NDMDNDRTA0QUU0MTE5NzRBQ0FBRUI0QjM1
- RDZFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFFRUUzNDdFNEFGMTExRTQ5M0I5QzUwRjVCODdC
- MERFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFFRUUzNDdENEFGMTExRTQ5M0I5QzUwRjVCODdC
- MERFIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkI0NEVFQkRFRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RUY3Q0MwM0NFMDRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4Ym8PVAAAC+UlEQVRIS6WVbUhTYRTHr5tuc073YoSmmyuwNPWLKdaHEgpL
- ISg/VB8Ugj5oRi9C9iEDe8UKMzDKKRVIRfRCaR8Ko8xEK6PMbDInmqlroKit+YYiejrnaa47dreye+DH
- s+f8z/M/57lw77jPV3Wi8BcAwHFtFdqlgqe4IERCe3/BGrwv1y4VIPC8CpEwJx/BGrRc1PwrAYjsTZkW
- uh6vBPz91yaswatzal8oXp5R72k4q65FBnEPjaUasNTFgfNrGpjvxQDl0MdnE9ag/mSYF89KwnbiOvCx
- xgj9zSkwZk2HKXsWTH7PhElbBoyZY+GHJQU+3dID1vm/yZPiUA/qjocewHWhr2kdTroZbO9SoeNBLDRd
- iYCnpzTQdjsGRtqTofVmNGAdaFesAV30WgjXJ0K4IanSZfsnHhap3Nw/qsrFdWEQTTtr46G+dBncLVRZ
- qvJDTBuSjdDd1QG1xWpoMUUB1oG1uwcGbHZwOCdgdm6eGtBtPOPO4ZBFopDxL48SANf5qjxl3aEseTaW
- GDSRq2t00fFsUtQYGpxcGxUHOn0CM3ajT6z+7eyKG/uVjOv5StPrKiNU5ym78zPkO1EyIMuRMB1e/+fE
- NIxPzQDWQu+3AcbwqAMmpmdhambOjdctru0LJpTIeMXe4IYkgzQO05GIGpHjRCb+hNSMbuI1OR/+LS7n
- KrhLOYrs8hxFe5JeasQUTR2CSEmjA2POaTcjjkkYGnWylZ/nQ2fIm8WF3XLu/C552ZGtsjTc0sdFiUiw
- qNI90f9TyZ3OlnElO2QFaEpTk7mUclRgG3aIgjy4E9tlXFGmLBWNFUgg7QkS++yjomANjm0L4vI2BWrI
- HJHQniDR2j8kCtagcEsgt36VhF7zAIL2BInmXrsoWIOD6VJBSGzrGhQFa1CwUSoIia3mPg8o5w+henwq
- wkFic3uPB0K5RXzVu+y8g8TGD1YPKOcPoXqXnXeQ+KLV4gHfTAihepedd5BY/7ZTFKwB/a3xWQwURX8q
- 1BGxz38BvCwLsyQ3iHgAAAAASUVORK5CYII=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJBREU3RDk2NEFCMDExRTQ4OUM5QjZFOENGQzJF
- MDk1IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJBREU3RDk1NEFCMDExRTQ4OUM5QjZFOENGQzJF
- MDk1IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEM5Mzk2NTZBRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz52g1XsAAADeUlEQVRIS62Va0hTYRiAXzVNoQs6oUCttJu3aqatrLxr2k0n
- W6bLLlLSxTKCKLoQQUg3IbLMflSgBRGRP7JSSzGnWalYdpnV1MQu1tBWWklqvr3fp2dsOytSfOFh3/l2
- eJ7tnDMGkkmzGCqigsARhPlUQqCi8nEd9v7GEYP5mFcI4K/e/hGHeQ2B7p4+1HV8Nf6Kw4a5GGxtCHzv
- 7sU2nR4lbr4/AUBFKIeD4GKYBL79+IX6rm622U8nSgnX4SC4GCaBL50/OXwTwIUY1ohcQkCn/84ZDLBP
- I5p16TBl7XYIoaXVwI54RC4h8LG9k/OvQPIOmEZUJW2F+XRoPbBrOiKXEGj9rOdYCqi2gxXhnLQNIo6f
- n9tEa7ViI79PoojIJQSaP3RwjAOJaSAjjhL3N+9zrD+W499UVJnSeeVmWDvtlcWlgCedZnK5RC4h8KZV
- x2FryQSYmrAVjh/MnP46/57yS7VmZ9+zxr1Yr92NtQ1pWFmfiBevL9QpUqE0JhHcyWuImLsMAU1zG4et
- V6yHC1l5oe+evNmD1ZoteL9OgaW1K7GkRoF3H8ZigTocb5bFY8bZWbpoFVwh7yiCR8xdhsAz7XuOh9QD
- D2R6twyIEzG/JApz88N7z+T5d+VcDezKL43Ea4UxeCjTqyNUDpUBYeBFXjvjgOAyCdS9asXDJ3NQFj3u
- 7eWCyG/FjxR45OyMr6s3S1qCYqE8RA654Uq4dOiUV/v+E9P0i1ZA9Zwg8COnA2HyDZiLYRw4dyAjC50n
- z8awBBvNbbWyZ+8x10+By+GONARCbe1gDBPJloCvfKODluQ10mD+qDK5LWFyD6pfvOUYBzydXL0v2I+V
- rI9Mhud5BQE9i+RQPt2P30BBYrM4HmYSNf5REGS0b5CzYdKq+iaOITA44wmPiLXwaFfGhDbZMkinYxNJ
- 8CpwXxgHobQcPbhv8XegrtNyzAPsOtqHJUPeml1jm/1jYDkdM5G5hB3bDL6KhknLal9xzAN8gpMgVZHm
- oKUAuwx29H420c9O/l9KHms4bC0KLFCAY6CSHr+VoHJy88lWbEjHoqoXWPzw5ZCxGKCxkslBLo22L1+6
- ahPeUj/FwgfPh8zpSzfQ0cWrwVKAjfXcWFjjPm9isWSSbx/7JEPF0cWzcYzE7dTfAmysfSLB2z0Awm1H
- 8ycnjrD4N/kX4gEg8A9sAFSe4VuPvgAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzN0Y5NjgxNEE5MDExRTRBMzU1RUM1MkVEQTU3
- REQxIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzN0Y5NjgwNEE5MDExRTRBMzU1RUM1MkVEQTU3
- REQxIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUU1QUVCQUI4RjRBRTQxMUI2QTlC
- RjEwMkVGQzEyNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4Oz1B+AAABO0lEQVRIS7WUP0sDQRDFt0snIcEiklhGJLH3k6bNp0ifYCUo
- KWwMIRCx0EYxEEL+IOPO4SxzczN7d7gGfuzd7Hszd9nHOQD4V9RiStRiStQi0b68GXkgwkjzcdQigU1O
- 32CC+9IjUYsENvjY7EySDHhev5skGXA3X5r8aYA3lx0wET1otYgmNMcOku+jXtMg4QJFJMb1a7uPmjUd
- rVzHDfDy9pmJaZViCe5rPq7hYpgvXjPw2hNtTqBOevk+F8L0YRGQQosyHxfSf0jUegPLZwkrNedYfi6o
- 9Y2RWP6cACPHYnf4XauQablfHYAxo6jt9sfwRGWgVvrVASKmdd7g2OoN4P5pVYhqbgCPmnPuzHPtua1C
- s9OHyeyxEFU+IJcCb2p4zj3dKjQvrsat3jD4CwNCIcEv14/fpAfcDwXsled4Tu6+AAAAAElFTkSuQmCC
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjlGMEQ1RDBCNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
- MzBCIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjlGMEQ1RDBBNEFENzExRTRBNTYzOUQ5RUQ0RTQ0
- MzBCIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFDMDRERTRENjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz6zemTaAAABh0lEQVRIS7WUvUoDQRSFEwiBKPEHsRAkb+ArWIsv4CNYCSKI
- jRD8a1S0m9QhdTobG5uARZogBJSkiLASFJJChQiRcJ2z2bnMZtbxCnrhY3YO556z1aSI6F9JFP+SRBEs
- FFaUhoSopAyQKGIBi58jEuErcQSAhY/hyP5DL8Y7mQMcAcD8Phh+u2Tzk9cRAMz914G4wOd1BABzt/cm
- LvB5HQHA3On2xQU+ryMAmB8en8UFPq8jAJjvWk/iAp/XEQDM9WZHXODzOgKAudZoiwt8XkcAMN/U78Ml
- CcY7mQMcAWhz+FRc3zZFREXypwKYEiG/e+ykc1WYVRrCGUk8nGUHsyic6nKeetUK4dTESjjLDjZUlqaV
- hiS8lEsh0Z1LTFYs2FBazFFwcUzB+YE+T8bffD+i4LRIwSV0jdZaO5vhHXtRPmfFgg1n81mlIQnt/W1q
- bKyH34dz2XKUz1mxYBaFU5zJUG1tlXDu5TMcjuEsO5hF4exOpZWGtnLpWDiGs+xgFv9gxlmU+gIVyyIX
- YCSg/AAAAABJRU5ErkJggg==
-
-
-
-
- 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=
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkVGNUQ0RjNENEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
- RkEzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkVGNUQ0RjNDNEQyRDExRTRBQ0ZFOEVGNkU4Rjcw
- RkEzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzUxNUY0MjEyRDRERTQxMUIzNkJE
- NUVDQjU5MzE1NjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz7jldwbAAAEyklEQVRIS6WWDUzUdRjHoeXWVktIc74MLREMUxBQV4RYkBmL
- SBwSoZIFCgULlOJFDJDxqkiAqGgoiIQ6jaFLB1EqUaC8iMgdL8cJB3fHwR13HO8Hh3x7fn+pwN01nM/2
- 2X77Pb/n+33+v/3/95zBbGOVnZM58QHhRKwgnp9KPXuQ2CtJ6ScOjGo0fcMjI93llVX55us3rqbUc49P
- zDLyw9auL4iw5l+IsMY//BRujcygdcg+ug83rpzCsVhf3C6+hHg/W+R++985BtU3pey1cCCpOYQhJzo9
- 8kPX1tZcDoS0Jp2jrCgWmakhOJMVA4GwBd1KNSQ9veiUdeNifjqyMsJxveD7f8+z2rPBlg0kNZ9gJjMj
- L8RqQlSegIbLX6CuYAcOBm9FHe8B2rt70SZTgNfehTphJ+paCaEYjSIJkmP24PaPnrhfsBP8okCcCbZ8
- RFLmxIuc6PTICV5Dh4IxNqSEemAA6adzwBdJ8VeDEL/XNqGkmo/iKh4HW5fWNCL7QiEqq2sw3N+Dijwf
- nPx6FUjKkpjLiU6P7MDVqL/gj8nJSY4bpbcQnZyK8EOJCI2Ox3dRcY+JjkNYTAIi4w4j7+JlKBQKjI+P
- 42qqJ9J832AGawkjTnR6ZPm/iXvn9+ARiWsnJjCu1YLeGshJQCKVolMs5hBLJOiSydAjl0OpUmFweBhj
- ZJAfuxVJ3ub6DTJ9LVCd40Pij6AZ01IRoWVGumE5dmZEM45RjRbnolwR72Wm3yDt85W4e2o3FVLnGg1G
- xsYwSvDEdxB03gEa6vJwSopOhkZHkRPhgkPbTfUbpOwwR+XxXdT9OM79EQ/lgBLNkjpsz1iMP5t/oU7H
- dIoz+oeGcTbUGVHblus3SPJYgfI0LxLSIPmaL4LyHOB5bClK6gswNDLKoUucoezvx+n9W3Dg49f0G8S5
- LUfZEU8MkpC8T43YQi8UVp3kutOFenAIvep+dClUkClVOPXNZoQ6L9NvEE3uN+PdMUBvRXevCgqVmjob
- gGpgEH1PwPZYTq7soy9bDolcgRNfOWL/ZhP9BpEfLsVvMW70kQ1C2qMgEyVnUiUoQ2CuPZTUra7rYYi6
- ZDi+910EvbdEv0GYkwlKIj+BijrL+jUKbdJO1LZWwD19EUrrr0Cu6tMpzhCKJcj40gEB9ov1G4RsWoLi
- UBe6V7r/n70RkPMOPDJMcLXqLPc0DF3ijBaRCOneG+H31kL9BkF2i3B9nzN1qoagQ4yDlzxQUE6/lHRd
- XfLeGbA9cbccwk4JHggegi8UIc3LDj7rFug3CNiwENcCt6CH3ojm9g7qqoN79HZpF9rpjjumYGu2x3I8
- 4UNU85pwv0WAox5vY7f1/xj42SxAkf/7kCmUuNfUiho+FTa3gtfaRh22o6lNxMHWbI/lKut5uFVdh7sN
- jTiybQN2rpmv18DQ1+rViUJfRwia+bjXLEB1YxNqyai+VUiditDY1sHB1myP5e408FFR34Cb5WVIdLXF
- Zxbz2DywJYw51WkxZ9eqebxUFyvk7rDHD24bkOhig4RZEM/4yAZhm1Ziq6lRG2mxscmm2owwdF72suOn
- ZkZCTzNjuJsaYdtT4vr63E4L4xcCSYv9IXiJU30i2BxlzmzkWRHsLp8GVsNqp2aygcHfZtZtYIryU78A
- AAAASUVORK5CYII=
-
-
-
-
- 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
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjgzMjEyRkFGNEFDRjExRTQ4MENGRkEzRDEwQ0Uw
- RjZEIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgzMjEyRkFFNEFDRjExRTQ4MENGRkEzRDEwQ0Uw
- RjZEIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjFGOUQzNUFDRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz48kEQ/AAADtUlEQVRIS62UbUxTVxjHbwSHm0R5SRSHsOGkcVoTB26a2AnL
- Ok0AgegSt0QqoJuKK4ggTmAOQUbFt2XZJpUqIKPtBpmtqAxfELSgFF+SbUbNPugn4wc/6aJuyfzveU45
- t1e4zmXzJL/8z/Oc5/z/l0tbJTp+9v8CwD+ie4lYQfQTDwk3kULozemaahl5gY3cxrfMGPBfwe8PHqHD
- 24WXE+eC+uM0cyp6plq0w6ZkUxpcHUfhG7yC+w/+VLFuqkJUnLFAM6uiZ6pFDqbFvJYER2sHbt+9NwrX
- 4eG/Is6YpTVn9Ey1yMHOA04Prt+681Sa3UfoNRm7teaMnqkWOfjQd/kG/L/efCp8znOKorwgzZlnruHB
- PWtLq9Hd/zN6/NdGcazvMvILKxExxeCmK5H/JWBS1NSZDaR/EPykTxJnfDRhUsKJkLFh2ZGxryPaEBJK
- V8fQme5rkWgDeDuBmENkEMuI9zVwnT4xJhGfuF4VoVSPJ8boGUvE0gTwU3FIDDFVEhk7gyfj+MnNthcf
- t19/F8WeBBkSzpr8cRjfGxUmlgwYibn+pVBSkIrXxtpwcT7afnsHNn8S14+H+3+xkhWHhPzrAAJrXQlo
- uZqKrT8Z4aInb7q6EBUD8bANvYma80ko+jGRzlOQ1xqv/r/IMpwIVQN4yUMt+c2vwP5LKip8BpT1zkJl
- fyKsp2JVSnoM2NI3B9sGZmJz7xvYem4uLE3BIIasOUxR5pWNw/rTySj3zUPt4ALUD5mw+5IJBd3TkOOZ
- rGLxPonsrzg8GbneeKzpnA1L+yysIy/2JOvpIiC5KAzpdgPMjRFIb41CpjMKWa5oQbb72fBcpjMaGXT3
- PQd5kBd7kjV/KhXl0g+1GHRWEdtwoe1zXPx+u9hz3++qFnA95K5R+zzPfZ4P9AP3WQP3q4IBAy0VOH+o
- Av3NW8B71gutlWIvlc99TZ+KPau21t4b/O4z0nKccZQFA842bsSZfYVg7bNvENrbUKTqOUeJOO/bXxxQ
- mpF1z7dWoXKe6+6vrWivyw8GdO3Kw8kvP8Jx0uO7VuGIbSWO1uehc0cuju3MV2tvnUX0PHU5ar9r92pR
- y3MP9ZxVH6KlcnkwwFvzAdrKl6J5czYaNqTDUZqJ/RszcKA0S9QHN2XBXpyBxpIlAj7nms9lzXO830f6
- TWEa9hYsDgbYrYvw1Toz6nIXEimoXfk2vqD9dosJtrxUoSP7vK/JWaDWrPK8mvrspQbQ4i8Ef2a58TwJ
- fA9o8Q8dh0Q8X5TwvwE0C9fB+8UTrQAAAABJRU5ErkJggg==
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADZmlUWHRYTUw6Y29tLmFkb2Jl
- LnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi
- Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENv
- cmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJE
- RiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8
- cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNv
- bS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlw
- ZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1w
- TU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJGQzkyMzc0Rjk0OUU0MTE5NjNCQjRENDMzQjlC
- MUM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkIxQTMzQzlGNEFDRjExRTQ5OEMwQ0Y0Q0Y4QzlC
- ODkwIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkIxQTMzQzlFNEFDRjExRTQ5OEMwQ0Y0Q0Y4QzlC
- ODkwIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIj4gPHhtcE1N
- OkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjRGOUQzNUFDRjRBRTQxMTk3NEFD
- QUFFQjRCMzVENkUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkZDOTIzNzRGOTQ5RTQxMTk2M0JC
- NEQ0MzNCOUIxQzgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/
- eHBhY2tldCBlbmQ9InIiPz4XXXQtAAAELElEQVRIS7VV20/TZxhmk8TFmWWRCy+WsGgmF3MmTragkznE
- LtuEoaJjKqUTFCggp4IFWg7lOAQ5CIyjUJCWAuNQ6mTgCmsVykmvFpMl/iW7mM/e92u/X39s7HCzL3l4
- 3ud5Dw9ctITwA/CfERZ+BGERu0Jp7dWd+moob6fmTuDjBudBMNPa64R/DFHeTk2JwLFXmD9v2/Ny+oUG
- hc4DMmQvc2TG7jeo/kuY8v7cYGia9oTyMvFvknufHof9xWk0bh5j/TLg/x4I45Bd6hvKU5sSvKR3HMDI
- 8xhULrwHx69nYH1+CmZfOBq3PkTt2jHkzxyi/idIHQ0Xf1EgaC8hlG8oTzbVSBt+G32/xMC8EgGj5zDK
- Vw8h1/2WgqLlCJR5j6La9y5KPO+j8skH0FmDQQw6zWEhIVHG15CzFAnTShTqN06iaSsaLc+ikb14ECnO
- /Qp0c9shfe3sflybC0fmgyPQfX8YWXSLb9Lpd0RAZP5uxPVFQDPwJuJG9yFhbB/OOcIEzo//O3guYSwM
- 8bT76T26Qbf4Jp0+KgKeTdZjY8xCqMa6vQpPJ+pEzf6mo0aA9dZ4reLzPPs87/f9+8z+fUswYMPOTQvW
- bJXgmnnTQcNUS+a+b7RC1IJVWr23NU6htip4rWZVADV8I2Ywr/ES6/vlCm/Sb8n9dVuFYJ6RenXY5PcD
- 86w9Q6VwtecFA54MGmnBhBVrKdZpkJn16nAZ1uiQ1CtDJcLjeelvUJiyT33vYAnmuwow05ITDFgZMuLx
- vWIaMMLTbxDMepUWWPvokHegiA7dEuA+a+5LzXNcL/UWYr4zD5ON6cGAn3vy8HjAAGZvfyE8vfnw9hUI
- /Xc+18vduYpmZs/dnQfXnQxMNqSpArpvYqkrB8vf3YS7MxuenlyF1b66/1NH1jZf6oV2PVzNNzBWo+MA
- /+fgUVs63B16MC93ZQte6swS7L6bqfBCy3Uxt9h6Q2jJcp/1QlsGput1sFuSOcD/SX7Ueh0/Nl/DYkva
- Nl64k4qHt3Winm/6RviS2eM91jwn+UGjDlO1ybCWXuQA/5urvwpXQzKYHzamwFl3BT98qxV6ngK4J32u
- Z2svC581++yxZt/VoIWjIgnDMoC/9Vw0OG1JguQ5GpR6quorOGu+VvyZ6iShmaVW+xMVl2A3JaKnII5O
- Uwb/mCxPxAwdYp6quIhx03lMV17ChPmC0NKX2lF2DrMUyJr31DxhTsSgIQ79BfHBgCk6ME5LE6YLsBrO
- 4v6tL2Et/AIjxfFCCyZtMyYIPVwUt21O+AEeIr8n9zO0ZcQGA2zFZ8VAlz4WXVkatKfHoEN/Bq0Bvptx
- WkD6XHdkxgqt9pl553bqKQEloC9Hg+bUj9GgOwnLFfqfkBLk6uQTqNMSXz2OWu1HAvW6aOHLOe5Lrroc
- RbMnYKF5JeD/A0L+ALgaUQ70/qVMAAAAAElFTkSuQmCC
-
-
-
-
- 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
- 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
- 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
- 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
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 @@
-
-
-
-
-
-
-
-
-
-
-