Создать домен (Управление данными)

Уровень лицензии:BasicStandardAdvanced

Резюме

Создает атрибутивный домен в указанной рабочей области.

Использование

Синтаксис

CreateDomain_management (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

Тип создаваемого атрибутивного домена. Атрибутивные домены являются правилами, определяющими допустимые значения для поля. Укажите тип поля, соответствующий типу данных того поля, с которым будет связан атрибутивный домен.

  • SHORTЧисленные значения без дробных значений в пределах заданного интервала; кодированные значения.
  • LONGЧисловые значения без дробных значений в пределах заданного интервала.
  • FLOATЧисловые значения с дробными значениями в пределах заданного интервала.
  • DOUBLEЧисловые значения с дробными значениями в пределах заданного интервала.
  • TEXTИмена или другие текстовые значения.
  • DATEДата и/или время.
String
domain_type
(дополнительно)

Тип создаваемого домена:

  • CODEDУстанавливает допустимый набор значений для атрибута. Например, домен кодированных значений может определить допустимые материалы, из которых изготовлены трубы: CL — чугун; DL — железо; ACP — асбест.
  • RANGEУказывает допустимый диапазон значений для числовых атрибутов. Например, в магистральных водопроводах давление должно быть в диапазоне от 50 до 75 psi, и интервальный диапазон можно применить, чтобы установить минимальное и максимальное значения.
String
split_policy
(дополнительно)

Правила разбиения для созданного домена. Поведение значений атрибутов, если разбитый пространственный объект контролируется правилами разбиения.

  • DEFAULTАтрибуты двух итоговых пространственных объектов представляют собой значение по умолчанию, заданное для данного класса пространственных объектов или подтипа.
  • DUPLICATEАтрибут двух итоговых пространственных объектов представляет собой копию значения атрибута исходного объекта.
  • GEOMETRY_RATIOАтрибуты итоговых пространственных объектов представляют собой пропорцию значения исходного объекта. Пропорция вычисляется на основании разбиения исходного объекта. Если исходный объект разделяется на геометрически равные части, значение атрибута каждого из результирующих объектов будет равно половине значения исходного объекта. Правило Геометрическая пропорция применяется только к интервальным доменам.
String
merge_policy
(дополнительно)

Правила слияния для созданного домена. Если два пространственных объекта сливаются в один, правила слияния контролируют атрибутивные значения в новом пространственном объекте.

  • DEFAULTАтрибут итогового пространственного объекта использует значение по умолчанию, заданное для данного класса пространственных объектов или подтипа. К нечисловым полям и доменам кодированных значений применяются только это правило слияния.
  • SUM_VALUESАтрибут итогового пространственного объекта представляет собой сумму значений атрибута исходного объекта. Правило применяется только для интервальных доменов.
  • AREA_WEIGHTEDАтрибут итогового пространственного объекта представляет собой взвешенное среднее значений атрибутов исходных пространственных объектов. Это вычисление основано на геометрических характеристиках исходных пространственных объектов. Это правило применяются только к интервальным доменам.
String

Пример кода

Создать домен.Пример (окно Python)

Пример скрипта Python для выполнения функции Создать домен (Create Domain) с запуском из окна Python в ArcGIS.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.CreateDomain_management("montgomery.gdb", "Materials", "Valid pipe materials", "TEXT", "CODED")
Создать домен.Пример 2 (автономный скрипт)

Пример скрипта Python для рабочего процесса создания атрибутивного домена и добавления в него значений.Функция Создать домен (Create Domain).

# Name: MakeDomain.py
# Description: Create an attribute domain to constrain pipe material values
# Author: ESRI
 
#Import system modules
import arcpy
from arcpy import env
 
try:
    # Set the workspace (to avoid having to type in the full path to the data every time)
    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, e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "Line %i" % tb.tb_lineno
    print e.message

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
9/10/2013