AddToolbox
Краткая информация
Импортирует заданный набор инструментов в ArcPy, обеспечивая доступ к входящим в этот набор инструментам.
Примечание:
Эта функция эквивалентна функции ImportToolbox.
Обсуждение
Хотя все базовые наборы инструментов ArcGIS доступны в скрипте по умолчанию, пользовательские наборы инструментов или наборы инструментов сторонних разработчиков должны добавляться с помощью ImportToolbox, для того, чтобы использоваться в скрипте.
Другие наборы инструментов различного происхождения могут быть включены в любую из множества папок или баз геоданных. Среди них могут быть наборы инструментов, созданные вами или вашей организацией, а также наборы инструментов, загруженные из ArcGIS Online или других сайтов. В любом случае эти наборы инструментов должны быть импортированы в ArcPy, прежде чем их можно будет использовать как инструменты в Python.
Сервисы геообработки также можно импортировать с использованием точки с запятой в качестве разделителя.
|
Параметр |
Синтаксис |
|---|---|
|
|
|
AddToolbox также поддерживает работу с защищенными сервисами ArcGIS Online с помощью файла подключения к ArcGIS Server (.ags). Использование файла .ags позволяет сохранять в нем учетные данные в скрытом виде.
Для того, чтобы разрешить любому пользователю arcgis.com доступ к вашему инструменту, используйте ключевое слово UseSSOIdentityIfPortalOwned. При выполнении AddToolbox появится диалоговое окно Вход, если вы еще не выполнили вход, иначе вы увидите сообщение об успешной операции.
import arcpy
tbx = "http://logistics.arcgis.com/arcgis/services;World/ServiceAreas;UseSSOIdentityIfPortalOwned"
arcpy.AddToolbox(tbx)
arcpy.ServiceAreas.GenerateServiceAreas()
Примечание:
Будет использовано диалоговое окно Вход, запускающее автономный файл Python.
Если токен ранее уже был получен, он также может использоваться с AddToolbox.
import arcpy
token = 'sadsa213d2j32jsdw02dm2'
referrer = 'http://www.arcgis.com/'
tbx = 'http://logistics.arcgis.com/arcgis/services;' + \
'World/ServiceAreas;token={};{}'.format(token, referrer)
arcpy.ImportToolbox(tbx)
result = arcpy.ServiceAreas.GenerateServiceAreas()
Синтаксис
AddToolbox(input_file, {module_name})
| Параметр | Объяснение | Тип данных |
|---|---|---|
|
input_file |
The geoprocessing toolbox that will be accessed from ArcPy. |
String |
|
module_name |
If the toolbox does not have an alias, the When a tool is accessed through the ArcPy site package, the toolbox alias where the tool is contained is a required suffix ( |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
Module |
Возвращает импортированный модуль. При необходимости имена инструментов можно получить из свойств модуля |
Пример кода
Добавить указанный набор инструментов.
import arcpy
# Import custom toolbox
arcpy.AddToolbox("c:/tools/My_Analysis_Tools.atbx")
try:
# Run tool in the custom toolbox. The tool is identified by the tool name
# and the toolbox alias.
arcpy.myanalysis.GetPoints("c:/data/forest.shp")
except arcpy.ExecuteError:
print(arcpy.GetMessages(2))