arcpy创建基本要素:折线和多边形

news/2024/11/8 9:46:02/

目录

  • 创建Polyline折线要素
    • 步骤一:创建空间参考
    • 步骤二:创建属性类
    • 步骤三:创建字段
    • 步骤四:创建记录并插入几何信息
  • 创建Polygon多边形要素
    • 步骤一:创建空间参考(同上)
    • 步骤二:创建要素类
    • 步骤三:创建字段(同上)
    • 步骤四:创建记录并插入几何信息

在本篇博客中,我将向您介绍如何使用 ArcPyArcGIS环境中创建 折线(Polyline)多边形(Polygon)要素。我们将深入讨论每个部分的细节,包括创建空间参考、创建属性类、创建字段、创建游标以及创建记录。以下是每个部分的详细内容以及相应的代码示例。

创建Polyline折线要素

步骤一:创建空间参考

在创建地理要素之前,首先需要定义一个空间参考。这可以通过指定坐标系来完成。

import arcpy# 定义坐标系
spatial_reference = arcpy.SpatialReference(4326)  # WGS 84经纬度坐标系

步骤二:创建属性类

output_workspace = "C:/path/to/output.gdb"  # 输出工作空间的路径
arcpy.env.workspace = output_workspace# 创建要素类
output_feature_class = "polylines"  # 要素类名称
arcpy.CreateFeatureclass_management(output_workspace, output_feature_class, "POLYLINE", spatial_reference)

步骤三:创建字段

添加一些属性字段,以存储关于折线要素的信息。

# 添加字段
arcpy.AddField_management(output_feature_class, "Name", "TEXT")
arcpy.AddField_management(output_feature_class, "Length", "DOUBLE")

步骤四:创建记录并插入几何信息

# 插入记录
with arcpy.da.InsertCursor(output_feature_class, ["SHAPE@", "Name", "Length"]) as cursor:array = arcpy.Array([arcpy.Point(-122.123, 37.456), arcpy.Point(-122.456, 37.789)])polyline = arcpy.Polyline(array)cursor.insertRow([polyline, "Polyline A", polyline.length])

创建Polygon多边形要素

步骤一:创建空间参考(同上)

步骤二:创建要素类

# 创建多边形要素类
output_polygon_class = "polygons"
arcpy.CreateFeatureclass_management(output_workspace, output_polygon_class, "POLYGON", spatial_reference)

步骤三:创建字段(同上)

步骤四:创建记录并插入几何信息

# 插入多边形记录
with arcpy.da.InsertCursor(output_polygon_class, ["SHAPE@", "Name", "Area"]) as cursor:array = arcpy.Array([arcpy.Point(-122.123, 37.456), arcpy.Point(-122.456, 37.789), arcpy.Point(-122.789, 37.123)])polygon = arcpy.Polygon(array)cursor.insertRow([polygon, "Polygon A", polygon.area])

通过上述步骤,就完成了如何使用ArcPy库在ArcGIS环境中创建折线和多边形要素。这些基本的步骤提供了在GIS项目中进行空间数据处理的基础知识。希望这篇博客对您有所帮助!如有任何疑问,欢迎在评论区提问。


http://www.ppmy.cn/news/1031529.html

相关文章

做海外游戏推广有哪些条件?

做海外游戏推广需要充分准备和一系列条件的支持。以下是一些关键条件: 市场调研和策略制定:了解目标市场的文化、玩家偏好、竞争格局等是必要的。根据调研结果制定适合的推广策略。 本地化:将游戏内容、界面、语言、货币等进行本地化&#…

2023 8 -14链表OJ

💕人面只今何处去,桃花依旧笑春风💕 作者:Mylvzi 文章主要内容:详解链表OJ题 题目一:环形链表(判断链表是否带环) 题目描述: 画图分析: 代码实现&#x…

网络安全 Day31-运维安全项目-容器架构下

容器架构下 6. Dockerfile6.1 Docker自动化DIY镜像之Dockerfile1) 环境准备2) 书写Dockerfile内容3) 运行Dockerfile生成镜像4) 运行容器5) 小结 6.2 案例14:Dockerfile-RUN指令1) 书写Dockerfile2) 构建镜像3) 启动容器4) 测试结果 6.3 Dockerfile指令 …

SpringSecurity如何放行资源

SpringSecurity配置放行资源 permitAll配置实例 EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter {Overridepublic void configure(HttpSecurity http) throws Exception {http.authorizeRequests().antMatchers("/css/**", …

手机照片误删怎么办,电脑照片误删怎么办怎么才能找回,EasyRecovery来帮您

手机照片误删怎么办,电脑照片误删怎么办怎么才能找回,EasyRecovery 2023来帮您!!! EasyRecovery 2023是一款操作安全、价格便宜、用户自主操作的 数据恢复 方案,它支持从各种各样的 存储介质 恢复删除 或者…

opencv实战项目 手势识别-手势音量控制(opencv)

本项目是使用了谷歌开源的框架mediapipe,里面有非常多的模型提供给我们使用,例如面部检测,身体检测,手部检测等。 手势识别系列文章 1.opencv实现手部追踪(定位手部关键点) 2.opencv实战项目 实现手势跟踪…

Vue学习:创建Vue

一、安装Node.js和NPM 1.安装node.js 从node.js官网下载并安装node.js 网址: Download | Node.js 2.双击” node-v8.1.2-x64.msi”开始安装 至此Node.js已经安装完成,可以先进行下简单的测试安装是否成功了,后面还要进行环境配置在键盘按…

如何初始化Git仓库

如何将目录初始化为Git仓库 一级目录二级目录三级目录 一、准备1、安装 gh2、登录 二、初始化 Git 仓库 一级目录 二级目录 三级目录 一、准备 ​ 在这里,我们需要借助一个非常好用的工具,大家也可以参照官方文档进行阅读,下面介绍常用的…