public void DrawGraphic(Core.Model.ElementTypeEnum type) { ReleaseTool();//释放之前的工具 switch (type) { case Core.Model.ElementTypeEnum.Point: //绘制点 break; case Core.Model.ElementTypeEnum.Line: //绘制线 currentTool = new DrawLine(mapControl); break; case Core.Model.ElementTypeEnum.Polygon: //绘制面 currentTool = new DrawPolygon(mapControl); break; case Core.Model.ElementTypeEnum.Rectangle: //绘制矩形 currentTool = new DrawRectangle(mapControl); break; case Core.Model.ElementTypeEnum.Circle: //绘制圆 currentTool = new DrawCircle(mapControl); break; case Core.Model.ElementTypeEnum.Text: //绘制文字 currentTool = new DrawText(mapControl); break; case Core.Model.ElementTypeEnum.Other: //绘制其他 break; } if (currentTool != null) { (currentTool as MapFrame.Core.Interface.IMFDraw).MapLogic = mapLogic; currentTool.CommondExecutedEvent += new EventHandler <Core.Model.MessageEventArgs>(currentTool_CommondExecutedEvent); currentTool.RunCommond();//执行命令 } }
/// <summary> /// 绘制图形 /// </summary> /// <param name="type">图形类型</param> public void DrawGraphic(Core.Model.ElementTypeEnum type) { this.ReleaseTool();//重置工具 switch (type) { case Core.Model.ElementTypeEnum.Point: //点 break; case Core.Model.ElementTypeEnum.Line: //线 currentTool = new DrawLine(mapControl); break; case Core.Model.ElementTypeEnum.Polygon: //多边形 currentTool = new DrawPolygon(mapControl); break; case Core.Model.ElementTypeEnum.Rectangle: //矩形 currentTool = new DrawRectangle(mapControl); break; case Core.Model.ElementTypeEnum.Circle: //圆 currentTool = new DrawCircle(mapControl); break; case Core.Model.ElementTypeEnum.Text: //文字 currentTool = new DrawText(mapControl); break; case Core.Model.ElementTypeEnum.Other: //其他 break; } if (currentTool != null) { (currentTool as IMFDraw).MapLogic = mapLogic; currentTool.CommondExecutedEvent += new EventHandler <Core.Model.MessageEventArgs>(currentTool_CommondExecutedEvent); currentTool.RunCommond(); } }