Intérieur 3D (3D Analyst)

Synthèse

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

  • Toutes les entités en entrée doivent comporter des informations z stockées dans leur géométrie. Si une classe d'entités 2D contient des mesures de hauteur se basant sur des champs, l'outil Entité en 3D par attribut peut permettre de créer une classe d'entités 3D.

  • La géométrie multipatch fermée est requise pour cette analyse. L’outil Fermeture 3D permet de déterminer si une classe d’entités multipatch contient des entités fermées et l’outil Inclure un multipatch permet d’éliminer des intervalles dans les entités multipatchs.

  • Si l'option Tableau en sortie complexe est sélectionnée, un enregistrement est créé pour chaque multipatch qu'intersecte une entité en entrée donnée. Une entité peut appartenir à plusieurs entités multipatch fermées et avoir plusieurs entrées dans la table en sortie.

  • Les champs suivants sont présents dans la table en sortie :

    • Target_ID : identifiant unique de l'entité en entrée.
    • Status : indique si l'entité identifiée par le champ Target_ID se trouve entièrement ou partiellement à l'intérieur d'un multipatch.
    • Contain_ID : identifie l'ID unique du multipatch qui intersecte les entités en entrée entièrement ou partiellement à l'intérieur. Uniquement inclus si l'option Tableau en sortie complexe est sélectionnée.

Paramètres

ÉtiquetteExplicationType de données
Entités en entrée

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

Feature Layer
Entités multipatch en entrée

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

Feature Layer
Table en sortie

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

Table
Tableau en sortie complexe
(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 de l'option par défaut.
Boolean

arcpy.ddd.Inside3D(in_target_feature_class, in_container_feature_class, out_table, {complex_output})
NomExplicationType 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 un champ OBJECTID (identifiant d'objet), Target_ID et Status. Le champ 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 de l'option 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 de l'option 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.

arcpy.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

# Set environment settings
arcpy.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)

Rubriques connexes