Наборы данных Terrain в базе геоданных в Informix

Наборы данных Terrain – это поверхности, представляющие трехмерное пространство. Они используют измерения (хранящиеся как классы пространственных объектов) и правила для создания пирамид нерегулярной триангуляционной сети (TIN) для воссоздания рельефа.

Источник класса пространственных объектов может быть привязан к наборам данных terrain или внедрен в набор данных terrain.

Для объяснения набора данных terrain см. руководство "Разбираемся с наборами данными terrain". Вы можете начать с раздела Что такое набор данных terrain?

Наборы данных terrain в ArcGIS for Desktop

В дереве каталога наборы данных terrain выглядят аналогично другим наборам классов, но содержат terrain. Наборы данных terrain представляются следующим значком:

В базе геоданных IBM Informix, имя набора данных terrain включает название базы данных, двоеточие (:), имя пользователя, которому принадлежит этот набор данных и собственно имя набора данных terrain.

Например, набор данных terrain napa_terrain, принадлежащий пользователю gis, в базе геоданных gdb обозначается в дереве Каталога как gdb:gis.Napa_terrain.

Для просмотра класса пространственных объектов, участвующих в построении набора данных Terrain, проверьте свойства terrain В следующем примере вы увидите два класса пространственных объектов, участвующих в построении terrain—napa_sub_breaks, napa_sub_clip, а также внедренный класс пространственных объектов napasub.

Источники данных для terrain

Наборы данных terrain в базе геоданных в IBM Informix

Являясь наборами данных, terrain управляются в базе геоданных с использованием таблиц, аналогичных наборам классов объектов, также имеются три специальные terrain таблицы, созданные в схеме пользователя, который создал набор данных terrain. Это следующие таблицы:

dtm_<id>_compositetiles

Составные листы являются неполными, в терминах покрытия данных, по их периметру. Они могут не содержать полностью всех измерений или только близости одного или нескольких углов. Для определения поверхности, покрывающей экстенты этих листов, используются данные из окружающих листов. Данная таблица используется для идентификации листов, которые являются составными, а также предоставление данных для их завершения соседними листами. На один составной лист используется одна запись.

Имя поля

Тип поля

Описание

Null?

id

integer

Уникальный идентификатор формы, указывающей на соседние листы

NOT NULL

tilenr

integer

Номер составного листа

Определяется системой листа набора данных terrain. Для одной записи, содержащей центроиды листов периметра terrain, зарезервировано значение -1.

NOT NULL

emptytile

smallint

Значение -1 указывает, что лист не содержит измерений. Значение 0 указывает, что лист содержит некоторые данные, но не является полным.

NOT NULL

othertiles

st_multipoint

Форма мультиточки хранит центроид листа для каждого окружающего листа, который предоставляет измерения для завершения составного листа

dtm_<id>_dirtyarea

Измененные области представляют собой листы, ставшие недействительными в результате редактирования классов объектов в одном или более участвующих в построении классе пространственных объектов. Данная таблица используется для слежения за недействительными листами, и записи классов объектов, в которых было выполнено редактирование. Для одного класса пространственных объектов, в котором было выполнено редактирование, используется одна запись. Таблица будет пустой только в том случае, если редактирование не выполняется.

Имя поля

Тип поля

Описание

Null?

id

integer

Уникальный идентификатор формы

NOT NULL

classid

integer

Идентификатор класса пространственных объектов, являющегося источником редактирования

NOT NULL

tilecount

integer

Количество измененных листов в процессе редактирования класса пространственных объектов

NOT NULL

dirtyarea

st_multipoint

Форма мультиточки содержит центроиды листов, ставших недействительными в результате редактирования класса пространственных объектов.

NOT NULL

dtm_<id>_embed_#

Таблицы Embed используется для хранения класса объектов мультиточки. Может существовать 0..n embed таблиц. Их наличие зависит от того, имеет ли terrain внедренные данные. Для внедренного класса объектов используется одна таблица. Являясь частью структуры пирамиды таблица embed имеет двойную цель. Внедренные данные группируются по листу и уровню слоя пирамиды.

Имя поля

Тип поля

Описание

Null?

id

integer

Уникальный идентификатор формы

NOT NULL

tilerow

integer

Номер строки листа terrain, которому принадлежат внедренные точки

tilecol

integer

Номер столбца листа terrain, которому принадлежат внедренные точки

resolution

Decimal(32,8)

Указывает уровень или уровни пирамиды, в которых используются точки.

Так как уровни пирамидных слоев являются кумулятивными, данные точки участвуют в уровнях, разрешение которых равно или превосходит их. Специальный случай включает обзор terrain. Разрешение уровня обзора отмечено значением -1. Точки, имеющие данное значение, участвуют в построении всех пирамидных слоев.

pointcount

integer

Число точек в мультиточке

NOT NULL

neighbordata

smallint

Указывает на то, имеются ли точки внутри границы рамки листа; наружные точки используются для обеспечения полного покрытия площади листа. Значение 0 указывает, что точки находятся внутри листа. Значение -1 указывает, что точки находятся снаружи

NOT NULL

shape

st_multipoint

Внедренный тип геометрии мультиточка

dtm_<id>_insidetiles

Таблица InsideTiles используется для записи листов terrain, которые находятся в области данных или зоне интерполяции объекта terrain. Эти данные записываются на уровень пирамиды, так как экстент может изменятся по уровням (например, с использованием различных классов объекта вырезания полигона в различных уровнях пирамиды). Одному уровню пирамиды соответствует одна запись. К ним относятся обзор и уровни полного разрешения.

Имя поля

Тип поля

Описание

Null?

id

integer

Уникальный идентификатор формы

NOT NULL

ztolerance

Decimal(32,8)

Разрешение уровня пирамиды A со значением -1 указывает на уровень обзора.

NOT NULL

insidetiles

st_multipoint

Тип геометрии мультиточка содержит данные о центроидах листа

dtm_<id>_mrfc

MRFC представляет собой структуру пирамиды для невнедренных классов пространственных объектов. Облака точке и вершины линий перегиба для связанных классов пространственных объектов хранятся при условии, что они участвуют в уровне полного разрешения пирамиды (они могут также участвовать и в других уровнях). Данные группируются по листу и уровню слоя пирамиды.

Имя поля

Тип поля

Описание

Null?

id

integer

Уникальный идентификатор формы

NOT NULL

tilerow

integer

Номер строки листа terrain, которому принадлежат внедренные точки

tilecol

integer

Номер столбца листа terrain, которому принадлежат точки пирамиды/вершины

resolution

Decimal(32,8)

Указывает уровень или уровни пирамиды, в которых используются точки.

Так как уровни пирамидных слоев являются кумулятивными, данные точки участвуют в уровнях, разрешение которых равно или превосходит их. Специальный случай включает обзор terrain. Разрешение уровня обзора отмечено значением -1. Точки, имеющие данное значение, участвуют в построении всех пирамидных слоев.

pointcount

integer

Число точек в мультиточке

NOT NULL

neighbordata

smallint

Указывает на то, имеются ли точки внутри границы рамки листа; наружные точки используются для обеспечения полного покрытия площади листа. Значение 0 указывает, что точки находятся внутри листа. Значение -1 указывает, что точки находятся снаружи

NOT NULL

shape

st_multipoint

Тип геометрии мультиточка

dtm_<id>_props

Таблица terrain props используется для хранения свойств отдельного набора данных terrain, характерных для версии. К ним относится число точек и экстент. Информация хранится в таблице BLOB и не доступна для пользователя по всей таблице. Вместо нее для доступа к информации используется ArcObjects API.

Имя поля

Тип поля

Описание

Null?

id

integer

Идентификатор объекта для записи

NOT NULL

properties

BLOB

Хранит свойства набора данных, характерные для версии

Запись также создается в таблице gdb_items для слежения за набором данных terrain. Значение id в именах таблиц terrain получается из поля objectid таблицы gdb_items.

Так как наборы данных terrain являются частью набора классов, то они также отслеживаются в таблице gdb_itemrelationships. Набор классов uuid соответствует originid, а класс пространственных объектов uuid является destid в таблице gdb_itemrelationships. Ниже приведены дополнительные таблицы для набора данных terrain. 2 в примере имен таблиц DTM_* получена из поля objectid таблицы gdb_items.

Таблицы набора данных terrain в Informix

Штриховые линии определяют неявные отношения между столбцами.

Наборы данных Terrain в XML-документе

Наборы данных Terrain указаны в XML-документе типом набора данных ersriDTTerrain.

<DatasetType>esriDTTerrain</DatasetType>

Ниже показана часть XML-документа для набора данных terrain napa_sub. Приведенный ниже фрагмент XML-документа описывает определение набора данных, включая источники данных, до точки описания первого класса пространственных объектов в наборе данных.

<esri:Workspace xmlns:esri="http://www.esri.com/schemas/ArcGIS/10" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <WorkspaceDefinition xsi:type="esri:WorkspaceDefinition">
  <WorkspaceType>esriRemoteDatabaseWorkspace</WorkspaceType> 
  <Version>RJP.WO2557</Version> 
  <Domains xsi:type="esri:ArrayOfDomain" /> 
  <DatasetDefinitions xsi:type="esri:ArrayOfDataElement">
    <DataElement xsi:type="esri:DEFeatureDataset">
      <CatalogPath>/V=RJP.WO2557/FD=gdb:gis.napa_sub</CatalogPath> 
      <Name>gdb:gis.napa_sub</Name> 
      <Children xsi:type="esri:ArrayOfDataElement">
        <DataElement xsi:type="esri:DETerrain">
          <Version>2</Version> 
              <CatalogPath>/V=RJP.WO2557/FD=gdb:gis.napa_sub/TERR=gdb:gis.napa_sub_terrain1</CatalogPath> 
          <Name>gdb:gis.napa_sub_terrain1</Name> 
          <DatasetType>esriDTTerrain</DatasetType> 
          <DSID>2</DSID> 
          <FeatureDatasetName>gdb:gis.napa_sub</FeatureDatasetName> 
          <Versioned>false</Versioned> 
          <CanVersion>false</CanVersion> 
          <ChildrenExpanded>true</ChildrenExpanded> 
          <MetadataRetrieved>false</MetadataRetrieved> 
          <FullPropsRetrieved>true</FullPropsRetrieved> 
          <PyramidType>0</PyramidType> 
          <TileSize>6000</TileSize> 
          <MaxShapeSize>5000</MaxShapeSize> 
          <MaxOverviewSize>50000</MaxOverviewSize> 
          <TerrainDataSources xsi:type="esri:ArrayOfTerrainDataSource">
            <TerrainDataSource xsi:type="esri:TerrainDataSource">
              <Version>1</Version> 
              <FeatureClassID>875</FeatureClassID> 
              <FeatureClassName>gdb:gis.dtm_2_disconnect_3</FeatureClassName> 
              <GroupID>1</GroupID> 
              <SourceStatus>1</SourceStatus> 
              <SourceType>1</SourceType> 
              <SurfaceFeatureType>18</SurfaceFeatureType> 
              <IsBase>true</IsBase> 
              <ApplyToOverview>true</ApplyToOverview> 
              <AutoGeneralize>false</AutoGeneralize> 
              <ResolutionLowerBound>0</ResolutionLowerBound> 
              <ResolutionUpperBound>0</ResolutionUpperBound> 
              <SourceName>napasub_embedded</SourceName> 
              <HeightField>Shape</HeightField> 
              <TagValueField /> 
              <ReservedFields xsi:type="esri:ArrayOfString" /> 
           </TerrainDataSource>
           <TerrainDataSource xsi:type="esri:TerrainDataSource">
              <Version>1</Version> 
              <FeatureClassID>874</FeatureClassID> 
              <FeatureClassName>gdb:gis.napa_sub_breaks</FeatureClassName> 
              <GroupID>2</GroupID> 
              <SourceStatus>1</SourceStatus> 
              <SourceType>0</SourceType> 
              <SurfaceFeatureType>1</SurfaceFeatureType> 
              <IsBase>true</IsBase> 
              <ApplyToOverview>false</ApplyToOverview> 
              <AutoGeneralize>false</AutoGeneralize> 
              <ResolutionLowerBound>0</ResolutionLowerBound> 
              <ResolutionUpperBound>2.6</ResolutionUpperBound> 
              <SourceName /> 
              <HeightField>Shape</HeightField> 
              <TagValueField /> 
              <ReservedFields xsi:type="esri:ArrayOfString" /> 
           </TerrainDataSource>
           <TerrainDataSource xsi:type="esri:TerrainDataSource">
              <Version>1</Version> 
              <FeatureClassID>873</FeatureClassID> 
              <FeatureClassName>gdb:gis.napa_sub_clip</FeatureClassName> 
              <GroupID>3</GroupID> 
              <SourceStatus>1</SourceStatus> 
              <SourceType>0</SourceType> 
              <SurfaceFeatureType>10</SurfaceFeatureType> 
              <IsBase>false</IsBase> 
              <ApplyToOverview>true</ApplyToOverview> 
              <AutoGeneralize>false</AutoGeneralize> 
              <ResolutionLowerBound>0</ResolutionLowerBound> 
              <ResolutionUpperBound>31</ResolutionUpperBound> 
              <SourceName /> 
              <HeightField /> 
              <TagValueField /> 
              <ReservedFields xsi:type="esri:ArrayOfString" /> 
           </TerrainDataSource>
         </TerrainDataSources>
         <TerrainPyramidLevelZTols xsi:type="esri:ArrayOfTerrainPyramidLevelZTol">
           <TerrainPyramidLevelZTol xsi:type="esri:TerrainPyramidLevelZTol">
           <Version>1</Version> 
           <PyramidLevelStatus>1</PyramidLevelStatus> 
           <PointCount>-1</PointCount> 
           <MaxScale>10000</MaxScale> 
           <Resolution>5</Resolution> 
         </TerrainPyramidLevelZTol>
         <TerrainPyramidLevelZTol xsi:type="esri:TerrainPyramidLevelZTol">
           <Version>1</Version> 
           <PyramidLevelStatus>1</PyramidLevelStatus> 
           <PointCount>-1</PointCount> 
           <MaxScale>20000</MaxScale> 
           <Resolution>10</Resolution> 
         </TerrainPyramidLevelZTol>
       </TerrainPyramidLevelZTols>
      </DataElement>
      <DataElement xsi:type="esri:DEFeatureClass">

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

5/10/2014