Diferencia 3D (3D Analyst)

Resumen

Elimina las partes de las entidades multiparche en una clase de entidad de destino que se superpone con los volúmenes adjuntos de las entidades multiparche en la clase de entidad de substracción.

Ilustración

Difference 3D

Uso

Sintaxis

Difference3D_3d (in_features_minuend, in_features_subtrahend, out_feature_class, {out_table})
ParámetroExplicaciónTipo de datos
in_features_minuend

Las entidades multiparche a las que las entidades sustraendo les eliminarán las entidades.

Feature Layer
in_features_subtrahend

Las entidad multiparche que se sustraerán de la entrada.

Feature Layer
out_feature_class

La clase de entidad multiparche de salida que incluirá las entidades resultantes.

Feature Class
out_table
(Opcional)

Una tabla opcional que almacena información sobre la relación entre las entidades de entrada y la salida de diferencia. Los siguientes campos se incluyen en esta tabla:

  • Output_ID: la ID única de la clase de entidad de salida.
  • Minuend_ID: la ID única del multiparche principal.
  • Sustraendo: la ID única de la entidad multiparche que se sustrajo del multiparche principal.
Table

Ejemplo de código

Ejemplo 1 de Difference3D (ventana de Python)

El siguiente ejemplo muestra cómo usar de esta herramienta en la ventana Python:

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.Difference3D_3d('input_mp.shp', 'erase_mp.shp', 'difference_mp.shp')
Ejemplo 2 de Difference3D (secuencia de comandos independiente)

El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:

'''****************************************************************************
Name: Difference3D Example
Description: This script demonstrates how to create 
             shadow volumes that fall along a specified surface using the
             Difference3D tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    # Obtain a license for the ArcGIS 3D Analyst extension
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # Set Local Variables
    inMP = 'buildings.shp'
    eraseMP = 'bldg_extensions.shp'
    outMP = arcpy.CreateUniqueName('bldgs_without_extensions.shp')
    # Execute Difference3D
    arcpy.Difference3D_3d(inMP, eraseMP, outMP)

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

Temas relacionados

9/11/2013