Exemplo n.º 1
0
        public override void OnMouseMove(int Button, int Shift, int int_2, int int_3)
        {
            IActiveView focusMap = (IActiveView)_context.FocusMap;

            this.pPoint = focusMap.ScreenDisplay.DisplayTransformation.ToMapPoint(int_2, int_3);
            SketchToolAssist.SketchMouseMove(this.pPoint);
            //base.OnMouseMove(Button, Shift, int_2, int_3);
        }
Exemplo n.º 2
0
        public override void OnDblClick()
        {
            IActiveView focusMap = (IActiveView)_context.FocusMap;

            if (SketchToolAssist.CurrentTask == null)
            {
                SketchToolAssist.EndSketch(false, focusMap,
                                           Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
            }
            else
            {
                SketchToolAssist.EndSketch(false, focusMap, null);
            }
        }
Exemplo n.º 3
0
        public override void OnDblClick()
        {
            IActiveView focusMap = (IActiveView)_context.FocusMap;

            if (SketchToolAssist.CurrentTask == null)
            {
                SketchToolAssist.EndSketch(false, focusMap,
                                           Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
            }
            else
            {
                SketchToolAssist.EndSketch(false, focusMap, null);
            }
            if (SketchToolAssist.TempLine != null)
            {
                if (frmProperties == null)
                {
                    frmProperties = new frmLinePointProperties(_context);
                }
                DialogResult result = frmProperties.ShowDialog();
                if (result != DialogResult.OK)
                {
                    return;
                }
                IPointCollection pntCol = SketchToolAssist.TempLine as IPointCollection;
                int createCount         = 0;
                for (int i = 0; i < pntCol.PointCount; i++)
                {
                    IPoint point = pntCol.Point[i];
                    if (i == 0 && !_context.Config.IsAddStartPoint)
                    {
                        continue;
                    }
                    if (i == pntCol.PointCount - 1 && !_context.Config.IsAddEndPoint)
                    {
                        continue;
                    }
                    if ((i > 0 && i < pntCol.PointCount - 1) && !_context.Config.IsAddVertexPoint)
                    {
                        continue;
                    }

                    bool isClear = createCount == 0 ? true : false;
                    CreateFeatureTool.CreateFeature(point, focusMap,
                                                    Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer, isClear);
                    createCount++;
                }
            }
        }
Exemplo n.º 4
0
        public bool CheckTaskStatue(ITool itool_0)
        {
            string name = (itool_0 as ICommand).Name;
            bool   flag = false;

            if (string.Compare(name, "Edit_TargetTool", true) == 0)
            {
                flag = true;
            }
            if (!flag)
            {
                Yutai.ArcGIS.Common.Editor.Editor.DrawNode = false;
                SketchToolAssist.ReSet();
            }
            return(flag);
        }
Exemplo n.º 5
0
 public override void OnMouseDown(int int_0, int Shift, int int_2, int int_3)
 {
     if (int_0 == 1)
     {
         IActiveView focusMap = (IActiveView)_context.FocusMap;
         if (SketchToolAssist.CurrentTask == null)
         {
             SketchToolAssist.SketchMouseDown(focusMap,
                                              Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
         }
         else
         {
             SketchToolAssist.SketchMouseDown(focusMap, null);
         }
     }
     base.OnMouseDown(int_0, Shift, int_2, int_3);
 }
Exemplo n.º 6
0
 public override void OnMouseDown(int int_0, int Shift, int int_2, int int_3)
 {
     if (int_0 == 1)
     {
         IActiveView focusMap = (IActiveView)_context.FocusMap;
         if (SketchToolAssist.CurrentTask == null)
         {
             SketchToolAssist.IsDrawTempLine = DrawTempGeometry.Line;
             SketchToolAssist.SketchMouseDown(focusMap,
                                              ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
             //SketchToolAssist.SketchMouseDown(focusMap, ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
         }
         else
         {
             SketchToolAssist.SketchMouseDown(focusMap, null);
         }
     }
     //base.OnMouseDown(Button, Shift, int_2, int_3);
 }
Exemplo n.º 7
0
        public bool CheckTaskStatue(ITool pTool)
        {
            string name = (pTool as ICommand).Name;
            bool   flag = false;

            if (string.Compare(name, "Editor_Sketch_Line", true) == 0)
            {
                flag = true;
            }
            if (!flag && string.Compare(name, "Editor_Sketch_ArcLine", true) == 0)
            {
                flag = true;
            }
            if (!flag && string.Compare(name, "Editor_Start_Sketch", true) == 0)
            {
                flag = true;
            }
            if (!flag)
            {
                SketchToolAssist.ReSet();
            }
            return(flag);
        }
Exemplo n.º 8
0
        public override void OnDblClick()
        {
            IActiveView focusMap = (IActiveView)_context.FocusMap;

            if (SketchToolAssist.CurrentTask == null)
            {
                SketchToolAssist.EndSketch(false, focusMap,
                                           Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer);
            }
            else
            {
                SketchToolAssist.EndSketch(false, focusMap, null);
            }
            if (SketchToolAssist.TempLine != null)
            {
                if (frmProperties == null)
                {
                    frmProperties = new frmAlongLineProperties(_context);
                }
                frmProperties.SetPolyline((IPolyline)SketchToolAssist.TempLine);
                DialogResult result = frmProperties.ShowDialog();
                if (result != DialogResult.OK)
                {
                    return;
                }
                IPolyline polyline = SketchToolAssist.TempLine as IPolyline;

                double dbp = 0;
                if (frmProperties.IsNOP)
                {
                    dbp = polyline.Length / (frmProperties.NOP + 1);
                }
                else
                {
                    dbp = frmProperties.Distance;
                }


                int  createCount = 0;
                bool isClear     = true;
                //create points at distance between points up to total length
                for (double d = dbp; d < polyline.Length; d += dbp)
                {
                    IConstructPoint contructionPoint = new Point() as IConstructPoint;
                    contructionPoint.ConstructAlong(polyline, esriSegmentExtension.esriNoExtension, d, false);
                    isClear = createCount == 0 ? true : false;
                    CreateFeatureTool.CreateFeature((IGeometry)contructionPoint, focusMap,
                                                    Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer, isClear);
                    createCount++;
                }

                if (frmProperties.IsEnds)
                {
                    isClear = createCount == 0 ? true : false;
                    CreateFeatureTool.CreateFeature(polyline.FromPoint, focusMap,
                                                    Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer, isClear);
                    CreateFeatureTool.CreateFeature(polyline.ToPoint, focusMap,
                                                    Yutai.ArcGIS.Common.Editor.Editor.CurrentEditTemplate.FeatureLayer, false);
                }
            }
        }