ArcGIS基础实验操作100例--实验85创建线要素间的最近垂线

2023-10-13 15:50

本文主要是介绍ArcGIS基础实验操作100例--实验85创建线要素间的最近垂线,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书

实验平台:ArcGIS 10.6

实验数据:请访问实验1(传送门)

空间分析篇--实验85 创建线要素间的最近垂线

目录

一、实验背景

二、实验数据

三、实验步骤

(1)线要素转折点要素

(2)近邻分析

(3)添加折点坐标

(4)创建近邻分析结果的连线要素

(5)创建最近垂线要素


一、实验背景

在欧氏空间的条件下,要素与要素之间的最近距离可以视为两要素上任意位置组合之间距离最小的位置连线。而线要素和面要素都由节点要素组成,若要计算线要素或面要素之间的最近距离,可以先将线要素或面要素转为点要素进行处理。

本实验讲述使用地理信息系统软件计算曲线到直线之间最近垂线的位置,并将最近垂线生成为线要素。读者通过实验练习,应能够理解矢量要素的几何特征,掌握基于几何结构的要素分析方法。

二、实验数据

图层名称格式坐标系说明
LineShapefile线要素Krasovsky_1940_Transverse_Mercator用于分析的线要素
RoadShapefile线要素Krasovsky_1940_Transverse_Mercator用于分析的线要素

直接双击文件Ex85.mxd即可打开。

三、实验步骤

(1)线要素转折点要素

在ArcToolbox 中,打开【Data Mangement Tools】→【Featues】→【Feature Vertices To Points】对话框,【Input Features】设置为“road”,【Output Feature Class】设置为“point”,【Point Type】设置为“ALL”;点击【OK】,得到折点要素。

(2)近邻分析

打开【Analysis Tools】→【Proximity】→【Near】对话框,【Input Features】设置为“point”,【Near Features】设置为“line”,勾选【Location】选项;点击【OK】,近邻分析的结果被写入 “point”图层的属性表中。

注:在勾选【Location】选项后,对“point”图层每个要素进行近邻分析时,“line”图层上距离“point” 要素最近的距离值将被记录到该point要素的属性中,同时该最近位置的坐标也会一并记录,即最终得到的字段“NEAR_DIST” “NEAR_X”和“NEAR_Y”。

(3)添加折点坐标

打开【Data Management Tools】→【Features】→【Add XY Coordinates】对话框,【Input Features】设置为“point”;点击【OK】,折点要素的坐标值被写入其属性表中。

(4)创建近邻分析结果的连线要素

打开【Data Management Tools】→【Features】→【XY To Line】对话框,【Input Table】设置为“point”,【Output Feature Class】设置为“xyline”,【Start X Field】设置为“POINT_X”,【Start Y Field】设置为“POINT_Y”,【End X Field】设置为“NEAR_X”,【End Y Field】设置为“NEAR_Y”,其余参数默认;点击【OK】,生成折点要素至线要素对应最近点的连线。

注:实现【XY To Line】工具,必须要保证折点要素带有坐标信息。

(5)创建最近垂线要素

打开“point”图层属性表,依据“NEAR_DIST”字段从小到大排序,即可得到两个距离最近的点要素,选中这两个点要素,重复步骤(4),即可得到最近垂线要素“nearline”。

注:本实验中两条曲线图层road 关于直线line图层对称,所以最近距离相等;实际情况中应使用恰当方法查找最近距离的点。

这篇关于ArcGIS基础实验操作100例--实验85创建线要素间的最近垂线的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/204291

相关文章

poj1330(LCA最近公共祖先)

题意:求最近公共祖先 思路:之前学习了树链剖分,然后我就用树链剖分的一小部分知识就可以解这个题目了,记录每个结点的fa和depth。然后查找时,每次将depth大的结点往上走直到x = y。 代码如下: #include<iostream>#include<algorithm>#include<stdio.h>#include<math.h>#include<cstring>

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

顺序表之创建,判满,插入,输出

文章目录 🍊自我介绍🍊创建一个空的顺序表,为结构体在堆区分配空间🍊插入数据🍊输出数据🍊判断顺序表是否满了,满了返回值1,否则返回0🍊main函数 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~ 🍊自我介绍   Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

音视频入门基础:WAV专题(10)——FFmpeg源码中计算WAV音频文件每个packet的pts、dts的实现

一、引言 从文章《音视频入门基础:WAV专题(6)——通过FFprobe显示WAV音频文件每个数据包的信息》中我们可以知道,通过FFprobe命令可以打印WAV音频文件每个packet(也称为数据包或多媒体包)的信息,这些信息包含该packet的pts、dts: 打印出来的“pts”实际是AVPacket结构体中的成员变量pts,是以AVStream->time_base为单位的显