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

基于ArcGis提取道路中心线

基于ArcGis提取道路中心线

文章目录

  • 基于ArcGis提取道路中心线
  • 前言
  • 一、生成缓冲区
  • 二、导出栅格数据
  • 三、导入栅格数据
  • 四、新建中心线要素
  • 五、生成中心线
  • 总结


前言

最近遇到一个问题,根据道路SHP数据生成模型的时候由于下载的道路数据杂项数据很多,所以导致生成的道路数据非常奇怪,主要问题是道路数据很多是双向的还有各种分支道路,这个时候就在想有没有什么办法能提取道路的中心线,下面是如何ArcGis中对道路数据进行提取中心线。


提示:以下是本篇文章正文内容,下面案例可供参考

一、生成缓冲区

1.首先打开需要生成的道路数据:
在这里插入图片描述
2.打开后利用工具箱的缓冲区工具生成一个缓冲区矢量数据:
在这里插入图片描述
在这里插入图片描述
调整参数后点击 确定:
在这里插入图片描述
这里处理完成后 会生成一个缓冲区的矢量数据

注:这里处理的对话框 这个是自己打开的 默认是不打开的,如果要打开的话 可与再上方工具栏中找到【地理处理】-【地理处理选项】->【后台处理】的勾去掉即可。

3.生成缓冲区后再图层中修改缓冲区的颜色
在这里插入图片描述
将颜色改成黑色,轮廓宽度改成0 后点击确定:
在这里插入图片描述

二、导出栅格数据

1.上面步骤将缓冲区颜色修改后 然后将元数据隐藏只留缓冲区图层:
在这里插入图片描述
然后选择缓冲区图层 右键->【缩放至图层】
在这里插入图片描述
2.执行【缩放至图层】操作后,再工具栏中选择【文件】->【导出地图】:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
再导出地图选项中 将上图的红框选项修改完毕后 选择保存按钮即可

三、导入栅格数据

1.上述步骤完毕后,将数据添加到图层中:
在这里插入图片描述
2.添加过程中会弹出一个对话框:
在这里插入图片描述
在这里插入图片描述
3.上图选项默认即可,导入后将缓冲区图层隐藏:
在这里插入图片描述
4.设置栅格图层的唯一值:
导入栅格图层后 双击删图层 操作如图:
在这里插入图片描述
选择应用后 点击确认即可

四、新建中心线要素

1…新建中心线图层
再默认的文件数据库中右键新建一个线要素
在这里插入图片描述
在这里插入图片描述
2.选择新建 要素类后 弹出如下弹窗:
在这里插入图片描述
3.然后选择对应的投影坐标系:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.完成上方操作后 点击完成 会自动将新建的图层添加到地图中:
在这里插入图片描述

五、生成中心线

前面4个步骤操作完毕后,接下来就开始生成道路中心线了

1.保证图层中只有删格数据和线要素数据:
在这里插入图片描述
2.然后再道路数据 右键 选择编辑要素:
在这里插入图片描述
3.执行完开始编辑步骤后 在上方工具栏选择【自定义】->【扩展模块】选项
在这里插入图片描述
在这里插入图片描述

4.将【ArcScan】勾选上后 点击关闭选项,紧接着重新在工具栏中打开 ArcScan工具:
在这里插入图片描述
在这里插入图片描述
5.修改【栅格捕捉选项】参数:
在这里插入图片描述
5.上图中的 最大宽度根据自己的要求进行修改即可 修改数值后点击确定即可,然后点击【矢量化】打开显示预览:
在这里插入图片描述
如上图所示 道路的中心线已经生成了,接着保存中心线 点击【矢量化】->【生成要素】:
在这里插入图片描述
在这里插入图片描述
点击确定后 中心线就在新建的中心线图层创建了。

在这里插入图片描述

生成后记得停止编辑,然后把栅格图层隐藏就好了。

在这里插入图片描述
到这里基于ArcGis提取道路中心线的步骤就完成了。


总结

以上就是今天要讲的内容,本文仅仅简单基于ArcGis提取道路中心线,上面步骤还能再继续优化,相关的数值参数自行调整即可。

相关文章:

基于ArcGis提取道路中心线

基于ArcGis提取道路中心线 文章目录 基于ArcGis提取道路中心线前言一、生成缓冲区二、导出栅格数据三、导入栅格数据四、新建中心线要素五、生成中心线总结 前言 最近遇到一个问题,根据道路SHP数据生成模型的时候由于下载的道路数据杂项数据很多,所以导…...

xcode14.3更新一系列问题

1. Missing file libarclite_iphoneos.a (Xcode 14.3) 解决方法 Xcode升级到14.3后编译失败,完整错误日志: File not found: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneo…...

1U和2U的服务器怎么选择

企业建设网站的过程中,离不开租用服务器的环节,服务器在多种场景里面都可以发挥作用,服务器租用渠道有哪些?1U、2U选哪种服务器比较好?大家跟着壹基比小鑫一起来了解具体内容吧! 1U、2U选哪种服务器比较好&…...

【SA8295P 源码分析】05 - SA8295P QNX Host 上电开机过程 进一步梳理(结合代码)

【SA8295P 源码分析】05 - SA8295P QNX Host 上电开机过程 进一步梳理(结合代码) 一、APPS PBL(Application Primary Boot Loader):固化在CPU ROM中1.1 APPS PBL 加载 XBL Loader1.2 XBL Loader加载验证并运行SMSS进行自检,自检完成后触发Warm Reset1.3 WarmRest后,APPS…...

【数据结构与算法】迪杰斯特拉算法

迪杰斯特拉算法 介绍 迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以中心向外层层扩展(广度优先搜索思想),直到扩展到终点为止。 算法过程 设置…...

python爬虫-网页数据提取

import requests #headers 网页右键->Network->最下面的User-Agent复制。 headers {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36"} #你想要的网址 url &q…...

ZigBee的Many-to-One和Source Routing

1. Many-to-One Routing Many-to-One Routing,是一种简单的路由机制,使得整个网络中的路由设备拥有回到中心节点的路由。 在这种机制下,中心节点周期性发送Many-to-One route discovery广播(协议栈默认设置为60s,可以…...

七夕节 Chinese Valentine‘s Day 的由来

农历七月初七是七夕节。Qixi Festival falls on the seventh day of the seventh lunar month. 以前有一个牛郎,和他的哥哥和嫂子住在一起。他放的一头牛曾经是天庭的一个神仙,但他违反天庭的戒律,变成牛放到了人间。As the story goes,once …...

掌握JDK21全新结构化并发编程,轻松提升开发效率!

1 概要 通过引入结构化并发编程的API,简化并发编程。结构化并发将在不同线程中运行的相关任务组视为单个工作单元,从而简化错误处理和取消操作,提高可靠性,并增强可观察性。这是一个预览版的API。 2 历史 结构化并发是由JEP 42…...

【SA8295P 源码分析】00 - 系列文章链接汇总 - 持续更新中

【SA8295P 源码分析】00 - 系列文章链接汇总 - 持续更新中 一、分区、下载、GPIO等杂项相关二、开机启动流程代码分析二、OpenWFD 显示屏模块三、Touch Panel 触摸屏模块四、QUPv3 及 QNX Host透传配置五、Camera 摄像头模块(当前正在更新中...)六、网络…...

TCP拥塞控制详解 | 6. 主动队列管理

网络传输问题本质上是对网络资源的共享和复用问题,因此拥塞控制是网络工程领域的核心问题之一,并且随着互联网和数据中心流量的爆炸式增长,相关算法和机制出现了很多创新,本系列是免费电子书《TCP Congestion Control: A Systems …...

前端学习清单

顺序不分先后。 技术名称技术描述技术链接HTML5HTML5是下一代的HTML标准,是一种用于结构化内容的标记语言。MDN|HTMLCSS3CSS3是CSS技术的升级版本,它的最大好处就是可以让网页设计师更加方便的为网页添加各种各样的样式,而不用再局限于文字、…...

go atomic原子操作详细解读

文章目录 概要1、基本知识1.1 原子操作是什么1.2 CPU怎么实现原子操作的? 2、atomic包2.1、 Add函数2.2、CompareAndSwap函数2.3、Swap函数2.4、Load函数2.5、Store函数 3、atomic.Value值 概要 atomic包是golang通过对底层系统支持的原子操作进行封装,…...

Vue用JSEncrypt对长文本json加密以及发现解密失败

哈喽 大家好啊,最近发现进行加密后 超长文本后端解密失败,经过看其他博主修改 JSEncrypt原生代码如下: // 分段加密,支持中文JSEncrypt.prototype.encryptUnicodeLong function (string) {var k this.getKey();//根据key所能编…...

Excel/PowerPoint折线图从Y轴开始(两侧不留空隙)

默认Excel/PowerPoint折线图是这个样子的: 左右两侧都留了大块空白,很难看 解决方案 点击横坐标,双击,然后按下图顺序点击 效果...

C++的类成员对齐

这是个小语法点,之前我们的对齐方式都是使用#pragma pack,这个方式实际是依赖编译器,且粒度粗(如果#pragma pack(1)之后没有#pragma pack(),那就作用整个进程了)。在C11之后引入关键字alignas,以此来实现对齐更加便利,…...

敏感挂载userhelper容器逃逸复现

目录 前言 分析 实验 前言 分析 实验 # Creates a payload cat "#!/bin/sh" > /evil-helper cat "ps > /output" >> /evil-helper chmod x /evil-helper # Finds path of OverlayFS mount for container # Unless the configuration ex…...

深度解读Promise.prototype.finally

由一个问题引发的血案: 手写源码实现Promise.prototype.finally。 我们知道,对于promise来讲,当状态敲定,无论状态兑现或拒绝时都需要调用的函数,可以使用Promise.prototype.finally的回调来实现。那么如何手写实现Pro…...

如何实现24/7客户服务自动化?建设智能客服知识库

客户自助服务是指用户通过企业或者第三方建立的网络平台或者终端,实现相关的自定义处理。实现客户服务自动化,对提高客户满意度、维持客户关系至关重要。客户服务自动化可以帮助企业以更快的速度和更高的效率来满足客户的售后服务要求,以进一…...

和鲸 ModelWhale 与中科可控多款服务器完成适配认证,赋能中国云生态

当前世界正处于新一轮技术革命及传统产业数字化转型的关键期,云计算作为重要的技术底座,其产业发展与产业规模对我国数字经济的高质量运行有着不可取代的推动作用。而随着我国数字上云、企业上云加快进入常规化阶段,云计算承载的业务应用越来…...

selenium +Jmeter 的性能测试

通过Jmeter快速将已有的Selenium 代码以性能测试的方式组织起来,并使用JMeter 丰富的报表展示测试结果 from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.by import By driver …...

探索高效的HTTP异步接口测试方法:从轮询等待到自动化方案

本文将深入探讨HTTP异步接口测试的多个方面,包括轮询等待、性能测试以及自动化方案。通过详细的解释和实际案例,帮助您了解如何有效地测试异步接口,确保系统的稳定性和性能。 在现代软件开发中,HTTP异步接口扮演着至关重要的角色&…...

Android资深工程书之LiveData核心组件原理剖析

LiveData是Android架构组件库中的一个类,用于在应用程序组件之间共享数据。它是一种可观察的数据持有者,可以感知应用程序组件的生命周期,并在数据发生变化时通知观察者。 使用LiveData 在Android应用程序中使用LiveData,你可以…...

Vue的五种方法实现加减乘除运算

五种方法的详细说明: 计算属性(Computed Properties): 计算属性是Vue.js提供的一种便捷的属性,它根据依赖的数据动态计算出一个新的值。计算属性的值会被缓存,只有当依赖的数据发生变化时,才会…...

C++(1)Linux基础知识

经济下行,计算机就业形势严峻,为了勉励自己继续进步,继续学习代码提高核心竞争力。 安装QT Creator 首先,安装QT开发工具QT Creator 参考:2021最新Qt6开发环境(Qt Creator)安装以及卸载记录_q…...

接口自动化yaml文件读取与写入

前言 在走进yaml文件之前大家应该都很想知道他是用来干嘛的? 是的是的,他是用来做接口自动化测试的。 我们一起来学习他吧!——(一定要收藏带走哦❤) 1、yaml文件有什么作用呢? ①可作为配置文件使用—…...

Java Map、JSONObject、实体类互转

文章目录 前言Map、JSONObject、实体类互转 前言 使用库 com.alibaba.fastjson2,可完成大部分JSON转换操作。 详情参考文章: Java FASTJSON2 一个性能极致并且简单易用的JSON库 Map、JSONObject、实体类互转 import com.alibaba.fastjson2.JSON; import com.alib…...

在Hive/Spark上执行TPC-DS基准测试 (PARQUET格式)

在上一篇文章:《在Hive/Spark上运行执行TPC-DS基准测试 (ORC和TEXT格式)》中,我们介绍了如何使用 hive-testbench 在Hive/Spark上执行TPC-DS基准测试,同时也指出了该项目不支持parquet格式。 如果我们想要生成parquet格式的测试数据,就需要使用其他工具了。本文选择使用另…...

基于CentOS搭建私有仓库harbor

环境: 操作系统:CentOS Linux 7 (Core) 内核: Linux 3.10.0-1160.el7.x86_64 目录 安装搭建harbor (1)安装docker编排工具docker compose (2)下载Harbor 安装包 (3&…...

PDF怎么转Word?8 个最佳 PDF 转 Word 转换器

PDF 转 Word 转换工具只是一个特殊程序,可以将 PDF(本机和/或扫描)转换为 Microsoft Office Word 格式。将 PDF 导出到 Word 的主要原因之一是满足可编辑文档的需求,尽管还有其他原因。 由于缺少 PDF 阅读器,您可以选…...

拼多多推广引流软件免费/云南seo简单整站优化

专注于Java领域优质技术号,欢迎关注作者:程序员小灰如何用程序实现大整数相乘呢?在上一篇文章 算法:如何实现大整数相乘?(上) 当中,我们介绍了两种思路:1.像列竖式一样&…...

网站 手机网站/惠州百度关键词优化

微信小程序接入腾讯云IM即时通讯(会话列表之未读消息,显示最新一条消息开发步骤) 1.未读消息思路 首先,获取未读消息第一步就是要先能接收到对方发送的信息,也就是要在官方api中给的监听新消息事件做处理。先看下图需…...

不用域名推广网站/最近热点新闻事件

上篇博客《SSH快速进阶——struts2简单的实例》中,处理用户登陆的action—LoginAction为: package com.danny.user.action;public class LoginAction {private String username;private String password;public String getUsername() {return username;…...

盈利网站/免费建站免费网站

智力游戏 19十五益智游戏(2)这个游戏非常简单。首先,把数字分成三组,每组的和为0这里,分成(-4、-1、5)、(4、6、-10)、(3、-3)如果有多种分组方案…...

网站下载视频方法/网络推广费用

首先,raw的意思就是「未经加工的,生的」。 python 2.x 中: raw_input() 和 input() 这两个内建函数都可以读取用户的输入来实现交互的目的,但二者存在差别。 raw_input(): 顾名思义,不管用户输入的是字符还是数字&…...

自学网站平面设计/东莞网站推广行者seo08

这是悦乐书的第190次更新,第193篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第49题(顺位题号是204)。计算小于非负数n的素数的数量。例如: 输入:10 输出:4 说明:有4个素数小于…...