Importer des objets 3D (Gestion des données)

Synthèse

Importe des modèles 3D à partir d’un ou plusieurs formats de fichiers 3D et crée ou met à jour une couche d’entités d’objets 3D.

Utilisation

  • La classe d’entités d’objets 3D permet de stocker, géoréférencer et visualiser des modèles 3D dans ArcGIS AllSource en utilisant leurs fonctionnalités de rendu natives, comme les effets de lumière, la réflectance et les matières.

    En savoir plus sur la couche d’entités d’objets 3D

  • La géométrie d’une classe d’entités d’objets 3D peut être utilisée dans tous les outils de géotraitement prenant en charge des entités multipatch. Par exemple, une couche d’entités d’objets 3D peut être utilisée pour analyser des lignes de visée dans les outils Ligne de visée et Intervisibilité, ou pour déterminer l’impact des ombres dans les outils Fréquence d’ombre du soleil et Volume d’ombre du soleil.

  • Cet outil permet de créer directement des couches d’entités d’objets 3D sans avoir à importer les modèles 3D dans un multipatch ni à améliorer le multipatch avec des fonctionnalités de couche d’entités d’objets 3D. Cet outil prend également en charge davantage de formats de modèle 3D que l’outil Importer des fichiers 3D. Les formats 3D suivants peuvent être importés :

    • COLLADA (.dae)
    • Dessin (.dwg)
    • Autodesk Filmbox (.fbx)
    • Graphics Library Transmission (.glb)
    • JSON Graphics Library Transmission (.gltf)
    • Industry Foundation Class (.ifc)
    • Objet Wavefront (.obj)
    • Universal Scene Description (.usdc)
    • Compressed Universal Scene Description (.usdz)
  • Lorsqu’une classe d’entités d’objets 3D est créée et que les modèles importés comportent une référence spatiale, la classe d’entités d’objets 3D hérite du système de coordonnées des modèles. Si les modèles que vous importez ne comportent pas de système de coordonnées, le système de coordonnées de la sortie sera WGS 1984 Web Mercator (WKID 3857), qui utilise une unité linéaire de mètres. Si les modèles 3D comportent une unité linéaire, ses coordonnées seront automatiquement converties pour correspondre à la projection en sortie. Lorsqu’aucune unité linéaire n’est définie pour les modèles 3D, le paramètre Facteur d’échelle peut être utilisé pour appliquer la conversion appropriée.

Paramètres

ÉtiquetteExplicationType de données
Dossiers et fichiers 3D en entrée

Fichiers 3D ou dossiers contenant les fichiers 3D à importer. Lorsqu’un dossier est indiqué, tous les modèles 3D pris en charge qu’il contient et l’ensemble de ses sous-répertoires sont importés.

Les modèles suivants sont pris en charge :

  • COLLADA (.dae)
  • Dessin (.dwg)
  • Autodesk Filmbox (.fbx)
  • Graphics Library Transmission (.glb)
  • JSON Graphics Library Transmission (.gltf)
  • Industry Foundation Class (.ifc)
  • Objet Wavefront (.obj)
  • Universal Scene Description (.usdc)
  • Compressed Universal Scene Description (.usdz)
File; Folder
Classe d’entités d’objets 3D en sortie

Couche d’entités d’objets 3D qui sera créée ou mise à jour.

Feature Layer
Stratégie de mise à jour
(Facultatif)

Spécifie le mode de mise à jour d’une classe d’entités d’objets 3D.

  • Remplacer tous les modèles existantsToutes les entités existantes de la classe d’entités d’objets 3D sont supprimées et seuls les modèles 3D spécifiés en entrée sont ajoutés.
  • Mettre seulement à jour les modèles existantsLes modèles 3D qui se trouvent dans la classe d’entités d’objets 3D sont mis à jour. Les nouveaux modèles sont ignorés.
  • Mettre à jour les modèles existants et en ajouter de nouveauxLes modèles 3D qui se trouvent dans la classe d’entités d’objets 3D sont mis à jour et les nouveaux modèles sont ajoutés. Il s’agit de l’option par défaut.
  • Ajouter tous les modèlesTous les modèles 3D sont ajoutés sans remplacer ceux qui existent actuellement dans la classe d’entités d’objets 3D.
String
Décalage XY
(Facultatif)

Décalage des coordonnées x et y qui sera appliqué aux modèles importés.

Point
Décalage d’altitude
(Facultatif)

Décalage de hauteur qui sera appliqué aux modèles importés.

Double
Facteur d’échelle
(Facultatif)

Facteur d’échelle qui sera utilisé pour redimensionner les modèles 3D importés.

Double
Angle de rotation
(Facultatif)

Angle de rotation (en degrés) qui sera appliqué aux modèles importés. Une rotation est appliquée en partant du principe que 0° représente le Nord et que les valeurs angulaires sont incrémentées dans le sens horaire.

Double
Y est en haut s’il n’est pas précisé par les données

Indique si les coordonnées y seront interprétées comme hauteur ou sur le plan horizontal. Ce paramètre est pris en charge uniquement pour les fichiers d’objets Wavefront (.obj).

  • Option sélectionnée : les coordonnées y seront interprétées comme hauteur. Il s’agit de l’option par défaut.
  • Option désélectionnée : les coordonnées z seront interprétées comme hauteur.

Boolean

arcpy.management.Import3DObjects(files_and_folders, updated_features, {update}, {translate}, {elevation}, {scale}, {rotate}, y_is_up)
NomExplicationType de données
files_and_folders
[files_and_folders,...]

Fichiers 3D ou dossiers contenant les fichiers 3D à importer. Lorsqu’un dossier est indiqué, tous les modèles 3D pris en charge qu’il contient et l’ensemble de ses sous-répertoires sont importés.

Les modèles suivants sont pris en charge :

  • COLLADA (.dae)
  • Dessin (.dwg)
  • Autodesk Filmbox (.fbx)
  • Graphics Library Transmission (.glb)
  • JSON Graphics Library Transmission (.gltf)
  • Industry Foundation Class (.ifc)
  • Objet Wavefront (.obj)
  • Universal Scene Description (.usdc)
  • Compressed Universal Scene Description (.usdz)
File; Folder
updated_features

Couche d’entités d’objets 3D qui sera créée ou mise à jour.

Feature Layer
update
(Facultatif)

Spécifie le mode de mise à jour d’une classe d’entités d’objets 3D.

  • REPLACE_ALLToutes les entités existantes de la classe d’entités d’objets 3D sont supprimées et seuls les modèles 3D spécifiés en entrée sont ajoutés.
  • UPDATE_EXISTINGLes modèles 3D qui se trouvent dans la classe d’entités d’objets 3D sont mis à jour. Les nouveaux modèles sont ignorés.
  • UPDATE_EXISTING_ADD_NEWLes modèles 3D qui se trouvent dans la classe d’entités d’objets 3D sont mis à jour et les nouveaux modèles sont ajoutés. Il s’agit de l’option par défaut.
  • ADD_ALLTous les modèles 3D sont ajoutés sans remplacer ceux qui existent actuellement dans la classe d’entités d’objets 3D.
String
translate
(Facultatif)

Décalage des coordonnées x et y qui sera appliqué aux modèles importés.

Point
elevation
(Facultatif)

Décalage de hauteur qui sera appliqué aux modèles importés.

Double
scale
(Facultatif)

Facteur d’échelle qui sera utilisé pour redimensionner les modèles 3D importés.

Double
rotate
(Facultatif)

Angle de rotation (en degrés) qui sera appliqué aux modèles importés. Une rotation est appliquée en partant du principe que 0° représente le Nord et que les valeurs angulaires sont incrémentées dans le sens horaire.

Double
y_is_up

Indique si les coordonnées y seront interprétées comme hauteur ou sur le plan horizontal. Ce paramètre est pris en charge uniquement pour les fichiers d’objets Wavefront (.obj).

  • Y_IS_UPLes coordonnées y seront interprétées comme hauteur. Il s’agit de l’option par défaut.
  • Z_IS_UPLes coordonnées z seront interprétées comme hauteur.
Boolean

Exemple de code

Exemple d’utilisation de la fonction Import3DObjects (fenêtre Python)

L’exemple suivant illustre l’utilisation de cet outil dans la fenêtre Python.

import arcpy
arcpy.env.workspace = 'C:/project_directory'

arcpy.management.Import3DObjects("import_models", 
                                 "city_models.gdb/Downtown_Buildings", 
                                 update="ADD_ALL", translate="50 100.5", 
                                 elevation=-52.73, scale=0.3048, rotate=15.25)
Exemple d’utilisation de la fonction Import3DObjects (processus)

L’exemple suivant illustre l’utilisation de cet outil dans un script Python autonome.

import arcpy
arcpy.env.workspace = 'C:/project_directory'

# Export the feature class or layer to model files on disk
arcpy.management.Export3DObjects("city_models.gdb/Downtown_Buildings", 
                                 "exported_models", ["FMT3D_IFC"])

# Optionally, edit the exported model files in other software, or replace the 
# files with a new version. 
# Keep the file names the same to update existing features. New file names are
# interpreted as new features.

# The input folder and feature class or layer in Import 3D Objects are the same
# values used in Export 3D Objects.
arcpy.management.Import3DObjects("exported_models", 
                                 "city_models.gdb/Downtown_Buildings", 
                                 update="UPDATE_EXISTING_ADD_NEW", 
                                 translate="350 150",
                                 elevation=100, scale=2.54, rotate=-90)

Rubriques connexes