ArcGIS Desktop

  • Documentación
  • Soporte

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS for Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Importar archivos 3D

  • Resumen
  • Uso
  • Sintaxis
  • Muestra de código
  • Entornos
  • Información sobre licencias

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 orienta hacia los costados, intente ajustar la orientación utilizando esta herramienta de nuevo con el parámetro Y_Is_Up 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. Dichas entidades se pueden georreferenciar a coordenadas del mundo real usando uno de los siguientes 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. Más información sobre el ajuste espacial
    • 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

Import3DFiles_3d (in_files, out_featureClass, {root_per_feature}, {spatial_reference}, {y_is_up}, file_suffix, {in_featureClass}, {symbol_field})
ParámetroExplicaciónTipo de datos
in_files

Uno o más modelos 3D o carpetas que contienen estos archivos en los formatos compatibles, que son 3D Studio Max(*.3ds), SketchUp (*.skp), VRML and GeoVRML (*.wrl), OpenFlight (*.flt) y COLLADA (*.dae).

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.

  • ONE_ROOT_ONE_FEATURE —La salida generada contendrá una entidad para cada nodo raíz en el archivo.
  • ONE_FILE_ONE_FEATURE —La salida generada contendrá un archivo para cada entidad. Esta es la opción predeterminada.
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.

  • Z_IS_UP —Indica que z está arriba. Esta es la opción predeterminada.
  • Y_IS_UP —Indica que y está arriba.
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.

  • * —Todos los archivos compatibles. Esta es la opción predeterminada.
  • 3DS —3D Studio Max
  • WRL —VRML o GeoVRML
  • SKP —SketchUp 6.0
  • FLT —OpenFlight
  • DAE —Collada
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

Ejemplo 1 de Import3DFiles (ventana de Python)

En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.Import3DFiles_3d("AddisSheraton.skp", "Test.gdb/AddisSheraton", False, "", False)
Ejemplo 2 de Import3DFiles (secuencia de comandos independiente)

En el siguiente ejemplo se muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python.

'''*********************************************************************
Name: Model Shadows For GeoVRML Models
Description: Creates a model of the shadows cast by GeoVRML models 
             imported to a multipatch feature class for a range of dates
             and times. A range of times from the start time and end 
             time can also be specified by setting the EnforceTimes 
             Boolean to True. This sample is designed to be used in a 
             script tool.
*********************************************************************'''
# Import system modules
import arcpy
from datetime import datetime, time, timedelta

#*************************  Script Variables  **************************
inFiles = arcpy.GetParameterAsText(0) # list of input features
spatialRef = arcpy.GetParameterAsText(1) # list of GeoVRML files
outFC = arcpy.GetParameterAsText(2) # multipatch from 3D files
inTimeZone = arcpy.GetParameterAsText(3) # time zone
startDate = arcpy.GetParameter(4) # starting date as datetime
endDate = arcpy.GetParameter(5) # ending date as datetime
dayInterval = arcpy.GetParameter(6) # day interval as long (0-365)
minInterval = arcpy.GetParameter(7) # minute interval as long (0-60)
enforceTime = arcpy.GetParameter(8) # minute interval as Boolean
outShadows = arcpy.GetParameterAsText(9) # output shadow models
outIntersection = arcpy.GetParameterAsText(10) # shadow & bldg intersection

# Function to find all possible date/time intervals for shadow modelling
def time_list():
    dt_result = [startDate]
    if dayInterval:
        if endDate: #Defines behavior when end date is supplied
            while startDate < endDate:
                startDate += timedelta(days=dayInterval)
                dt_result.append(startDate)
            dt_result.append(endDate)
        else: # Behavior when end date is not given
            daymonthyear = datetime.date(startDate)
            while startDate <= datetime(daymonthyear.year, 12, 31, 23, 59):
                startDate += timedelta(days=dayInterval)
                dt_result.append(startDate)
    return dt_result

try:
    arcpy.CheckOutExtension('3D')
    importFC = arcpy.CreateUniqueName('geovrml_import', 'in_memory')
    # Import GeoVRML files to in-memory feature
    arcpy.ddd.Import3DFiles(inFiles, importFC, 'ONE_FILE_ONE_FEATURE', 
                            spatialRef, 'Z_IS_UP', 'wrl')
    # Ensure that building models are closed
    arcpy.ddd.EncloseMultiPatch(importFC, outFC, 0.05)
    # Discard in-memory feature
    arcpy.management.Delete(importFC)
    dt_result = time_list()
    for dt in dt_result:
        if dt == dt_result[0]:
            shadows = outShadows
        else:
            shadows = arcpy.CreateUniqueName('shadow', 'in_memory')
        arcpy.ddd.SunShadowVolume(outFC, dt, shadows, 'ADJUST_FOR_DST', 
                                  inTimeZone, '', minInterval, 'MINUTES')
        if dt is not dt_result[0]:
            arcpy.management.Append(shadows, outShadows)
            arcpy.management.Delete(shadows)
    arcpy.ddd.Intersect3D(outFC, outIntersection, outShadows, 'SOLID')
    arcpy.CheckInExtension('3D')
except arcpy.ExecuteError:
    print arcpy.GetMessages()
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = "PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}"\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = "ArcPy ERRORS:\n {0}\n".format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

Entornos

  • Espacio de trabajo actual
  • Sistema de coordenadas de salida
  • Dominio XY de salida
  • Dominio Z de salida
  • Auto ejecución
  • Palabra clave CONFIG de salida

Información sobre licencias

  • ArcGIS Desktop Basic: Requiere 3D Analyst
  • ArcGIS Desktop Standard: Requiere 3D Analyst
  • ArcGIS Desktop Advanced: Requiere 3D Analyst

Temas relacionados

  • Vista general del conjunto de herramientas Conversión
  • Principios básicos del geoprocesamiento con la extensión Extensión ArcGIS 3D Analyst
  • Multiparches
  • Crear edificios texturizados a partir de modelos

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

Plataforma ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog interno
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacidad | Legal