Innerhalb 3D (3D Analyst)

Zusammenfassung

Testet jedes Feature, um zu ermitteln, ob es in einem Multipatch liegt. Wenn es in einem Multipatch-Feature liegt, schreibt es in eine neue Tabelle einen Eintrag, der das Feature angibt, in dem es liegt.

Weitere Informationen zur Funktionsweise von "Innerhalb 3D"

Abbildung

Werkzeug "Innerhalb 3D" (Grafik)

Verwendung

Syntax

Inside3D_3d (in_target_feature_class, in_container_feature_class, out_table, {complex_output})
ParameterErläuterungDatentyp
in_target_feature_class

Z-aktivierte Punkt-, Linien-, Polygon- oder Multipatch-Features.

Feature Layer
in_container_feature_class

Multipatch-Features. Die Multipatches müssen geschlossen sein. Ermitteln Sie mit dem Werkzeug "Ist geschlossen 3D", ob die Multipatches geschlossen sind.

Feature Layer
out_table

Die Ausgabe-Tabelle, die eine Liste von 3D-Eingabe-Features bereitstellt, die vollständig oder teilweise in Eingabe-Multipatch-Features liegen, die geschlossen sind. Die Ausgabe-Tabelle enthält die Felder OBJECTID (Objekt-ID), Target_ID und Status. Der Status gibt an, ob das Eingabe-Feature (Target_ID) vollständig oder teilweise in einem Multipatch liegt.

Table
complex_output
(optional)

Wenn die Option Komplexe Ausgabe-Tabelle ausgewählt ist, wird die Ausgabe-Tabelle mit Informationen über die Beziehung zwischen den Eingabe-Features und den Eingabe-Multipatch-Features erweitert. Anhand dieser Informationen können Sie feststellen, welche Features vollständig oder teilweise in bestimmten geschlossenen Multipatches liegen. Wenn die Option aktiviert ist, wird in der Ausgabe-Tabelle eine zusätzliche Container_ID zusammen mit den Target_ID-Informationen angezeigt. Die Container_ID steht für ein bestimmtes Multipatch, in dem die Eingabe-Features (Target_ID) vollständig oder teilweise liegen.

Boolean

Codebeispiel

Innerhalb 3D – Beispiel 1(Python-Fenster)

Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion Innerhalb 3D im unmittelbaren Modus verwenden können.

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.Inside3D_3d('inFeature.shp', 'sample.gdb/multipatch', 'sample.gdb/output_table')
Innerhalb 3D – Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie Sie die Funktion Innerhalb 3D in einem eigenständigen Skript verwenden.

'''****************************************************************************
Name: Inside3D Example
Description: This script demonstrates how to use the
             Inside3D 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
    inFC = 'Points_3D.shp' # the input feature
    inMP = 'Buildings.shp' # the input multi-patch
    # Ensure output has a unique name
    outTbl = arcpy.CreateUniqueName('Output_Table.dbf')
    
    # Execute Inside 3D
    arcpy.Inside3D_3d(inFC, inMP, outTbl)

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)

Umgebungen

Verwandte Themen

Lizenzinformationen

ArcView: Erfordert 3D Analyst
ArcEditor: Erfordert 3D Analyst
ArcInfo: Erfordert 3D Analyst

7/10/2012