zoukankan      html  css  js  c++  java
  • ArcGIS Pro批量线分割面,也可以线分割线

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using ArcGIS.Core.CIM;
    using ArcGIS.Core.Data;
    using ArcGIS.Core.Geometry;
    using ArcGIS.Desktop.Catalog;
    using ArcGIS.Desktop.Core;
    using ArcGIS.Desktop.Editing;
    using ArcGIS.Desktop.Extensions;
    using ArcGIS.Desktop.Framework;
    using ArcGIS.Desktop.Framework.Contracts;
    using ArcGIS.Desktop.Framework.Dialogs;
    using ArcGIS.Desktop.Framework.Threading.Tasks;
    using ArcGIS.Desktop.Mapping;
    
    namespace TKPrint
    {
        internal class MapTool1 : MapTool
        {
            public MapTool1()
            {
                IsSketchTool = true;
                SketchType = SketchGeometryType.Line;
                SketchOutputMode = SketchOutputMode.Map;
            }
    
            protected override Task OnToolActivateAsync(bool active)
            {
                return base.OnToolActivateAsync(active);
            }
    
            protected override Task<bool> OnSketchCompleteAsync(Geometry geometry)
            {
                QueuedTask.Run(() =>
                {
                  
                    
                    //Delete all the selected features in the active view
                    //Select using a polygon (for example)
                    var selection = MapView.Active.SelectFeatures(geometry).Select(
                          k => new KeyValuePair<MapMember, List<long>>(k.Key as MapMember, k.Value));
                    foreach (var a in selection)
                    {
                        Layer featureLayer = a.Key as Layer;
                        foreach (var id in a.Value)
                        {
                            var deleteFeatures = new EditOperation();
                            deleteFeatures.Name = "Delete Features";
    
                            deleteFeatures.ShowProgressor = true;
                            deleteFeatures.EditOperationType = EditOperationType.Long;
                            deleteFeatures.Cut(featureLayer, id, geometry);
      //deleteFeatures.Split(featureLayer, id, geometry); deleteFeatures.ExecuteAsync(); } }
    //deleteFeatures.Delete(selection); //Execute to execute the operation //Must be called within QueuedTask.Run }); return base.OnSketchCompleteAsync(geometry); } } }
  • 相关阅读:
    [BZOJ 1907] 树的路径覆盖 【树形DP】
    [BZOJ 1221] [HNOI2001] 软件开发 【费用流 || 三分】
    SoapUI:mock service的使用
    SoapUI:使用Excel进行参数化
    SoapUI:入门实例
    loadrunner Analysis :SLA(Service Level Agreement服务水平协议)
    loadrunner controller:实时查看VUser的运行情况
    loadrunner controller:设置多个load generator
    loadrunner controller:集合点策略
    loadrunner:web services接口测试
  • 原文地址:https://www.cnblogs.com/gisoracle/p/12573039.html
Copyright © 2011-2022 走看看