ArcGIS for Desktop

  • Documentación
  • Precios
  • Soporte

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

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

ArcGIS for Desktop

Un completo SIG profesional

ArcGIS for Server

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
  • Precios
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

Ayuda

  • Inicio
  • Introducción
  • Mapa
  • Analizar
  • Administrar datos
  • Herramientas
  • Más...

Incluir multiparche

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

Resumen

Crea entidades multiparche cerradas en la clase de entidades de salida mediante las entidades del multiparche de entrada.

Uso

  • Utilice esta herramienta para las entidades multiparche que se diseñaron para estar cerradas pero tienen espacios geométricos que las mantienen abiertas, tales como edificios.

  • Todas las entidades multiparche se evaluarán para determinar cuáles están cerradas. Las entidades que ya están cerradas se copiarán en el multiparche de salida.

  • La herramienta Es 3D cerrado se puede utilizar para determinar si una clase de entidad multiparche contiene cualquier entidad sin cerrar.

  • Esta herramienta es un operador de conjuntos 3D que provee funciones analíticas sobre entidades 3D. Consulte Trabajar con operadores de conjuntos 3D para obtener más información sobre qué operadores de conjuntos existen y cómo se utilizan.

Sintaxis

EncloseMultipatch_3d (in_features, out_feature_class, {grid_size})
ParámetroExplicaciónTipo de datos
in_features

Las entidades multiparche que se utilizarán para construir los multiparches cerrados.

Feature Layer
out_feature_class

Las entidades multiparche cerradas de salida.

Feature Class
grid_size
(Opcional)

Las resolución que se utilizará para construir las entidades multiparche cerradas. Este valor se define utilizando las unidades lineales de la referencia espacial de la entidad de entrada.

Double

Ejemplo de código

Ejemplo 1 de EncloseMultipatch (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.EncloseMultiPatch_3d('unclosed_features.shp', 
                          'enclosed_features.shp', 0.5)
Ejemplo 2 de EncloseMultipatch (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
  • Extensión
  • Sistema de coordenadas de salida
  • Transformaciones geográficas
  • Palabra clave CONFIG de salida
  • Auto ejecución
  • Dominio XY de salida
  • Dominio Z de salida

Información sobre licencias

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

Temas relacionados

  • Vista general del conjunto de herramientas Entidades 3D
  • Acerca de entidades 3D
  • Principios básicos del geoprocesamiento con la extensión ArcGIS 3D Analyst extension
  • Trabajar con operadores de conjuntos 3D
  • Cómo importar un modelo 3D existente a una clase de entidad multiparche
  • Multiparches
¿Algún comentario sobre este tema?

ArcGIS for Desktop

  • Inicio
  • Documentación
  • Precios
  • Soporte

Plataforma ArcGIS

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

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog interno
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacidad | Legal