Le blog francophone consacré
aux technologies Esri

SIG 3D - Les modèles de données 3D dans ArcGIS (2/5)



Comme je l'évoquais dans mon premier article, un SIG 3D doit pouvoir adresser différents besoins comme la conception, la visualisation, la gestion, l'analyse, le partage et la diffusion de données 3D. Pour adresser l'ensemble de ces besoins de manière cohérente, il faut avant tout disposer de modèles de données complets couvrant l'ensemble des objets 3D du monde réel.

ArcGIS offre une palette de modèles de données 3D qui est le fruit de plusieurs décennies de recherche et de développement. L'objectif de cet article est de les décrire dans les grandes lignes.


Commençons par les classes d'entités 2D !

Avant d'évoquer les modèles de données purement 3D, il convient de rappeler que dans un SIG 3D les premières sources de données que l'on utilise sont souvent des données 2D. Combinées à des informations concernant les altitudes et/ou les hauteurs, vous pouvez très bien commencer à visualiser, analyser ou même exporter vos couches 2D (points, lignes ou polygones) en véritables couches 3D. 

L'exemple typique est celui d'emprises de bâtiments disposant d'attributs d'altitude et de hauteur qui vous permettent ensuite de les transformer en véritables entités 3D. Ces entités 3D seront alors de type "Multipatch" et pourront être stockées et gérées dans la Géodatabase, nous en reparlerons plus loin. Les emprises de la BDTopo de l'IGN et un MNT permettent par exemple de réaliser ce type de traitement sur la position altimétrique puis d'extrusion dans ArcGIS.


Les classes d'entités 3D

Les modèles de données proposés dans ArcGIS (Shapefile et Géodatabase) permettent de décrire des classes d'entités ponctuelles, linéaires et surfaciques en 3D. On parle de géométries de type PointZ, de PolyligneZ ou de PolygoneZ pour indiquer que ces classes d'entités stockent, pour chaque sommets, des coordonnées X,Y et Z.

 
Classe d'entités de type PointZ
    
    
    
Classe d'entités de type PolyligneZ
   
     
 
Classe d'entités de type de PolygoneZ


Lorsque vous créez une classe d'entités au format Shapefile ou dans une Géodatabase (avec le type spatial Esri ou le type spatial natif du SGBD), vous pouvez choisir l'option de stocker les coordonnées des géométries en X,Y,Z. Il est alors conseillé de renseigner le système géodésique de référence utilisé pour les altitudes, mais ce n'est pas obligatoire.


Les classes d'entités Multipatch

Un SIG 3D doit permettre de modéliser des entités 3D ayant un volume et une forme potentiellement très complexe. Depuis 1997, Esri propose pour cela le modèle de stockage de géométrie "Multipatch" qui permet de écrire des objets simples comme un cube, une pyramide, un cylindre, un cône, mais aussi des objets plus complexes comme un bâtiment, un pont, un véhicule, un arbre, une strate géologique, ...

Crédit: Virtuel City

Exactement comme une classe de points, de lignes ou de polygones, une classe d'entités Multipatch permet d'associer des attributs à chaque géométrie et d'offrir les mêmes capacités de requêtes, de filtrage ou d'interrogation.

Une entité Multipatch peut être texturée ou non, les images correspondants à ces textures sont stockées avec les géométries dans la colonne spatiale de la classe d'entités. On notera que format Shapefile ne supporte pas la notion de textures, seules les Géodatabases (Fichier ou Entreprise) supportent les Multipatch texturés.

     
Délimitée par des contours 3D et composée de facette triangulaires, la géométrie d'une entité Multipatch peut être fermée ou non. Le modèle Mutltipatch est assez similaire aux modèles Collada, 3D Studio ou SketchUp, ce qui permet une intégration simple de ces formats de données dans des Géodatabases ArcGIS.
 
 
Différents outils de géotraitement permettent de générer ou d'exploiter des entités Multipatch dans ArcGIS. On peut par exemple mentionner les outils d'import de fichiers 3D externes, les outils de conversion de données 2D en 3D, les outils de génération de modèles 3D à partir de règles procédurales CityEngine ou encore les outils d'analyse spatiale 3D de la Toolbox.

Pour plus d'information sur les entités Multipatch, vous pouvez consulter le document suivant.



Modéliser la surface ou le modelé d'un territoire est un autre aspect important pour pouvoir travailler en 3D dans un SIG. ArcGIS propose deux grandes familles de modèles de données pour représenter des surfaces 3D.
 
Les modèles de surface de type raster

Une surface peut être représentée à l'aide d'un maillage régulier de cellules, ce que l'on appelle dans ArcGIS des données Raster. Le principe est simple, chaque cellule du Raster contient l'altitude moyenne sur cette cellule.

 
ArcGIS propose la notion de jeu de données raster qui permet de stocker tout type d'imagerie dont les surfaces altimétriques. Les jeux de données raster peuvent être stockés dans 3 formats:
- un format Esri appelé GRID (assez ancien et de moins en moins utilisé),
- des formats d'images standards (TIFF, GeoTIFF, JPEG, JPEG2000, PNG, ...)
- dans un jeu de données raster dans une Géodatabase (Fichier ou Entreprise)

Dans les Géodatabases, les jeux de données raster utilisent un mécanisme de stockage et d'indexation par dalles qui permet de gérer des maillages de cellules de gros volumes (plusieurs centaines de milliers de lignes et de colonnes).
   


Pour générer un jeu de données raster, l'utilisateur dispose dans ArcGIS (avec les extensions 3D Analyst ou Spatial Analyst) d'un ensemble d'outils permettant d'utiliser des points, des lignes et des surfaces topographiques pour interpoler un maillage régulier de cellules. A distinguer parmi ces outils, l'outil Topo vers Raster qui est conçu spécifiquement pour la génération de MNT et de MNE. Cette interpolation peut se faire directement des entités ponctuelles, linéaires et surfaciques ou via un modèle de données intermédiaire comme les TIN ou les "Terrain" (voir plus loin).

Exemple de méthodes d'interpolation de surfaces rasters
à partir d'entités ponctuelles

Pour modéliser des surfaces à partir de sources de données raster plus hétérogènes et plus volumineuses, ArcGIS propose un modèle plus évolué nommé la "Mosaïque Raster" implémenté dans les Géodatabases. Il s'agit d'une collection de rasters référencés et indexés, que l'on utilise dans ArcGIS comme une source de données unique. Les rasters restent dans leur formats natifs et ne sont pas importés ou convertis. Les rasters d'une Mosaïque Raster peuvent avoir des résolutions différentes, des formats différents, des systèmes de coordonnées différents, ... et ne sont pas obligatoirement contigus.

Exemple de MNT en Mosaïque Raster dans ArcGIS
(en vert les étendus des rasters, en rouge les lignes de découpe pour le mosaïquage)

Très souple en termes de gestion, la Mosaïque Raster est aussi très puissante d'un point de vue fonctionnel puisqu'elle permet d'appliquer des filtres et des traitements à la volée sur tout ou partie des rasters qui la compose. La Mosaïque Raster offre de nombreuses options pour gérer finement le "mosaïquage" (le raccordement) des différents rasters au niveau des zones de chevauchement. Pour la gestion de MNT ou de MNE, la Mosaïque Raster permet par exemple de mixer des données avec des résolutions hétérogènes (un LIDAR au 10 cm. en centre ville avec un MNT à 50 cm. en zone périphérique).




Les modèles de surface de type vectoriel
   
La modélisation de surfaces peut également se faire de manière vectorielle en construisant, à partir de points, de lignes et de surfaces topographiques, un ensemble de facettes triangulaires que l'on appelle un TIN (Triangular Irregular Network). Dans ArcGIS, un MNT ou un MNE peut ainsi être stocké dans un format Esri assez ancien qui se nomme tout simplement TIN. Calculée selon la méthode de triangulation de Delaunay, chaque facette d'un TIN peut être interrogée pour avoir des informations sur la facette ainsi que sur le point cliqué, et notamment obtenir l'altitude interpolée à partir des 3 sommets de la facette. Les TIN peuvent afficher à la volée les pentes, les ombrages, les orientation de pentes, ... de chaque facette.


Un TIN peut à tout moment être converti en un raster avec la résolution de votre choix.


Depuis quelques années maintenant, avec l'évolution des volumétries des points engendrées par les mesures radar ou laser, Esri a fait évoluer la notion de TIN pour proposer un nouvelle modèle permettant la gestion de très grand territoire avec des résolutions très fines. Ce nouveau modèle de données nommé "Terrain" implémenté dans les Géodatabases repose sur le même principe que les TIN mais permet le stockage de très gros volumes de points. 


Un mécanisme d'indexation et de pyramidage similaire aux jeux de données raster permet de calculer des versions à résolutions réduite en fonction des échelles d'affichage. 


Un "Terrain" se construit et se met à jour à l'aide d'outils de géotraitement de 3D Analyst prenant en charge des classes d'entités de points, de lignes et de polygones pouvant être modifiées à tout moment. Comme pour les TIN, il est donc possible d'introduire, dans un MNE par exemple, des nouvelles infrastructure pour les intégrer au modèle de surface.

Comme pour un TIN, un "Terrain" peut à tout moment être converti en un raster avec la résolution de votre choix.


Les données Lidar

Les données issues de levés Lidar sont des données 3D un peu particulières dans le sens où leur volumétrie est souvent très importante (plusieurs millions de points). Les données Lidar portent des informations géométriques (X,Y,Z) mais aussi parfois des informations de classification en fonction de la nature des points levés (sol, végétation, bâtiment, ...). Ainsi des besoins de filtrage et de rendu spécifiques à ce type de données sont souvent nécessaire pour les exploiter correctement dans un SIG 3D.



Le format standard des fichiers Lidar (le format LAS) est nativement pris en charge par ArcGIS. Pour faciliter l'usage de ces fichiers LAS, ArcGIS propose la notion de jeu de données Lidar (LAS Dataset). Un peu comme la notion de Mosaïque Raster, les jeux de données Lidar permettent de référencer et d'indexer plusieurs fichiers LAS et de les exploiter ensuite comme une source de données unique.




Au delà de la performance d'affichage en 2D ou en 3D, un des grands avantages des jeux de données Lidar dans ArcGIS c'est la capacité à les utiliser, à la volée, comme une classe d'entités de PointsZ, comme un "Terrain" ou comme un jeu de données raster. Vous pouvez donc, directement à partir des fichiers LAS, bénéficier du meilleur de ce que propose chaque modèle de surface selon l'affichage ou l'analyse 3D que vous souhaitez réaliser.

La volumétrie des fichiers LAS et l'organisation des points dans ce fichier peut souvent être optimisée. Pour cela, Esri propose l'outil LAS Optimizer (gratuit) pour optimiser le stockage et réduire la taille des fichiers LAS sur vos disques. Les utilisateurs peuvent ainsi compresser et décompresser les fichiers LAS selon leurs besoins. On notera qu'ArcGIS permet de travailler directement dans ce format compressé (ZLAS) et de bénéficier de meilleures performances. 


Conclusion

Comme vous l'aurez constaté, ArcGIS propose une palette très complète pour répondre aux besoins de modélisation en 3D des objets du monde réel. Dans les prochains articles de cette série, j'évoquerai les outils de conception 3D, les capacités d'analyse 3D et les options de diffusion des données 3D que propose un SIG 3D tel qu'ArcGIS.
  

Partager cet article:

Rejoindre la discussion

    Les commentaires à propos de cet article:

3 comments :

Robin a dit…

Bonjour,

Comme on cite les types de donnée 3D, j'en profite : existe-t-il un moyen quelconque de travailler avec des voxels (VOLumetric PIXel= Pixel 3d) sous Arcgis ? Si non, est-ce prévu d'intégrer un jour cette forme de données 3D ?

Réf : http://fr.wikipedia.org/wiki/Voxel

Gaëtan Lavenu a dit…

Bonjour,

A ma connaissance il n'y a pas de plan pour Esri pour le moment d'intégrer ce type de modèle car l'usage est hyper-spécialisé. Il existe tout de même des solutions pour ArcGIS fournies par des partenaires comme celle-ci: http://www.phoenix-geosystem.com/geosoft-1-arcgis-extesions.html
C'est vrai qu'on en parle un peu plus depuis le succès du jeu Minecraft qui utilise ce concept, à ce propos je peux signaler également cet article d'un de mes collègue de Redlands qui a expérimenté la connexion d'ArcGIS à Minecraft: http://thunderheadxpler.blogspot.fr/2013/07/minecraft-gamification-of-gis.html

Robin a dit…

Merci pour la réponse !