Краткая информация
Создает атрибутивный домен в указанной рабочей области.
Использование
- Управление доменами включает следующие шаги: - Создать домен с помощью этого инструмента.
- Добавить значения или установить диапазон значений с помощью инструмента Добавить кодированное значение к домену (Add Coded Value to Domain) или инструмента Установить значение для интервального домена (Set Value For Range Domain).
- Связать домен с классом пространственных объектов с помощью инструмента Назначить домен полю (Assign Domain To Field).
 
- Домены кодированных значений поддерживают только значения по умолчанию и повторяющиеся правила разбиения и значения по умолчанию правил объединения. 
- Интервальные домены поддерживают все правила разбиения и объединения. После операций Разбить (Split) или Слияние (Merge), атрибутивные значения выходных объектов вычисляются на основе числовых полей входных объектов и указанного правила слияния или разбиения. 
- Доменами рабочих областей можно также управлять в ArcCatalog или в окне Каталога. Домены можно создать и изменить на вкладке Домены диалогового окна Свойства базы данных dialog box. 
Синтаксис
CreateDomain(in_workspace, domain_name, {domain_description}, {field_type}, {domain_type}, {split_policy}, {merge_policy})| Параметр | Объяснение | Тип данных | 
| in_workspace | База геоданных, которая будет содержать атрибутивный домен. | Workspace | 
| domain_name | Имя создаваемого домена. | String | 
| domain_description (Дополнительный) | Описание создаваемого домена. | String | 
| field_type (Дополнительный) | Тип создаваемого атрибутивного домена. Атрибутивные домены являются правилами, определяющими допустимые значения для поля. Укажите тип поля, соответствующий типу данных того поля, с которым будет связан атрибутивный домен. 
 | String | 
| domain_type (Дополнительный) | Тип создаваемого домена: 
 | String | 
| split_policy (Дополнительный) | Правила разбиения для созданного домена. Поведение значений атрибутов, если разбитый пространственный объект контролируется правилами разбиения. 
 | String | 
| merge_policy (Дополнительный) | Правила слияния для созданного домена. Если два пространственных объекта сливаются в один, правила слияния контролируют атрибутивные значения в новом пространственном объекте. 
 | String | 
Пример кода
Пример 1 функции Create Domain (окно Python)
Пример скрипта Python для выполнения функции Создать домен (Create Domain) с запуском из окна Python в ArcGIS.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CreateDomain_management("montgomery.gdb", "Materials", "Valid pipe materials", "TEXT", "CODED")
Пример 2 функции Create Domain (автономный скрипт)
Пример скрипта Python для рабочего процесса создания атрибутивного домена и добавления в него значений.Функция Создать домен (Create Domain).
# Name: MakeDomain.py
# Description: Create an attribute domain to constrain pipe material values
 
#Import system modules
import arcpy
 
try:
    # Set the workspace (to avoid having to type in the full path to the data every time)
    arcpy.env.workspace = "C:/data"
 
    # Set local parameters
    domName = "Material4"
    gdb = "montgomery.gdb"
    inFeatures = "Montgomery.gdb/Water/Distribmains"
    inField = "Material"
 
    # Process: Create the coded value domain
    arcpy.CreateDomain_management("montgomery.gdb", domName, "Valid pipe materials", "TEXT", "CODED")
    
    #Store all the domain values in a dictionary with the domain code as the "key" and the 
    #domain description as the "value" (domDict[code])
    domDict = {"CI":"Cast iron", "DI": "Ductile iron", "PVC": "PVC", \
                "ACP": "Asbestos concrete", "COP": "Copper"}
    
    # Process: Add valid material types to the domain
    #use a for loop to cycle through all the domain codes in the dictionary
    for code in domDict:        
        arcpy.AddCodedValueToDomain_management(gdb, domName, code, domDict[code])
    
    # Process: Constrain the material value of distribution mains
    arcpy.AssignDomainToField_management(inFeatures, inField, domName)
 
except Exception as err:
    print(err.args[0])
Параметры среды
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да