Intérieur 3D (3D Analyst)

Récapitulatif

Teste chaque entité afin de déterminer si elle est comprise dans un multipatch. Si tel est le cas, l'outil enregistre une entrée dans une nouvelle table, afin d'indiquer à quelle entité elle appartient.

Pour en savoir plus sur la fonction Intérieur 3D

Illustration

Illustration de l'outil Intérieur 3D

Utilisation

Syntaxe

Inside3D_3d (in_target_feature_class, in_container_feature_class, out_table, {complex_output})
ParamètreExplicationType de données
in_target_feature_class

Entités points, linéaires, polygones ou multipatch prenant en charge les valeurs z.

Feature Layer
in_container_feature_class

Entités multipatch. Les multipatch doivent être fermés. Utilisez l'outil Fermeture 3D afin de déterminer si les multipatches sont fermés.

Feature Layer
out_table

Table en sortie qui fournit une liste d'entités en entrée 3D appartenant totalement ou partiellement à des entités multipatch en entrée fermées. La table en sortie contient un OBJECTID (identifiant d'objet), un identifiant cible (Target_ID) et un statut. Le statut indique si l'entité en entrée (Target_ID) se trouve à l'intérieur ou partiellement à l'intérieur d'un multipatch.

Table
complex_output
(Facultatif)

L'option Tableau en sortie complexe modifie la table en sortie afin d'inclure des informations à propos de la relation entre les entités en entrée et les entités multipatch en entrée. Vous pouvez ainsi identifier quelles entités appartiennent totalement ou partiellement à des multipatches fermés spécifiques. Lorsque cette option est activée, un Container_ID supplémentaire s'affiche pour la table en sortie, ainsi qu'un Target_ID. Ce Container_ID représente le multipatch exact auquel appartiennent totalement ou partiellement les entités en entrée (Target_ID).

Boolean

Exemple de code

1er exemple d'utilisation de l'outil Intérieur 3D (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Intérieur 3D en mode immédiat.

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')
2e exemple d'utilisation de l'outil Intérieur 3D (script autonome)

Le script Python ci-dessous illustre l'utilisation de la fonction Intérieur 3D dans un script autonome.

'''****************************************************************************
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)

Environnements

Rubriques connexes

Informations de licence

ArcView : Obligatoire 3D Analyst
ArcEditor : Obligatoire 3D Analyst
ArcInfo : Obligatoire 3D Analyst

7/10/2012