You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
822 lines
35 KiB
822 lines
35 KiB
using System; |
|
using System.ComponentModel; |
|
using System.Drawing; |
|
using System.Text; |
|
using System.Windows.Forms; |
|
using DevExpress.Utils; |
|
using DevExpress.XtraEditors; |
|
using DevExpress.XtraEditors.Controls; |
|
using DevExpress.XtraEditors.Mask; |
|
using DevExpress.XtraTab; |
|
using ESRI.ArcGIS.Carto; |
|
using ESRI.ArcGIS.DataSourcesRaster; |
|
using ESRI.ArcGIS.Geodatabase; |
|
using KGIS.Plugin.LayerProperty.Interface; |
|
using KGIS.Plugin.LayerProperty.Utils; |
|
|
|
namespace KGIS.Plugin.LayerProperty.View.UC_Controls |
|
{ |
|
public class UCRasterStretchSet : XtraUserControl, IPropertyPage |
|
{ |
|
private bool m_Invert; |
|
private esriRasterStretchTypesEnum m_RasterStretchTypesEnum; |
|
private esriRasterStretchStatsTypeEnum m_RasterStretchStatsTypeEnum; |
|
private bool m_UseGamma; |
|
private IRasterRenderer m_RasterRenderer; |
|
private System.EventHandler editorChanged; |
|
private bool isDirty; |
|
private IContainer components; |
|
private GroupControl groupControl1; |
|
private CheckEdit chkInvert; |
|
private LabelControl labelControl1; |
|
private ComboBoxEdit cmbStretchType; |
|
private TextEdit textEdit3; |
|
private TextEdit textEdit2; |
|
private TextEdit textEdit1; |
|
private CheckEdit chkUseGamma; |
|
private GroupControl groupControl2; |
|
private ComboBoxEdit cmbStretchStatsType; |
|
private PanelControl panelControl1; |
|
private MemoEdit memoEdit1; |
|
private PanelControl panelControl2; |
|
private LabelControl labelControl2; |
|
private MemoEdit memoEdit2; |
|
private XtraTabControl xtraTabControl1; |
|
private XtraTabPage xtraTabPage1; |
|
private XtraTabPage xtraTabPage2; |
|
private XtraTabPage xtraTabPage3; |
|
private LabelControl labelControl3; |
|
private TextEdit txtStddevR; |
|
private TextEdit txtMeanR; |
|
private TextEdit txtMaxR; |
|
private TextEdit txtMinR; |
|
private LabelControl labelControl6; |
|
private LabelControl labelControl5; |
|
private LabelControl labelControl4; |
|
private TextEdit txtStddevG; |
|
private TextEdit txtMeanG; |
|
private TextEdit txtMaxG; |
|
private TextEdit txtMinG; |
|
private LabelControl labelControl7; |
|
private LabelControl labelControl8; |
|
private LabelControl labelControl9; |
|
private LabelControl labelControl10; |
|
private TextEdit txtStddevB; |
|
private TextEdit txtMeanB; |
|
private TextEdit txtMaxB; |
|
private TextEdit txtMinB; |
|
private LabelControl labelControl11; |
|
private LabelControl labelControl12; |
|
private LabelControl labelControl13; |
|
private LabelControl labelControl14; |
|
private TextEdit txtStandardDeviationsParam; |
|
private LabelControl labelControl15; |
|
|
|
event System.EventHandler IPropertyPage.EditorChanged |
|
{ |
|
add |
|
{ |
|
this.editorChanged = (System.EventHandler)Delegate.Combine(this.editorChanged, value); |
|
} |
|
|
|
remove |
|
{ |
|
this.editorChanged = (System.EventHandler)Delegate.Remove(this.editorChanged, value); |
|
} |
|
} |
|
bool IPropertyPage.IsPageDirty |
|
{ |
|
get |
|
{ |
|
return this.isDirty; |
|
} |
|
set |
|
{ |
|
this.isDirty = value; |
|
} |
|
} |
|
DockStyle IPropertyPage.Dock |
|
{ |
|
get; |
|
set; |
|
} |
|
public UCRasterStretchSet() |
|
{ |
|
this.InitializeComponent(); |
|
} |
|
private void InitStretchType() |
|
{ |
|
this.cmbStretchType.Properties.Items.Clear(); |
|
ItemInfo<esriRasterStretchTypesEnum, string> item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_NONE, "无"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_DefaultFromSource, "缺省"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_Custom, "自定义"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_StandardDeviations, "标准差"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_HistogramEqualize, "直方图均衡"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_MinimumMaximum, "最大最小值"); |
|
item = new ItemInfo<esriRasterStretchTypesEnum, string>(esriRasterStretchTypesEnum.esriRasterStretch_HistogramSpecification, "规范直方图"); |
|
this.cmbStretchType.Properties.Items.Add(item); |
|
} |
|
private void InitStretchStatsType() |
|
{ |
|
this.cmbStretchStatsType.Properties.Items.Clear(); |
|
ItemInfo<esriRasterStretchStatsTypeEnum, string> item = new ItemInfo<esriRasterStretchStatsTypeEnum, string>(esriRasterStretchStatsTypeEnum.esriRasterStretchStats_AreaOfView, "从当前可视范围内"); |
|
this.cmbStretchStatsType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchStatsTypeEnum, string>(esriRasterStretchStatsTypeEnum.esriRasterStretchStats_Dataset, "从当前每个栅格数据集"); |
|
this.cmbStretchStatsType.Properties.Items.Add(item); |
|
item = new ItemInfo<esriRasterStretchStatsTypeEnum, string>(esriRasterStretchStatsTypeEnum.esriRasterStretchStats_GlobalStats, "从自定义设置中(如下)"); |
|
this.cmbStretchStatsType.Properties.Items.Add(item); |
|
} |
|
void IPropertyPage.InitUC(object property) |
|
{ |
|
this.InitStretchType(); |
|
this.InitStretchStatsType(); |
|
IRasterLayer rasterLayer = property as IRasterLayer; |
|
if (rasterLayer == null) |
|
{ |
|
return; |
|
} |
|
this.m_RasterRenderer = rasterLayer.Renderer; |
|
if (this.m_RasterRenderer is IRasterStretch2) |
|
{ |
|
IRasterStretch2 rasterStretch = this.m_RasterRenderer as IRasterStretch2; |
|
this.chkInvert.Checked = rasterStretch.Invert; |
|
this.cmbStretchType.SelectedIndex = (int)Convert.ToInt16(rasterStretch.StretchType); |
|
this.cmbStretchStatsType.SelectedIndex = (int)Convert.ToInt16(rasterStretch.StretchStatsType); |
|
} |
|
if (this.m_RasterRenderer is IRasterStretch3) |
|
{ |
|
IRasterStretch3 rasterStretch2 = this.m_RasterRenderer as IRasterStretch3; |
|
this.chkUseGamma.Checked = rasterStretch2.UseGamma; |
|
if (rasterStretch2.GammaValue is double) |
|
{ |
|
this.textEdit1.Text = rasterStretch2.GammaValue.ToString(); |
|
return; |
|
} |
|
double[] array = rasterStretch2.GammaValue as double[]; |
|
this.textEdit1.Text = array[0].ToString(); |
|
if (array.Length >= 2) |
|
{ |
|
this.textEdit2.Text = array[1].ToString(); |
|
} |
|
if (array.Length >= 3) |
|
{ |
|
this.textEdit3.Text = array[2].ToString(); |
|
} |
|
} |
|
} |
|
bool IPropertyPage.CanWrite2Prop() |
|
{ |
|
return true; |
|
} |
|
void IPropertyPage.Write2Prop() |
|
{ |
|
if (this.m_RasterRenderer is IRasterStretch2) |
|
{ |
|
IRasterStretch2 rasterStretch = this.m_RasterRenderer as IRasterStretch2; |
|
rasterStretch.Invert = this.chkInvert.Checked; |
|
rasterStretch.StretchType = this.m_RasterStretchTypesEnum; |
|
rasterStretch.StretchStatsType = this.m_RasterStretchStatsTypeEnum; |
|
if (rasterStretch.StretchType == esriRasterStretchTypesEnum.esriRasterStretch_StandardDeviations) |
|
{ |
|
rasterStretch.StandardDeviationsParam = Convert.ToDouble(this.txtStandardDeviationsParam.Text); |
|
} |
|
} |
|
if (this.m_RasterRenderer is IRasterStretch3) |
|
{ |
|
IRasterStretch3 rasterStretch2 = this.m_RasterRenderer as IRasterStretch3; |
|
rasterStretch2.UseGamma = this.chkUseGamma.Checked; |
|
} |
|
if (this.m_RasterStretchStatsTypeEnum == esriRasterStretchStatsTypeEnum.esriRasterStretchStats_GlobalStats) |
|
{ |
|
this.SetStatisticsCurrentDataset(); |
|
} |
|
} |
|
void IPropertyPage.SetDefaultValue(object value) |
|
{ |
|
} |
|
private void InvokeEditValueChanged(object sender, System.EventArgs e) |
|
{ |
|
if (this.editorChanged != null) |
|
{ |
|
this.editorChanged(sender, e); |
|
} |
|
this.isDirty = true; |
|
} |
|
private void cmbStretchType_SelectedValueChanged(object sender, System.EventArgs e) |
|
{ |
|
ItemInfo<esriRasterStretchTypesEnum, string> itemInfo = this.cmbStretchType.EditValue as ItemInfo<esriRasterStretchTypesEnum, string>; |
|
if (itemInfo != null) |
|
{ |
|
this.m_RasterStretchTypesEnum = itemInfo.InnerValue; |
|
} |
|
if (this.m_RasterStretchTypesEnum == esriRasterStretchTypesEnum.esriRasterStretch_StandardDeviations) |
|
{ |
|
if (this.m_RasterRenderer is IRasterStretch2) |
|
{ |
|
this.txtStandardDeviationsParam.Visible = true; |
|
this.labelControl15.Visible = true; |
|
IRasterStretch2 rasterStretch = this.m_RasterRenderer as IRasterStretch2; |
|
this.txtStandardDeviationsParam.Text = rasterStretch.StandardDeviationsParam.ToString(); |
|
} |
|
} |
|
else |
|
{ |
|
this.txtStandardDeviationsParam.Visible = false; |
|
this.labelControl15.Visible = false; |
|
} |
|
this.InvokeEditValueChanged(sender, e); |
|
} |
|
private void cmbStretchStatsType_SelectedValueChanged(object sender, System.EventArgs e) |
|
{ |
|
ItemInfo<esriRasterStretchStatsTypeEnum, string> itemInfo = this.cmbStretchStatsType.EditValue as ItemInfo<esriRasterStretchStatsTypeEnum, string>; |
|
if (itemInfo != null) |
|
{ |
|
this.m_RasterStretchStatsTypeEnum = itemInfo.InnerValue; |
|
switch (this.m_RasterStretchStatsTypeEnum) |
|
{ |
|
case esriRasterStretchStatsTypeEnum.esriRasterStretchStats_AreaOfView: |
|
this.memoEdit1.Text = "收集来自当前显示范围内使用所有可见的像素值的统计资料。"; |
|
this.panelControl1.Visible = true; |
|
this.panelControl2.Visible = false; |
|
this.memoEdit2.Text = this.GetStatisticsCurrentDisplay(); |
|
return; |
|
case esriRasterStretchStatsTypeEnum.esriRasterStretchStats_Dataset: |
|
this.memoEdit1.Text = "使用整个栅格数据集的统计数据。"; |
|
this.panelControl1.Visible = false; |
|
this.panelControl2.Visible = false; |
|
return; |
|
case esriRasterStretchStatsTypeEnum.esriRasterStretchStats_GlobalStats: |
|
this.panelControl2.Visible = true; |
|
this.panelControl1.Visible = false; |
|
this.GetStatisticsCurrentDataset(); |
|
break; |
|
default: |
|
return; |
|
} |
|
} |
|
} |
|
private void chkUseGamma_CheckStateChanged(object sender, System.EventArgs e) |
|
{ |
|
this.textEdit1.Enabled = this.chkUseGamma.Checked; |
|
this.textEdit2.Enabled = this.chkUseGamma.Checked; |
|
this.textEdit3.Enabled = this.chkUseGamma.Checked; |
|
} |
|
private string GetStatisticsCurrentDisplay() |
|
{ |
|
if (this.m_RasterRenderer == null) |
|
{ |
|
return ""; |
|
} |
|
IRaster raster = this.m_RasterRenderer.Raster; |
|
if (raster == null) |
|
{ |
|
return ""; |
|
} |
|
IRasterBandCollection rasterBandCollection = raster as IRasterBandCollection; |
|
if (rasterBandCollection == null) |
|
{ |
|
return ""; |
|
} |
|
StringBuilder stringBuilder = new StringBuilder(); |
|
for (int i = 0; i < rasterBandCollection.Count; i++) |
|
{ |
|
IRasterBand rasterBand = rasterBandCollection.Item(i); |
|
IRasterStatistics statistics = rasterBand.Statistics; |
|
stringBuilder.AppendLine("波段#" + i + 1); |
|
stringBuilder.AppendLine("最小值:" + statistics.Minimum); |
|
stringBuilder.AppendLine("最大值:" + statistics.Maximum); |
|
stringBuilder.AppendLine("平均值:" + statistics.Mean); |
|
stringBuilder.AppendLine("标准偏差:" + statistics.StandardDeviation); |
|
} |
|
return stringBuilder.ToString(); |
|
} |
|
private void GetStatisticsCurrentDataset() |
|
{ |
|
if (this.m_RasterRenderer == null) |
|
{ |
|
return; |
|
} |
|
IRaster raster = this.m_RasterRenderer.Raster; |
|
if (raster == null) |
|
{ |
|
return; |
|
} |
|
IRasterBandCollection rasterBandCollection = raster as IRasterBandCollection; |
|
if (rasterBandCollection == null) |
|
{ |
|
return; |
|
} |
|
IRasterBand rasterBand = rasterBandCollection.Item(0); |
|
IRasterStatistics statistics = rasterBand.Statistics; |
|
this.txtMinR.Text = (this.txtMinG.Text = (this.txtMinB.Text = statistics.Minimum.ToString())); |
|
this.txtMaxR.Text = (this.txtMaxG.Text = (this.txtMaxB.Text = statistics.Maximum.ToString())); |
|
this.txtMeanR.Text = (this.txtMeanG.Text = (this.txtMeanB.Text = statistics.Mean.ToString())); |
|
this.txtStddevR.Text = (this.txtStddevG.Text = (this.txtStddevB.Text = statistics.StandardDeviation.ToString())); |
|
if (rasterBandCollection.Count == 1) |
|
{ |
|
this.xtraTabPage2.PageVisible = false; |
|
this.xtraTabPage3.PageVisible = false; |
|
this.xtraTabPage1.Text = "统计信息"; |
|
} |
|
if (rasterBandCollection.Count == 3) |
|
{ |
|
this.xtraTabPage2.PageVisible = true; |
|
this.xtraTabPage3.PageVisible = true; |
|
this.xtraTabPage1.Text = "红(Red)"; |
|
rasterBand = rasterBandCollection.Item(1); |
|
statistics = rasterBand.Statistics; |
|
this.txtMinG.Text = statistics.Minimum.ToString(); |
|
this.txtMaxG.Text = statistics.Maximum.ToString(); |
|
this.txtMeanG.Text = statistics.Mean.ToString(); |
|
this.txtStddevG.Text = statistics.StandardDeviation.ToString(); |
|
rasterBand = rasterBandCollection.Item(2); |
|
statistics = rasterBand.Statistics; |
|
this.txtMinB.Text = statistics.Minimum.ToString(); |
|
this.txtMaxB.Text = statistics.Maximum.ToString(); |
|
this.txtMeanB.Text = statistics.Mean.ToString(); |
|
this.txtStddevB.Text = statistics.StandardDeviation.ToString(); |
|
} |
|
} |
|
private void SetStatisticsCurrentDataset() |
|
{ |
|
if (this.m_RasterRenderer == null) |
|
{ |
|
return; |
|
} |
|
IRaster raster = this.m_RasterRenderer.Raster; |
|
if (raster == null) |
|
{ |
|
return; |
|
} |
|
IRasterBandCollection rasterBandCollection = raster as IRasterBandCollection; |
|
if (rasterBandCollection == null) |
|
{ |
|
return; |
|
} |
|
IRasterBand rasterBand = rasterBandCollection.Item(0); |
|
IRasterStatistics statistics = rasterBand.Statistics; |
|
this.txtMinR.Text = (this.txtMinG.Text = (this.txtMinB.Text = statistics.Minimum.ToString())); |
|
this.txtMaxR.Text = (this.txtMaxG.Text = (this.txtMaxB.Text = statistics.Maximum.ToString())); |
|
this.txtMeanR.Text = (this.txtMeanG.Text = (this.txtMeanB.Text = statistics.Mean.ToString())); |
|
this.txtStddevR.Text = (this.txtStddevG.Text = (this.txtStddevB.Text = statistics.StandardDeviation.ToString())); |
|
if (rasterBandCollection.Count == 1) |
|
{ |
|
statistics.Minimum = Convert.ToDouble(this.txtMinR.Text); |
|
statistics.Maximum = Convert.ToDouble(this.txtMaxR.Text); |
|
statistics.Mean = Convert.ToDouble(this.txtMeanR.Text); |
|
statistics.StandardDeviation = Convert.ToDouble(this.txtStddevR.Text); |
|
} |
|
if (rasterBandCollection.Count == 3) |
|
{ |
|
rasterBand = rasterBandCollection.Item(1); |
|
statistics = rasterBand.Statistics; |
|
statistics.Minimum = Convert.ToDouble(this.txtMinG.Text); |
|
statistics.Maximum = Convert.ToDouble(this.txtMaxG.Text); |
|
statistics.Mean = Convert.ToDouble(this.txtMeanG.Text); |
|
statistics.StandardDeviation = Convert.ToDouble(this.txtStddevG.Text); |
|
rasterBand = rasterBandCollection.Item(2); |
|
statistics = rasterBand.Statistics; |
|
statistics.Minimum = Convert.ToDouble(this.txtMinB.Text); |
|
statistics.Maximum = Convert.ToDouble(this.txtMaxB.Text); |
|
statistics.Mean = Convert.ToDouble(this.txtMeanB.Text); |
|
statistics.StandardDeviation = Convert.ToDouble(this.txtStddevB.Text); |
|
} |
|
} |
|
protected override void Dispose(bool disposing) |
|
{ |
|
if (disposing && this.components != null) |
|
{ |
|
this.components.Dispose(); |
|
} |
|
base.Dispose(disposing); |
|
} |
|
private void InitializeComponent() |
|
{ |
|
this.groupControl1 = new GroupControl(); |
|
this.groupControl2 = new GroupControl(); |
|
this.panelControl2 = new PanelControl(); |
|
this.xtraTabControl1 = new XtraTabControl(); |
|
this.xtraTabPage1 = new XtraTabPage(); |
|
this.txtStddevR = new TextEdit(); |
|
this.txtMeanR = new TextEdit(); |
|
this.txtMaxR = new TextEdit(); |
|
this.txtMinR = new TextEdit(); |
|
this.labelControl6 = new LabelControl(); |
|
this.labelControl5 = new LabelControl(); |
|
this.labelControl4 = new LabelControl(); |
|
this.labelControl3 = new LabelControl(); |
|
this.xtraTabPage2 = new XtraTabPage(); |
|
this.txtStddevG = new TextEdit(); |
|
this.txtMeanG = new TextEdit(); |
|
this.txtMaxG = new TextEdit(); |
|
this.txtMinG = new TextEdit(); |
|
this.labelControl7 = new LabelControl(); |
|
this.labelControl8 = new LabelControl(); |
|
this.labelControl9 = new LabelControl(); |
|
this.labelControl10 = new LabelControl(); |
|
this.xtraTabPage3 = new XtraTabPage(); |
|
this.txtStddevB = new TextEdit(); |
|
this.txtMeanB = new TextEdit(); |
|
this.txtMaxB = new TextEdit(); |
|
this.txtMinB = new TextEdit(); |
|
this.labelControl11 = new LabelControl(); |
|
this.labelControl12 = new LabelControl(); |
|
this.labelControl13 = new LabelControl(); |
|
this.labelControl14 = new LabelControl(); |
|
this.memoEdit1 = new MemoEdit(); |
|
this.cmbStretchStatsType = new ComboBoxEdit(); |
|
this.panelControl1 = new PanelControl(); |
|
this.labelControl2 = new LabelControl(); |
|
this.memoEdit2 = new MemoEdit(); |
|
this.textEdit3 = new TextEdit(); |
|
this.textEdit2 = new TextEdit(); |
|
this.textEdit1 = new TextEdit(); |
|
this.chkUseGamma = new CheckEdit(); |
|
this.chkInvert = new CheckEdit(); |
|
this.labelControl1 = new LabelControl(); |
|
this.cmbStretchType = new ComboBoxEdit(); |
|
this.txtStandardDeviationsParam = new TextEdit(); |
|
this.labelControl15 = new LabelControl(); |
|
((ISupportInitialize)this.groupControl1).BeginInit(); |
|
this.groupControl1.SuspendLayout(); |
|
((ISupportInitialize)this.groupControl2).BeginInit(); |
|
this.groupControl2.SuspendLayout(); |
|
((ISupportInitialize)this.panelControl2).BeginInit(); |
|
this.panelControl2.SuspendLayout(); |
|
((ISupportInitialize)this.xtraTabControl1).BeginInit(); |
|
this.xtraTabControl1.SuspendLayout(); |
|
this.xtraTabPage1.SuspendLayout(); |
|
((ISupportInitialize)this.txtStddevR.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMeanR.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMaxR.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMinR.Properties).BeginInit(); |
|
this.xtraTabPage2.SuspendLayout(); |
|
((ISupportInitialize)this.txtStddevG.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMeanG.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMaxG.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMinG.Properties).BeginInit(); |
|
this.xtraTabPage3.SuspendLayout(); |
|
((ISupportInitialize)this.txtStddevB.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMeanB.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMaxB.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtMinB.Properties).BeginInit(); |
|
((ISupportInitialize)this.memoEdit1.Properties).BeginInit(); |
|
((ISupportInitialize)this.cmbStretchStatsType.Properties).BeginInit(); |
|
((ISupportInitialize)this.panelControl1).BeginInit(); |
|
this.panelControl1.SuspendLayout(); |
|
((ISupportInitialize)this.memoEdit2.Properties).BeginInit(); |
|
((ISupportInitialize)this.textEdit3.Properties).BeginInit(); |
|
((ISupportInitialize)this.textEdit2.Properties).BeginInit(); |
|
((ISupportInitialize)this.textEdit1.Properties).BeginInit(); |
|
((ISupportInitialize)this.chkUseGamma.Properties).BeginInit(); |
|
((ISupportInitialize)this.chkInvert.Properties).BeginInit(); |
|
((ISupportInitialize)this.cmbStretchType.Properties).BeginInit(); |
|
((ISupportInitialize)this.txtStandardDeviationsParam.Properties).BeginInit(); |
|
base.SuspendLayout(); |
|
this.groupControl1.Controls.Add(this.labelControl15); |
|
this.groupControl1.Controls.Add(this.groupControl2); |
|
this.groupControl1.Controls.Add(this.textEdit3); |
|
this.groupControl1.Controls.Add(this.textEdit2); |
|
this.groupControl1.Controls.Add(this.txtStandardDeviationsParam); |
|
this.groupControl1.Controls.Add(this.textEdit1); |
|
this.groupControl1.Controls.Add(this.chkUseGamma); |
|
this.groupControl1.Controls.Add(this.chkInvert); |
|
this.groupControl1.Controls.Add(this.labelControl1); |
|
this.groupControl1.Controls.Add(this.cmbStretchType); |
|
this.groupControl1.Location = new Point(3, 3); |
|
this.groupControl1.Name = "groupControl1"; |
|
this.groupControl1.Size = new Size(386, 290); |
|
this.groupControl1.TabIndex = 0; |
|
this.groupControl1.Text = "拉伸设置"; |
|
this.groupControl2.Controls.Add(this.panelControl2); |
|
this.groupControl2.Controls.Add(this.memoEdit1); |
|
this.groupControl2.Controls.Add(this.cmbStretchStatsType); |
|
this.groupControl2.Controls.Add(this.panelControl1); |
|
this.groupControl2.Location = new Point(5, 104); |
|
this.groupControl2.Name = "groupControl2"; |
|
this.groupControl2.Size = new Size(376, 180); |
|
this.groupControl2.TabIndex = 5; |
|
this.groupControl2.Text = "统计"; |
|
this.panelControl2.BorderStyle = BorderStyles.NoBorder; |
|
this.panelControl2.Controls.Add(this.xtraTabControl1); |
|
this.panelControl2.Location = new Point(7, 24); |
|
this.panelControl2.Name = "panelControl2"; |
|
this.panelControl2.Size = new Size(364, 151); |
|
this.panelControl2.TabIndex = 1; |
|
this.xtraTabControl1.Location = new Point(3, 3); |
|
this.xtraTabControl1.Name = "xtraTabControl1"; |
|
this.xtraTabControl1.SelectedTabPage = this.xtraTabPage1; |
|
this.xtraTabControl1.Size = new Size(237, 145); |
|
this.xtraTabControl1.TabIndex = 0; |
|
this.xtraTabControl1.TabPages.AddRange(new XtraTabPage[] |
|
{ |
|
this.xtraTabPage1, |
|
this.xtraTabPage2, |
|
this.xtraTabPage3 |
|
}); |
|
this.xtraTabPage1.Controls.Add(this.txtStddevR); |
|
this.xtraTabPage1.Controls.Add(this.txtMeanR); |
|
this.xtraTabPage1.Controls.Add(this.txtMaxR); |
|
this.xtraTabPage1.Controls.Add(this.txtMinR); |
|
this.xtraTabPage1.Controls.Add(this.labelControl6); |
|
this.xtraTabPage1.Controls.Add(this.labelControl5); |
|
this.xtraTabPage1.Controls.Add(this.labelControl4); |
|
this.xtraTabPage1.Controls.Add(this.labelControl3); |
|
this.xtraTabPage1.Name = "xtraTabPage1"; |
|
this.xtraTabPage1.Size = new Size(228, 113); |
|
this.xtraTabPage1.Text = "红(Red)"; |
|
this.txtStddevR.Location = new Point(85, 82); |
|
this.txtStddevR.Name = "txtStddevR"; |
|
this.txtStddevR.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtStddevR.Size = new Size(100, 21); |
|
this.txtStddevR.TabIndex = 1; |
|
this.txtMeanR.Location = new Point(85, 56); |
|
this.txtMeanR.Name = "txtMeanR"; |
|
this.txtMeanR.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMeanR.Size = new Size(100, 21); |
|
this.txtMeanR.TabIndex = 1; |
|
this.txtMaxR.Location = new Point(85, 29); |
|
this.txtMaxR.Name = "txtMaxR"; |
|
this.txtMaxR.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMaxR.Size = new Size(100, 21); |
|
this.txtMaxR.TabIndex = 1; |
|
this.txtMinR.Location = new Point(85, 4); |
|
this.txtMinR.Name = "txtMinR"; |
|
this.txtMinR.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMinR.Size = new Size(100, 21); |
|
this.txtMinR.TabIndex = 1; |
|
this.labelControl6.Location = new Point(9, 85); |
|
this.labelControl6.Name = "labelControl6"; |
|
this.labelControl6.Size = new Size(60, 14); |
|
this.labelControl6.TabIndex = 0; |
|
this.labelControl6.Text = "标准偏差:"; |
|
this.labelControl5.Location = new Point(9, 59); |
|
this.labelControl5.Name = "labelControl5"; |
|
this.labelControl5.Size = new Size(48, 14); |
|
this.labelControl5.TabIndex = 0; |
|
this.labelControl5.Text = "平均值:"; |
|
this.labelControl4.Location = new Point(9, 32); |
|
this.labelControl4.Name = "labelControl4"; |
|
this.labelControl4.Size = new Size(48, 14); |
|
this.labelControl4.TabIndex = 0; |
|
this.labelControl4.Text = "最大值:"; |
|
this.labelControl3.Location = new Point(9, 5); |
|
this.labelControl3.Name = "labelControl3"; |
|
this.labelControl3.Size = new Size(48, 14); |
|
this.labelControl3.TabIndex = 0; |
|
this.labelControl3.Text = "最小值:"; |
|
this.xtraTabPage2.Controls.Add(this.txtStddevG); |
|
this.xtraTabPage2.Controls.Add(this.txtMeanG); |
|
this.xtraTabPage2.Controls.Add(this.txtMaxG); |
|
this.xtraTabPage2.Controls.Add(this.txtMinG); |
|
this.xtraTabPage2.Controls.Add(this.labelControl7); |
|
this.xtraTabPage2.Controls.Add(this.labelControl8); |
|
this.xtraTabPage2.Controls.Add(this.labelControl9); |
|
this.xtraTabPage2.Controls.Add(this.labelControl10); |
|
this.xtraTabPage2.Name = "xtraTabPage2"; |
|
this.xtraTabPage2.Size = new Size(228, 113); |
|
this.xtraTabPage2.Text = "绿(Green)"; |
|
this.txtStddevG.Location = new Point(85, 82); |
|
this.txtStddevG.Name = "txtStddevG"; |
|
this.txtStddevG.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtStddevG.Size = new Size(100, 21); |
|
this.txtStddevG.TabIndex = 6; |
|
this.txtMeanG.Location = new Point(85, 56); |
|
this.txtMeanG.Name = "txtMeanG"; |
|
this.txtMeanG.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMeanG.Size = new Size(100, 21); |
|
this.txtMeanG.TabIndex = 7; |
|
this.txtMaxG.Location = new Point(85, 29); |
|
this.txtMaxG.Name = "txtMaxG"; |
|
this.txtMaxG.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMaxG.Size = new Size(100, 21); |
|
this.txtMaxG.TabIndex = 8; |
|
this.txtMinG.Location = new Point(85, 4); |
|
this.txtMinG.Name = "txtMinG"; |
|
this.txtMinG.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMinG.Size = new Size(100, 21); |
|
this.txtMinG.TabIndex = 9; |
|
this.labelControl7.Location = new Point(9, 85); |
|
this.labelControl7.Name = "labelControl7"; |
|
this.labelControl7.Size = new Size(60, 14); |
|
this.labelControl7.TabIndex = 3; |
|
this.labelControl7.Text = "标准偏差:"; |
|
this.labelControl8.Location = new Point(9, 59); |
|
this.labelControl8.Name = "labelControl8"; |
|
this.labelControl8.Size = new Size(48, 14); |
|
this.labelControl8.TabIndex = 2; |
|
this.labelControl8.Text = "平均值:"; |
|
this.labelControl9.Location = new Point(9, 32); |
|
this.labelControl9.Name = "labelControl9"; |
|
this.labelControl9.Size = new Size(48, 14); |
|
this.labelControl9.TabIndex = 4; |
|
this.labelControl9.Text = "最大值:"; |
|
this.labelControl10.Location = new Point(9, 5); |
|
this.labelControl10.Name = "labelControl10"; |
|
this.labelControl10.Size = new Size(48, 14); |
|
this.labelControl10.TabIndex = 5; |
|
this.labelControl10.Text = "最小值:"; |
|
this.xtraTabPage3.Controls.Add(this.txtStddevB); |
|
this.xtraTabPage3.Controls.Add(this.txtMeanB); |
|
this.xtraTabPage3.Controls.Add(this.txtMaxB); |
|
this.xtraTabPage3.Controls.Add(this.txtMinB); |
|
this.xtraTabPage3.Controls.Add(this.labelControl11); |
|
this.xtraTabPage3.Controls.Add(this.labelControl12); |
|
this.xtraTabPage3.Controls.Add(this.labelControl13); |
|
this.xtraTabPage3.Controls.Add(this.labelControl14); |
|
this.xtraTabPage3.Name = "xtraTabPage3"; |
|
this.xtraTabPage3.Size = new Size(228, 113); |
|
this.xtraTabPage3.Text = "蓝(Blue)"; |
|
this.txtStddevB.Location = new Point(85, 82); |
|
this.txtStddevB.Name = "txtStddevB"; |
|
this.txtStddevB.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtStddevB.Size = new Size(100, 21); |
|
this.txtStddevB.TabIndex = 6; |
|
this.txtMeanB.Location = new Point(85, 56); |
|
this.txtMeanB.Name = "txtMeanB"; |
|
this.txtMeanB.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMeanB.Size = new Size(100, 21); |
|
this.txtMeanB.TabIndex = 7; |
|
this.txtMaxB.Location = new Point(85, 29); |
|
this.txtMaxB.Name = "txtMaxB"; |
|
this.txtMaxB.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMaxB.Size = new Size(100, 21); |
|
this.txtMaxB.TabIndex = 8; |
|
this.txtMinB.Location = new Point(85, 4); |
|
this.txtMinB.Name = "txtMinB"; |
|
this.txtMinB.Properties.EditFormat.FormatType = FormatType.Numeric; |
|
this.txtMinB.Size = new Size(100, 21); |
|
this.txtMinB.TabIndex = 9; |
|
this.labelControl11.Location = new Point(9, 85); |
|
this.labelControl11.Name = "labelControl11"; |
|
this.labelControl11.Size = new Size(60, 14); |
|
this.labelControl11.TabIndex = 3; |
|
this.labelControl11.Text = "标准偏差:"; |
|
this.labelControl12.Location = new Point(9, 59); |
|
this.labelControl12.Name = "labelControl12"; |
|
this.labelControl12.Size = new Size(48, 14); |
|
this.labelControl12.TabIndex = 2; |
|
this.labelControl12.Text = "平均值:"; |
|
this.labelControl13.Location = new Point(9, 32); |
|
this.labelControl13.Name = "labelControl13"; |
|
this.labelControl13.Size = new Size(48, 14); |
|
this.labelControl13.TabIndex = 4; |
|
this.labelControl13.Text = "最大值:"; |
|
this.labelControl14.Location = new Point(9, 5); |
|
this.labelControl14.Name = "labelControl14"; |
|
this.labelControl14.Size = new Size(48, 14); |
|
this.labelControl14.TabIndex = 5; |
|
this.labelControl14.Text = "最小值:"; |
|
this.memoEdit1.EditValue = "使用整个栅格数据集的统计数据。\r\n收集来自当前显示范围内使用所有可见的像素值的统计资料。"; |
|
this.memoEdit1.Location = new Point(5, 24); |
|
this.memoEdit1.Name = "memoEdit1"; |
|
this.memoEdit1.Properties.Appearance.BackColor = Color.FromArgb(247, 245, 241); |
|
this.memoEdit1.Properties.Appearance.Options.UseBackColor = true; |
|
this.memoEdit1.Properties.BorderStyle = BorderStyles.NoBorder; |
|
this.memoEdit1.Properties.ReadOnly = true; |
|
this.memoEdit1.Properties.ScrollBars = ScrollBars.None; |
|
this.memoEdit1.Size = new Size(356, 35); |
|
this.memoEdit1.TabIndex = 3; |
|
this.cmbStretchStatsType.Location = new Point(174, 0); |
|
this.cmbStretchStatsType.Name = "cmbStretchStatsType"; |
|
this.cmbStretchStatsType.Properties.Buttons.AddRange(new EditorButton[] |
|
{ |
|
new EditorButton(ButtonPredefines.Combo) |
|
}); |
|
this.cmbStretchStatsType.Properties.TextEditStyle = TextEditStyles.DisableTextEditor; |
|
this.cmbStretchStatsType.Size = new Size(169, 21); |
|
this.cmbStretchStatsType.TabIndex = 0; |
|
this.cmbStretchStatsType.SelectedIndexChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.cmbStretchStatsType.SelectedValueChanged += new System.EventHandler(this.cmbStretchStatsType_SelectedValueChanged); |
|
this.panelControl1.BorderStyle = BorderStyles.NoBorder; |
|
this.panelControl1.Controls.Add(this.labelControl2); |
|
this.panelControl1.Controls.Add(this.memoEdit2); |
|
this.panelControl1.Location = new Point(7, 58); |
|
this.panelControl1.Name = "panelControl1"; |
|
this.panelControl1.Size = new Size(364, 115); |
|
this.panelControl1.TabIndex = 1; |
|
this.labelControl2.Location = new Point(7, 7); |
|
this.labelControl2.Name = "labelControl2"; |
|
this.labelControl2.Size = new Size(108, 14); |
|
this.labelControl2.TabIndex = 1; |
|
this.labelControl2.Text = "当前使用的统计信息"; |
|
this.memoEdit2.Location = new Point(3, 29); |
|
this.memoEdit2.Name = "memoEdit2"; |
|
this.memoEdit2.Properties.ReadOnly = true; |
|
this.memoEdit2.Size = new Size(261, 79); |
|
this.memoEdit2.TabIndex = 0; |
|
this.textEdit3.Location = new Point(319, 77); |
|
this.textEdit3.Name = "textEdit3"; |
|
this.textEdit3.Properties.Mask.EditMask = "n0"; |
|
this.textEdit3.Properties.Mask.MaskType = MaskType.Numeric; |
|
this.textEdit3.Size = new Size(30, 21); |
|
this.textEdit3.TabIndex = 4; |
|
this.textEdit3.EditValueChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.textEdit2.Location = new Point(283, 77); |
|
this.textEdit2.Name = "textEdit2"; |
|
this.textEdit2.Properties.Mask.EditMask = "n0"; |
|
this.textEdit2.Properties.Mask.MaskType = MaskType.Numeric; |
|
this.textEdit2.Size = new Size(30, 21); |
|
this.textEdit2.TabIndex = 4; |
|
this.textEdit2.EditValueChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.textEdit1.Location = new Point(247, 77); |
|
this.textEdit1.Name = "textEdit1"; |
|
this.textEdit1.Properties.Mask.EditMask = "n0"; |
|
this.textEdit1.Properties.Mask.MaskType = MaskType.Numeric; |
|
this.textEdit1.Size = new Size(30, 21); |
|
this.textEdit1.TabIndex = 4; |
|
this.textEdit1.EditValueChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.chkUseGamma.Location = new Point(7, 79); |
|
this.chkUseGamma.Name = "chkUseGamma"; |
|
this.chkUseGamma.Properties.Caption = "应用Gamma拉伸"; |
|
this.chkUseGamma.Size = new Size(120, 19); |
|
this.chkUseGamma.TabIndex = 3; |
|
this.chkUseGamma.CheckedChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.chkUseGamma.CheckStateChanged += new System.EventHandler(this.chkUseGamma_CheckStateChanged); |
|
this.chkInvert.Location = new Point(295, 52); |
|
this.chkInvert.Name = "chkInvert"; |
|
this.chkInvert.Properties.Caption = "反转"; |
|
this.chkInvert.Size = new Size(54, 19); |
|
this.chkInvert.TabIndex = 2; |
|
this.chkInvert.CheckedChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.labelControl1.Location = new Point(15, 27); |
|
this.labelControl1.Name = "labelControl1"; |
|
this.labelControl1.Size = new Size(60, 14); |
|
this.labelControl1.TabIndex = 1; |
|
this.labelControl1.Text = "拉伸类型:"; |
|
this.cmbStretchType.Location = new Point(81, 24); |
|
this.cmbStretchType.Name = "cmbStretchType"; |
|
this.cmbStretchType.Properties.Buttons.AddRange(new EditorButton[] |
|
{ |
|
new EditorButton(ButtonPredefines.Combo) |
|
}); |
|
this.cmbStretchType.Properties.TextEditStyle = TextEditStyles.DisableTextEditor; |
|
this.cmbStretchType.Size = new Size(267, 21); |
|
this.cmbStretchType.TabIndex = 0; |
|
this.cmbStretchType.SelectedValueChanged += new System.EventHandler(this.cmbStretchType_SelectedValueChanged); |
|
this.txtStandardDeviationsParam.Location = new Point(118, 52); |
|
this.txtStandardDeviationsParam.Name = "txtStandardDeviationsParam"; |
|
this.txtStandardDeviationsParam.Properties.Mask.EditMask = "n0"; |
|
this.txtStandardDeviationsParam.Properties.Mask.MaskType = MaskType.Numeric; |
|
this.txtStandardDeviationsParam.Size = new Size(30, 21); |
|
this.txtStandardDeviationsParam.TabIndex = 4; |
|
this.txtStandardDeviationsParam.EditValueChanged += new System.EventHandler(this.InvokeEditValueChanged); |
|
this.labelControl15.Location = new Point(103, 55); |
|
this.labelControl15.Name = "labelControl15"; |
|
this.labelControl15.Size = new Size(11, 14); |
|
this.labelControl15.TabIndex = 6; |
|
this.labelControl15.Text = "n:"; |
|
base.AutoScaleDimensions = new SizeF(6f, 12f); |
|
base.AutoScaleMode = AutoScaleMode.Font; |
|
base.Controls.Add(this.groupControl1); |
|
base.Name = "UCRasterStretchSet"; |
|
base.Size = new Size(403, 296); |
|
((ISupportInitialize)this.groupControl1).EndInit(); |
|
this.groupControl1.ResumeLayout(false); |
|
this.groupControl1.PerformLayout(); |
|
((ISupportInitialize)this.groupControl2).EndInit(); |
|
this.groupControl2.ResumeLayout(false); |
|
((ISupportInitialize)this.panelControl2).EndInit(); |
|
this.panelControl2.ResumeLayout(false); |
|
((ISupportInitialize)this.xtraTabControl1).EndInit(); |
|
this.xtraTabControl1.ResumeLayout(false); |
|
this.xtraTabPage1.ResumeLayout(false); |
|
this.xtraTabPage1.PerformLayout(); |
|
((ISupportInitialize)this.txtStddevR.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMeanR.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMaxR.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMinR.Properties).EndInit(); |
|
this.xtraTabPage2.ResumeLayout(false); |
|
this.xtraTabPage2.PerformLayout(); |
|
((ISupportInitialize)this.txtStddevG.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMeanG.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMaxG.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMinG.Properties).EndInit(); |
|
this.xtraTabPage3.ResumeLayout(false); |
|
this.xtraTabPage3.PerformLayout(); |
|
((ISupportInitialize)this.txtStddevB.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMeanB.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMaxB.Properties).EndInit(); |
|
((ISupportInitialize)this.txtMinB.Properties).EndInit(); |
|
((ISupportInitialize)this.memoEdit1.Properties).EndInit(); |
|
((ISupportInitialize)this.cmbStretchStatsType.Properties).EndInit(); |
|
((ISupportInitialize)this.panelControl1).EndInit(); |
|
this.panelControl1.ResumeLayout(false); |
|
this.panelControl1.PerformLayout(); |
|
((ISupportInitialize)this.memoEdit2.Properties).EndInit(); |
|
((ISupportInitialize)this.textEdit3.Properties).EndInit(); |
|
((ISupportInitialize)this.textEdit2.Properties).EndInit(); |
|
((ISupportInitialize)this.textEdit1.Properties).EndInit(); |
|
((ISupportInitialize)this.chkUseGamma.Properties).EndInit(); |
|
((ISupportInitialize)this.chkInvert.Properties).EndInit(); |
|
((ISupportInitialize)this.cmbStretchType.Properties).EndInit(); |
|
((ISupportInitialize)this.txtStandardDeviationsParam.Properties).EndInit(); |
|
base.ResumeLayout(false); |
|
} |
|
} |
|
}
|
|
|