Resumen
Importa uno o más modelos 3D a una clase de entidad multiparche.
Uso
Preserve la textura de los modelos 3D almacenando el multiparche de salida en una geodatabase. Los shapefiles no admiten la retención de texturas.
Si el lado superior de las entidades multiparche resultantes se orientan hacia los lados, intente ajustar la orientación utilizando esta herramienta de nuevo con el parámetro Y está arriba habilitado.
GeoVRML es el único formato que tiene un sistema de coordenadas definido. Muchos modelos 3D se generan utilizando sistemas de coordenadas locales que centran el eje XYZ en 0, 0, 0. Este tipo de entidades se pueden georreferencias con coordenadas del mundo real, siguiendo uno de estos métodos:
- Si es necesario girar y desplazar los modelos 3D, considere la posibilidad de aplicar técnicas de ajuste espacial para definir correctamente la posición de las entidades.
- Si los modelos 3D se han orientado correctamente para un sistema de coordenadas dado y solo se tienen que desplazar a la posición adecuada, valore la posibilidad de personalizar las propiedades del sistema de coordenadas para generar el desplazamiento necesario. Si las entidades de puntos que definen la posición del centroide de cada modelo en coordenadas del mundo real están disponibles, puede usar los puntos como entradas para la herramienta con el fin de georreferenciar los modelos.
Las geometrías de punto y de línea que pueden existir en un archivo 3D no se mantienen en la clase de entidad de multiparche de salida, ya que los multiparches no las admiten.
Nota:
Los tipos de geometría no compatibles para los archivos VRML incluyen Caja, Cono, Cilindro, Extrusión, PointSet, Esfera y Texto.
Sintaxis
arcpy.3d.Import3DFiles(in_files, out_featureClass, {root_per_feature}, {spatial_reference}, {y_is_up}, file_suffix, {in_featureClass}, {symbol_field})
Parámetro | Explicación | Tipo de datos |
in_files [in_files,...] | Uno o varios modelos 3D o carpetas que contienen estos archivos en los formatos compatibles, que son 3D Studio Max (*.3ds), VRML y GeoVRML (*.wrl), OpenFlight (*.flt), COLLADA (*.dae) y modelos Wavefront OBJ (*.obj). | File; Folder |
out_featureClass | El multiparche que se creará a partir de los archivos de entrada. | Feature Class |
root_per_feature (Opcional) | Indica si se debe producir una entidad por archivo o una entidad para cada nodo raíz del archivo. Esta opción solo se aplica a los modelos VRML.
| Boolean |
spatial_reference (Opcional) | El sistema de coordenadas de los datos de entrada Para la mayoría de los formatos, esto es desconocido. Solo el formato GeoVRML almacena su sistema de coordenadas, y en su defecto se obtendrá desde el primer archivo de la lista a menos que una referencia espacial esté especificada aquí. | Spatial Reference |
y_is_up (Opcional) | Identifica el eje que define la orientación vertical de los archivos de entrada.
| Boolean |
file_suffix | La extensión de los archivos para importar desde una carpeta de entrada. Este parámetro es obligatorio cuando se especifica al menos una carpeta como entrada.
| String |
in_featureClass (Opcional) | Las entidades de punto cuyas coordenadas definen la posición de los archivos de entrada en el mundo real. Se hará que cada archivo de entrada coincida con su punto correspondiente con base en los nombres de archivo almacenados en el campo Símbolo. El parámetro del Sistema de coordenadas se debe definir para que coincida con la referencia espacial de los puntos. | Feature Layer |
symbol_field (Opcional) | El campo en las entidades de punto que contiene el nombre del archivo 3D asociado con cada punto. | Field |
Muestra de código
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.
arcpy.env.workspace = "C:/data"
arcpy.Import3DFiles_3d("AddisSheraton.skp", "Test.gdb/AddisSheraton", False, "", False)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''****************************************************************************
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.")
Entornos
Información de licenciamiento
- Basic: Requiere 3D Analyst
- Standard: Requiere 3D Analyst
- Advanced: Requiere 3D Analyst