De multiparche a COLLADA (Conversión)

Resumen

Convierte una o varias entidades multiparche en un conjunto de archivos COLLADA (.dae) y hace referencia a archivos de imagen de textura en una carpeta de salida.

Uso

  • Un archivo COLLADA es una representación XML de un objeto 3D que puede hacer referencia a archivos de imagen adicionales que actúan como texturas desplegadas en la geometría 3D. Significa que la exportación de una entidad multiparche a COLLADA puede resultar en la creación de varios archivos: un archivo .dae que contiene la representación XML del objeto 3D y uno o varios archivos de imagen (por ejemplo, un archivo .jpg o .png) que contienen las texturas.

  • Esta herramienta crea una representación COLLADA para cada entidad multiparche que exporta. Esta herramienta utiliza un valor de campo de cada entidad (de forma predeterminada, es el Id. de objeto) para definir los nombres de archivo de salida. Permite identificar qué entidad se exportó a qué archivo COLLADA y proporciona la metodología para definir nombres únicos al exportar varias entidades al mismo directorio. Los archivos de textura se almacenan en el mismo directorio que el archivo COLLADA. Para minimizar el tamaño total del archivo de exportación, las texturas que se utilizan en varios archivos COLLADA (por ejemplo, una textura repetitiva de ventanas o ladrillos) solo se exportan una vez y se hace referencia a ellas en los archivos .dae aplicables.

  • Esta herramienta sobrescribe automáticamente los archivos COLLADA existentes con el mismo nombre de archivo. Cuando esto ocurre, aparece un mensaje de advertencia que indica los archivos que se sobrescribieron con un nuevo archivo durante el proceso de exportación. También se genera un mensaje de geoprocesamiento para las entidades que no se pueden exportar; por ejemplo, si la ubicación de salida es de solo lectura o el disco está lleno.

  • Para asegurarse de que se crea un nuevo archivo COLLADA para todas las entidades multiparche que se exportaron, establezca el directorio de destino en una carpeta vacía o nueva y elija un campo de nombre de archivo que sea único para cada entidad. Exportar dos entidades con el mismo valor de atributo hará que la segunda entidad exportada sobrescriba el archivo COLLADA de la primera.

  • Cuando actualice una entidad multiparche de forma iterativa exportándola a COLLADA y realice cambios fuera de ArcGIS, exporte la entidad a la misma ubicación cada vez. Así, mantendrá un único archivo en el disco para esa entidad, que representa el estado más actualizado del objeto 3D.

  • Si el multiparche exportado está en un sistema de coordenadas proyectadas, como un edificio almacenado en una zona UTM, en la carpeta de salida también se creará un archivo .kml que contiene las coordenadas como WGS84. Este proceso no utiliza una transformación de datum, lo que puede resultar en discrepancias de posición al visualizar el KML.

    Sugerencia:

    Al convertir multiparches de una capa, la herramienta integrará automáticamente los colores definidos en el renderizador de la capa. Por ejemplo, si la capa renderiza las entidades basándose en un atributo de tipo de uso (como rojo para comercial, azul para residencial, etc.), estos colores se incluirán en los archivos COLLADA de salida. El color visualizado se aplica a las entidades multiparche tanto con textura como sin ella, y estas últimas requieren una actualización en los archivos de la textura subyacente de la entidad. Puede utilizar el blanco como color de visualización único para exportar multiparches texturados con imágenes sin alterar.

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades multiparche de entrada

Las entidades multiparche que se van a exportar.

Feature Layer
Carpeta COLLADA de salida

La carpeta de destino en la que se colocarán los archivos COLLADA de salida y los archivos de imagen de textura.

Folder
Anteponer nombre de origen
(Opcional)

Especifica si los nombres de los archivos COLLADA de salida irán precedidos por el nombre de la capa de entidades de origen.

  • Activado: los nombres de archivo irán precedidos por el nombre de la capa de entidades de origen.
  • Desactivado: los nombres de archivo no irán precedidos por el nombre de la capa de entidades de origen. Esta es la opción predeterminada.

Boolean
Usar nombre de campo
(Opcional)

El atributo de entidad que se utilizará como el nombre de archivo COLLADA de salida para cada entidad exportada. Si no se especifica ningún campo, se utilizará Id. de objeto de la entidad.

Field
Versión de COLLADA

Especifica la versión de COLLADA a la que se exportarán los archivos.

  • 1.5Los archivos se exportarán a la versión 1.5 de COLLADA. La versión 1.5 admite la inclusión de información de georreferenciación y capacidades de representación en pantalla mejoradas. Esta es la opción predeterminada.
  • 1.4Los archivos se exportarán a la versión 1.4 de COLLADA. La versión 1.4 es el estándar ampliamente compatible utilizado en muchas plataformas de aplicaciones relacionadas con el diseño. Seleccione esta versión si el archivo COLLADA se utilizará en sistemas que no sean compatibles con la versión 1.5.
String

arcpy.conversion.MultipatchToCollada(in_features, output_folder, {prepend_source}, {field_name}, collada_version)
NombreExplicaciónTipo de datos
in_features

Las entidades multiparche que se van a exportar.

Feature Layer
output_folder

La carpeta de destino en la que se colocarán los archivos COLLADA de salida y los archivos de imagen de textura.

Folder
prepend_source
(Opcional)

Especifica si los nombres de los archivos COLLADA de salida irán precedidos por el nombre de la capa de entidades de origen.

  • PREPEND_SOURCE_NAMELos nombres de archivo irán precedidos por el nombre de la capa de entidades de origen.
  • PREPEND_NONELos nombres de archivo no irán precedidos por el nombre de la capa de entidades de origen. Esta es la opción predeterminada.
Boolean
field_name
(Opcional)

El atributo de entidad que se utilizará como el nombre de archivo COLLADA de salida para cada entidad exportada. Si no se especifica ningún campo, se utilizará Id. de objeto de la entidad.

Field
collada_version

Especifica la versión de COLLADA a la que se exportarán los archivos.

  • 1.5Los archivos se exportarán a la versión 1.5 de COLLADA. La versión 1.5 admite la inclusión de información de georreferenciación y capacidades de representación en pantalla mejoradas. Esta es la opción predeterminada.
  • 1.4Los archivos se exportarán a la versión 1.4 de COLLADA. La versión 1.4 es el estándar ampliamente compatible utilizado en muchas plataformas de aplicaciones relacionadas con el diseño. Seleccione esta versión si el archivo COLLADA se utilizará en sistemas que no sean compatibles con la versión 1.5.
String

Muestra de código

Ejemplo 1 de MultipatchToCollada (ventana de Python)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.conversion.MultipatchToCollada("Sample.gdb/Buildings", "C:/COLLADA", 
                                     "PREPEND_SOURCE_NAME", "BldName")
Ejemplo 2 de MultipatchToCollada (script independiente)

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

'''*********************************************************************
Name: Convert Multipatch To Collada
Description: Converts multipatch features in an input workspace 
             to a Collada model.
*********************************************************************'''
# Import system modules
import arcpy

# Script variables
inWorkspace = arcpy.GetParameterAsText(0)

# Set environment settings
arcpy.env.workspace = inWorkspace
# Create list of feature classes in workspace
fcList = arcpy.ListFeatureClasses()

# Determine if the list contained any feature classes
if fcList:
    # Iterate through each feature class
    for fc in fcList:
        # Describe the feature class
        desc = arcpy.Describe(fc)
        # Determine if feature class is a multipatch
        if desc.shapeType is 'MultiPatch':
           # Ensure unique name for output folder
           outDir = arcpy.CreateUniqueName('collada_dir')
           # Specify that collada file is prefixed by source name
           prepend = 'PREPEND_SOURCE_NAME'
           # Specify the feature attribute used to name Collada files
           fldName = 'OID'
           # Run MultipatchToCollada
           arcpy.conversion.MultipatchToCollada(fc, outDir, prepend, fldName)
else:
    print('There are no feature classes in {0}.'.format(inWorkspace))

Entornos

Esta herramienta no utiliza ningún entorno de geoprocesamiento.

Temas relacionados