Intérieur 3D (3D Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Détermine si les entités 3D d'une classe d'entités en entrée sont contenues dans un multipatch fermé, et écrit une table en sortie qui enregistre les entités partiellement ou entièrement dans le multipatch.

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

Multipatch en entrée ou classe d'entités 3D ponctuelle, linéaire ou surfacique.

Feature Layer
in_container_feature_class

Entités multipatch fermées utilisées en tant que conteneurs pour les entités en entrée.

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 des valeurs OBJECTID (identifiant d'objet), Target_ID et Status. La valeur Status indique si l'entité en entrée (Target_ID) se trouve entièrement ou partiellement à l'intérieur d'un multipatch.

Table
complex_output
(Facultatif)

Spécifie si la table en sortie identifie la relation entre les outils Entités en entrée et Entités multipatch en entrée via la création d'un champ Contain_ID qui identifie l'entité multipatch comportant l'entité en entrée.

  • Coché – L'entité multipatch qui contient une entité en entrée est identifiée.
  • Non coché – L'entité multipatch qui contient une entité en entrée n'est pas identifiée. Il s'agit du paramétrage par défaut.

Spécifie si la table en sortie identifie la relation entre les outils Entités en entrée et Entités multipatch en entrée via la création d'un champ Contain_ID qui identifie l'entité multipatch comportant l'entité en entrée.

  • COMPLEXL'entité multipatch qui contient une entité en entrée est identifiée.
  • SIMPLEL'entité multipatch qui contient une entité en entrée n'est pas identifiée. Il s'agit du paramétrage par défaut.
Boolean

Exemple de code

1er exemple d'utilisation de l'outil Inside3D (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :

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 Inside3D (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python 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

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Requis 3D Analyst
ArcGIS for Desktop Standard: Requis 3D Analyst
ArcGIS for Desktop Advanced: Requis 3D Analyst
6/5/2014