Arcgis中生成端点连接线

如图:
在这里插入图片描述
需要将生成两条封闭线,从而构面
使用Arcpy代码如下

    scCs = arcpy.da.SearchCursor(dmal, 'SHAPE@')   #生成游标对象(dmal为两条边线的shape文件)
    lines = [row[0] for row in scCs]			   #生成线列表
    sps = [line.firstPoint for line in lines]	   #生成起点的列表
    eps = [line.lastPoint for line in lines]	   #生成终点的列表
    array = arcpy.Array([point for point in sps])  #建立起点array
    sl = arcpy.Polyline(array)					   #生成起点polyline对象
    array = arcpy.Array([point for point in eps])  #建立终点array
    el = arcpy.Polyline(array)					   #生成终点polyline对象
    isCs = arcpy.da.InsertCursor(tLine, 'SHAPE@')  #建立insert游标(tLine为新建polyLine文件)
    isCs.insertRow([sl])						   #插入起点线
    isCs.insertRow([el])						   #插入终点线

完整代码:

#coding=utf-8
import arcpy
def closePolyLines(polyling):
    """
    :param polyling: 需要进行封闭的线
    :return: 在该线文件同级目录下生成newLine文件
    """
    arcpy.env.overwriteOutput = True
    filePath = arcpy.Describe(polyling).path
    cs1 = arcpy.da.SearchCursor(polyling, 'SHAPE@')  # 生成游标对象(polyling为两条边线的shape文件)
    lines = [row[0] for row in cs1]  # 生成线列表
    sps = [line.firstPoint for line in lines]  # 生成起点的列表
    eps = [line.lastPoint for line in lines]  # 生成终点的列表
    array = arcpy.Array([point for point in sps])  # 建立起点array
    sl = arcpy.Polyline(array)  # 生成起点polyline对象
    array = arcpy.Array([point for point in eps])  # 建立终点array
    el = arcpy.Polyline(array)  # 生成终点polyline对象
    nl = arcpy.CreateFeatureclass_management(filePath, 'newLine', 'POLYLINE')
    nlcs = arcpy.da.InsertCursor(nl, 'SHAPE@')
    nlcs.insertRow([sl])  # 插入起点线
    nlcs.insertRow([el])  # 插入终点线
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值