Example #1
0
 /// <summary>
 /// 释放该类
 /// </summary>
 public void Dispose()
 {
     ReleaseCommond();
     CommondExecutedEvent = null;
     layer       = null;
     editElement = null;
     currTool    = null;
     mapControl  = null;
 }
Example #2
0
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="_mapControl">地图控件</param>
        /// <param name="element">图元</param>
        public EditPoint(AxMapControl _mapControl, MapFrame.Core.Interface.IMFElement element)
        {
            mapControl = _mapControl;
            currTool   = _mapControl.CurrentTool;

            editElement = element as IMFPoint;
            if (editElement != null)
            {
                layer = editElement.BelongLayer;
            }
            SetGraphicsLayer();
        }
Example #3
0
        void Form1_CommondExecutedEvent(object sender, MessageEventArgs e)
        {
            switch (e.ToolType)
            {
            case ToolTypeEnum.Draw:
                element = e.Data as IMFElement;
                switch (element.ElementType)
                {
                case ElementTypeEnum.Circle:
                    circleElement = element as IMFCircle;
                    break;

                case ElementTypeEnum.Point:
                    pointElement = element as IMFPoint;
                    break;

                case ElementTypeEnum.Line:
                    lineElement = element as IMFLine;
                    double length = lineElement.GetDistance();
                    break;

                case ElementTypeEnum.Polygon:
                    polygonElement = element as IMFPolygon;
                    double area = polygonElement.GetArea();
                    break;

                case ElementTypeEnum.Text:
                    textElement = element as IMFText;
                    break;

                case ElementTypeEnum.Rectangle:
                    rectangleElement = element as IMFPolygon;
                    break;
                }
                break;

            case ToolTypeEnum.Measure:
                break;

            case ToolTypeEnum.Select:
                List <IMFElement> elements = (sender as IMFSelect).GetSelectElements();
                break;

            case ToolTypeEnum.Edit:
                switch (element.ElementType)
                {
                case ElementTypeEnum.Point:
                    pointElement = element as IMFPoint;
                    break;

                case ElementTypeEnum.Line:
                    lineElement = element as IMFLine;
                    double length = lineElement.GetDistance();
                    break;

                case ElementTypeEnum.Polygon:
                    polygonElement = element as IMFPolygon;
                    double area = polygonElement.GetArea();
                    break;

                case ElementTypeEnum.Text:
                    textElement = element as IMFText;
                    break;
                }
                break;
            }
        }