public override void OnMouseDown(int Button, int Shift, int X, int Y) { if (m_hookHelper.Hook == null) { return; } IMapControl2 pMapCtl = m_hookHelper.Hook as IMapControl2; ESRI.ArcGIS.Geometry.IEnvelope pGeometry = pMapCtl.TrackRectangle(); if (pGeometry == null) { return; } ESRI.ArcGIS.Carto.IMap pMap = m_hookHelper.FocusMap; //更改获取面积的方法,20111123 double area = GetArea(pGeometry, pMap); double dArea = SysCommon.ModSysSetting.GetExportAreaOfUser(Plugin.ModuleCommon.TmpWorkSpace, m_pAppForm.ConnUser); if (dArea >= 0 && area > dArea) { MessageBox.Show("超过提取最大面积", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } drawgeometryXOR(pGeometry as IGeometry); frm = new frmExport(pMap, pGeometry); frm.WriteLog = WriteLog; //ygc 2012-9-12 是否写日志 frm.m_area = area; //ZQ 2011 1126 modify SysCommon.ScreenDraw.list.Add(ToolEvnelopeExportAfterDraw); frm.FormClosed += new FormClosedEventHandler(frm_FormClosed); frm.ShowDialog(); }
public override void OnClick() { if (_AppHk == null) { return; } if (this.WriteLog) { Plugin.LogTable.Writelog(base._Caption);//xisheng 日志记录 } ESRI.ArcGIS.Carto.IMap pMap = _AppHk.MapControl.ActiveView.FocusMap; //IArea pArea = pGon as IArea; //double area = pArea.Area; //GetArea(ref area, pMap); //double dArea = SysCommon.ModSysSetting.GetExportAreaOfUser(Plugin.ModuleCommon.TmpWorkSpace, m_pAppForm.ConnUser); //if (dArea >= 0 && area > dArea) //{ // MessageBox.Show("超过提取最大面积", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); // return; //} ///ZQ 20111027 add 判断数据字典是否初始化 if (SysCommon.ModField._DicFieldName.Count == 0) { SysCommon.ModField.InitNameDic(Plugin.ModuleCommon.TmpWorkSpace, SysCommon.ModField._DicFieldName, "属性对照表"); } GeoDataExport.frmExport frm = null; frm = new GeoDataExport.frmExport(pMap, null); frm.WriteLog = WriteLog;//ygc 2012-9-12 是否写日志 frm.WriteLog = this.WriteLog; frm.ShowDialog(); }
public override void OnClick() {//XZQLocation if (_hook == null) { return; } if (_hook.MainUserControl == null) { return; } SysCommon.ModSysSetting.CopyLayerTreeXmlFromDataBase(Plugin.ModuleCommon.TmpWorkSpace, ModGetData.LayerXMLpath); IGeometry xzqGeo = ModGetData.getExtentByXZQ(m_xzqTree.SelectedNode); if (xzqGeo == null) { SysCommon.Error.ErrorHandle.ShowFrmErrorHandle("提示", "未找到相应的行政区范围!"); return; } ///ZQ 20111027 add 判断数据字典是否初始化 if (SysCommon.ModField._DicFieldName.Count == 0) { SysCommon.ModField.InitNameDic(Plugin.ModuleCommon.TmpWorkSpace, SysCommon.ModField._DicFieldName, "属性对照表"); } GeoDataExport.frmExport pfrmExport = new GeoDataExport.frmExport(_hook.MapControl.Map, xzqGeo); pfrmExport.WriteLog = this.WriteLog; //ygc 2012-9-11 新增是否写日志 pfrmExport.XZQCode = m_xzqTree.SelectedNode.Name; //yjl20111012 过滤行政区代码 pfrmExport.ShowDialog(); }
//20110921 XISHENG 将导入txt范围的改成导入MDB,shp public override void OnClick() { if (_AppHk == null) { return; } if (this.WriteLog) { Plugin.LogTable.Writelog(base._Caption);//xisheng 日志记录 } OpenFileDialog dlg = new OpenFileDialog(); //dlg.Filter = "个人数据库(*.mdb)|*.mdb|shp数据|*.shp|文本文件|*.txt"; //dlg.Filter = "个人数据库(*.mdb)|*.mdb|shp数据|*.shp|文本文件|*.txt"; dlg.Filter = "shp数据|*.shp|个人数据库(*.mdb)|*.mdb|文件数据库(*.gdb)|gdb"; if (dlg.ShowDialog() == DialogResult.Cancel) { return; } IPolygon pGon = new PolygonClass(); pGon = SysCommon.ModPublicFun.GetPolyGonFromFile(dlg.FileName); if (pGon == null) { return; } ESRI.ArcGIS.Carto.IMap pMap = _AppHk.MapControl.ActiveView.FocusMap; IArea pArea = pGon as IArea; double area = pArea.Area; GetArea(ref area, pMap); double dArea = SysCommon.ModSysSetting.GetExportAreaOfUser(Plugin.ModuleCommon.TmpWorkSpace, m_pAppForm.ConnUser); if (dArea >= 0 && area > dArea) { MessageBox.Show("超过提取最大面积", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } drawgeometryXOR(pGon, m_pScreenDisplay); ///ZQ 20111027 add 判断数据字典是否初始化 if (SysCommon.ModField._DicFieldName.Count == 0) { SysCommon.ModField.InitNameDic(Plugin.ModuleCommon.TmpWorkSpace, SysCommon.ModField._DicFieldName, "属性对照表"); } frm = new GeoDataExport.frmExport(pMap, pGon as ESRI.ArcGIS.Geometry.IGeometry); frm.WriteLog = this.WriteLog; //ygc 2012-9-11 新增是否写日志 frm.m_area = area; frm.FormClosed += new FormClosedEventHandler(frm_FormClosed); frm.ShowDialog(); }
/// <summary> /// Occurs when this command is clicked /// </summary> public override void OnClick() { if (m_hookHelper.Hook == null) { return; } List <IGeometry> vTemp = GetDataGeometry(m_hookHelper.FocusMap); IMap pMap = m_hookHelper.FocusMap; if (vTemp == null) { return; } ESRI.ArcGIS.Geometry.IPolygon pGeometry = GetUnion(vTemp) as IPolygon; if (pGeometry == null) { return; } IArea pArea = pGeometry as IArea; double area = pArea.Area; GetArea(ref area, pMap); //ygc 2012-10-15 屏蔽面积判断 //double dArea = SysCommon.ModSysSetting.GetExportAreaOfUser(Plugin.ModuleCommon.TmpWorkSpace, m_pAppForm.ConnUser); //if (dArea >= 0 && area > dArea) //{ // MessageBox.Show("超过提取最大面积", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); // return; //} //end //ICommand pCmd = new ControlsClearSelectionCommandClass(); //pCmd.OnCreate(m_hookHelper.Hook); //pCmd.OnClick(); pMap.ClearSelection(); m_pActiveView.Refresh(); Application.DoEvents(); drawgeometryXOR(pGeometry, m_pScreenDisplay); frm = new frmExport(pMap, pGeometry); frm.WriteLog = WriteLog;//ygc 2012-9-12 是否写日志 frm.m_area = area; frm.FormClosed += new FormClosedEventHandler(frm_FormClosed); frm.ShowDialog(); Application.DoEvents(); }