Importer des fichiers 3D (3D Analyst)

Résumé

Importe un ou plusieurs modèles 3D dans une classe d'entités multipatch.

Utilisation

  • Conservez la texture des modèles 3D en stockant le multipatch en sortie dans une géodatabase. Les shapefiles ne prennent pas en charge la rétention de textures.

  • Si la partie supérieure des entités multipatch résultantes est orientée obliquement, essayez d’ajuster l’orientation en utilisant de nouveau cet outil après avoir activé le paramètre Axe des Y vers le haut.

  • Le format GeoVRML est le seul format doté d'un système de coordonnées défini. De nombreux modèles 3D sont générés à l'aide de systèmes de coordonnées locaux qui centrent l'axe XYZ sur 0, 0, 0. Vous pouvez géoréférencer de telles entités à des coordonnées réelles de l'une des manières suivantes :

    • Si les modèles 3D doivent être pivotés ou déplacés, adoptez les techniques d'ajustement spatial pour positionner correctement les entités.
    • Si les modèles 3D sont orientés correctement pour un système de coordonnées donné et doivent simplement être déplacés vers la position appropriée, personnalisez les propriétés du système de coordonnées pour réaliser le déplacement nécessaire. Si les entités ponctuelles qui définissent la position du centroïde de chaque modèle en coordonnées terrestres sont disponibles, utilisez les points en entrée pour que l'outil géoréférence les modèles.
  • Les géométries de point et de ligne susceptibles d'exister dans un fichier 3D ne sont pas prises en charge par les multipatch et ne sont donc pas conservées dans la classe d'entités multipatches en sortie.

    Remarque :

    Les types de géométrie suivants ne sont pas pris en charge pour les fichiers VRML : Boîte, Cône, Cylindre, Extrusion, Ensemble de points, Sphère et Texte.

Syntaxe

arcpy.3d.Import3DFiles(in_files, out_featureClass, {root_per_feature}, {spatial_reference}, {y_is_up}, file_suffix, {in_featureClass}, {symbol_field})
ParamètreExplicationType de données
in_files
[in_files,...]

Un ou plusieurs modèles 3D ou dossiers contenant ces fichiers dans les formats pris en charge, à savoir 3D Studio Max (*.3ds), VRML et GeoVRML (*.wrl), OpenFlight (*.flt), COLLADA (*.dae) et les modèles Wavefront OBJ (*.obj).

File; Folder
out_featureClass

Entités multipatch qui seront créées à partir des fichiers en entrée.

Feature Class
root_per_feature
(Facultatif)

Indique qu'il convient de produire une entité par fichier ou une entité pour chaque nœud racine du fichier. Cette option ne s'applique qu'aux modèles VRML.

  • ONE_ROOT_ONE_FEATURELa sortie générée contient une entité pour chaque nœud racine du fichier.
  • ONE_FILE_ONE_FEATURELa sortie générée contient un fichier pour chaque entité. Il s’agit de l’option par défaut.
Boolean
spatial_reference
(Facultatif)

Système de coordonnées des données en entrée. Pour la plupart des formats, il est inconnu. Seul le format GeoVRML stocke son système de coordonnées et sa valeur par défaut est obtenue à partir du premier fichier de la liste, à moins qu'une référence spatiale ne soit spécifiée à cet endroit.

Spatial Reference
y_is_up
(Facultatif)

Identifie l'axe qui définit l'orientation verticale des fichiers en entrée.

  • Z_IS_UPIndique que l'axe des Z est orienté vers le haut. Il s’agit de l’option par défaut.
  • Y_IS_UPIndique que l'axe des Y est orienté vers le haut.
Boolean
file_suffix

Extension des fichiers à importer à partir d'un dossier en entrée. Ce paramètre est requis lorsqu'au moins un dossier est spécifié en tant qu'entrée.

  • *Tous les fichiers pris en charge. Il s’agit de l’option par défaut.
  • 3DS3D Studio Max
  • WRLVRML ou GeoVRML
  • FLTOpenflight
  • DAECollada
  • OBJModèle Wavefront OBJ
String
in_featureClass
(Facultatif)

Entités ponctuelles dont les coordonnées définissent la position des fichiers en entrée dans le monde réel. Chaque fichier en entrée est apparié au point correspondant en fonction des noms de fichier stockés dans le champ Champ de symbole. Le paramètre Système de coordonnées doit être défini pour qu'une correspondance soit établie avec la référence spatiale des points.

Feature Layer
symbol_field
(Facultatif)

Champ dans les entités ponctuelles contenant le nom du fichier 3D associé à chaque point.

Field

Exemple de code

1er exemple d'utilisation de l'outil Import3DFiles (fenêtre Python)

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

arcpy.env.workspace = "C:/data"
arcpy.Import3DFiles_3d("AddisSheraton.skp", "Test.gdb/AddisSheraton", False, "", False)
2e exemple d'utilisation de l'outil Import3DFiles (script autonome)

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

'''****************************************************************************
Name: Import3DFiles Example
Description: This script demonstrates how to use the
             ListFiles method to collect all OpenFlight (*.flt) models in a
             workspace as input for the Import3DFiles tool.
****************************************************************************'''

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set Local Variables
OpenFlightList = arcpy.ListFiles("*.flt")
CS = "Coordinate Systems/Geographic Coordinate Systems/World/WGS 1984.prj"
outputFC = "Test.gdb/OpenFlight_Models"
if len(OpenFlightList) > 0:
    # Execute Import3DFiles
    arcpy.Import3DFiles_3d(OpenFlightList, outputFC, False, CS, False)
else:
    # Returned if there are no flt files in the target workspace
    print("There are no OpenFlight files in the " + env.workspace + " directory.")

Informations de licence

  • Basic: Requiert 3D Analyst
  • Standard: Requiert 3D Analyst
  • Advanced: Requiert 3D Analyst

Rubriques connexes