Une fois ces modèles générés, ils peuvent être exportés dans de très nombreux formats 3D du marché dont le format Géodatabase ou être publiés sur le web.
Données de base pour construire des modèles 3D
Dans CityEngine, le point de départ est généralement de disposer du terrain, c'est-à-dire d'une orthophoto et d'un MNT. Pour cela, différents formats d'images peuvent être utilisés comme le PNG, TIFF ou JPEG. Ensuite, l'essentiel du travail dans CityEngine consiste à utiliser des données 2D du SIG (parcellaire cadastral, bâtiments, arbres, éléments de mobilier urbain, axes de voies, …) et définir les règles procédurales qui permettront de les transformer en modèles 3D.
|
Scène 3D contenant l'orthophoto et le MNT |
Règles procédurales
CityEngine est avant tout un moteur procédural permettant de transformer, à la volée, des entités 2D (shapes) en modèles 3D (models). Une grammaire très puissante permet d'écrire ces règles dont la logique peut être très simple (par l'exemple, l'extrusion d'un bâtiment ou la création d'un arbre à partir d'un attribut de hauteur) ou plus beaucoup plus sophistiquée (par exemple la construction automatique d'une passerelle dès lors qu'une voie piétonne traverse une voie de circulation majeure). Une règle part d'une géométrie de base et lui applique une série de transformations pouvant s'imbriquer les unes dans les autres de manière infinie jusqu'à l'obtention du résultat souhaité. Les règles peuvent être créées via une interface graphique ou directement dans un éditeur de code.
Dans ma démonstration j'ai tout d'abord montré une règle simple permettant d'extruder les emprises de bâtiments 2D du SIG en simples volumes en fonction d'un attribut de hauteur (h_facade).
|
Ajout des emprises des bâtiments 2D du SIG |
|
Exemple de règle permettant l'extrusion des batiments |
|
Code de règle permettant l'extrusion des bâtiments |
|
Résultat de l'application de la règle d'extrusion sur les bâtiments |
Lorsque vous disposez d'informations plus riches comme l'âge de construction, le nombre d'étages, le type d'usage ou des données relatives aux types et matériaux des toitures, vous pouvez alors enrichir vos règles et appliquer des textures sur les toits et façades de vos bâtiments. Dans la démonstration, j'avais préparé des librairies de textures pour des façades en fonction de l'âge des bâtiments et j'avais spécifié une extraction automatique des textures de toit à partir de l'orthophoto ce qui ajoute plus de réalisme aux éléments bâtis.
|
Application de règles pour générer des batiments texturés |
Selon le même principe, à partir des entités 2D du SIG, j'ai également ajouté les arbres dont les attributs "espèce" et "hauteur" m'ont permis de générer les arbres dans ma scène 3D.
|
Application de règles pour générer les arbres |
Construction manuelle de modèles 3D
Depuis la version 2012, CityEngine propose une série d'outils de type "sketching" pour construire interactivement des modèles 3D. Dans ma démonstration, j'ai ainsi montré que l'on pouvait construire des bâtiments techniques en bordure de voie ferrée qui manquaient dans la base de données SIG et qui étaient pourtant présents sur l'orthophoto. A l'aide de ces outils, il est très rapide de construire un volume aux formes plus ou moins complexes puis de lui appliquer une règle pour l'habiller de textures adaptées.
Intégration de modèles 3D existants
Au-delà de la génération de modèles 3D à la volée, CityEngine est également capable d'intégrer des modèles 3D existants. Pour cela, de nombreux formats 3D peuvent être importés (DXF, COLLADA, OBJ, KML, KMZ, OSM, …). Ceci permet notamment d'ajouter certains éléments caractéristiques (bâtiments spécifique, monument particulier, …) dans la scène 3D. Dans ma démonstration, j'ai inséré le modèle 3D de la gare de Versailles-Chantiers réalisé dans un outil externe (Trimble SketchUp en l'occurrence).
|
La gare de Versailles-chantiers après import du modèle 3D dans la scène |
De la même manière, les éléments validés du projet d'aménagement (issus de bureaux d'études et d'architectes) ont été importés et positionnés dans ma scène 3D.
|
Insertion des modèles 3D dans la scène 3D |
Génération du réseau routier
CityEngine modélise les éléments ponctuels et surfaciques d'un environnement urbain mais également le réseau routier. A partir de règles de grammaire spécifiques et d'entités linéaires (existantes ou saisies interactivement par l'utilisateur), vous pouvez rapidement constituer des modèles 3D de l'infrastructure routière (chaussées, marquages au sol, signalisation, trottoirs, candélabres, véhicules sur les voies…). Des comportements avancés de topologie permettent de prendre en charge la notion de ponts, de passerelles, de ronds-points,… Dans ma démonstration, j'ai montré l'insertion des nouvelles voies de circulation devant desservir les nouvelles infrastructures du projet d'aménagement.
|
Les réseaux routiers modélisés dans CityEngine |
Conception interactive et GéoDesign
Un atout important de CityEngine réside dans son moteur procédurale. Il permet notamment une approche de GéoDesign en offrant la possibilité de modifier à tout moment les paramètres des règles pour modifier l'aspect du modèles 3D et ainsi envisager différents scenarii. Dans ma démonstration, j'ai illustré cela sur un projet de construction de logement sur une des parcelles de la zone à aménager à proximité de la gare.
|
La parcelle à aménager |
A l'aide de règles on peut rapidement générer un premier modèle 3D en précisant le nombre d'étages, le type de façade, le type de toit, l’organisation des blocs et leur positionnement respectifs, ... Cette règle peut également prendre en compte des contraintes d'urbanisme comme la hauteur maximum, la distance minimum par rapport à la voie, un coefficient d'occupation du sol, ...
|
Génération du projet de logement à partir de règles procédurales |
En modifiant les différents paramètres de ma règle, je peux changer totalement l'aspect du bâtiment et proposer rapidement une série de solutions alternatives. Les outils de reporting intégrés à CityEngine permettent d'associer des indicateurs à votre modèle 3D et de récupérer, par exemple, des éléments quantitatifs calculés dynamiquement lors de la génération du modèles (superficies au sol, superficie totale, nombre de bureaux, nombre de fenêtres, superficie vitrée, ...).
|
Modification à la volée des paramètres de mes règles procédurales |
Exporter et diffuser ses modèles 3D
Dans la dernière partie de ma démonstration, j'ai montré certaines capacités de CityEngine en termes de diffusion des modèles 3D générés. Une fois votre scène 3D générée, vous pouvez tout d'abord l'exporter (entièrement ou partiellement) vers différents formats géospatiaux ou multimédias. Vous pouvez également, c'est une nouveauté de la version 2012, exporter vos modèles 3D directement vers vos Géodatabases Fichier en tant que classes d'entités Multipatch. Enfin, autre nouveautés de la version 2012, vous pouvez désormais exporter votre scène 3D en tant que fichier de scène web 3d (*.3ws) pour la diffuser sur votre serveur web ou sur la plateforme ArcGIS Online.
|
Ma scène 3D prête à être exportée |
Le partage d'une scène web 3D sur la plateforme ArcGIS Online permet de partager votre travail avec la communauté d'utilisateurs de votre choix sans avoir à quitter l'application CityEngine. Vous utilisez la même commande de partage que dans les autres applications ArcGIS afin de spécifier les éléments de description et les paramètres de partage de la scène web 3D que vous souhaitez publier.
|
Partage d'une scène web 3D à partir de CityEngine |
Une fois publiée sur votre portail ArcGIS Online, votre scène web 3D s'ouvre directement dans le navigateur dans un visualiseur 3D intégré à la plateforme. En effet, basées sur la technologie HTML5/WebGL, les scènes web 3D s'affichent dans des navigateurs comme Chrome, Firefox et Safari et tout cela sans aucun plug-in.
|
Descriptif d'une scène web 3D partagée sur ArcGIS Online |
|
Visualisation de ma scène 3D dans le visualiseur intégré d'ArcGIS Online |
|
Navigation et affichage des différentes couches de mon projet d'aménagement |
Le visualiseur 3D intégré propose des outils d'interrogation des entités afin d'afficher les attributs des objets figurant dans la scène. Une fonction de recherche permet de retrouver des objets à l'aide d'une valeur attributaire .Le visualiseur propose également différentes fonctionnalités liées à l'affichage en 3D comme par exemple le réglage de la luminosité, de l'éclairage ambiant ou encore l'accès à certains cadrages prédéfinis (géosignets) lors de l'export de la scène 3D.
|
Outil de balayage permettant de révéler certaines couches avant/après le projet |
Enfin, on notera que CityEngine est fourni avec le même visualiseur ce qui permet de fournir les mêmes fonctionnalités de consultation de scènes 3D sur votre propre serveur web.
Pour tester l'affichage de scènes web 3D, vous pouvez vous rendre sur ArcGIS Online et découvrir
CityEngine publiées par Esri.