Разница 3D (Difference 3D) (3D Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

Исключает участки объектов-мультипатч в целевом классе объектов, которые перекрываются значениями объектов-мультипатч в классе вычитаемых пространственных объектов.

Рисунок

Разница 3D (Difference 3D)

Использование

Синтаксис

Difference3D_3d (in_features_minuend, in_features_subtrahend, out_feature_class, {out_table})
ПараметрОбъяснениеТип данных
in_features_minuend

Объекты-мультипатч, из которых объекты будут удалены путем вычитания объектов.

Feature Layer
in_features_subtrahend

Объекты-мультипатч, которые будут вычитаться из входных.

Feature Layer
out_feature_class

Выходной класс объектов-мультипатч, который будет содержать результирующие объекты.

Feature Class
out_table
(дополнительно)

Дополнительная таблица, которая хранит информацию об отношениях между входными пространственными объектами и разность выходных данных. В таблице присутствуют следующие поля:

  • Output_ID – уникальный ID выходного класса пространственных объектов.
  • Minuend_ID – уникальный ID первичного объекта-мультипатч.
  • Вычмтаемое – уникальный ID объекта-мультипатч, который был вычтен из первичного.
Table

Пример кода

Разность3D пример 1 (окно Python)

В следующем примере показано использование этого инструмента в окне Python:

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.Difference3D_3d('input_mp.shp', 'erase_mp.shp', 'difference_mp.shp')
Разность3D пример 2 (автономный скрипт)

В следующем примере показано использование этого инструмента в автономном скрипте Python:

'''****************************************************************************
Name: Difference3D Example
Description: This script demonstrates how to create 
             shadow volumes that fall along a specified surface using the
             Difference3D 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
    inMP = 'buildings.shp'
    eraseMP = 'bldg_extensions.shp'
    outMP = arcpy.CreateUniqueName('bldgs_without_extensions.shp')
    # Execute Difference3D
    arcpy.Difference3D_3d(inMP, eraseMP, outMP)

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)

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Требует 3D Analyst
ArcGIS for Desktop Standard: Требует 3D Analyst
ArcGIS for Desktop Advanced: Требует 3D Analyst
9/10/2013