Beispiel #1
0
        public BaseZengYiParams(ZengYiParams param)
        {
            time = param.time;

            ec = param.ec;
            vc = param.vc;
            es = param.es;
            vs = param.vs;
            e = param.e;
            v = param.v;

            a0 = param.a0;
            aw = param.aw;
            a1 = param.a1;
            b = param.b;

            kc = param.kc;
            ks = param.ks;
            psi = param.psi;
        }
Beispiel #2
0
        private void computeZYBtn_Click(object sender, RoutedEventArgs ex)
        {
            try
            {
                double ec;

                if (editZengYi.Ec.Equals(TgtxmlOpt[0]))
                {
                    ec = 2.050e11;
                }
                else
                {
                    ec = 2.070e11;
                }

                MWArray[] array = (MWArray[])logic.calpsi(3, editZengYi.A0, editZengYi.Aw, editZengYi.A1, editZengYi.B,
                    editZengYi.E, editZengYi.V, ec, editZengYi.Vc, editZengYi.Es, editZengYi.Vs);
                editZengYi.Psi = ((MWNumericArray)array[0]).ToScalarDouble();
                editZengYi.Kc = ((MWNumericArray)array[1]).ToScalarDouble();
                editZengYi.Ks = ((MWNumericArray)array[2]).ToScalarDouble();
                editZengYi.time = DateTime.Now;

                if(zengYis.Count < 10)
                {
                    zengYis.Add(new ZengYiParams(this, editZengYi));
                }
                else
                {
                    //往前移动 只保留10条记录
                    for(int i = 0; i < 9; i++)
                    {
                        zengYis[i] = zengYis[i + 1];
                    }
                    zengYis[9] = new ZengYiParams(this, editZengYi);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("计算异常,请检查数据合理性");
            }
        }
Beispiel #3
0
        public Document()
        {
            InitializeComponent();
            if (logic == null)
                logic = new MkyLogic();

            //岩层参数录入初始化
            LayerBaseParams dibiao = new LayerBaseParams(this);
            dibiao.yanXing = YanXingOpt[0];
            layers.Add(dibiao);
            caiDongComBox.SelectedIndex = 0;

            //向导式录入初始化
            editLayer = new LayerBaseParams(this);
            guideBind(editLayer);

            //位移计算初始化
            JQDestCombo.Text = JQDestOpt[0];
            LCDestCombo.Text = LCDestOpt[0];

            //水泥环增益初始化
            editZengYi = new ZengYiParams(this);

            //人工设计
            manuDesignParams = new ManuDesignParams(this);
            manuDesignParams.JieGou = JieGouOpt[1];

            //井型自动设计初始化
            AutoTgxh1 = TggjOpt[0];
            AutoTgxh2 = TggjOpt[0];
            AutoTgxh3 = TggjOpt[0];
            AutoWjfs3 = WjfsOpt[0];

            //cad初始化
            cadViewer = new AxMxDrawX();
            cadViewer.BeginInit();
            wfHost.Child = cadViewer;
            Thread thread = new Thread(new ThreadStart(closeFuckDlg));
            thread.Start();
            cadViewer.EndInit();

            cadViewer2 = new AxMxDrawX();
            cadViewer2.BeginInit();
            wfHost2.Child = cadViewer2;
            Thread thread2 = new Thread(new ThreadStart(closeFuckDlg));
            thread2.Start();
            cadViewer2.EndInit();

            //自动更新层号 层号不保存在集合中
            paramGrid.LoadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_LoadingRow);
            paramGrid.UnloadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_UnloadingRow);
            keyLayerDataGrid.LoadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_LoadingRow);
            keyLayerDataGrid.UnloadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_UnloadingRow);
            cutOffsetDataGrid.LoadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_LoadingRow);
            cutOffsetDataGrid.UnloadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_UnloadingRow);
            lcOffsetDataGrid.LoadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_LoadingRow);
            lcOffsetDataGrid.UnloadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_UnloadingRow);
            taoGuanDataGrid.LoadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_LoadingRow);
            taoGuanDataGrid.UnloadingRow += new EventHandler<DataGridRowEventArgs>(dataGrid_UnloadingRow);

            //表格的数据绑定
            paramGrid.DataContext = layers;
            keyLayerDataGrid.DataContext = keyLayers;
            yancengListBox.ItemsSource = layers;
            cutOffsetDataGrid.ItemsSource = layers;
            lcOffsetDataGrid.ItemsSource = keyLayers;
            taoGuanDataGrid.ItemsSource = keyLayers;
            zengYiDataGrid.ItemsSource = zengYis;
            zengYiGrid.DataContext = editZengYi;
            manuDesignGrid.DataContext = manuDesignParams;
            autoDesignGrid.DataContext = this;

            //关键层计算相关其他参数绑定
            meiCengQingJIaoTb.DataContext = this;
            fuYanXCLTb.DataContext = this;
            caiGaoTb.DataContext = this;
            suiZhangXSTb.DataContext = this;

            meiCengHouDuTb.DataContext = this;
            xiuZhengXishuTb.DataContext = this;
            hcqZXcdTb.DataContext = this;
            hcqQXcdTb.DataContext = this;
            gZMTJSDTb.DataContext = this;
            jswzjlTb.DataContext = this;

            //initialData();
        }
Beispiel #4
0
        //打开文件
        public bool openFile(string filePath)
        {
            if (filePath == null)
            {
                FilePath = filePath;
                return true;
            }

            object obj = DataSaveAndRestore.restoreObj(filePath);
            if (obj == null || !(obj is DataSaveAndRestore.DataToSave))
            {
                return false;
            }
            DataSaveAndRestore.DataToSave data = obj as DataSaveAndRestore.DataToSave;

            //恢复基本参数
            layers.Clear();
            foreach (BaseLayerBaseParams baseParam in data.Layers)
            {
                LayerBaseParams layer = new LayerBaseParams(this, baseParam);
                layers.Add(layer);
            }

            //恢复关键层数据
            keyLayers.Clear();
            foreach (BaseKeyLayerParams baseParam in data.KeyLayers)
            {
                KeyLayerParams layer = new KeyLayerParams(this, baseParam);
                keyLayers.Add(layer);

            }

            //恢复关键层其他数据
            if (data.KeyLayerData != null && data.KeyLayerData.Count == 13)
            {
                int i = 0;
                mcqj = data.KeyLayerData[i++];
                FuYanXCL = data.KeyLayerData[i++];
                CaiGao = data.KeyLayerData[i++];
                SuiZhangXS = data.KeyLayerData[i++];
                maoLuoDaiTb.Text = data.KeyLayerData[i++].ToString("f3");
                lieXiDaiTb.Text = data.KeyLayerData[i++].ToString("f3");
                wanQuDaiTb.Text = data.KeyLayerData[i++].ToString("f3");

                mchd = data.KeyLayerData[i++];
                pjxsxz = data.KeyLayerData[i++];
                hcqZxcd = data.KeyLayerData[i++];
                hcqQxcd = data.KeyLayerData[i++];
                gzmsd = data.KeyLayerData[i++];
                jswzjl = data.KeyLayerData[i++];

                //没有刷新ui
                meiCengQingJIaoTb.Text = mcqj + "";
                fuYanXCLTb.Text = FuYanXCL + "";
                caiGaoTb.Text = CaiGao + "";
                suiZhangXSTb.Text = SuiZhangXS + "";

                meiCengHouDuTb.Text = mchd + "";
                xiuZhengXishuTb.Text = pjxsxz + "";
                hcqZXcdTb.Text = hcqZxcd + "";
                hcqQXcdTb.Text = hcqQxcd + "";
                gZMTJSDTb.Text = gzmsd + "";
                jswzjlTb.Text = jswzjl + "";
            }

            //恢复水泥环历史数据
            zengYis.Clear();
            foreach (BaseZengYiParams baseParam in data.ZengYis)
            {
                ZengYiParams param = new ZengYiParams(this, baseParam);
                zengYis.Add(param);
            }

            //恢复人工设计数据
            manuDesignParams.copyAndEvent(data.ManuDesignParams);

            FilePath = filePath;
            return true;
        }