Le blog francophone consacré
aux technologies Esri

La topologie dans ArcGIS - 4/6

Nous rentrons aujourd'hui dans le cœur du sujet en abordant l'implémentation de la topologie dans les Géodatabases.

Comme je l'ai évoqué dans mon précédent article, à la différence des couvertures ArcInfo, la Géodatabase ne stocke pas la description des relations topologiques entre chaque primitives qui constituent la géométrie des entités. Cependant, certaines structures de données évoluées comme les "Geometric Networks" (réseaux de distribution), les "Network Datasets" (réseaux de transport) ou les "Terrain" (MNT) échappent à cette règle en stockant effectivement les informations de topologie mais de manière transparente pour l'utilisateur.

La topologie dans la Géodatabase

La topologie fait partie du modèle de données de la Géodatabase. Avec une licence ArcEditor ou ArcInfo, un utilisateur peut créer des classes de topologie dans des Géodatabases Fichier, Access, Workgroup ou Enterprise. Celles-ci supportent le mécanisme de versionnement des Géodatabases Workgroup et Enterprise.
Une classe de topologie rassemble toutes les informations permettant d'assurer la cohérence géométrique entre les entités d'une même classe ou de classes différentes. Plus précisément, les classes de topologie contiennent les informations suivantes:
  • Le nom de la classe de topologie
  • La tolérance d'agrégat des coordonnées (cluster tolerance) utilisée pour l'intégration et les comparaisons topologiques
  • La liste des classes d'entités participant à des relations topologiques


  • La définition des précisions (des priorités) relatives entre les géométries des différentes classes d'entités participant à des relations topologiques.


  • La liste des règles topologiques indiquant comment les entités des différentes classes partagent leur géométrie. Par exemple, les entités de la classe "Batiments" doivent être incluses dans les entités de la classe "Parcelles".

On signalera qu'une classe de topologie doit être créée dans un jeu de classes et que seules les classes de ce jeu de classes peuvent participer à cette topologie. En revanche, plusieurs classes de topologie peuvent être créées dans un même jeu de classes et une même classe d'entités peut participer à différentes topologies.

Notion de tolérance d'agrégat

Lorsque l'on crée des relations topologiques cela implique l'analyse et la correction (éventuelle) des coordonnées des sommets des entités (de la même classe ou de classes différentes) afin de traiter la cohérence géométrique de ces dernières vis-à-vis des règles de topologie que vous avez définies. Pour cela, ArcGIS utilise une tolérance d'agrégat qui permet, selon la distance séparant les sommets de deux entités, de les mettre ou pas en cohérence (c'est-à-dire avec les mêmes coordonnées). Pour maitriser la priorité de déplacement des sommets d'une entité ou de l'autre, une notion de rang peut se définir dans les propriétés de la classe de topologie. Ainsi si une classe d'entité à une qualité de positionnement plus importante qu'une autre, vous pouvez faire en sorte que ses sommets se déplacent pas (ou moins).

Cette notion de tolérance d'agrégat est également à définir pour le Z si les classes d'entités participant à la topologie sont gérées en 3D. Pour plus de détails voir l'aide en ligne d'ArcGIS.

Les règles de topologie

Selon les contraintes d'intégrité spatiale que vous souhaitez définir entre vos classes d'entités (ou au sein d'une même classe d'entités), vous allez définir une ou plusieurs règles de topologie. Dans ArcGIS 9.3, 26 règles est disponible et 32 règles pour la ArcGIS 10. Vous pouvez retrouver la liste de ces règles dans le document suivant.

Ces règles peuvent concerner des classes d'entités ponctuelles linéaires ou surfaciques. Par exemple, vous pouvez indiquer que tous les points d'une classe d'entités A doivent se trouver à l'extérieur des polygones d'une classe d'entités B. Ces règles ne sont pas utilisées automatiquement lors de la mise à jour des géométries des entités. Seules les emprises des entités modifiées sont mémorisées dans la classe de topologie permettant ainsi de savoir quels sont les zones sur lesquelles les règles doivent être revalidées. On parle alors de "Zones à valider" (Dirty Areas). Les Zones à valider peuvent être affichées dans ArcMap, elles sont surtout utilisées pour les opérations de validation de la topologie.


Nous reviendrons plus en détails sur la validation et la correction des erreurs de topologie dans le dernier article de cette série.

Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article:

3 commentaires :

Leonweb73 a dit…

Bonjour, je trouve vraiment dommage que la topologie (création, gestion...) ne soit accessible uniquement à partir de la licence ArcEditor. Comme si les utilisateurs d'arcview n'avaient pas besoin de rendre cohérentes leurs couches d'objets !

Gaëtan Lavenu a dit…

Votre remarque vient à point. Le prochaine article évoquera la notion de "Topologie de carte" qui permet à tous les utilisateurs (ArcView, ArcEditor et ArcInfo) d'assurer la cohérence spatiale de ses données lors de la mise à jour de ses couches. J'essayerai de bien expliquer la différence entre "Topologie de carte" et "Topologie de Géodatabase".

Anonyme a dit…

Bonjour

...Oui, sauf que l'utilisateur d'ArcView devra tout se "taper" à la main, c'est à dire dessiner des entités topologiquement correct.
Là encore,il n'y aura aucun moyen pour lui de VERIFIER automatiquement la topologie de données qu'il aura par exemple reçu (ce qui est très commun et fréquent).