При создании нового класса пространственных объектов, необходимо задать несколько свойств класса объектов, определяющих его структуру.
В большинстве случаев наилучшим вариантом будет принять для этих параметров значения по умолчанию. Тем не менее, в этом разделе описывается каждый параметр класса пространственных объектов, таким образом, чтобы вы узнали, когда и почему следует использовать параметры по умолчанию, а когда их следует изменить, и как это отразится на ваших данных.
При создании соответствующего класса пространственных объектов, подходящего для вашей модели данных, следует принимать во внимание следующие свойства класса объектов.
Имя и псевдоним
Имя класса пространственных объектов является уникальным значением, определяющим этот класс пространственных объектов. Наиболее распространенный способ – использовать в названии сочетание заглавных и прописных букв или соединять слова символом подчеркивания, например: "MajorRoads" или "Major_Roads".
Создавая класс пространственных объектов, необходимо дать ему название, указывающее, какие именно данные хранятся в этом классе. Названия классов пространственных объектов в базе данных или базе геоданных должны быть уникальными – они не должны повторяться. Наличие двух классов с одинаковыми названиями в одной базе геоданных, пусть даже в разных наборах, недопустимо.
Имя класса пространственных объектов, указанное при его создании, выглядит иначе при отображении в базе данных или в базе геоданных. База данных или база геоданных добавляет к имени класса имя схемы, в которой хранится класс пространственных объектов. Во всех базах данных, кроме Oracle, к имени класса также добавляется и имя базы данных. Такое имя называется полным именем класса пространственных объектов. Например, если пользователь Werther создает класс пространственных объектов под названием alpacas в базе данных spdata, полное имя класса пространственных объектов в будет spdata.werther.alpacas.
Другие пользователи тоже могут создавать в этой базе геоданных свои классы пространственных объектов с именем alpacas, так как к создаваемым классам пространственных объектов будут также добавляться имена создавших их пользователей. Например, если пользователь Gretchen создаст свой класс пространственных объектов alpacas, его полным именем будет spdata.gretchen.alpacas.
Но все же не рекомендуется создавать классы пространственных объектов с одинаковыми названиями, даже если они хранятся в разных схемах и базах данных. В данном примере, в обоих классах пространственных объектов содержится информация об альпаках, поэтому нет смысла создавать два разных класса пространственных объектов. Если данные в классах пространственных объектов действительно различаются, это должно быть отражено в названиях этих классов.
Правила и ограничения для названий таблиц и классов объектов
В таблице ниже приведены правила поддерживаемых названий таблиц и классов объектов:
Символ | Начало имени | Другая позиция | В псевдониме |
---|---|---|---|
Буквы (A–Z) | |||
Нижнее подчеркивание ( _ ) | |||
Цифры (0-9) | |||
Пробелы | |||
Символы (отличные от нижнего подчеркивания) | |||
Надстрочные буквы и цифры | |||
Подстрочные буквы и цифры |
Дополнительные правила и ограничения для названий таблиц и классов объектов:
- Имена таблиц и классов объектов не могут включать зарезервированные слова, такие как select или add. Список зарезервированных слов см. в документации к СУБД.
- Не поддерживаются названия таблиц и классов пространственных объектов, начинающиеся с префикса:
- gdb_
- sde_
- delta_
- Длина имени классов пространственных объектов и таблиц зависит от используемой базы данных. Дополнительную информацию об ограничениях имен со стороны базы данных см. в разделах Ограничения в именах и размерах для файловой базы геоданных, Ограничения в именах и размерах для мобильной базы геоданных или Данные базы данных и ArcGIS.
Примечание:
См. Имена полей для получения подробной информации о переименовании полей и правил и ограничений в именах полей.
Псевдонимы
При создании таблицы или класса пространственных объектов в базе геоданных можно сразу присвоить им псевдоним. Псевдоним – это альтернативное название. Если присвоить псевдоним классу пространственных объектов или таблице, то именно под этим названием пользователи увидят их, добавив на карту. Истинное имя таблицы или класса объектов всегда можно посмотреть на закладке Источник в диалоговом окне Свойства.
Когда вы создаете новый класс пространственных объектов или таблицу в базе геоданных с помощью инструментов геообработки, параметр для задания псевдонима отсутствует. Однако вы можете настроить псевдоним для класса объектов или таблицы на вкладе Источник в диалоговом окне Свойства.
- Щелкните правой кнопкой мыши на классе объектов или таблице на панели Каталог.
- Щелкните Свойства.
- Щёлкните на вкладке Источник.
- Щелкните свойство Псевдоним, чтобы включить правку имени.
- Введите псевдоним и щелкните OK, чтобы задать его для таблицы или класса объектов.
Типы классов пространственных объектов
Векторные объекты (географические объекты с векторной геометрией) разносторонние и являются часто используемыми географическими типами данных, хорошо подходящими для представления объектов с дискретными границами, например улицы, административные границы и земельные участки. Пространственный объект – это объект, который хранит свое географическое представление, представленное обычно в виде точки, линии или полигона, в качестве одного из свойств (полей) в строке. В ArcGIS классы пространственных данных – однотипные совокупности объектов с общим пространственным представлением и набором атрибутов, хранящиеся в таблице базы данных, например, класс линейных объектов, представляющий осевые линии дорог.
Примечание:
При создании класса пространственных объектов вам понадобится задать тип пространственных объектов для класса (точечный, многоточечный, полилинейный или мультипатч).
Как правило, классы пространственных объектов являются тематическими наборами точек, линий или полигонов, но в действительности существует несколько типов классов пространственных объектов. Первые три поддерживаются в базах данных и базах геоданных. Остальные четыре поддерживаются только в базах геоданных.
- Точки являются пространственными объектами, которые слишком малы, чтобы обозначать их линиями или полигонами, а также представляют точечные местоположения (подобные точкам съемки GPS).
- Линии - геометрически отображают расположение таких географических объектов, как осевые линии дорог или ручьи, слишком узких, чтобы их можно было показать полигонами. Линии также используются для представления объектов, имеющих длину и не имеющих площади, например, изолиний и границ.
- Полигоны - набор многосторонних площадных объектов, представляющих форму и местоположение однородных типов пространственных объектов, таких как административные районы, округа, участки земли, типы почвы и зоны землепользования.
- Аннотация - текст карты, в том числе свойства отображения текста. Например, помимо текстовой строки каждой аннотации, там хранятся и другие свойства, такие как точки фигуры для размещения текста, его шрифт и размер в точках, а также другие свойства отображения. Аннотация может также быть связанной с надписываемыми объектами и может содержать подклассы.
- Измерения - особый тип аннотаций, которые отображают длины и расстояния, например, длины сторон контуров зданий или земельных участков либо расстояния между двумя объектами. Размеры чаще всего используются для дизайнерских и инженерных задач в ГИС.
- Мультиточки - объекты, состоящие из нескольких точек. Мультиточки часто используются для управления массивами очень больших совокупностей точек, таких как, например, кластеры точек LiDAR, которые могут содержать миллиарды пунктов. Использование одной записи для такой точечной геометрии недопустимо. Объединение таких данных в группы записей объектов-мультиточек предоставляет возможность базе геоданных управлять массивными наборами точек.
- Мультипатч - трехмерная геометрия, используемая для отображения внешней поверхности или оболочки объектов, которые занимают определенный объем в трехмерном пространстве. Мультипатчи состоят из плоских 3D колец и треугольников, используемых в различных сочетаниях, для моделирования трехмерной оболочки. Вы можете использовать мультипатчи для показа чего угодно - от таких простых объектов, как сферы и кубы, до таких сложных объектов, как уровневые поверхности и здания.
- 3D-объект - 3D-геометрия, предназначенная для углубленной поддержки 3D-формата, например, материалов оболочки элементов, которые занимают определенный объем в трехмерном пространстве. Вы можете использовать 3D-объекты для высокодетального отображения материалов, поддерживающего такие эффекты, как блеск и шероховатость. Вы можете использовать их для простых объектов, таких как сферы и кубы, а также сложных структур, например, изо-поверхностей и строительных материалов. В 3D-объектах используются расширенные связанные таблицы для хранения нескольких компонентов материалов. Эти таблицы вместе с плоскими трехмерными кольцами и треугольниками используются для моделирования трехмерной оболочки.
Свойства геометрии
При создании нового класса пространственных объектов, вы можете разрешить использование координат для хранения значений результатов измерений (M) или Z значений для трехмерных данных.
Необходимость M и Z значений определяется типом используемых данных.
Включив в данные m-значения разрешаете хранение атрибутивных значений в вершинах координат точек. Если используется система линейных координат, m-значения хранят результаты измерений на вершинах вдоль линейных объектов. Это позволяет находить нужную точку на линии. Если вы собираетесь использовать системы линейных координат или динамическую сегментацию, необходимо включить M значения.
Z-значения используются для отображения высоты или другого атрибута поверхности. В моделях высот или terrain, Z значения обозначают высоту. В других типах моделей поверхностей они могут выражать плотность или другой количественный атрибут, например, годовую сумму осадков, численность населения и т. д. Если вы собираетесь моделировать высоты, строить наборы данных terrain или работать с любыми трехмерными поверхностями, обязательно включите Z-значения.
Система координат
При создании нового класса пространственных объектов необходимо выбрать или, возможно, создать систему координат. Система координат, вместе со значениями допуска и разрешения, составляет пространственную привязку класса пространственных объектов. Пространственная привязка описывает расположение объектов карт в реальном мире.
Систему координат для нового класса пространственных объектов можно определить несколькими способами:
- Выбрать одну из готовых систем координат, имеющихся в ArcGIS. Перейти к географической системе координат или системе координат проекции, соответствующей району, представленному в вашей модели данных.
- Импортировать параметры системы координат, используемой другим классом пространственных объектов. Если вы хотите использовать систему координат другого класса объектов в качестве шаблона, вы можете найти ее и импортировать.
- Задать новую систему координат. Вы можете ввести собственные значения и создать систему координат, отвечающую вашим задачам.
Если вы используете Z значения, необходимо определить также вертикальную систему координат. Вертикальная система координат (VCS) привязывает в пространстве z-значения, чаще всего использующиеся для обозначения высот. Вертикальная система координат включает геодезический или вертикальный датум, линейные единицы измерения, угловое направление и вертикальное смещение.
У M-значений нет системы координат.
Если ваши данные не имеют системы координат или вы не знаете, какую систему координат использовать, вы можете указать, что система координат "неизвестна".
Вы также можете отредактировать свойства имеющейся системы координат, скопировав и изменив ее.
Более подробно о картографических проекциях и системах координат
Допуск
Пространственная привязка в базе геоданных также включает значения допуска, , x-,y-, z-и m-координат, у каждого из которых есть связанные значения допуска, отражающие точность данных координат. Значение допуска является минимальным расстоянием между координатами. Если координаты одной точки отличаются от координат другой на меньшее расстояние, чем указано в допуске, они рассматриваются как одна точка. Это значение используется в операциях топологии и при связывании для определения минимально допустимого расстояния, при котором координаты считаются совпадающими.
Допуск по умолчанию равен 0,001 м или эквиваленту этого значения в единицах карты. Это в 10 раз превышает значение разрешения по умолчанию и рекомендуется в большинстве случаев. Минимально допустимое значение допуска должно в два раза превышать значение разрешения. Установка более высокого значения допуска приводит к снижению точности координатных данных, установка более низкого значения повышает точность.
Примечание:
Различные значения допуска могут привести к получению различных результатов в операциях топологии и связывания. Например, два объекта могут считаться не соединяющимися (нет общих точек) при минимальном допуске, но при увеличении допуска они будут классифицированы как касающиеся друг друга.
Подсказка:
Свойства допуска можно задать на вкладке Настройки среды инструмента Создать класс пространственных объектов.
Разрешение и экстент домена
Все координаты класса пространственных объектов или набора классов объектов привязываются в пространстве согласно выбранной системе координат, а затем привязываются к сетке. Параметры сетки определяются разрешением, которое задает точность (т. е. количество значимых цифр) значений координат. Разрешение определяет размер ячеек сетки, которая соответствует экстенту класса пространственных объектов или наборов классов. Все координаты замыкаются на сетке, а разрешение определяет расстояние между отдельными линиями на сетке.
Единицы значений разрешения соответствует единицам системы координат. Например, если пространственная привязка использует систему координат проекции, единицами измерения которой являются метры, значение разрешения также будет выражаться в метрах. Используйте значение разрешения, которое в 10 раз меньше значения допуска.
Значение разрешения по умолчанию (рекомендуемое) составляет 0,0001 метра (1/10 мм) или эквивалент этого значения в единицах карты.
Например, если класс пространственных объектов использует футы (проекция State Plane), значение по умолчанию составит 0.0003281 фута (0.003937 дюйма). Если координаты имеют широту и долготу, стандартное разрешение составляет 0,000000001 градусов.
Для неизвестной системы координат или для M значений следует установить значение разрешения с учетом типа данных без явного указания единиц измерения.
Подсказка:
Свойства разрешения и доменов можно задать на вкладке Настройки среды инструмента Создать класс пространственных объектов.
Ключевые слова конфигурации
Ключевые слова конфигурации можно задавать при создании таблицы или класса объектов для настройки способа хранения данных. Параметры конфигурации группируются в одно или несколько ключевых слов конфигурации, одно из которых используется по умолчанию. С их помощью задаются параметры хранения.
В большинстве случаев используется ключевое слово DEFAULT. Однако, в некоторых случаях, при создании определенных наборов данных, можно указывать другие ключевые слова конфигурации, что позволит увеличить производительность обработки данных или оптимизировать некоторые параметры их хранения в базе данных.
Ниже приведены несколько примеров использования ключевых слов конфигурации:
- DEFAULT – это ключевое слово использует конфигурацию по умолчанию, оптимально подходящую для большинства баз геоданных.
- MAX_FILE_SIZE_256TB— при импорте очень большого изображения в файловую базу геоданных, можно указать ключевое слово конфигурации MAX_FILE_SIZE_256TB, которое сообщит базе геоданных о том, что необходимо разрешить хранение набора растровых данных с размером до 256 терабайт.
- TEXT_UTF16 – при копировании класса пространственных объектов, содержащего китайские иероглифы, в файловую базу геоданных, вы можете выбрать ключевое слово TEXT_UTF16. Тогда текстовые знаки атрибутов будут сохранены в кодировке UTF-16, в которой китайские иероглифы хранятся более эффективно.
Более подробно о ключевых словах конфигурации в файловой базе геоданных
Более подробно о ключевых словах конфигурации в многопользовательской базе геоданных
Поля и свойства полей
Когда вы создаете класс объектов, используя мастер Создание пространственных объектов или инструмент Создать класс объектов, в класс добавляются только поля, обслуживаемые базой геоданных. Вы можете добавить собственные поля, используя представление полей. Представление полей позволяет задавать такие свойства полей, как тип поля и максимальный размер данных, которое может хранить поле.
Все поля имеют одинаковые свойства, например, такие как:
- Alias – альтернативное имя поля класса пространственных объектов. В отличие от настоящего имени, псевдоним не зависит от ограничений базы геоданных и может содержать пробелы, специальные символы, и начинаться с цифры. Вы можете указать псевдонимы полей только для классов пространственных объектов в базах геоданных.
- Allow Nulls – контролирует, установлено ли ограничение NOT NULL при создании поля. Если для свойства Разрешить значения NULL задано значение Нет, определение поля в базе геоданных будет содержать ограничивающее условие NOT NULL. Если оставить значение по умолчанию Да, поле будет NULLABLE (возможны значения NULL).
Примечание:
Особенность модели базы геоданных такова, что могут вставляться пустые значения (числовые = 0, текстовые = "") вместо значений NULL в базе данных исключительно в том случае, когда для поля установлено ограничение NOT NULL.
- Default Value – вы можете задавать значения, которые будут автоматически присваиваться новым объектам, создаваемым с помощью инструментов редактирования ArcMap . Значения по умолчанию можно задавать только для классов пространственных объектов в базах геоданных.
- Length – это свойство текстового поля, определяющее максимальное количество знаков, которое оно может содержать.
Все классы пространственных объектов имеют набор обязательных полей, которые необходимы для записи состояния конкретного объекта в классе. Эти обязательные поля создаются автоматически при создании нового класса пространственных объектов и удалить их нельзя. Обязательные поля могут также иметь обязательные параметры, например, свойства домена. Вы не можете изменить обязательный параметр такого поля.
Например, в классе полигональных объектов, поля OBJECTID и SHAPE являются обязательными. У них есть свойства, которые вы можете изменить, например, тип геометрии, но удалить эти поля нельзя.
При создании класса линейных объектов в базе геоданных в класс пространственных объектов автоматически добавляется дополнительное поле для записи значений длины линии. При создании класса полигональных объектов в базе геоданных в класс пространственных объектов автоматически добавляется два дополнительных поля для записи значений длины (периметра) и площади всех полигональных объектов. Единицы измерения для этих значений зависят от пространственной привязки, определенной для класса пространственных объектов. Имена этих полей варьируются в зависимости от базы данных и используемого пространственного типа. Эти поля являются обязательными и не могут быть изменены.
Определенные названия полей будут отображаться в ArcGIS под своими полными именами, если это классы пространственных объектов, хранящиеся в многопользовательской базе геоданных. Например, если вы создаете или импортируете полигональный класс пространственных объектов, содержащий поле с названием Area, к нему будет добавлено название базы данных, схемы и класса объектов. Именно это название будет отображаться в таблице атрибутов класса пространственных объектов. Это означает, что в полигональном классе пространственных объектов с именем archsites, хранящемся в схеме prof базы данных museum, имя поля Area будет выглядеть следующим образом:
MUSEUM.PROF.ARCHSITES.AREA
Ниже приведен список полей, которые имеют полные имена в многопользовательской базе геоданных:
- FID
- AREA
- LEN
- POINTS
- NUMOFPTS
- ENTITY
- EMINX
- EMINY
- EMAXX
- EMAXY
- EMINZ
- EMAXZ
- MIN_MEASURE
- MAX_MEASURE
В подобных случаях вам следует подумать об использовании других слов в качестве псевдонимов полей.
Импорт полей
При создании класса пространственных объектов можно воспользоваться импортом полей из другого класса объектов или таблицы. Эта опция позволяет использовать другой класс пространственных объектов или таблицу в качестве шаблона определений полей. После импорта полей вы можете отредактировать их имена, типы данных и другие параметры.
Импорт полей при создании нового класса объектов не влияет на обязательные поля. Например, если вы задали Точки в качестве типа геометрии для нового класса пространственных объектов, импорт определений полей из класса объектов, в котором для поля SHAPE установлен тип геометрии Полигон, не перезапишет тип геометрии в классе точечных объектов.
Модель разбиения
При создании линейного или полигонального класса объектов по умолчанию для него будет задана модель разбиения. Модель разбиения используется для определения того, как геометрия и атрибуты объектов в таблице будут разделяться, если в ходе процесса редактирования объект будет разбит.
Для модели разбиения можно задать два варианта поведения:
- Обновить/Вставить (по умолчанию)
- Удалить/Вставить/Вставить
Прямые слэши в имени модели разбиения представляют упорядоченный список операций, которые происходят с объектом в ходе процесса разбиения. Обновить/Вставить - это модель разбиения по умолчанию, чаще всего используют именно ее. Модель разбиения Удалить/Вставить/Вставить подходит в случаях, когда у вас особые требования к модели, например, соответствие определенному формату совместимости и конвертации данных, при котором разбиение должно идентифицироваться как удаление исходного объекта.
В дополнение к определению модели разбиения класса объектов вы также можете задать правила разбиения для класса объектов. Правила разбиения класса объектов используются для определения того, как будут обработаны связанные записи в таблице назначений, когда объект в исходном классе объектов будет разбит в ходе процесса редактирования. В зависимости от типа класса отношений, простого или составного, если разные варианты поведения правил разбиения, в том числе По умолчанию (простой), По умолчанию (составной) и Дублировать связанные объекты.
См. Правила разбиения класса отношений для получения более подробной информации о настройке и использования этого свойства класса отношений.
Настроить модель разбиения для класса объектов можно с помощью одного из двух методов:
- Свойства класса объектов – на вкладке Источник в диалоговом окне Свойства класса объектов пролистайте до Модели разбиения. Если нажать на ячейку рядом с Моделью разбиения, появится ниспадающий список. При выборе модели разбиения из списка будут заполнены параметры инструмента Задать модель разбиения класса пространственных объектов, а затем он запустится в фоновом режиме.
- Инструмент Задать модель разбиения класса пространственных объектов – используйте инструмент геообработки Задать модель разбиения класса пространственных объектов , чтобы изменить модель разбиения.
Примечание:
Если входной класс объектов хранится в многопользовательской базе геоданных, для использования инструмента необходимо подключиться к ней как владелец данных.
Обновить/Вставить
По умолчанию при создании классов объектов для них задается модель разбиения Обновить/Вставить. Поэтому в случае, когда в ходе редактирования происходит разбиение объекта из этого класса, исходный объект обновляется, им становится большая часть исходного объекта, а меньшая часть в виде нового объекта вставляется как новая строка в таблицу.
Пример (Обновить/Вставить):
На рисунке ниже показано состояние до и после, когда единая линия кабеля, OBJECTID 2 разбивается в классе объектов, для которого задана модель разбиения по умолчанию Обновить/Вставить. Перед разбиением выбрана первая строка, OBJECTID 2, а для разбиения выбран инструмент редактирования Разбить. После разбиения обратите внимание на первую строку, OBJECTID 2, геометрия которой сохраняется, а значение атрибута OBJECTID будет обновлено. Таким образом показано, что OBJECTID 2 после разбиения содержит большую часть объекта, а меньший объект будет вставлен в таблицу как новая строка со значением OBJECTID 5. После разбиения у объектов OBJECTID 2 и OBJECTID 5 суммарная длина будет равна общей исходной длине OBJECTID 2 до разбиения.
Удалить/Вставить/Вставить
Если для класса объектов модель разбиения задана как Удалить/Вставить/Вставить, то в ходе процесса редактирования объекта в этом классе операция разбиения приведет к удалению исходного объекта, а обе новые части разбитого объекта будут вставлены как две новых строки в таблице.
Примечание:
Любой класс объектов с моделью разбиения Удалить/Вставить/Вставить не будет открываться в версиях ранее ArcGIS Pro 2.6 или ArcGIS Enterprise 10.8.1.
Пример (Удалить/Вставить/Вставить):
На рисунке ниже показано состояние до и после, когда единая линия кабеля, OBJECTID 2 разбивается в классе объектов, для которого задана модель разбиения по умолчанию Обновить/Вставить. Перед операцией разбиения был запущен инструмент Задать модель разбиения класса объектов , который выполнялся для изменения модели разбиения на Удалить/Вставить/Вставить. Перед разбиением выбрана первая строка, OBJECTID 2, а для разбиения выбран инструмент редактирования Разбить. После разбиения обратите внимание на первую строку, OBJECTID 2, которая удалится, а также будут вставлены две новых строки, OBJECTID 6 и OBJECTID 7. После разбиения будет вставлены два новых объекта, общая длина которых будет соответствовать длине исходного объекта.
Внимание:
Если для класса объектов, зарегистрированного как версионный, задана модель разбиения Удалить/Вставить/Вставить, а один и тот же объект будет разбит по-разному в двух версиях, например, в версии по умолчанию и в дочерней, то конфликт не будет показан, поскольку исходный объект будет удален, а вместо него будет вставлено два новых. Таким образом, при согласовании дочерняя версия будет содержать все варианты разбитого объекта. Если же используется модель разбиения по умолчанию Обновить/Вставить, то если один и тот же объект будет разбит по разному в двух версиях, появится конфликт обновить/обновить, сообщающий пользователю о том, что сделанная правка была некорректной.
Свойства класса пространственных объектов
Модель разбиения для класса объектов можно узнать на вкладке Источник в диалоговом окне Свойства класса объектов, если пролистать его до раздела Модель разбиения.