Zone tampon 3D (3D Analyst)

Résumé

Crée une zone tampon en 3 dimensions autour des points ou lignes pour produire des entités multipatch sphériques ou cylindriques.

Illustration

Illustration de l'outil Zone tampon 3D

Utilisation

  • La sortie de cet outil sont des entités multipatch fermées, qui peuvent être utilisées dans des calculs volumétriques et d'autres outils de l'opérateur de jeu 3D.

  • Indiquez une valeur Simplification pour améliorer les performances en présence d'entités linéaires complexes, telles que des courbes intégrant de nombreux sommets.

  • Cet outil risque de ne pas générer de multipatch fermé pour certaines entités linéaires si la géométrie de la ligne et la distance de la zone tampon produisent des régions superposées avec des sommets denses. En règle générale, il vaut mieux éviter les distances de zone tampon qui risquent d'entraîner la superposition de régions dans la même entité.

Syntaxe

arcpy.3d.Buffer3D(in_features, out_feature_class, buffer_distance_or_field, {buffer_joint_type}, {buffer_quality}, {simplification_tolerance})
ParamètreExplicationType de données
in_features

Entités ponctuelles ou linéaires à bufferiser.

Feature Layer
out_feature_class

Multipatch en sortie contenant les zones tampon 3D.

Feature Class
buffer_distance_or_field

Distance de la zone tampon autour des entités en entrée qui peut être fournie sous la forme d'une distance linéaire ou dérivée d'un champ numérique de la table attributaire de l'entité en entrée. Si la distance de la zone tampon est spécifiée dans un champ en sortie, ses unités de mesure découlent de la référence spatiale de l'entité. Si la distance linéaire est spécifiée comme valeur numérique, les unités de mesure suivantes sont prises en charge :

  • UNKNOWNInconnu
  • INCHESPouces
  • FEETPieds
  • YARDSYards
  • MILESMilles
  • MILLIMETERSMillimètres
  • CENTIMETERSCentimètres
  • DECIMETERSDécimètres
  • METERSMètres
  • KILOMETERSKilomètres
Linear Unit; Field
buffer_joint_type
(Facultatif)

Forme de la zone tampon entre les sommets des segments de ligne. Ce paramètre est uniquement valide pour les entités linéaires en entrée.

  • STRAIGHTLes sommets sont reliés par des lignes droites. Il s’agit de l’option par défaut.
  • ROUNDLes sommets sont reliés par des lignes courbes.
String
buffer_quality
(Facultatif)

Nombre de segments permettant de représenter les entités multipatch résultantes. Le nombre par défaut est 20, mais vous pouvez entrer un nombre compris entre 6 et 60. Une valeur de Qualité de la zone tampon supérieure produit des entités 3D plus lisses, mais prolonge également le temps de traitement.

Long
simplification_tolerance
(Facultatif)

Simplifie les lignes en entrée en maintenant leur forme dans le décalage spécifié de sa forme d'origine. La simplification n'est effectuée que si une valeur est spécifiée. Les unités de mesure suivantes sont prises en charge :

  • UNKNOWNInconnu
  • INCHESPouces
  • FEETPieds
  • YARDSYards
  • MILESMilles
  • MILLIMETERSMillimètres
  • CENTIMETERSCentimètres
  • DECIMETERSDécimètres
  • METERSMètres
  • KILOMETERSKilomètres
Linear Unit

Exemple de code

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

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

arcpy.env.workspace = 'C:/data'
arcpy.Buffer3D_3d('lineFC.shp', 'buffer3d.shp', '15 Meters', 
                 'Round', 30, '1 Meters')
2e exemple d'utilisation de l'outil Buffer3D (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome.

'''****************************************************************************
Name: Buffer 3D Example
Description: This script demonstrates an application of
             the Buffer 3D and Inside 3D tools.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'

# Set Local Variables
inFC = 'lineFC.shp'
bufferOut = 'buffer3d.shp'

# Execute Buffer 3D
arcpy.Buffer3D_3d(inFC, bufferOut, '15 Meters', 'Round', '30', '1 Meters')
arcpy.Inside3D_3d(bufferOut, 'survey_pts.shp', 'inside_analysis.dbf')

Informations de licence

  • Basic: Requiert 3D Analyst
  • Standard: Requiert 3D Analyst
  • Advanced: Requiert 3D Analyst

Rubriques connexes