Préparer une scène pour Indoor Viewer

Disponible avec l’extension ArcGIS Indoors Maps.

Vous pouvez éventuellement créer une scène 3D à utiliser dans Indoor Viewer pour l'exploration et la navigation.

Voici deux méthodes permettant de créer une scène 3D conforme au modèle Indoors :

  1. Convertir les couches Indoor utilisées dans la carte 2D en multipatchs dans ArcGIS Pro en définissant l’élévation relative des unités et des détails, puis convertir le polygone de bâtiment en façade texturée.
  2. Utiliser l’outil Importer BIM vers le jeu de données Indoor pour importer un sous-ensemble d’entités 3D d’un modèle Revit dans un jeu de données 3D Indoor créé à l’aide de l’outil Créer un jeu de données 3D Indoor.

Remarque :

Indoor Viewer prend uniquement en charge le mode 3D si une carte Web d’accompagnement a déjà été publiée. C’est pourquoi, il n’est pas nécessaire de publier les tables autonomes avec la scène Web.

Créer une scène 3D à l'aide d'un modèle Revit

Vous pouvez utiliser l'outil Create Indoor 3D Dataset (Créer un jeu de données 3D Indoor) pour créer un jeu de données et exécuter l'outil Import BIM To Indoor Dataset (Importer BIM vers le jeu de données Indoor) pour importer un sous-ensemble d'un modèle Revit dans le modèle Indoors. Une fois que vous avez importé des données dans le jeu de données 3D Indoor, vous pouvez éventuellement ajouter des données supplémentaires du modèle Revit ou de vos jeux de données 2D.

Pour préparer une scène pour Indoor Viewer à l'aide des données importées d'un modèle Revit, procédez comme suit :

  1. Lancez ArcGIS Pro, puis ouvrez le projet contenant votre espace de travail Indoors.
  2. Sous l’onglet Insert (Insérer), cliquez sur la flèche de la liste déroulante New Map (Nouvelle carte) et sélectionnez New Global Scene (Nouvelle scène globale).
  3. Ajoutez la couche Levels (Niveaux) et les autres couches 2D à inclure.
  4. Remarque :

    Si vous avez déjà publié une carte Web à utiliser dans Indoor Viewer, vous pouvez ajouter ces couches depuis le service d’entités publié.

  5. Ajoutez les entités 3D suivantes à la scène : Facilities 3D (Bâtiments 3D), Units 3D (Unités 3D) et Details 3D (Détails 3D).
  6. Remarque :

    Si le modèle Revit contient plusieurs options de conception pour les entités extérieures ou que ces dernières n'ont pas été attribuées comme extérieures dans le modèle Revit, l'entité Facilities 3D (Bâtiments 3D) risque de ne pas répondre à vos besoins. Vous pouvez alors utiliser le paquetage de règles détaillé ci-après pour créer une enveloppe de bâtiment.

  7. Configurez la symbologie des couches 3D.
    1. Activez éventuellement le rendu des tronçons pour les couches Details 3D (Détails 3D) et Facilities 3D (Bâtiments 3D) en sélectionnant White (use textures) with Edges (Blanc (utiliser des textures) avec tronçons) pour la couche dans la fenêtre Symbology (Symbologie).
  8. Configurez la scène comme tenant compte des étages.
  9. Si le système de coordonnées de vos données n’est pas métrique, projetez les données dans un système de coordonnées métriques de la manière suivante :
    1. Exécutez l'outil Project (Projeter) pour projeter le système de coordonnées horizontales dans un système de coordonnées métrique, tel que Web Mercator (sphère auxiliaire).
    2. Exécutez l’outil Ajuster les valeurs Z 3D avec la valeur d’ajustement des valeurs Z définie sur 0 et convertissez les unités du système de coordonnées verticales des pieds en mètres.
  10. Configurez les couches Units 3D (Unités 3D) et Details 3D (Détails 3D), ainsi que les couches supplémentaires avec des entités Indoor, comme tenant compte des étages.
  11. Renommez la couche Facilities 3D (Bâtiments 3D) en Facilities (Bâtiments) ou Bâtiments_Texturés.

Créer une scène 3D en convertissant des entités 2D en entités 3D

Avant de préparer des unités pour la 3D, effectuez les étapes suivantes :

  1. Démarrez ArcGIS Pro et ouvrez le projet contenant la carte 2D que vous avez préparée pour l’utiliser dans Viewer.
  2. Sous l’onglet Insert (Insérer), cliquez sur la flèche de la liste déroulante New Map (Nouvelle carte) et sélectionnez New Global Scene (Nouvelle scène globale).
  3. Copiez toutes les couches, à l’exception du fond de carte et des tables autonomes, depuis la carte 2D Indoor terminée et collez-les dans la scène que vous venez de créer.
  4. Configurez la scène comme tenant compte des étages.

    Lorsque vous configurez la symbologie de la scène, vous pouvez utiliser le filtre des étages pour basculer entre les sites, les bâtiments et les niveaux.

    Remarque :

    Les scènes à utiliser dans l’application Viewer doivent tenir compte des étages.

  5. Exécutez l’outil Créer un jeu de données 3D Indoor pour créer un jeu de données 3D dans la géodatabase Indoors.

    Le jeu de données en sortie doit posséder la même référence spatiale que le jeu de classes d’entités Indoors existant.

  6. Dans la fenêtre Contents (Contenu) de la scène, désactivez la couche Elevation Surfaces (Surfaces d’élévation) en décochant la case correspondant à la couche WorldElevation3D/Terrain3D.

Préparer des unités pour la 3D

Procédez comme suit pour préparer des unités pour la 3D :

  1. Cliquez avec le bouton droit sur la couche Units (Unités) et sélectionnez Properties (Propriétés).

    La boîte de dialogue Layer Properties (Propriétés de la couche) s’affiche.

  2. Sous l’onglet Elevation (Altitude), définissez le paramètre Features are (Les entités sont) sur At an absolute height (À une hauteur absolue).
  3. Définissez le paramètre Additional feature elevation using (Élévation supplémentaire des entités avec) sur l’option Geometry z-values (Valeurs z de la géométrie).
  4. Définissez le paramètre Cartographic offset (Décalage cartographique) sur 0.5 (0,5), puis définissez Vertical units (Unités verticales) sur Meters (Mètres).
    Configurez l’élévation des entités dans la boîte de dialogue Layer Properties (Propriétés de la couche).
  5. Dans l'onglet Definition Query (Ensemble de définition), définissez un ensemble de définition sur Where Use Type does not Include the value(s) (Si le type d'utilisation n’inclut pas les valeurs) et spécifiez les valeurs de champ qui représentent des unités de type escalier ou ascenseur.
  6. Cliquez sur Apply (Appliquer).
  7. Cliquez sur OK.
  8. Exécutez l'outil Couche 3D vers classe d'entités :
    1. Pour le paramètre Input Feature Layer (Couche d’entités en entrée), utilisez la couche Units.
    2. Pour le paramètre Output Feature Class (Classe d’entités en sortie), nommez-la Units_Multipatch et placez-la dans le jeu de classes d’entités Indoors 3D.

      Le nom de la couche des unités dans la scène Web doit être Units 3D ou Units. La classe d’entités en sortie de cette étape peut avoir un nom différent, mais la couche de scène des unités doit avoir un nom valide.

    3. Cliquez sur Run (Exécuter).
  9. Retirez la couche Units 3D ou Units de la scène.
  10. Exécutez l'outil Append (Ajouter) :
    1. Pour le paramètre Input Datasets (Jeux de données en entrée), sélectionnez la couche Units_Multipatch.
    2. Pour le paramètre Target Dataset (Jeu de données cible), sélectionnez la couche Units 3D.
    3. Pour le paramètre Field Matching Type (Type d’appariement de champs), sélectionnez l'option Use the field map to reconcile field differences (Utiliser l’appariement des champs pour réconcilier les différences de champs).
    4. Vérifiez que les champs suivants sont appariés pour le paramètre Field Map (Appariement des champs) : UNIT_ID, USE_TYPE, NAME, NAME_LONG, LEVEL_ID et AREA_GROSS.

      Vous pouvez apparier des champs supplémentaires s'ils existent déjà dans la classe d’entités Units3D.

    5. Cliquez sur Run (Exécuter).
  11. Supprimez la couche Units_Multipatch de la scène.
  12. Définissez la propriété Floors (Étages) sur LEVEL_ID pour que la couche 3D Units (Unités) tienne compte des étages.
  13. Activez les fenêtres contextuelles pour la couche 3D Units (Unités).

    Les fenêtres contextuelles configurées doivent inclure tous les attributs disponibles.

Préparer des détails pour la 3D

Procédez comme suit pour préparer des détails pour la 3D :

  1. Cliquez avec le bouton droit sur la couche Details (Détails) et sélectionnez Properties (Propriétés).

    La boîte de dialogue Layer Properties (Propriétés de la couche) s’affiche.

  2. Sous l’onglet Elevation (Altitude), définissez le paramètre Features are (Les entités sont) sur At an absolute height (À une hauteur absolue).
  3. Définissez le paramètre Additional feature elevation using (Élévation supplémentaire des entités avec) sur l’option Geometry z-values (Valeurs z de la géométrie).
  4. Définissez le paramètre Cartographic offset (Décalage cartographique) sur 0.5 (0,5) mètres.
  5. Dans l’onglet Definition Query (Ensemble de définition), définissez un ensemble de définition sur Where Use Type includes the value(s) (Si le type d’utilisation inclut les valeurs) et sélectionnez les valeurs de champ qui représentent les entités de détails que vous souhaitez rendre visibles en tant qu’entités extrudées dans la scène, comme les murs, les portes, les fenêtres et les colonnes.
    Remarque :

    Les ascenseurs, les escaliers et les entités annotations ne doivent pas être inclus.

  6. Cliquez sur Apply (Appliquer).
  7. Cliquez sur OK pour fermer la boîte de dialogue Layer Properties (Propriétés de la couche).
  8. Réglez l’extrusion sur la couche Details (Détails).
    1. Dans l'onglet Feature Layer (Couche d’entités), dans le groupe Extrusion (Extrusion), sélectionnez l'option Min Height (Hauteur min) Hauteur min pour le paramètre Feature Extrusion Type (Type d’extrusion des entités).
    2. Cliquez sur le bouton Extrusion Expression (Expression d’extrusion) Expression d’extrusion.

      La boîte de dialogue Générateur d'expressions s'ouvre.

    3. Saisissez la hauteur d’extrusion des entités dans la zone de texte Expression, puis cliquez sur OK.

      Il est recommandé d’extruder les entités jusqu’à environ 50 % de la hauteur du niveau. Cela permet de visualiser les détails sur un niveau sans que la vue des détails intérieurs soit obstruée par des murs qui s'étendent sur toute la hauteur d'un niveau.

    4. Définissez le paramètre Unit (Unité) sur l'unité de mesure appropriée.
  9. Exécutez l'outil Couche 3D vers classe d'entités :
    1. Pour le paramètre Input Feature Layer (Couche d’entités en entrée), utilisez la couche Details.
    2. Pour le paramètre Output Feature Class (Classe d’entités en sortie), nommez-la Details_Multipatch et placez-la dans le jeu de classes d’entités Indoor3D.
  10. Retirez la couche de lignes Details (Détails) de la scène.
    Remarque :

    Ne conservez que les couches 3D Details_Multipatch et Details (Détails).

Séparer des détails

Vous pouvez séparer les détails en plusieurs classes d'entités pour un meilleur contrôle de la visualisation. Vous pouvez séparer les murs, les portes, les fenêtres et les autres entités de détails en différentes couches et utiliser une symbologie différente pour chacune.

Procédez comme suit pour séparer les détails des murs, des portes, des fenêtres et des autres entités de détails en quatre classes d’entités distinctes :

Remarque :

Si vous choisissez de ne pas séparer les entités de détails en plusieurs classes d’entités 3D, vous pouvez exécuter l’outil Ajouter pour ajouter des entités de détails de la couche Details_Multipatch à la couche 3D Details à l’aide d’une requête pour inclure toutes les entités de détails à visualiser en 3D.

  1. Exécutez l'outil Append (Ajouter).
    1. Pour le paramètre Input Datasets (Jeux de données en entrée), sélectionnez la couche Details_Multipatch.
    2. Pour le paramètre Expression (Expression), définissez une requête sur Where Use Type Includes the value(s) (Si le type d’utilisation inclut les valeurs) et spécifiez les valeurs de champ qui représentent des murs ou des colonnes (qui ne sont pas en verre).
    3. Pour le paramètre Target Dataset (Jeu de données cible), sélectionnez la couche 3D Walls (Murs).
    4. Pour le paramètre Field Matching Type (Type d’appariement de champs), sélectionnez l'option Use the field map to reconcile field differences (Utiliser l’appariement des champs pour réconcilier les différences de champs).

      L’appariement des champs apparaît avec le champ LEVEL_ID déjà apparié. Incluez les appariements supplémentaires suivants :

      1. Appariez le champ WALL_ID avec le champ DETAIL_ID.
      2. Appariez le champ WALL_TYPE avec le champ USE_TYPE.

      Vous pouvez apparier des champs supplémentaires s’ils existent déjà dans la classe d’entités Walls3D.

    5. Cliquez sur Run (Exécuter).
  2. Définissez la propriété Floors (Étages) de la couche 3D Walls (Murs) sur le champ Level ID pour qu’elle tienne compte des étages.
  3. Répétez les étapes 1 et 2 pour la couche Details_Multipatch afin de séparer les détails des portes. Définissez l'expression de sorte à inclure les valeurs de champ USE_TYPE qui s'appliquent aux portes et sélectionnez la couche 3D Doors (Portes) comme jeu de données cible.
  4. Répétez les étapes 1 et 2 pour la couche Details_Multipatch afin de séparer les détails des fenêtres. Définissez l'expression de sorte à inclure les valeurs de champ USE_TYPE qui s'appliquent aux fenêtres et sélectionnez la couche 3D Windows comme jeu de données cible.
  5. Répétez les étapes 1 et 2 pour la couche Details_Multipatch afin de séparer les détails des autres entités à visualiser dans la scène 3D. Définissez l'expression de sorte à inclure les valeurs de champ USE_TYPE qui représentent ces entités et sélectionnez la couche 3D Details (Détails) comme jeu de données cible.
  6. Modifiez éventuellement la transparence des entités de portes et de fenêtres :
    1. Sélectionnez la couche dont vous souhaitez mettre à jour la transparence.
    2. Dans l'onglet contextuel Feature layer (Couche d'entités), dans le groupe Effects (Effets), définissez le paramètre Transparency (Transparence) sur 70% (70 %).
  7. Supprimez la couche Details_Multipatch et les couches 3D inutilisées de la scène avant publication.

Convertir un polygone de bâtiment en façade 3D

Procédez comme suit pour convertir un polygone de bâtiment en façade texturée 3D :

  1. Cliquez avec le bouton droit sur la couche Facilities et sélectionnez Properties (Propriétés).

    La boîte de dialogue Layer Properties (Propriétés de la couche) s’affiche.

  2. Sous l’onglet Elevation (Altitude), définissez le paramètre Features are (Les entités sont) sur At an absolute height (À une hauteur absolue).
  3. Définissez le paramètre Additional feature elevation using (Élévation supplémentaire des entités avec) sur l’option Geometry z-values (Valeurs z de la géométrie).
  4. Définissez le paramètre Cartographic offset (Décalage cartographique) sur 0.5 (0,5) mètres et cliquez sur OK.
  5. Cliquez sur le symbole de la couche Facilities (Bâtiments) dans la fenêtre Contents (Contenu) pour ouvrir la fenêtre Symbology (Symbologie).

    La fenêtre Format Polygon Symbol (Formater le symbole de polygone) apparaît.

  6. Cliquez sur l’onglet Properties (Propriétés).
  7. Cliquez sur le bouton Layers (Couches) Couches et sélectionnez Procedural fill (Remplissage procédural).
    Paramètres Trait et remplissage dans l’onglet Propriétés de la fenêtre Formater le symbole de polygone
  8. Cliquez sur Rule (Règle) pour attribuer un paquetage de règles procédurales (*.rpk) et sélectionnez le fichier Indoors_TexturedFacade.rpk dans le dossier Symbology (Symbologie) inclus dans le téléchargement des données du produit Indoors.
    Remarque :

    Vous pouvez utiliser votre propre paquetage de règles ou des modèles de bâtiment multipatch texturé pour personnaliser l’aspect et la convivialité. L’exemple de règle fournit utilise les attributs Relative Height (Hauteur relative) et Levels Above Ground (Niveaux au-dessus du sol) pour créer une façade texturée 3D simple, fractionnée par étage.

    Le paramètre de remplissage procédural apparaît. Survolez chaque paramètre pour avoir des informations sur la manière dont la valeur modifie l’aspect de la façade de bâtiment terminée.

    Dans la section Attributes (Attributs) de la fenêtre Format Polygon Symbol (Formater le symbole de polygone), les attributs HEIGHT_RELATIVE et LEVELS_ABOVE_GROUND sont lus directement à partir du polygone Facilities (Bâtiments), comme indiqué par les symboles bleus de connexion à la base de données :

    Section Attributs du volet Formater le symbole de polygone

  9. La section Display Options (Options d’affichage) vous permet de personnaliser les styles et textures du toit, des murs et des fenêtres.

  10. Cliquez sur Apply (Appliquer) après chaque modification apportée au paramètre Procedural fill (Remplissage procédural) pour afficher le résultat dans la scène.
  11. Dans la section Geometry Options (Options de géométrie), utilisez les options pour simplifier le polygone, le buffériser légèrement ou modifier la taille de fenêtre.
  12. Cliquez sur Apply (Appliquer) pour créer le modèle de façade texturée 3D final.
  13. Exécutez l'outil Couche 3D vers classe d'entités :
    1. Pour le paramètre Input Feature Layer (Couche d’entités en entrée), sélectionnez la couche Facilities.
    2. Pour le paramètre Output Feature Class (Classe d’entités en sortie), nommez-la Facilities_Multipatch et placez-la dans le jeu de classes d’entités Indoors3D.

      La couche Facilities_Multipatch est ajoutée à la scène.

  14. Exécutez l'outil Append (Ajouter) :
    1. Pour le paramètre Input Datasets (Jeux de données en entrée), sélectionnez la couche Facilities_Multipatch.
    2. Pour le paramètre Target Dataset (Jeu de données cible), sélectionnez la couche 3D Facilities.
    3. Pour le paramètre Field Matching Type (Type d’appariement de champs), sélectionnez l'option Use the field map to reconcile field differences (Utiliser l’appariement des champs pour réconcilier les différences de champs).
    4. Vérifiez que les champs suivants sont appariés pour le paramètre Field Map (Appariement des champs) : FACILITY_ID, NAME, NAME_LONG et SITE_ID.

      Vous pouvez apparier des champs supplémentaires s'ils existent déjà dans la classe d’entités Facilities3D.

    5. Cliquez sur Run (Exécuter).
  15. Renommez la couche Facilities 3D (Bâtiments 3D) comme suit :
    • Ressources
    • Facilities Textured (Bâtiments texturés)
    • Facilities3D
    • Facilities 3D (Bâtiments 3D)

    Remarque :
    Le nom de la couche Facilities 3D (Bâtiments 3D) dans votre scène Web doit correspondre à l'une des options ci-avant.

  16. Supprimez la couche surfacique Facilities (Bâtiments) et la couche Facilities_Multipatch de la scène.
  17. Activez les fenêtres contextuelles pour la couche Facilities Textured (Bâtiments texturés).

    Les fenêtres contextuelles configurées doivent inclure tous les attributs disponibles.

  18. Définissez la propriété Indoor Layers (Couches intérieures) pour la scène pour qu’elle tienne compte des étages.
    1. Choisissez Facilities Textured (Bâtiments texturés) pour le paramètre Facilities (Bâtiments).
    2. Choisissez Levels (Niveaux) pour le paramètre Floors (Étages).

Activer le rendu des tronçons (facultatif)

Les unités et les murs Indoors peuvent parfois apparaître comme estompés lorsqu’ils sont visualisés dans ArcGIS Proou en tant que couches de scène publiées. Pour améliorer les tronçons et le contraste des entités multipatchs, vous pouvez choisir d’activer le rendu des tronçons.

  1. Pour les couches 3D contenant des entités de détails et d'unités, développez les couches si nécessaire dans le volet Contents (Contenu) et cliquez sur le symbole blanc pour ouvrir le volet Format Mesh Symbol (Format du symbole de maillage).
  2. Cliquez sur l’onglet Gallery (Bibliothèque) et sélectionnez White (use textures) with Edges (Blanc (utiliser des textures) avec tronçons).

Vous pouvez désormais partager votre scène avec votre organisation ArcGIS pour l’utiliser dans l’application Viewer.