示例#1
0
        private void sedimentParticleSizeBtn_Click(object sender, EventArgs e)
        {
            RiverSimulationProfile p = RiverSimulationProfile.profile;

            int n = 0;

            try
            {
                n = Convert.ToInt32(sedimentParticlesNumberTxt.Text);
            }
            catch
            {
                n = -1;
            }

            if (n < 1)
            {
                MessageBox.Show("請輸入正確的泥砂顆粒數目", "警告", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }
            TableInputForm form = new TableInputForm();

            form.SetFormMode(sedimentParticlesNumberBtn.Text, true, 1, n);
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
        private void boundaryTimeBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertBoundaryTimeNumber())
            {
                return;
            }
            if (p.boundaryTime != null && p.boundaryTime.GetLength(0) != p.boundaryTimeNumber)
            {   //邊界時間數目已被邊更
                if (DialogResult.OK == MessageBox.Show("改變過邊界時間數目會清除已輸入的邊界時間,請確認?", "確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation))
                {
                    p.boundaryTime = null;
                }
                else
                {
                    boundaryTimeNumberTxt.Text = p.boundaryTime.GetLength(0).ToString();
                    return;
                }
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode(boundaryTimeBtn.Text, 1, p.boundaryTimeNumber, "邊界時間數目", "時間 T(sec)", "",
                             TableInputForm.InputFormType.BoundaryTime, 90, 90, true, true, false, p.boundaryTime);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.boundaryTime = (double[])form.BoundaryTimeData().Clone();
            }
        }
示例#3
0
        private void tensileStrengthBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(sedimentErosionTensileStrengthValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#4
0
        private void bedrockElevationBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(bedrockElevationValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#5
0
        private void bedrockElevationBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();
            form.SetFormMode(bedrockElevationValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {

            }
        }
示例#6
0
        private void elasticityBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(sedimentErosionElasticModulusValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#7
0
 private void chezyBtn_Click(object sender, EventArgs e)
 {
     TableInputForm form = new TableInputForm();
     form.SetFormMode(chezyBtn.Text, p.inputGrid.GetJ, p.inputGrid.GetI, chezyBtn.Text, "", "",
         TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, false, p.chezy);
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.chezy = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
     }
 }
        private void upBoundaryElevationInputBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode("上游邊界底床底床高程", p.inputGrid.GetJ, p.boundaryTimeNumber, "邊界時間", "", "邊界時間 ",
                             TableInputForm.InputFormType.GenericDoubleGreaterThanOrEqualZero, 90, 120, true, false, false, p.upBoundaryElevationArray);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.upBoundaryElevationArray = (double[, ])form.GenericDoubleData().Clone();
            }
        }
        private void chezyBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(chezyBtn.Text, p.inputGrid.GetJ, p.inputGrid.GetI, chezyBtn.Text, "", "",
                             TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, false, p.chezy);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.chezy = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
            }
        }
示例#10
0
        private void curvatureRadiusBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(curvatureRadiusBtn.Text, p.inputGrid.GetJ, p.inputGrid.GetI, "", "", "",
                             TableInputForm.InputFormType.GenericDouble, 90, 120, true, false, false, p.curvatureRadius);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.curvatureRadius = (double[, ])form.GenericDoubleData().Clone();
            }
        }
示例#11
0
        private void roughnessHeightKsBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode("粗糙高度Ks(mm)", p.inputGrid.GetJ, p.inputGrid.GetI, "粗糙高度Ks(mm)", "", "",
                             TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, false, p.roughnessHeightKs);
            form.unitLbl.Text = "mm";       //20150325新增規格
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.roughnessHeightKs = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
            }
        }
        private void nearBedBoundaryInputBtn_Click(object sender, EventArgs e)
        {
            //p.inputConcentration
            TableInputForm form = new TableInputForm();

            form.SetFormMode(nearBedBoundaryInputBtn.Text, p.sedimentParticlesNumber, 1, nearBedBoundaryInputBtn.Text, "粒徑 ", "底床濃度",
                             TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, true, p.inputConcentration);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.inputConcentration = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
            }
        }
示例#13
0
        public static void EditBottomElevation(RiverSimulationProfile profile, string title, int type, int index)
        {
            TableInputForm form = new TableInputForm();

            form.SetFormMode(title, profile.inputGrid.GetJ, profile.inputGrid.GetI, "", "", "",
                             TableInputForm.InputFormType.BottomElevationForm, 90, 120, true, false, false, profile.inputGrid.inputCoor);
            form.SetFormModeExtraData(GetStructureSet(profile, type, index));

            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                //p.levelProportion = (double[])form.SeparateData().Clone();
                //ShowGridMap(PicBoxType.Sprate);
                //DrawPreview();
            }
        }
        private void bottomBedParticleSizeRatioBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();

            if (p.bottomBedParticleSizeRatio != null && p.bottomBedParticleSizeRatio.GetLongLength(1) == 0)
            {
                p.bottomBedParticleSizeRatio = null;
            }
            form.p = p;
            form.SetFormMode("底床粒徑比例(百分比)", p.sedimentParticlesNumber, (p.IsConstantFlowType()) ? 1 : p.boundaryTimeNumber, "邊界時間", "粒徑 ", "邊界時間",
                             TableInputForm.InputFormType.BottomBedParticleSizeRatio, 90, 120, true, false, false, p.bottomBedParticleSizeRatio);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.bottomBedParticleSizeRatio = (double[, ])form.GenericDoubleData().Clone();
            }
        }
示例#15
0
        private void sedimentParticlesNumberBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertSedimentParticlesNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode(sedimentParticlesNumberBtn.Text, 1, p.sedimentParticlesNumber, "", "泥砂粒徑", "",
                             TableInputForm.InputFormType.GenericDouble, 90, 120, true, true, false, p.sedimentParticleSize);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.sedimentParticleSize = (double[, ])form.GenericDoubleData().Clone();
            }
        }
        private void boundaryUpVerticalDistributionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertUpVerticalDistributionNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode("上游垂直濃度分布", 2, p.boundaryUpVerticalDistributionNum, "", "", "分層",
                             TableInputForm.InputFormType.VerticalVelocityDistributionForm, 90, 80, true, true, false, p.boundaryUpVerticalDistribution.Array2D());
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.boundaryUpVerticalDistribution.SetArrayObject(form.VerticalVelocityDistributionData().Clone());
            }
        }
        //private void verticalVelocityDistributionChk_CheckedChanged(object sender, EventArgs e)
        //{
        //    bool chk = (sender as CheckBox).Checked;
        //    verticalVelocityDistributionTxt.Enabled = chk;
        //    verticalVelocityDistributionBtn.Enabled = chk;
        //    p.verticalVelocityDistribution = chk;
        //    //UpdateStatus();
        //}

        private void verticalVelocityDistributionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertVerticalVelocityDistributionNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode("垂直流速分布(3D)", 2, p.verticalVelocityDistributionNumber, "", "", "分層",
                             TableInputForm.InputFormType.VerticalVelocityDistributionForm, 90, 80, true, true, false, p.verticalVelocityDistributionArray);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.verticalVelocityDistributionArray = (double[, ])form.VerticalVelocityDistributionData().Clone();
            }
        }
示例#18
0
        private void separateProportionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertVerticalLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode(levelProportionBtn.Text, 1, p.verticalLevelNumber, levelProportionBtn.Text, "分層比例", "格網分層",
                             TableInputForm.InputFormType.SeparateForm, 90, 120, true, true, false, p.levelProportion);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.levelProportion = (double[])form.SeparateData().Clone();
                SwitchPreivewCombo(PreviewType.Sprate);
                DrawPreview();
            }
        }
示例#19
0
        private void seabedThicknessBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertBottomLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode(bottomLevelBtn.Text, 1, p.bottomLevelNumber, bottomLevelBtn.Text, "底床分層厚度", "底床分層",
                             TableInputForm.InputFormType.SeabedThicknessForm, 90, 120, true, true, false, p.bottomLevelArray);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.bottomLevelArray = (double[])form.SeabedThicknessData().Clone();
                SwitchPreivewCombo(PreviewType.SedimentComposition);
                DrawPreview();
            }
        }
示例#20
0
        private void sedimentCompositionRatioBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertSedimentParticlesNumber())
            {
                return;
            }

            if (!ConvertBottomLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();

            form.SetFormMode(sedimentCompositionBtn.Text, p.sedimentParticlesNumber, p.bottomLevelNumber, sedimentCompositionBtn.Text, "泥砂顆粒", "底床分層",
                             TableInputForm.InputFormType.SedimentCompositionRatioForm, 90, 120, true, false, false, p.sedimentCompositionArray);
            DialogResult r = form.ShowDialog();

            if (DialogResult.OK == r)
            {
                p.sedimentCompositionArray = (double[, ])form.SedimentCompositionRatioData().Clone();
                DrawPreview();
            }
        }
 private void upBoundaryElevationInputBtn_Click(object sender, EventArgs e)
 {
     TableInputForm form = new TableInputForm();
     form.SetFormMode("上游邊界底床底床高程", p.inputGrid.GetJ, p.boundaryTimeNumber, "邊界時間", "", "邊界時間 ",
         TableInputForm.InputFormType.GenericDoubleGreaterThanOrEqualZero, 90, 120, true, false, false, p.upBoundaryElevationArray);
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.upBoundaryElevationArray = (double[,])form.GenericDoubleData().Clone();
     }
 }
示例#22
0
        private void sedimentParticleSizeBtn_Click(object sender, EventArgs e)
        {
            RiverSimulationProfile p = RiverSimulationProfile.profile;

            int n = 0;
            try
            {
                n = Convert.ToInt32(sedimentParticlesNumberTxt.Text);
            }
            catch
            {
                n = -1;
            }

            if(n < 1)
            {
                MessageBox.Show("請輸入正確的泥砂顆粒數目", "警告", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }
            TableInputForm form = new TableInputForm();
            form.SetFormMode(sedimentParticlesNumberBtn.Text, true, 1, n);
            if (DialogResult.OK == form.ShowDialog())
            {

            }
        }
示例#23
0
        private void sedimentCompositionRatioBtn_Click(object sender, EventArgs e)
        {
            if(!ConvertSedimentParticlesNumber())
            {
                return;
            }

            if (!ConvertBottomLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode(sedimentCompositionBtn.Text, p.sedimentParticlesNumber, p.bottomLevelNumber, sedimentCompositionBtn.Text, "泥砂顆粒", "底床分層",
                TableInputForm.InputFormType.SedimentCompositionRatioForm, 90, 120, true, false, false, p.sedimentCompositionArray);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.sedimentCompositionArray = (double[,])form.SedimentCompositionRatioData().Clone();
                DrawPreview();
            }
        }
示例#24
0
        private void tensileStrengthBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();
            form.SetFormMode(sedimentErosionTensileStrengthValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {

            }
        }
示例#25
0
        private void sedimentParticlesNumberBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertSedimentParticlesNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode(sedimentParticlesNumberBtn.Text, 1, p.sedimentParticlesNumber, "", "泥砂粒徑", "",
                TableInputForm.InputFormType.GenericDouble, 90, 120, true, true, false, p.sedimentParticleSize);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.sedimentParticleSize = (double[,])form.GenericDoubleData().Clone();
            }
        }
示例#26
0
 private void curvatureRadiusBtn_Click(object sender, EventArgs e)
 {
     TableInputForm form = new TableInputForm();
     form.SetFormMode(curvatureRadiusBtn.Text, p.inputGrid.GetJ, p.inputGrid.GetI, "", "", "",
         TableInputForm.InputFormType.GenericDouble, 90, 120, true, false, false, p.curvatureRadius);
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.curvatureRadius = (double[,])form.GenericDoubleData().Clone();
     }
 }
示例#27
0
 private void roughnessHeightKsBtn_Click(object sender, EventArgs e)
 {
     TableInputForm form = new TableInputForm();
     form.SetFormMode("粗糙高度Ks(mm)", p.inputGrid.GetJ, p.inputGrid.GetI, "粗糙高度Ks(mm)", "", "",
         TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, false, p.roughnessHeightKs);
     form.unitLbl.Text = "mm";       //20150325新增規格
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.roughnessHeightKs = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
     }
 }
        //private void verticalVelocityDistributionChk_CheckedChanged(object sender, EventArgs e)
        //{
        //    bool chk = (sender as CheckBox).Checked;
        //    verticalVelocityDistributionTxt.Enabled = chk;
        //    verticalVelocityDistributionBtn.Enabled = chk;
        //    p.verticalVelocityDistribution = chk;
        //    //UpdateStatus();
        //}
        private void verticalVelocityDistributionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertVerticalVelocityDistributionNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode("垂直流速分布(3D)", 2, p.verticalVelocityDistributionNumber, "", "", "分層",
                 TableInputForm.InputFormType.VerticalVelocityDistributionForm, 90, 80, true, true, false, p.verticalVelocityDistributionArray);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.verticalVelocityDistributionArray = (double[,])form.VerticalVelocityDistributionData().Clone();
            }
        }
示例#29
0
        private void seabedThicknessBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertBottomLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode(bottomLevelBtn.Text, 1, p.bottomLevelNumber, bottomLevelBtn.Text, "底床分層厚度", "底床分層",
                TableInputForm.InputFormType.SeabedThicknessForm, 90, 120, true, true, false, p.bottomLevelArray);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.bottomLevelArray = (double[])form.SeabedThicknessData().Clone();
                SwitchPreivewCombo(PreviewType.SedimentComposition);
                DrawPreview();
            }
        }
 private void nearBedBoundaryInputBtn_Click(object sender, EventArgs e)
 {
     //p.inputConcentration
     TableInputForm form = new TableInputForm();
     form.SetFormMode(nearBedBoundaryInputBtn.Text, p.sedimentParticlesNumber, 1, nearBedBoundaryInputBtn.Text, "粒徑 ", "底床濃度",
         TableInputForm.InputFormType.TwoInOneDouble, 90, 120, false, false, true, p.inputConcentration);
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.inputConcentration = new RiverSimulationProfile.TwoInOne(form.GenericTwoInOneData());
     }
 }
        private void boundaryUpVerticalDistributionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertUpVerticalDistributionNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode("上游垂直濃度分布", 2, p.boundaryUpVerticalDistributionNum, "", "", "分層",
                 TableInputForm.InputFormType.VerticalVelocityDistributionForm, 90, 80, true, true, false, p.boundaryUpVerticalDistribution.Array2D());
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.boundaryUpVerticalDistribution.SetArrayObject(form.VerticalVelocityDistributionData().Clone());
            }
        }
示例#32
0
        private void elasticityBtn_Click(object sender, EventArgs e)
        {
            TableInputForm form = new TableInputForm();
            form.SetFormMode(sedimentErosionElasticModulusValueBtn.Text, false, p.inputGrid.GetJ, p.inputGrid.GetI);   //二選一
            if (DialogResult.OK == form.ShowDialog())
            {

            }
        }
 private void bottomBedParticleSizeRatioBtn_Click(object sender, EventArgs e)
 {
     TableInputForm form = new TableInputForm();
     if (p.bottomBedParticleSizeRatio != null && p.bottomBedParticleSizeRatio.GetLongLength(1) == 0)
     {
         p.bottomBedParticleSizeRatio = null;
     }
     form.p = p;
     form.SetFormMode("底床粒徑比例(百分比)", p.sedimentParticlesNumber, (p.IsConstantFlowType()) ? 1 : p.boundaryTimeNumber, "邊界時間", "粒徑 ", "邊界時間",
         TableInputForm.InputFormType.BottomBedParticleSizeRatio, 90, 120, true, false, false, p.bottomBedParticleSizeRatio);
     DialogResult r = form.ShowDialog();
     if (DialogResult.OK == r)
     {
         p.bottomBedParticleSizeRatio = (double[,])form.GenericDoubleData().Clone();
     }
 }
示例#34
0
文件: Utility.cs 项目: alcor0/ResedUI
        public static void EditBottomElevation(RiverSimulationProfile profile, string title, int type, int index)
        {
            TableInputForm form = new TableInputForm();
            form.SetFormMode(title, profile.inputGrid.GetJ, profile.inputGrid.GetI, "", "", "",
                TableInputForm.InputFormType.BottomElevationForm, 90, 120, true, false, false, profile.inputGrid.inputCoor);
            form.SetFormModeExtraData(GetStructureSet(profile, type, index));

            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                //p.levelProportion = (double[])form.SeparateData().Clone();
                //ShowGridMap(PicBoxType.Sprate);
                //DrawPreview();
            }
        }
        private void boundaryTimeBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertBoundaryTimeNumber())
            {
                return;
            }
            if(p.boundaryTime != null && p.boundaryTime.GetLength(0) != p.boundaryTimeNumber)
            {   //邊界時間數目已被邊更
                if (DialogResult.OK == MessageBox.Show("改變過邊界時間數目會清除已輸入的邊界時間,請確認?", "確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation))
                {
                    p.boundaryTime = null;
                }
                else
                {
                    boundaryTimeNumberTxt.Text = p.boundaryTime.GetLength(0).ToString();
                    return;
                }
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode(boundaryTimeBtn.Text, 1, p.boundaryTimeNumber, "邊界時間數目", "時間 T(sec)", "",
                TableInputForm.InputFormType.BoundaryTime, 90, 90, true, true, false, p.boundaryTime);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.boundaryTime = (double[])form.BoundaryTimeData().Clone();
            }
        }
示例#36
0
        private void separateProportionBtn_Click(object sender, EventArgs e)
        {
            if (!ConvertVerticalLevelNumber())
            {
                return;
            }

            TableInputForm form = new TableInputForm();
            form.SetFormMode(levelProportionBtn.Text, 1, p.verticalLevelNumber, levelProportionBtn.Text, "分層比例", "格網分層",
                TableInputForm.InputFormType.SeparateForm, 90, 120, true, true, false, p.levelProportion);
            DialogResult r = form.ShowDialog();
            if (DialogResult.OK == r)
            {
                p.levelProportion = (double[])form.SeparateData().Clone();
                SwitchPreivewCombo(PreviewType.Sprate);
                DrawPreview();
            }
        }