Example #1
0
        /// <summary>
        ///     20140801SDE中添加瓦斯含量点
        /// </summary>
        private void DrawGasGushQuantityPt(GasContent gasGushQuantityEntity)
        {
            var    dCoordinateX = Convert.ToDouble(txtCoordinateX.Text);
            var    dCoordinateY = Convert.ToDouble(txtCoordinateY.Text);
            var    dCoordinateZ = Convert.ToDouble(txtCoordinateZ.Text);
            IPoint pt           = new PointClass();

            pt.X = dCoordinateX;
            pt.Y = dCoordinateY;
            pt.Z = dCoordinateZ;
            var pLayer = DataEditCommon.GetLayerByName(DataEditCommon.g_pMap, LayerNames.LAYER_ALIAS_MR_WSHLD);

            if (pLayer == null)
            {
                MessageBox.Show(@"未找到瓦斯含量点图层,无法绘制瓦斯含量点图元。");
                return;
            }
            var       pFeatureLayer = (IFeatureLayer)pLayer;
            IGeometry geometry      = pt;
            var       list          = new List <ziduan>
            {
                new ziduan("bid", gasGushQuantityEntity.bid),
                new ziduan("mc", ""),
                new ziduan("addtime", DateTime.Now.ToString(CultureInfo.InvariantCulture))
            };
            var wshl = gasGushQuantityEntity.gas_content_value.ToString(CultureInfo.InvariantCulture); // 瓦斯含量
            var cdbg = gasGushQuantityEntity.coordinate_z.ToString(CultureInfo.InvariantCulture);
            var ms   = gasGushQuantityEntity.depth.ToString(CultureInfo.InvariantCulture);             // 埋深

            if (DataEditCommon.strLen(cdbg) < DataEditCommon.strLen(ms))
            {
                var count = DataEditCommon.strLen(ms) - DataEditCommon.strLen(cdbg);
                for (var i = 0; i < count; i++)
                {
                    cdbg = " " + cdbg;
                }
            }
            else if (DataEditCommon.strLen(cdbg) > DataEditCommon.strLen(ms))
            {
                var count = DataEditCommon.strLen(cdbg) - DataEditCommon.strLen(ms);
                for (var i = 0; i < count; i++)
                {
                    ms += " ";
                }
            }

            list.Add(new ziduan("wshl", wshl));
            list.Add(new ziduan("cdbg", cdbg));
            list.Add(new ziduan("ms", ms));

            var pfeature = DataEditCommon.CreateNewFeature(pFeatureLayer, geometry, list);

            if (pfeature != null)
            {
                MyMapHelp.Jump(pt);
                DataEditCommon.g_pMyMapCtrl.ActiveView.PartialRefresh((esriViewDrawPhase)34, null, null);
            }
        }
Example #2
0
        /// <summary>
        ///     提交
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            // 验证
            if (!Check())
            {
                DialogResult = DialogResult.None;
                return;
            }
            DialogResult = DialogResult.OK;

            // 创建一个瓦斯含量点实体
            if (GasContent == null)
            {
                var gasContent = new GasContent
                {
                    CoordinateX     = Convert.ToDouble(txtCoordinateX.Text),
                    CoordinateY     = Convert.ToDouble(txtCoordinateY.Text),
                    CoordinateZ     = Convert.ToDouble(txtCoordinateZ.Text),
                    Depth           = Convert.ToDouble(txtDepth.Text),
                    GasContentValue = Convert.ToDouble(txtGasContentValue.Text),
                    MeasureDateTime = dtpMeasureDateTime.Value,
                    Tunnel          = selectTunnelSimple1.SelectedTunnel,
                    CoalSeams       = (CoalSeams)cboCoalSeams.SelectedItem,
                    BindingId       = IDGenerator.NewBindingID()
                };
                // 坐标X
                gasContent.Save();
                DrawGasGushQuantityPt(gasContent);
            }
            else
            {
                GasContent.CoordinateX     = Convert.ToDouble(txtCoordinateX.Text);
                GasContent.CoordinateY     = Convert.ToDouble(txtCoordinateY.Text);
                GasContent.CoordinateZ     = Convert.ToDouble(txtCoordinateZ.Text);
                GasContent.Depth           = Convert.ToDouble(txtDepth.Text);
                GasContent.GasContentValue = Convert.ToDouble(txtGasContentValue.Text);
                GasContent.MeasureDateTime = dtpMeasureDateTime.Value;
                GasContent.Tunnel          = selectTunnelSimple1.SelectedTunnel;
                GasContent.CoalSeams       = (CoalSeams)cboCoalSeams.SelectedItem;
                GasContent.Save();
                DelGasGushQuantityPt(GasContent.BindingId, GasContent.CoalSeams.CoalSeamsName);
                DrawGasGushQuantityPt(GasContent);
            }
        }
Example #3
0
        /// <summary>
        ///     提交
        /// </summary>
        /// <params name="sender"></params>
        /// <params name="e"></params>
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.OK;

            // 创建一个瓦斯含量点实体
            if (GasContent == null)
            {
                var gasContent = new GasContent
                {
                    coordinate_x      = Convert.ToDouble(txtCoordinateX.Text),
                    coordinate_y      = Convert.ToDouble(txtCoordinateY.Text),
                    coordinate_z      = Convert.ToDouble(txtCoordinateZ.Text),
                    depth             = Convert.ToDouble(txtDepth.Text),
                    gas_content_value = Convert.ToDouble(txtGasContentValue.Text),
                    measure_datetime  = dtpMeasureDateTime.Value,
                    tunnel            = selectTunnelSimple1.selected_tunnel,
                    bid = IdGenerator.NewBindingId()
                };
                // 坐标X
                gasContent.Save();
                DrawGasGushQuantityPt(gasContent);
            }
            else
            {
                GasContent.coordinate_x      = Convert.ToDouble(txtCoordinateX.Text);
                GasContent.coordinate_y      = Convert.ToDouble(txtCoordinateY.Text);
                GasContent.coordinate_z      = Convert.ToDouble(txtCoordinateZ.Text);
                GasContent.depth             = Convert.ToDouble(txtDepth.Text);
                GasContent.gas_content_value = Convert.ToDouble(txtGasContentValue.Text);
                GasContent.measure_datetime  = dtpMeasureDateTime.Value;
                GasContent.tunnel            = selectTunnelSimple1.selected_tunnel;
                GasContent.Save();
                DelGasGushQuantityPt(GasContent.bid);
                DrawGasGushQuantityPt(GasContent);
            }
        }
Example #4
0
        private void RefreshData()
        {
            var gasContent = GasContent.FindAll();

            gcGasContent.DataSource = gasContent;
        }
        /// <summary>
        ///     提交
        /// </summary>
        /// <params name="sender"></params>
        /// <params name="e"></params>
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.OK;

            // 创建一个瓦斯含量点实体
            if (GasContent == null)
            {
                var gasContent = new GasContent
                {
                    coordinate_x = Convert.ToDouble(txtCoordinateX.Text),
                    coordinate_y = Convert.ToDouble(txtCoordinateY.Text),
                    coordinate_z = Convert.ToDouble(txtCoordinateZ.Text),
                    depth = Convert.ToDouble(txtDepth.Text),
                    gas_content_value = Convert.ToDouble(txtGasContentValue.Text),
                    measure_datetime = dtpMeasureDateTime.Value,
                    tunnel = selectTunnelSimple1.selected_tunnel,
                    bid = IdGenerator.NewBindingId()
                };
                // 坐标X
                gasContent.Save();
                DrawGasGushQuantityPt(gasContent);
            }
            else
            {
                GasContent.coordinate_x = Convert.ToDouble(txtCoordinateX.Text);
                GasContent.coordinate_y = Convert.ToDouble(txtCoordinateY.Text);
                GasContent.coordinate_z = Convert.ToDouble(txtCoordinateZ.Text);
                GasContent.depth = Convert.ToDouble(txtDepth.Text);
                GasContent.gas_content_value = Convert.ToDouble(txtGasContentValue.Text);
                GasContent.measure_datetime = dtpMeasureDateTime.Value;
                GasContent.tunnel = selectTunnelSimple1.selected_tunnel;
                GasContent.Save();
                DelGasGushQuantityPt(GasContent.bid);
                DrawGasGushQuantityPt(GasContent);
            }
        }
 /// <summary>
 ///     带参数的构造方法
 /// </summary>
 public GasContentInfoEntering(GasContent gasContent)
 {
     InitializeComponent();
     GasContent = gasContent;
 }
        /// <summary>
        ///     20140801SDE中添加瓦斯含量点
        /// </summary>
        private void DrawGasGushQuantityPt(GasContent gasGushQuantityEntity)
        {
            var dCoordinateX = Convert.ToDouble(txtCoordinateX.Text);
            var dCoordinateY = Convert.ToDouble(txtCoordinateY.Text);
            var dCoordinateZ = Convert.ToDouble(txtCoordinateZ.Text);
            IPoint pt = new PointClass();
            pt.X = dCoordinateX;
            pt.Y = dCoordinateY;
            pt.Z = dCoordinateZ;
            var pLayer = DataEditCommon.GetLayerByName(DataEditCommon.g_pMap, LayerNames.LAYER_ALIAS_MR_WSHLD);
            if (pLayer == null)
            {
                MessageBox.Show(@"未找到瓦斯含量点图层,无法绘制瓦斯含量点图元。");
                return;
            }
            var pFeatureLayer = (IFeatureLayer) pLayer;
            IGeometry geometry = pt;
            var list = new List<ziduan>
            {
                new ziduan("bid", gasGushQuantityEntity.bid),
                new ziduan("mc", ""),
                new ziduan("addtime", DateTime.Now.ToString(CultureInfo.InvariantCulture))
            };
            var wshl = gasGushQuantityEntity.gas_content_value.ToString(CultureInfo.InvariantCulture); // 瓦斯含量
            var cdbg = gasGushQuantityEntity.coordinate_z.ToString(CultureInfo.InvariantCulture);
            var ms = gasGushQuantityEntity.depth.ToString(CultureInfo.InvariantCulture); // 埋深
            if (DataEditCommon.strLen(cdbg) < DataEditCommon.strLen(ms))
            {
                var count = DataEditCommon.strLen(ms) - DataEditCommon.strLen(cdbg);
                for (var i = 0; i < count; i++)
                {
                    cdbg = " " + cdbg;
                }
            }
            else if (DataEditCommon.strLen(cdbg) > DataEditCommon.strLen(ms))
            {
                var count = DataEditCommon.strLen(cdbg) - DataEditCommon.strLen(ms);
                for (var i = 0; i < count; i++)
                {
                    ms += " ";
                }
            }

            list.Add(new ziduan("wshl", wshl));
            list.Add(new ziduan("cdbg", cdbg));
            list.Add(new ziduan("ms", ms));

            var pfeature = DataEditCommon.CreateNewFeature(pFeatureLayer, geometry, list);
            if (pfeature != null)
            {
                MyMapHelp.Jump(pt);
                DataEditCommon.g_pMyMapCtrl.ActiveView.PartialRefresh((esriViewDrawPhase) 34, null, null);
            }
        }
Example #8
0
 /// <summary>
 ///     带参数的构造方法
 /// </summary>
 public GasContentInfoEntering(GasContent gasContent)
 {
     InitializeComponent();
     GasContent = gasContent;
 }
Example #9
0
        private void BT_Ok_Click(object sender, EventArgs e)
        {
            try
            {
                if (!Directory.Exists(m_MakeContoursFolder))
                {
                    Directory.CreateDirectory(m_MakeContoursFolder);
                }
                panel1.Enabled   = false;
                panel2.Enabled   = false;
                panel4.Enabled   = false;
                lbshengc.Visible = true;
                Application.DoEvents();
                ArrayList TheValueList = new ArrayList();
                if (radioBtndata.Checked)
                {
                    if (m_layerAliasName.Equals("瓦斯压力等值线"))
                    {
                        var gasPressures = GasPressure.FindAll();
                        foreach (var i in gasPressures)
                        {
                            XYValueStruct temp;
                            temp.X        = i.coordinate_x;
                            temp.Y        = i.coordinate_y;
                            temp.TheValue = i.gas_pressure_value;
                            TheValueList.Add(temp);
                        }
                    }
                    if (m_layerAliasName.Equals("瓦斯含量等值线"))
                    {
                        var gasContent = GasContent.FindAll();
                        foreach (var i in gasContent)
                        {
                            XYValueStruct temp;
                            temp.X        = i.coordinate_x;
                            temp.Y        = i.coordinate_y;
                            temp.TheValue = i.gas_content_value;
                            TheValueList.Add(temp);
                        }
                    }
                    if (m_layerAliasName.Equals("瓦斯涌出量等值线"))
                    {
                        var gasGushQuantity = GasGushQuantity.FindAll();
                        foreach (var i in gasGushQuantity)
                        {
                            XYValueStruct temp;
                            temp.X        = i.coordinate_x;
                            temp.Y        = i.coordinate_y;
                            temp.TheValue = i.absolute_gas_gush_quantity;
                            TheValueList.Add(temp);
                        }
                    }

                    if (TheValueList.Count < 3)
                    {
                        MessageBox.Show("离散点数据为空或小于三个,无法生成等值线!");
                        return;
                    }
                    string[] strlsd = new string[TheValueList.Count];
                    for (int i = 0; i < TheValueList.Count; i++)
                    {
                        XYValueStruct tempxy = (XYValueStruct)TheValueList[i];
                        string        temstr = tempxy.X + "," + tempxy.Y + "," + tempxy.TheValue;
                        strlsd[i] = temstr;
                    }
                    m_strDataFilePath = Application.StartupPath + "\\tempdata.txt";
                    File.WriteAllLines(m_strDataFilePath, strlsd);
                }
                else
                {
                    m_strDataFilePath = TB_DocumentPath.Text.Trim();
                    if (m_strDataFilePath.Equals(""))
                    {
                        MessageBox.Show("请选择一个离散点文件!");
                        return;
                    }
                }
                bool              bIsSuccess               = false;
                string            failInfo                 = "";
                DrawSpecialCommon drawspecial              = new DrawSpecialCommon();
                string            sLayerAliasName          = m_layerAliasName; //MapControl中图层名称
                string            nameOftargetFeatureClass = SDELayerName;     //m_layerName + "_NO" + sCoalseamNO;//数据库中图层名称
                string            extent = "";
                if (radioBtnKJ.Checked)
                {
                    ILayer        pLayer        = DataEditCommon.GetLayerByName(DataEditCommon.g_pMap, LayerNames.LAYER_ALIAS_MINE_BOUNDARY);
                    IFeatureLayer pFeatureLayer = (IFeatureLayer)pLayer;
                    IEnvelope     pEnvelope     = pFeatureLayer.AreaOfInterest;
                    //右上左下  xmax  ymax  xmin  ymin
                    extent = pEnvelope.XMax.ToString() + " " + pEnvelope.YMax.ToString() + " " + pEnvelope.XMin.ToString() + " " + pEnvelope.YMin.ToString();
                }
                IWorkspace targetworkspace = DataEditCommon.g_pCurrentWorkSpace;
                //最后重新生成图层并添加到数据库及MapControl中
                bIsSuccess = CreateContours(targetworkspace, nameOftargetFeatureClass, sLayerAliasName, extent, ref failInfo);

                if (bIsSuccess)
                {
                    string layername = "";
                    if (m_layerAliasName.Equals("瓦斯压力等值线"))
                    {
                        layername = LayerNames.LAYER_ALIAS_MR_YLDZX;
                    }
                    if (m_layerAliasName.Equals("瓦斯含量等值线"))
                    {
                        layername = LayerNames.LAYER_ALIAS_MR_HLDZX;
                    }
                    if (m_layerAliasName.Equals("瓦斯涌出量等值线"))
                    {
                        layername = LayerNames.LAYER_ALIAS_MR_YCLDZX;
                    }
                    if (m_layerAliasName.Equals("地面标高等值线"))
                    {
                        layername = LayerNames.GROUND_LEVLE_CONTOUR;
                    }
                    if (m_layerAliasName.Equals("煤层底板等值线"))
                    {
                        layername = LayerNames.FLOOR_ELEVATION_CONTOUR;
                    }
                    if (m_layerAliasName.Equals("埋深等值线"))
                    {
                        layername = LayerNames.EMBEDDED_DEPTH_CONTOUR;
                    }
                    DataEditCommon.SetLayerVisibleByName(DataEditCommon.g_pMap, layername, true);

                    MessageBox.Show("等值线和渲染图生成完成。");
                    this.Close();
                }
                else
                {
                    MessageBox.Show(failInfo + "生成过程有误,请检查。");
                }
                //this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                panel1.Enabled   = true;
                panel2.Enabled   = true;
                panel4.Enabled   = true;
                lbshengc.Visible = false;
                Application.DoEvents();
                progressBarControl1.Position = 0;
            }
        }
Example #10
0
 /// <summary>
 ///     带参数的构造方法
 /// </summary>
 public GasContentInfoEntering(GasContent gasContent)
 {
     InitializeComponent();
     GasContent = gasContent;
     FormDefaultPropertiesSetter.SetEnteringFormDefaultProperties(this, Const_OP.UPDATE_GASCONTENT_INFO);
 }
Example #11
0
 private void RefreshData()
 {
     gcGasContent.DataSource = GasContent.FindAll();
 }