예제 #1
0
        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();//执行命令
            }
        }
예제 #2
0
파일: ToolBox.cs 프로젝트: AnuoF/MapFrame
        /// <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();
            }
        }