arcgis pro ArcGISProject

ArcGISProject

描述

用于访问 ArcGIS Pro 工程方法和属性。大多数地图自动化工作流都需要引用此对象。

说明

ArcGISProject 对象用于访问 ArcGIS Pro 应用程序中找到的众多工程属性和方法。ArcGISProject 对象通常是最先引用的对象(这些对象是在地图自动化脚本中创建的)之一,因为它是访问几乎所有其他 ArcGIS 工程对象的主要入口点。

引用 ArcGISProject 对象后,您可以使用 listMaps 方法访问地图或使用 listLayouts 方法访问布局。引用 Map 对象后,您可以访问 Layer 或 Table对象,或访问 Layout 对象后,您可以访问 GraphicElementLegendElementMapFrameMapSurroundElementpictureElement 和 TextElement 等布局元素。您可以从这些对象访问工程中的其他对象。ArcGISProject 对象还可以用于管理工程设置,如 defaultGeodatabase 和 defaultToolbox。

importDocument 方法允许您将地图文档 (.mxd)、globe 文档 (.3dd) 和 scene 文档 (.sxd) 导入到工程中。此操作提供了用于将这些文档类型自动转换为 ArcGIS Pro 工程的机制。importDocument 方法还允许您将地图文件 (.mapx)、布局文件 (.pagx) 或报表文件 (.rptx) 导入到现有工程中。

activeMap 属性用于在应用程序内部执行的脚本,例如在 Python 窗格中运行的脚本,或与使用基于活动视图提供信息的验证脚本的脚本工具相关联的脚本。例如,如果地图视图已打开,则会返回相关联的地图。如果布局视图已打开,则会返回与布局上活动地图框相关联的地图。当脚本在应用程序外部运行时,该属性将始终返回 None 值,因为视图仅在应用程序打开时才会相关。

属性

属性 说明 数据类型
activeMap

(只读)


返回与应用程序内部焦点视图相关联的地图对象。None 如果没有打开具有相关联的地图的视图或当脚本在应用程序外部运行时,将会返回。

Map
dateSaved

(只读)


返回报告上次工程保存日期的 Python datetime 对象。

DateTime
defaultGeodatabase

(可读写)


工程的默认地理数据库位置。此字符串必须包含地理数据库的完整路径和文件名称。

String
defaultToolbox

(可读写)


工程的默认工具箱位置。此字符串必须包含工具箱的完整路径和文件名称。

String
documentVersion

(只读)


根据上次保存文档的时间返回文档版本。执行 save 或 saveACopy 将更新文档版本,以匹配应用程序版本。

String
filePath

(只读)


返回报告完全限定的工程路径和文件名的字符串值。

String
homeFolder

(可读写)


工程的主目录文件夹位置。此字符串必须包含所需位置的完整路径。

String

方法概述

方法 说明
importDocument (document_path, {include_layout}, {reuse_existing_maps})
将地图文档 (.mxd)、globe 文档 (.3dd) 和 scene 文档 (.sxd) 导入到 ArcGIS Pro 工程中。还可以导入地图文件 (.mapx)、布局文件 (.pagx) 和报表文件 (.rptx) 的内容。

listBrokenDataSources ()
返回项目中到所有地图原始源数据的连接存在断开情况的 Layer 和/或 Table 对象的 Python 列表。

listColorRamps ({wildcard})
listColorRamps 方法将引用工程中的可用色带。

listLayouts ({wildcard})
返回 ArcGIS 工程 (.aprx) 中的 Layout 对象的 Python 列表。

listMaps ({wildcard})
返回 ArcGIS 工程 (.aprx) 中的 Map 对象的 Python 列表。

listReports ({wildcard})
返回 ArcGIS 工程 (.aprx) 中的报表对象的 Python 列表。

save ()
将更改保存至 ArcGISProject (.aprx)。

saveACopy (file_name)
将 ArcGISProject (.aprx) 保存到新文件路径或另存为新文件名。

updateConnectionProperties (current_connection_info, new_connection_info, {auto_update_joins_and_relates}, {validate}, {ignore_case})
使用工作空间字典或路径替换连接属性。

方法

importDocument (document_path, {include_layout}, {reuse_existing_maps})
参数 说明 数据类型

document_path

包含(.mxd、.3dd 或 .sxd)文档或地图文件 (.mapx)、布局文件 (.pagx) 或报表文件 (.rptx) 的系统路径和名称的字符串。

String

include_layout


指示是否导入地图文档中的布局 (.mxd) 的布尔型参数。如果设置为 True,则将导入布局和全部数据框。如果设置为 False,则仅导入数据框。对于其他文件类型,可忽略此参数。

(默认值为 True)

Boolean

reuse_existing_maps


默认情况下,导入布局文件 (.pagx) 会复制布局引用的所有地图。如果工程中已存在地图,则可以将 reuse_existing_maps 设置为 False,由此可检查工程中布局文件中引用的地图,并仅复制工程中不存在的地图。这样可以避免在工程中复制地图。对于其他文件类型,可忽略此参数。

(默认值为 False)

Boolean

此方法一次只能导入一个文档。要导入多个文档,请对每个文档执行一次此方法。地图文档 (.mxd) 始终具有布局。迁移地图文档时,您可能并不总是想要导入布局。如果是这种情况,请设置 include_layout=False。

listBrokenDataSources ()

返回值

数据类型 说明
List
Layer 和/或 Table 对象的 Python 列表。

listBrokenDataSources 方法始终返回 Python 列表对象,即使返回一个损坏的图层或表。

listColorRamps ({wildcard})
参数 说明 数据类型

wildcard


通配符将基于色带名称显示在应用程序中。星号 (*) 和字符的组合可用于帮助限制生成的列表。

(默认值为 None)

String

返回值

数据类型 说明
List
将返回 ColorRamp 对象列表。

在一个工程中,可能会有多个色带使用相同的名称。创作工程时,采用可通过唯一名称轻松进行搜索的色带名称非常重要。索引编号可用于返回一个特定的色带。例如,以下行可以返回列表中的第一个色带对象:cr = aprx.listColorRamps("Black*")[0]。

listLayouts ({wildcard})
参数 说明 数据类型

wildcard


通配符基于布局名称且不区分大小写。星号 (*) 和字符的组合可用于帮助限制生成的列表。

(默认值为 None)

String

返回值

数据类型 说明
List
ArcGIS 工程中的 Layout 对象的 Python 列表。

返回 ArcGIS 工程 (.aprx) 中的 Layout 对象的 Python 列表。

listMaps ({wildcard})
参数 说明 数据类型

wildcard


通配符基于地图名称且不区分大小写。星号 (*) 和字符的组合可用于帮助限制生成的列表。

(默认值为 None)

String

返回值

数据类型 说明
List
ArcGIS 工程中的 Map 对象的 Python 列表。

返回 ArcGIS 工程 (.aprx) 中的 Map 对象的 Python 列表。

listReports ({wildcard})
参数 说明 数据类型

wildcard


通配符基于报表名称且不区分大小写。星号 (*) 和字符的组合可用于帮助限制生成的列表。

(默认值为 None)

String

返回值

数据类型 说明
List
ArcGIS 工程中的报表对象的 Python 列表。

返回 ArcGIS 工程 (.aprx) 中的报表对象的 Python 列表。

save ()

将更改保存至 ArcGISProject (.aprx)。已保存此项目,同时项目变量继续引用原始 ArcGISProject对象。

saveACopy (file_name)
参数 说明 数据类型

file_name

用来将 ArcGISProject (.aprx) 保存到新文件路径或另存为新文件名的字符串。

String

该方法会创建新输出工程文件,但工程变量继续引用原始 ArcGISProject 对象。并不会复制工程文件夹中的所有内容。

updateConnectionProperties (current_connection_info, new_connection_info, {auto_update_joins_and_relates}, {validate}, {ignore_case})
参数 说明 数据类型

current_connection_info

用于表示工作空间路径或 Python 字典(包含要更新的源的连接属性)的字符串。

String

new_connection_info

用于表示包含连接属性与新源信息的工作空间路径或 Python 字典的字符串。

String

auto_update_joins_and_relates


如果设置为 True,则 updateConnectionProperties 方法还将更新相关连接或关联的连接。

(默认值为 True)

Boolean

validate


如果设置为 True,则仅在 new_connection_info 值为有效连接时,才会更新连接属性。如果为无效连接,则不会替换连接。如果设置为 False,则无论匹配是否有效,此方法都会将所有连接设置为匹配 new_connection_info。在这种情况下,如果匹配不存在,则将损坏数据源。

(默认值为 True)

Boolean

ignore_case


确定搜索是否区分大小写。默认情况下,查询区分大小写。要执行不区分大小写的查询,请将 ignore_case 设置为 True。

(默认值为 False)

Boolean

有关详细说明、参数信息、案例和代码示例,请参阅更新和修复数据源帮助主题。

代码示例

ArcGISProject 示例 1

下面的脚本演示了如何将文档导入到现有 ArcGIS Pro 工程。同时还设置了一些默认工程设置并将结果保存到新文件。

import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\blank.aprx")
aprx.importDocument(r"C:\Projects\YosemiteNP\Documents\Yosemite.mxd")
aprx.importDocument(r"C:\Projects\YosemiteNP\Documents\Yosemite_ScenicViews.3dd")
aprx.defaultToolGeoDatabase = r"C:\Projects\YosemiteNP\Data_Vector\YosemiteData.gdb"
aprx.defaultToolbox = r"C:\Projects\YosemiteNP\Analysis\AnalysisTools.tbx"
aprx.saveACopy(r"C:\Projects\YosemiteNP\Yosemite.aprx")

ArcGISProject 示例 2

下面的脚本使用了关键字 current,因此可从 Python 窗口运行此脚本。此脚本打印了工程及其图层中每个地图的名称,以及每个布局的名称及其页面大小。

aprx = arcpy.mp.ArcGISProject("CURRENT")
for m in aprx.listMaps():
    print("Map: " + m.name)
    for lyr in m.listLayers():
        print("  " + lyr.name)
print("Layouts:")
for lyt in aprx.listLayouts():
    print(f"  {lyt.name} ({lyt.pageHeight} x {lyt.pageWidth} {lyt.pageUnits})")

原文地址:https://www.cnblogs.com/gisoracle/p/12313833.html

时间: 2024-10-11 05:16:02

arcgis pro ArcGISProject的相关文章

ArcGIS Pro 简明教程(3)数据编辑

转载:http://www.cnblogs.com/lazygis/p/5944680.html 数据编辑是GIS中最常用的功能之一,ArcGIS Pro在GIS数据编辑上使用习惯有一定的改变,因此,本章可以重点看看一些编辑工具的使用和使用技巧. 创建数据 GIS数据编辑经常需要创建新的geodatabase或者featureclass和shapefile数据.以往在ArcMap中,只要连接了文件夹,都可以随心所欲的在文件夹右键进行新建.ArcGIS Pro则不能这样做了.原因很简单,因为Pro

ArcGIS Pro体验04——菜单栏

对菜单栏进行熟悉一下: 1.地图菜单 剪切板(Clipboard):剪切(Cut).复制(Copy).粘贴(Paste),这些不用说了,在ArcMap中是放在"编辑"菜单下面的.当然,在ArcGIS Pro的"编辑"菜单也有"剪切板". 导航(Navigate):识别(Explore),缩放到全图(Full Extent),缩放到选择集(Zoom to Selection),固定放大(Fixed Zoon In),固定缩小(Fixed Zoon

NEW!获取 ArcGIS Pro 与 ArcGIS Desktop 60天试用许可

春节之后,美国esri官网给了我们一些小惊喜,千呼万唤的 ArcGIS Pro 的试用许可终于放出来了.与ArcGIS Desktop Advanced 一起提供 60天的试用,同时附赠了 200 个 credit. ArcGIS Pro 使用了全新的 Named User 方式授权许可,我们可以多个设备同时在线使用. PS:如果你希望得到 ArcGIS Desktop的使用许可,这篇文章也能帮到你. 下面就说说申请途径和激活方式. First ,找到Esri官方试用地址 http://www.

ArcGIS Pro体验01——申请、下载、安装

ArcGIS Pro采用了Ribbon界面风格,看起来好漂亮,听起来很强大,就是不知道用起来怎么样,在网上看到一个ArcGIS Pro Beta2版本,下载下来,安装启动,好眼熟,像Office2013Word一样的风格. 但在登陆过程中遇到问题,就去官网看了,目前还没看到破解,但可以申请60多天的试用,而且它的许可方式较ArcGIS Desktop本地许可变成了网络许可.官网出了新的版本,于是进行了安装测试. 项目 操作系统 ArcGIS版本 ArcGIS Pro 内容 Win7 x64(原版

ArcGIS Pro 简明教程(1)Pro简介

ArcGIS Pro 简明教程(1)Pro简介 转载地址:http://www.cnblogs.com/lazygis/p/5870545.html ArcGIS Pro已经发布了相当的一段时间了,截至笔者写这系列文章的时候已经是1.3版本了,已经是相当完善的一个版本,基本上已经完成了原来ArcGIS Desktop(ArcMap.ArcCatalog.ArcGlobe.ArcScene等一系列工具的总称)所有功能的迁移,已经可以彻底的进行独立的工作了. 相信很多ArcGIS骨灰级的用户跟笔者一

ArcGIS Pro体验03——主界面

主界面和Office类似,应该上手比较快.新建Map后,加载了美国地图,毕竟是ESRI公司嘛.除项目(PROJECT),另外还有六个菜单面板,分别是地图(MAP).插入(INSERT).分析(ANALYSIS).视图(VIEW).编辑(EDIT)和分享(SHARE).单从英文单词上来看,我觉得不如中文好看,中文菜单字的长度一样,占位也一样,工整些,但这也不妨.主视图是采用标签的形式,这样应该更加方便吧. 值得一提的是左边是内容面板,主要是对图层的控制,和ArcMap中的效果类似.但它的优点是:首

开源方案搭建可离线的精美矢量切片地图服务-7.Arcgis Pro企业级应用

1.前言 上篇讲.pbf字体库的时候说到我们使用的字体通过Arcgis Pro 生成,Arcgis Pro样式基于Mapbox做的矢量切片地图渲染.这篇主要讲一下Arcgis Pro矢量切片生成的的具体方法,可以看一下企业级的矢量切片地图对比我们使用Geoserver进行切片的优点. 2.Arcgis Pro介绍 Arcgis Pro是esri公司推出新版arcgis系列软件.企业级矢量切片地图服务应用是新版本中新增的核心功能.矢量切片是区别于传统版本的Arcgis Server地图服务的要点,

ArcMap和ArcGIS Pro加载百度地图

前面发布了两篇我用ArcBruTile开发用于ArcMap加载百度地图的插件ArcBruTileBaidu,放在网上后评论和反响还不错,还有两位大学同学通过百度搜索居然搜到我本人!文章和技术介绍也被网络上复制粘贴了很多次,开发了那么多没人用的数字城市平台软件和GIS系统,这一个工具才感觉自己还有点用. 毕竟只是茶余饭后的兴趣爱好,对该插件升级和维护的也不是很及时,也导致很多需求没跟上,对不起各位用户. ArcBruTileBaidu插件有如下几个大的缺陷: 1.    需要下载安装包进行安装,极

从 10.x 到 ArcGIS Pro 的 Python 迁移

与 ArcGIS Pro 结合使用 Python 的方式与包括 ArcGIS Desktop.ArcGIS Server 以及 ArcGIS Engine 在内的其他 ArcGIS 产品不同. 地理处理工具针对 Pro 分析工具可用于突出显示任何妨碍 Python 代码或基于 Python 的地理处理工具运行的问题.针对 Pro 分析工具使用 Python 2to3 实用程序来报告潜在迁移问题以及识别没有迁移到 ArcGIS Pro 的工具和功能. 对 arcpy 中的功能所做的更改 大多数地理