Intersection 3D (3D Analyst)
Récapitulatif
Calcule l'intersection géométrique de deux volumes définis par des entités multipatch fermées, en fonction de l'intersection géométrique de leurs faces. Les entités ou les portions d'entités superposées dans les deux couches et/ou classes d'entités sont enregistrées dans la classe d'entités en sortie.
Utilisation
-
Nécessite deux couches ou classes d'entités en entrée, qui doivent avoir une géométrie multipatch.
-
Seuls les multipatches fermés sont traités.
-
La fonction Intersection 3D permet de créer des entités très complexes dans la classe d'entités en sortie. Ces entités peuvent engendrer des problèmes d'affichage et/ou amoindrir les performances d'affichage.
-
Tous les attributs des entités en entrée sont perdus.
L'outil Intersection 3D est un opérateur 3D qui fait partie du jeu d'outils Entités 3D. Pour plus d'informations sur les opérateurs de jeu à utiliser et sur la manière de les utiliser, reportez-vous à la rubrique Utilisation d'opérateurs de jeu 3D.
Syntaxe
| Paramètre | Explication | Type de données |
in_feature_class_1 |
Premier ensemble d'entités multipatch. | Feature Layer |
in_feature_class_2 (Facultatif) |
Deuxième ensemble facultatif d'entités multipatch à intersecter avec le premier. | Feature Layer |
out_feature_class |
Classe d'entités à créer, dans laquelle les entités obtenues seront enregistrées. | Feature Class |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Intersection 3D en mode immédiat.
import arcpy
from arcpy import env
env.workspace = 'C:/data'
arcpy.Intersect3D_3d('inMultipatch1.shp', 'outMultipatch.shp',
'inMultipatch2.shp')
Le script Python ci-dessous illustre l'utilisation de la fonction Intersection 3D dans un script autonome.
'''****************************************************************************
Name: Intersect3D Example
Description: This script demonstrates how to use the
Intersect3D 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
inMP1 = 'Boston_MP_Small.shp'
inMP2 = 'Boston_MP.shp'
# Ensure output has a unique name
outMP = arcpy.CreateUniqueName('Intersect.shp')
# Execute Intersect 3D
arcpy.Intersect3D_3d(inMP1, outMP, inMP2)
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)