Jeux de données de MNT d'une géodatabase dans PostgreSQL

Les jeux de données de MNT sont des surfaces qui représentent un espace en trois dimensions. Ils utilisent des mesures (stockées comme classes d'entités) et des règles pour générer des pyramides de TIN (triangular irregular network) permettant de représenter les altitudes.

Les classes d'entités source peuvent être référencées par le jeu de données de MNT ou être encapsulées dans le jeu de données de MNT.

Pour plus d'explications sur les jeux de données de MNT, reportez-vous aux rubriques correspondantes du livre Présentation des jeux de données de MNT. Vous pouvez commencer par la rubrique Qu'est-ce qu'un jeu de données de MNT ?

MNT dans ArcGIS Desktop

Dans l'arborescence du Catalogue, les jeux de données de MNT sont identiques à tout autre jeu de classes d'entités, mais ils contiennent un MNT. Les MNT sont représentés avec l'icône suivante :

Le nom d'un jeu de données de MNT dans une géodatabase PostgreSQL contient le nom de la base de données, le nom du propriétaire du localisateur et le nom du localisateur même.

Par exemple, un jeu de données de MNT nommé topography_terrain, dont le propriétaire serait sasha et qui se trouverait dans une géodatabase nommée m8db serait désigné m8db.sasha.topograhy_terrain dans l'arborescence du catalogue.

Vous pouvez voir les classes d'entités participant au terrain, topo_break_lines, topo_clip_poly, topo_mass_points et topo_water_poly. Pour savoir si le jeu de données de MNT comprend des classes d'entités encapsulées, vérifiez les propriétés de MNT. Cliquez avec le bouton droit de la souris sur le MNT et sélectionnez l'onglet Sources de données. Ceci permet d'afficher l'ensemble des classes d'entités utilisées pour la création du MNT. Dans cet exemple, aucune classe d'entités encapsulée n'a été utilisée pour la création du MNT. Dans le cas contraire, une classe d'entités supplémentaire non visible dans le jeu de données d'entité dans l'arborescence du Catalogue aurait été affichée avec une valeur Oui dans la colonne Intégré de la boîte de dialogue Propriétés du MNT.

Propriétés de source de données de MNT
La boîte de dialogue propriétés de Source de données de MNT affiche les classes d'entités utilisées comme source de données pour un MNT.

MNT dans une base de données PostgreSQL

Comme tous les jeux de données, les jeux de données de MNT sont gérés dans la géodatabase dans les mêmes tables que les jeux de classes d'entités ; de plus, des tables spécifiques aux MNT sont créées dans la structure de l'utilisateur ayant créé le jeu de données de MNT. Il s'agit des tables suivantes :

dtm_<id>_compositetiles

Les tuiles composites sont incomplètes, en termes de couverture de données, autour de leur périmètre. Un vide de mesures complet ou à proximité d'un ou plusieurs angles pourrait exister. Les données des tuiles voisines permettent de définir une surface couvrant l'étendue de ces tuiles. Cette table permet d'identifier les tuiles composites et les tuiles avoisinantes pouvant fournir des données pour les compléter. Elle comprend une entrée par tuile composite.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant unique de la forme pointant vers les tuiles voisines

NOT NULL

tilenr

integer

Numéro de la tuile composite

Défini par le système de tuiles du MNT. La valeur -1 est réservée à l'enregistrement qui contient les centroïdes des tuiles de périmètre du MNT.

NOT NULL

emptytile

smallint

La valeur -1 indique que la tuile est vide de toute mesure. La valeur 0 indique que la tuile a des données mais est incomplète.

NOT NULL

othertiles

st_geometry

Forme multi-points stockant le centroïde de chaque tuile avoisinante pouvant fournir des mesures pour compléter la tuile composite

dtm_<id>_dirtyarea

Les zones à valider sont des tuiles invalidées suite aux modifications apportées aux entités d'une ou de plusieurs classes d'entités participantes. Cette table permet d'assurer un suivi de ces tuiles invalidées et d'enregistrer dans quelles classes d'entités les modifications ont eu lieu. Elle comprend une entrée par classe d'entités ayant été modifiée. Si aucune modification n'a été effectuée, cette table est vide.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant unique de la forme

NOT NULL

classid

integer

Identifiant de classe de la classe d'entités à l'origine des mises à jour

NOT NULL

tilecount

integer

Nombre de tuiles à valider suite aux mises à jour apportées à la classe d'entités

NOT NULL

dirtyarea

st_geometry

Forme multi-points comprenant les centroïdes des tuiles à valider suite aux mises à jour apportées à la classe d'entités

NOT NULL

dtm_<id>_embed_#

Les tables encapsulées permettent de stocker les classes d'entités multi-points encapsulées. Il peut y avoir entre 0 et n tables encapsulées. Elles n'existent que si le MNT a des données encapsulées. Chaque table correspond à une classe d'entités encapsulée. Une table encapsulée sert également comme partie de la structure pyramidale du MNT. Les données encapsulées sont regroupées par tuile et par niveau de pyramide.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant unique de la forme

NOT NULL

tilerow

integer

Numéro de ligne de la tuile de MNT à laquelle appartiennent les points encapsulés

tilecol

integer

Numéro de colonne de la tuile de MNT à laquelle appartiennent les points encapsulés

resolution

numeric(38,8)

Indique à quel(s) niveau(x) de pyramide les points sont utilisés

Les niveaux de pyramide étant cumulatifs, les points participent aux niveaux de résolution égale ou supérieure à la leur. La vue d'ensemble de MNT est un cas particulier. La résolution du niveau de vue d'ensemble est indiquée par une valeur de -1. Les points attribués à cette valeur participent dans toute la pyramide.

pointcount

integer

Nombre de points du multi-points

NOT NULL

neighbordata

smallint

Indique si les points sont à l'intérieur du cadre de la tuile ; les points extérieurs permettent d'assurer une couverture complète de la surface de la tuile. La valeur 0 indique que les points sont à l'intérieur de la tuile. La valeur -1 indique qu'ils sont à l'extérieur.

NOT NULL

shape

st_geometry

Géométrie multi-points encapsulée

dtm_<id>_insidetiles

La table InsideTiles permet d'enregistrer quelles tuiles sont dans la zone de données ou dans la zone d'interpolation du MNT. Cette donnée est enregistrée par niveau de pyramide car l'étendue peut différer selon le niveau (en fonction de l'utilisation de différentes classes d'entités surfaciques de découpage selon les niveaux, par exemple). Chaque niveau de pyramide correspond à une entrée, y compris la vue d'ensemble et le niveau de résolution maximale.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant unique de la forme

NOT NULL

ztolerance

numeric(38,8)

La valeur -1 pour la résolution du niveau de pyramide A indique la vue d'ensemble.

NOT NULL

insidetiles

st_geometry

Géométrie multi-points qui stocke les centroïdes des tuiles de données

dtm_<id>_mrfc

Le MRFC est la structure pyramidale pour les classes d'entités non encapsulées. Les sommets des points cotés et des lignes de fracture des classes d'entités référencées sont stockés ici, à la condition préalable qu'ils participent au niveau de pyramide de résolution maximale (ils peuvent également participer à d'autres niveaux). Les données sont regroupées par tuile et par niveau de pyramide.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant unique de la forme

NOT NULL

tilerow

integer

Numéro de ligne de la tuile de MNT à laquelle appartiennent les points encapsulés

tilecol

integer

Numéro de colonne de la tuile de MNT à laquelle appartiennent les points/sommets de pyramide

resolution

numeric(38,8)

Indique à quel(s) niveau(x) de pyramide les points sont utilisés

Les niveaux de pyramide étant cumulatifs, les points participent aux niveaux de résolution égale ou supérieure à la leur. La vue d'ensemble de MNT est un cas particulier. La résolution du niveau de vue d'ensemble est indiquée par une valeur de -1. Les points attribués à cette valeur participent dans toute la pyramide.

pointcount

integer

Nombre de points du multi-points

NOT NULL

neighbordata

smallint

Indique si les points sont à l'intérieur du cadre de la tuile ; les points extérieurs permettent d'assurer une couverture complète de la surface de la tuile. La valeur 0 indique que les points sont à l'intérieur de la tuile. La valeur -1 indique qu'ils sont à l'extérieur.

NOT NULL

shape

st_geometry

Géométrie multi-points

dtm_<id>_props

La table props du MNT permet de stocker des propriétés spécifiques de version pour un jeu de données de MNT individuel. Celles-ci comprennent le nombre de points et l'étendue. Les informations sont stockées dans un objet BLOB et ne sont pas accessibles à l'utilisateur par l'intermédiaire de la table. Utilisez plutôt l'API ArcObjects du MNT pour accéder aux informations.

Nom du champ

Type de champ

Description

Nul ?

id

integer

Identifiant d'objet de l'entrée

NOT NULL

properties

bytea

Stocke les propriétés spécifiques de version du jeu de données

Une entrée est également créée dans la table gdb_items pour assurer le suivi du jeu de données de MNT. La partie id dans les noms des tables de MNT provient du champ objectid de la table gdb_items.

Les jeux de données de MNT faisant partie d'un jeu de données d'entité, ils sont également suivis dans la table gdb_itemrelationships. Le jeu de données d'entité uuid correspond à l'identifiant col_originalid et la classe d'entités uuid est l'identifiant destid dans la table gdb_itemrelationships. Les tables supplémentaires d'un jeu de données de MNT sont présentées ici. La valeur 1 dans les noms des tables DTM_* provient du champ objectid de la table gdb_items.

RemarqueRemarque :

En l'absence de classe d'entités encapsulée dans le jeu de données, aucune table dtm_1_embed correspondante n'a été créée.

Tables de jeux de données de MNT dans PostgreSQL

Les lignes pointillées indiquent les relations implicites entre colonnes.

RemarqueRemarque :

L'utilisation de jeux de données de MNT est limitée lors de l'utilisation du stockage de géométries PostGIS.

MNT dans un document d'espace de travail XML

Les jeux de données de MNT sont signalés dans un document XML par le type de jeu de données ersriDTTerrain.

<DatasetType>esriDTTerrain</DatasetType>

Voici une partie du document XML correspondant à un jeu de données de MNT. L'extrait de document XML ci-dessous couvre la définition du jeu de données, y compris les sources de données, jusqu'au moment de décrire la première classe d'entités du jeu de données.

 <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>sde.DEFAULT</Version> 
  <Domains xsi:type="esri:ArrayOfDomain" /> 
  <DatasetDefinitions xsi:type="esri:ArrayOfDataElement">
    <DataElement xsi:type="esri:DEFeatureDataset">
      <CatalogPath>/V=sde.DEFAULT/FD=m8db.sasha.topography</CatalogPath> 
      <Name>m8db.sasha.topography</Name> 
      <Children xsi:type="esri:ArrayOfDataElement">
        <DataElement xsi:type="esri:DETerrain">
          <Version>1</Version> 
              <CatalogPath>/V=sde.DEFAULT/FD=m8db.sasha.topography/TERR=m8db.sasha.topography_terrain</CatalogPath> 
          <Name>m8db.sasha.topography_terrain</Name> 
          <DatasetType>esriDTTerrain</DatasetType> 
          <DSID>1</DSID> 
          <FeatureDatasetName>m8db.sasha.topography</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>874</FeatureClassID> 
              <FeatureClassName>m8db.sasha.topo_break_lines</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>m8db.sasha.topo_clip_poly</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>
           <TerrainDataSource xsi:type="esri:TerrainDataSource">
              <Version>1</Version> 
              <FeatureClassID>873</FeatureClassID> 
              <FeatureClassName>m8db.sasha.topo_mass_points</FeatureClassName> 
              <GroupID>4</GroupID> 
              <SourceStatus>1</SourceStatus> 
              <SourceType>0</SourceType> 
              <SurfaceFeatureType>2</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>
           <TerrainDataSource xsi:type="esri:TerrainDataSource">
              <Version>1</Version> 
              <FeatureClassID>873</FeatureClassID> 
              <FeatureClassName>m8db.sasha.topo_water_poly</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">

Rubriques connexes


7/10/2012