/// <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); } }
/// <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); } }
/// <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); } }
private void RefreshData() { var gasContent = GasContent.FindAll(); gcGasContent.DataSource = 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); } }
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; } }
/// <summary> /// 带参数的构造方法 /// </summary> public GasContentInfoEntering(GasContent gasContent) { InitializeComponent(); GasContent = gasContent; FormDefaultPropertiesSetter.SetEnteringFormDefaultProperties(this, Const_OP.UPDATE_GASCONTENT_INFO); }
private void RefreshData() { gcGasContent.DataSource = GasContent.FindAll(); }