Split Features (Topographic Production)

描述

Splits features on input feature classes for any number of polyline or polygon target feature classes using the cutting features and inserts points on the cutting feature.

使用方法

    警告:

    此工具会修改输入数据。有关详细信息以及避免数据被意外更改的策略,请参阅不创建输出数据集的工具

  • Cutting Features must have at least one feature selected.

  • Target features will be divided into multiple features at any point where they intersect the source features.

  • The Cutting Features will have new vertices added at every point where they intersect the target features.

语法

SplitFeatures(cutting_features, target_features, use_target_z)
参数说明数据类型
cutting_features

The cutting feature used to split the target features where they intersect the target feature class geometries.

Feature Layer
target_features
[target_features,...]

The features that will be divided by the cutting features.

Feature Layer
use_target_z

Specifies the source of the z-value from the source or target.

  • USE_TARGET_ZUses the z-value from the source or target.
  • DONT_USE_TARGET_ZDoes not use the z-value. This is the default.
Boolean

派生输出

名称说明数据类型
out_feature_layer

Features that were divided by the cutting_features.

Feature Layer

代码示例

SplitFeatures example 1 (stand-alone script)

This script demonstrates how to use the SplitFeatures tool to split single target features based on the cutting features.

# Name: SplitFeatures_sample1.py
# Description: Splits a single target features based on the cutting features

# Import System Modules
import arcpy

# Check Out Extensions
arcpy.CheckOutExtension('Foundation')

# Setting Local Variables
cutting_features = r'C:\Temp\MapIndex.gdb\Index_Polygons'
target_features = r'C:\Temp\Test.gdb\Builtup_Area_Polygons;C:\Temp\Test.gdb\Vegetation_Polygons'

# Setting selection on cutting features
selected_feature = arcpy.management.MakeFeatureLayer(cutting_features, 'AOI').getOutput(0)
arcpy.management.SelectLayerByAttribute(selected_feature, 'NEW_SELECTION', "PRODUCT_ID = 'V795X16573'")

# Splitting features based on the selected cutting feature
arcpy.topographic.SplitFeatures(cutting_features, target_features, 'DONT_USE_TARGET_Z')

# Check In Extensions
arcpy.CheckInExtension('Foundation')
SplitFeatures example 2 (stand-alone script)

This script demonstrates how to use the SplitFeatures tool to split all feature classes in a geodatabase on the cutting features.

# Name: SplitFeatures_sample2.py
# Description: Gets all feature classes in a geodatabase and splits them on the selected cutting feature

# Import System Modules
import arcpy
import os

# Check Out Extensions
arcpy.CheckOutExtension('Foundation')

# Setting Local Variables
cutting_features = r'C:\Temp\MapIndex.gdb\Index_Polygons'
target_database = r'C:\Temp\Test.gdb'

# Getting feature classes from the target geodatabase that are managed in a feature dataset
target_features = r''
arcpy.env.workspace = target_database
datasets = arcpy.ListDatasets('*', 'Feature')
for dataset in datasets:
    fclasses = arcpy.ListFeatureClasses('*', '', dataset)
    for fclass in fclasses:
        desc = arcpy.Describe(fclass)
        if desc.shapeType in ('Polygon', 'Polyline'):
            target_features += os.path.join(target_database, dataset, fclass) + ';'
target_features = target_features[:-1]

# Setting selection on cutting features
selected_feature = arcpy.management.MakeFeatureLayer(cutting_features, 'AOI').getOutput(0)
arcpy.management.SelectLayerByAttribute(selected_feature, 'NEW_SELECTION', "PRODUCT_ID = 'V795X16573'")

# Splitting all features in a database based on the selected cutting feature
arcpy.topographic.SplitFeatures(selected_feature, target_features, 'DONT_USE_TARGET_Z')

# Check In Extensions
arcpy.CheckInExtension('Foundation')

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 否
  • Standard: 需要 Production Mapping
  • Advanced: 需要 Production Mapping

相关主题