• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

gisoracle

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

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;

using ArcGIS.Desktop.Core.Geoprocessing;

namespace ProAppModule1
{

    internal class Button2 : Button
    {

        public enum EnumFeatureClassType

        {

            POINT,

            MULTIPOINT,

            POLYLINE,

            POLYGON

        }
        public static async Task CreateFeatureClass(string featureclassName, EnumFeatureClassType featureclassType, SpatialReference pSpatialReference)

        {

            List<object> arguments = new List<object>

      {

        // store the results in the default geodatabase

        CoreModule.CurrentProject.DefaultGeodatabasePath,

        // name of the feature class

        featureclassName,

        // type of geometry

        featureclassType.ToString(),

        // no template

        "",

        // no z values

        "DISABLED",

        // no m values

        "DISABLED"

      };

            await QueuedTask.Run(() =>

            {

                // spatial reference

                // arguments.Add(SpatialReferenceBuilder.CreateSpatialReference(3857));
                arguments.Add(pSpatialReference);
               

            });

            IGPResult result = await Geoprocessing.ExecuteToolAsync("CreateFeatureclass_management", Geoprocessing.MakeValueArray(arguments.ToArray()));

        }



        protected override async void OnClick()
        {
            var mv = MapView.Active;
            SpatialReference pSpatialReference= mv.Map.SpatialReference;
            EnumFeatureClassType featureclassType = EnumFeatureClassType.POLYGON;
            string featureclassName = "gisoracle";
            await CreateFeatureClass(featureclassName, featureclassType, pSpatialReference);
            //
        }

    }



}

 

posted on 2020-03-11 22:08  gisai  阅读(836)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3