【ArcGIS Pro二次开发】(17):打开GDB、SHP、CAD等各种数据

这篇具有很好参考价值的文章主要介绍了【ArcGIS Pro二次开发】(17):打开GDB、SHP、CAD等各种数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【ArcGIS Pro二次开发】(17):打开GDB、SHP、CAD等各种数据


 一、打开GDB数据库

            // 输入一个数据库路径
            string gdbPath = @"C:\Users\Administrator\Documents\ArcGIS\Projects\Test\Test.gdb";
            await QueuedTask.Run(() =>
            {
                // 如果文件夹存在并且包含有效的地理数据库,则会打开地理数据库。
                using (Geodatabase geodatabase = new Geodatabase(new FileGeodatabaseConnectionPath(new Uri(gdbPath))))
                {
                    // TODO
                }
            });

二、打开GDB数据库下的各类数据

1、打开表格【Table】

                    // 打开数据库里的表格
                    using (Table table = geodatabase.OpenDataset<Table>(tableName))
                    {
                        // TODO
                    }

2、打开要素类【FeatureClass】

                    // 打开一个要素类 (在数据集外或内都可以)。
                    using (FeatureClass featureClass = geodatabase.OpenDataset<FeatureClass>(fcName))
                    {
                        // TODO
                    }

3、以表格的形式打开一个要素类

                    // 以表格的形式打开一个要素类.
                    using (Table featureClassAsTable = geodatabase.OpenDataset<Table>(fcName))
                    {
                        // TODO
                    }

这里虽然是以表格的形式打开,但是实际上它仍然是一个要素类,可以自由转换格式。

FeatureClass featureClassOpenedAsTable = featureClassAsTable as FeatureClass;

4、打开要素数据集【FeatureDataset】

                    // 打开一个数据集.
                    using (FeatureDataset featureDataset = geodatabase.OpenDataset<FeatureDataset>(dbName))
                    {
                        // TODO
                    }

三、打开SHP数据

            // 输入一个包含SHP文件的文件夹
            string shpPath = @"C:\Users\Administrator\Documents\ArcGIS\Projects\Test\shpFile";
            // 输入SHP文件名
            string shpFile = @"成片项目";
            await QueuedTask.Run(() =>
            {
                FileSystemConnectionPath fileConnection = new FileSystemConnectionPath(new Uri(shpPath), FileSystemDatastoreType.Shapefile);
                using (FileSystemDatastore shapefile = new FileSystemDatastore(fileConnection))
                {
                    // 可以加shp或dbf后缀,也可以不加
                    FeatureClass taxLotsFeatureClass = shapefile.OpenDataset<FeatureClass>(shpFile);
                    FeatureClass manHolesFeatureClass = shapefile.OpenDataset<FeatureClass>(shpFile + ".shp");
                    Table taxDetailsTableWithoutExtension = shapefile.OpenDataset<Table>(shpFile);
                    Table taxDetailsTable = shapefile.OpenDataset<Table>(shpFile + ".dbf");
                }
            });

需要注意的是,打开shp文件,可以带【.shp】的后缀,也可以不加。

如果是打开shp数据的表格,同样的,可以带【.dbf】的后缀,也可以不加。

这点上,shp数据是放得比较宽松的。


四、打开CAD数据

                // 输入一个包含CAD文件的文件夹
                string cadPath = @"C:\Users\Administrator\Documents\ArcGIS\Projects\Test\cadFile";
                // 输入CAD文件名,需要后缀名
                string cadFile = @"newCAD_2007.dwg";
                FileSystemConnectionPath fileConnection = new FileSystemConnectionPath(new Uri(cadPath), FileSystemDatastoreType.Cad);
                using (FileSystemDatastore cadDatastore = new FileSystemDatastore(fileConnection))
                {
                    // 打开cad文件,转换为要素类。需要注意要素类型【点,线,面……】。
                    FeatureClass cadfeatureClass = cadDatastore.OpenDataset<FeatureClass>(cadFile + ":Polyline");
                    // TODO
                }

需要注意的是,打开CAD文件,必须带【.dwg】的后缀。

将CAD文件打开并转换为FeatureClass,必须指定要素类型,如【点,线,面……】等。


五、工程文件分享

 最后,放上工程文件的链接:

OpenDatabasehttps://pan.baidu.com/s/1tZdrSyBe2T1g10g4459Maw?pwd=gj0u

PS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。文章来源地址https://www.toymoban.com/news/detail-420259.html

到了这里,关于【ArcGIS Pro二次开发】(17):打开GDB、SHP、CAD等各种数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ArcGIS Pro二次开发】(52):布局导出图片(批量)

    在ArcGIS Pro中设定好布局后,可以直接导出为各种类型的图片。 这是很基本的功能,但是如果你的布局很多,一张一张导图就有点费劲。 之前有网友提出希望可以批量导图,要实现起来并不难,于是就做了这个工具。 如上图所示,点击【制图相关】面板下【导出布局(批量)

    2024年02月16日
    浏览(52)
  • 【ArcGIS Pro二次开发】(80):标注_CIMLabelClass

    CIMLabelClass(Cartographic Information Model Label Class)是ArcGIS Pro SDK中的一个类。 它主要用于定义标签的样式和属性,如字体、大小、颜色、对齐方式等,以及标签的排列和布局规则。 1、获取当前地图的标签引擎 2、修改当前地图的标签引擎 3、将文字符号TextSymbol应用到要素图层

    2024年02月19日
    浏览(48)
  • 【ArcGIS Pro二次开发】(59):Editing(编辑)模块

    ArcGIS Pro SDK中的\\\"Editing\\\"(编辑)模块提供了一系列API和工具,允许开发人员在ArcGIS Pro中实现各种地图数据编辑操作,从简单的要素绘制到复杂的数据集编辑。 下面列举一些常用编辑工具的实现方法。 1、获取所选要素的属性及赋值 2、通过【inspector】获取字段属性 3、裁剪面

    2024年02月13日
    浏览(37)
  • 【ArcGIS Pro二次开发】(63):批量更改字段别名

    在我工作中遇到的大多数图斑,字段名称一般是英文,字段别名是中文,使用起来是比较方便的。 但有时候也会遇到一些不一样的情况,不知是经过了怎样的处理,图斑的字段别名被修改成了和字段名称一样的英文,这样就很理解字段名称的意思,特别是其它专业、不熟悉的

    2024年02月11日
    浏览(76)
  • 【ArcGIS Pro二次开发】(60):按图层导出布局

    在使用布局导图时,会遇到如下问题: 为了切换图层和导图方便,一般情况下,会把相关图层做成图层组。 在导图的时候,如果想要按照图层组进行分开导图,如上图,想导出【现状图、规划图、管控边界】3张图,系统并没有方便的工具。 于是就自己做一个。   如上图所

    2024年02月12日
    浏览(44)
  • 【ArcGIS Pro二次开发】(56):界址点导出Excel

    界址点成果表是地籍测绘中的一种表格,用于记录地块的界址点坐标和相关属性信息。 这个工具的目的就是为了将地块要素导出为界址点成果表。 如上图所示,在【数据处理】组—【Excel相关】面板下,点击【界址点导出Excel】工具。 在弹出的工具框中,分别输入参数: 1、

    2024年02月14日
    浏览(35)
  • 【ArcGIS Pro二次开发】(81):文本符号_CIMTextSymbol

    CIMTextSymbol是用于绘制文本图形注释的文本符号。 0、属性 Angel 文本符号的放置角度 BlockProgression 多行文本的堆叠方向 Callout 引线 DrawSoftHyphen 连字符 FlipAngle 文本翻转(镜像)到位的角度 FontEffects 上下标 FontEncoding 获取文字的Encoding FontFamilyName 字体名称 FontStyleName 字形样式,例

    2024年02月20日
    浏览(44)
  • 【ArcGIS Pro二次开发】(36):度分秒转十进制度

    经纬度坐标的表达方式比较常用的一般有2种,【度分秒和十进制度】。 在成果展示中,以【度分秒】居多,但如果要将坐标导入ArcGIS中,则一般需要用到【十进制度】,这个转换可以在Excel中进行,也可以在ArcGIS中的字段计算里计算,但都有点小麻烦。 为了更方便的转换,

    2024年02月09日
    浏览(48)
  • 【ArcGIS Pro二次开发】(58):数据的本地化存储

    在做村规工具的过程中,需要设置一些参数,比如说导图的DPI,需要导出的图名等等。 每次导图前都需要设置参数,虽然有默认值,但还是需要不时的修改。 在使用的过程中,可能会有一些常用的参数,希望能够保存下来,而不是每次都去修改默认值。 于是,想到可以将这

    2024年02月14日
    浏览(43)
  • 【ArcGIS Pro二次开发】(53):村规制表、制图【福建省】

    这篇算是村规入库的一个延续。 村庄规划中有一些图纸是需要严格按照规范制图,或形成一定规范格式的。 这些图纸的制作基本算是机械式的工作,可以用工具来代替人工。 如上图所示,在【村庄规划】组,新增了两个工作面板:【制表】和【制图】。 【制表】面板共有

    2024年02月15日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包