当前位置: 首页 > wzjs >正文

哪个公司做网站好苏州网站后台界面

哪个公司做网站好苏州,网站后台界面,安卓ui用什么软件设计,android购物商城源码"农经权二轮延包上传到网签数据包,矢量数据不止地块矢量数据。还需要界址点、界址线等要素图层。这个数据不是很重要,但是得有,小编就写了个arxtools的工具来生成此图层,并且进行去重与编号字段、地块编码字段的生成&#xf…

"农经权二轮延包上传到网签数据包,矢量数据不止地块矢量数据。还需要界址点、界址线等要素图层。这个数据不是很重要,但是得有,小编就写了个arxtools的工具来生成此图层,并且进行去重与编号字段、地块编码字段的生成,后续补充些字段即可,感兴趣的可以下载来使用。"

1、工具使用

在开始使用前,建议先对面要素图层进行简化,这样就防止拐点隔太近导致后续质检报错。打开arcmap,依次找到工具箱——系统工具箱——cartography tools.tbx——制图综合——简化面。(简化容差填1米)

插件界面很简单,打开工具箱脚本,输入的要素图层:1、地块图层(简化后的面要素图层),2、输出位置(选择一个文件夹目录)。注意:地块要素图层要有字段“DKBM”。

执行程序,在文件夹里会生成一个“JZD.shp”的要素图层,里面会包含字段“DKBM”、“JZDH”,如果一个点属于多个地块共有,用“/”隔开。

下载后记得加载py文件,不会的参考:【ArcGIS技巧】分享个判断是否基本农田的工具。

2、代码脚本

脚本的代码分享给大家,可以在此基础上修改(写代码的过程中,在pycharm和其他python解析器都能运行,在arcmap报错,后来找了一圈是有些变量需要设置成全局变量global),有的编号会在前面加字母“J”:

# -*- coding: utf-8 -*-
import arcpy
import math
from collections import OrderedDict
import sys
import os
# 设置默认编码为UTF-8
reload(sys)
sys.setdefaultencoding('utf-8')
# 输入输出路径
dk_shp = arcpy.GetParameterAsText(0)
jzd_folder = arcpy.GetParameterAsText(1)
output_fc = os.path.join(jzd_folder, u"JZD.shp")
# 创建空字典存储界址点信息(使用OrderedDict保持顺序)
global point_dict1
point_dict1 = OrderedDict()
# 处理地块要素
with arcpy.da.SearchCursor(dk_shp, ["DKBM", "SHAPE@"]) as cursor:global point_dict1for row_idx, row in enumerate(cursor):# try:  # 添加错误处理外层dkbm = row[0]geom = row[1]if geom.isMultipart or geom.type != "polygon":arcpy.AddMessage(u'地块 {} 包含多部件或非面要素,已跳过'.format(dkbm))continueextent = geom.extentnorthwest = arcpy.Point(extent.XMin, extent.YMax)# 优化顶点处理逻辑vertices = []for part in geom.getPart():part_vertices = []for pnt in part:if pnt:part_vertices.append((pnt.X, pnt.Y))# 移除每个part的闭合点if len(part_vertices) > 1 and part_vertices[-1] == part_vertices[0]:part_vertices.pop()vertices.extend(part_vertices)if not vertices:arcpy.AddMessage(dkbm)continue# 顶点有效性检查if vertices == []:arcpy.AddMessage('CUO')continue# 添加计算保护try:distances = [math.hypot(v[0] - northwest.X, northwest.Y - v[1])for v in vertices]min_dist = min(distances)start_idx = distances.index(min_dist)except:arcpy.AddMessage(dkbm)continuen = len(vertices)ordered_indices = [(start_idx + i) % n for i in range(n)]if not len(ordered_indices)==len(vertices):arcpy.AddMessage(dkbm)continuefor point_number, vertex_idx in enumerate(ordered_indices, start=1):raw_x,raw_y= vertices[vertex_idx]hashed_coord = (round(raw_x,3),round(raw_y,3))if hashed_coord not in point_dict1:point_dict1[hashed_coord] = {'point':arcpy.Point(raw_x, raw_y),'dkbms':[],'jzdhs':[]}current_entry = point_dict1[hashed_coord]if dkbm not in current_entry['dkbms']:current_entry['dkbms'].append(dkbm)current_entry['jzdhs'].append(str(point_number))
# 创建界址点要素
global sr
sr = arcpy.Describe(dk_shp).spatialReference
arcpy.CreateFeatureclass_management(jzd_folder, "JZD.shp", "POINT", spatial_reference=sr)
arcpy.AddField_management(output_fc, "DKBM", "TEXT", field_length=255)
arcpy.AddField_management(output_fc, "JZDH", "TEXT", field_length=255)
# 写入要素
with arcpy.da.InsertCursor(output_fc, ["SHAPE@", "DKBM", "JZDH"]) as cursor:for key in point_dict1.values():dkbm_str = "/".join(key['dkbms'])jzdh_str = "/".join(key['jzdhs'])cursor.insertRow((arcpy.PointGeometry(key['point'], sr),dkbm_str,jzdh_str))
arcpy.AddMessage(u"finish")

http://www.dtcms.com/wzjs/589330.html

相关文章:

  • 淘客网站让别人做wordpress标题字体样式
  • 网站制作报价是否合法漯河市建设工程信息网
  • sqlite做网站做电影网站要多少钱
  • 北京市住房及城乡建设部网站phpadmin wordpress
  • 企业的网站建设制作平台本站3天更换一次域名yw
  • 做同城信息网站怎么赚钱网站云服务器租用
  • 台州网站设计 解放路软件开发者是什么意思
  • 网站开发技术协议怎么写一个网站建设域名的构思
  • 营销型网站建设明细报龙溪网站建设企业
  • 江苏响应式网站建设哪里有做网站技术方法有
  • asp官方网站网站是不是每年都要续费
  • 怎做网站手机俄文企业网站制作
  • 建立企业网站价格宁波软件开发
  • 广州做网站appwordpress 即时预约
  • 网站建设工作室需要哪些设备网站开发师是做什么的
  • 剧院网站建设网站开发行业代码
  • 小程序开发公司案例免费做优化的网站
  • 假发网站建设怎么评价一个网站做的好否
  • 淘宝小网站怎么做的广告视频
  • 搭积木建网站软件手机网页无法打开因为reset
  • 邢台网站制作公司长沙网络推广联系昔年下拉
  • 深圳动态科技集团网站网站开发有哪些方向
  • 提供秦皇岛网站建设哪里有网站建设小公司生存
  • 广西医院的网站建设手机排行榜2024前十名最新
  • 检查网站的跳转路径是否清晰 哪里要优化仿唧唧帝笑话门户网站源码带多条采集规则 织梦搞笑图片视频模板
  • 标准件网站开发python自学网站
  • 上海网站开发设计培训phpcms移动端网站怎么做
  • 上海南山做网站含山县住房和城乡建设局网站
  • 做企业网站不好混建设网站免费模板下载
  • 石河子做网站企业网站建设代理商