Résumé
Crée des emprises de polygone représentant la surface bidimensionnelle d'entités multipatch.
Illustration
![Emprise de multipatch Emprise de multipatch](GUID-71061CDD-C1FD-46DF-81A8-A555E2B2C8D5-web.gif)
Utilisation
L'emprise en sortie sera dotée des mêmes champs que l'entité en entrée, ainsi que des champs suivants :
- Z_Min : la valeur Z la plus petite de l'entité multipatch.
- Z_Min : la valeur Z la plus grande de l'entité multipatch.
Utilisez le paramètre Grouper les champs si une structure se compose de plusieurs entités qui partagent un identifiant commun dans la table attributaire.
Syntaxe
arcpy.ddd.MultiPatchFootprint(in_feature_class, out_feature_class, {group_field})
Paramètre | Explication | Type de données |
in_feature_class | Entité multipatch pour laquelle une emprise est générée. | Feature Layer |
out_feature_class | Classe d'entités surfaciques d'emprise obtenue | Feature Class |
group_field (Facultatif) | Le champ utilisé pour combiner les entités multipatch afin qu'elles participent au même polygone d'emprise. | Field |
Exemple de code
1er exemple d'utilisation de l'outil MultiPatchFootprint (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.MultiPatchFootprint_3d("multipatch.shp","multipatch_footprint.shp")
2e exemple d'utilisation de l'outil MultiPatchFootprint (script autonome)
L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome.
'''****************************************************************************
Name: MultiPatchFootprint Example
Description: Creates footprint polygons for all multipatches in a workspace.
****************************************************************************'''
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
arcpy.CheckOutExtension('3D')
# Set environment settings
env.workspace = 'C:/data'
fcList = arcpy.ListFeatureClasses()
if fcList:
for fc in fcList:
# Determine if the feature class is a multipatch
desc = arcpy.Describe(fc)
if desc.shapeType is "MultiPatch":
outPoly = "{0}_Footprint.shp".format(desc.baseName)
#Execute MultiPatchFootprint
arcpy.ddd.MultiPatchFootprint(fc, outPoly)
arcpy.CheckInExtension('3D')
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
Informations de licence
- Basic: Requiert 3D Analyst
- Standard: Requiert 3D Analyst
- Advanced: Requiert 3D Analyst