(六)矢量数据的空间分析——缓冲区分析

这篇具有很好参考价值的文章主要介绍了(六)矢量数据的空间分析——缓冲区分析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

矢量数据的空间分析——缓冲区分析


缓冲区是一组或一类地图要素(点、线、面)按设定的距离条件,围绕这组要素而形成具有一定范围的多边形实体,从而实现数据在二维空间扩展的信息分析方法。

1.基本概念

从数学的角度来看,缓冲区是给定空间对象或集合后获得的他们的邻域。邻域的大小由邻域的半径或缓冲区建立的条件来决定,因此对于一个给定的对象A,他的缓冲区可以定义为:P = { x | d (x, A) ≤ r } ,式中,d为欧氏距离,也可以是其他的距离,其中r为邻域半径或缓冲区建立的条件。

1.1图解

缓冲区建立的形态多种多样,主要根据建立条件来确定,常见的点缓冲区有圆形、三角形、矩形和环形等;常见的线缓冲区有双侧对称、双侧不对称或单侧缓冲区等形状;面缓冲区有内侧和外侧缓冲区。
(六)矢量数据的空间分析——缓冲区分析

1.2缓冲距离

可以输入一个固定值或一个数值型字段作为缓冲距离参数。

1.2.1固定距离

下图显示的是线要素类的缓冲区,其中使用 20 作为缓冲距离、以 FLAT 作为末端类型、以 FULL 作为侧类型并以 ALL 作为融合类型。
(六)矢量数据的空间分析——缓冲区分析
由于缓冲距离为常量,因此缓冲后所有要素的宽度相同。

1.2.2由字段决定的距离

此示例说明的是线要素类的缓冲区,其中使用 10、20 和 30 的数值字段值作为缓冲距离、以 FLAT 作为末端类型、以 FULL 作为侧类型并以 ALL 作为融合类型。
(六)矢量数据的空间分析——缓冲区分析
由于缓冲距离取决于字段值,因此可以在同一操作中应用多种不同的缓冲宽度。

2.缓冲区的建立

对于点状要素,直接以该点为圆心,已要求的缓冲区距离大小为半径绘圆,所包容的区域即为所要求的区域;线状要素和面状要素缓冲区的建立是以其边线为参考线作其平行线,并考虑端点处的建立原则,最终建立缓冲区。

2.1操作步骤

在ArcGIS中建立缓冲区的方法是基于生成多边形(缓冲向导)来实现的。

2.1.1点状要素建立缓冲区

例:对区域内的school的影响覆盖范围做分析。
①主菜单上选择自定义——自定义模式——自定义,打开自定义对话框,进入命令标签;
②在类别列表框中选择工具,在右侧命令列表框中选择缓冲向导,将其拖动至工具栏的空白处;
(六)矢量数据的空间分析——缓冲区分析
③利用选择工具,选择要进行分析的点状要素,然后单击缓冲区图标(六)矢量数据的空间分析——缓冲区分析,出现缓冲向导对话框,选择要进行分析的文件school,有选择要素时勾选仅使用所选要素,单击下一步;
(六)矢量数据的空间分析——缓冲区分析
④可选三种不同的方式选择建立不同类的缓冲区。

以指定的距离: 以一个给定的距离建立缓冲区;

基于来自属性的距离: 以分析对象的属性值作为距离建立缓冲区(属性权值缓冲区,各要素的缓冲区大小不一样);

作为多缓冲区圆环: 建立一个给定环数和间距的分级缓冲区(分级缓冲区)。
(六)矢量数据的空间分析——缓冲区分析
⑤选择普通缓冲区,给定0.3km作为缓冲范围;
⑥单击下一步,选择缓冲区输出类型,是否融合缓冲区之间的障碍;指定缓冲区的保存位置;
(六)矢量数据的空间分析——缓冲区分析
⑦单击完成,建立如下缓冲区:
(六)矢量数据的空间分析——缓冲区分析
若是基于来自属性的距离建立缓冲区,需设置属性字段,这里字段为count,输出缓冲区类型选择不融合,建立如下缓冲区:
(六)矢量数据的空间分析——缓冲区分析
(六)矢量数据的空间分析——缓冲区分析(六)矢量数据的空间分析——缓冲区分析
(六)矢量数据的空间分析——缓冲区分析

2.1.2面状要素建立缓冲区

创建方法与点状要素一致,不同之处在于创建缓冲区时,面状要素可以选择缓冲区创建的范围。
位于面的内部和外部(内外缓冲区之和);
(六)矢量数据的空间分析——缓冲区分析
仅位于面外部(仅仅只有外缓冲区);
(六)矢量数据的空间分析——缓冲区分析
仅位于面内部(仅仅只有内缓冲区);
(六)矢量数据的空间分析——缓冲区分析
位于面外部并包括内部(外缓冲区和原有图形之和)。
(六)矢量数据的空间分析——缓冲区分析
此处选择仅位于面外部(仅仅只有外缓冲区方式创建,缓冲区创建如下:
(六)矢量数据的空间分析——缓冲区分析文章来源地址https://www.toymoban.com/news/detail-485355.html

到了这里,关于(六)矢量数据的空间分析——缓冲区分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用环形缓冲区ringbuffer实现串口数据接收

    环形缓冲区(ringbuffer),实际上就是一种队列数据结构,只不过它不是线性队列,而是环形队列。 关于环形缓冲区(ringbuffer)的详细介绍,网上一搜一大把,这里不重复介绍了,我这里直接上代码。 详细介绍可以参考下面链接里面的介绍: https://en.wikipedia.org/wiki/Circular_b

    2023年04月19日
    浏览(42)
  • 【STM32 CubeMX】学STM必会的数据结构——环形缓冲区

    在嵌入式系统开发中,经常需要处理数据的缓存和传输,而环形缓冲区是一种常见且有效的数据结构,特别适用于处理实时数据流或者在有限的内存资源下高效地管理数据。在STM32微控制器的开发中,使用CubeMX工具可以方便地配置和生成环形缓冲区的代码,从而加速开发过程

    2024年04月12日
    浏览(29)
  • Elasticsearch 8.9 refresh刷Es缓冲区的数据到Lucene,更新segemnt,使数据可见

    下面的图来自ElasticSearch——刷盘原理流程,这篇文章主要讲的是refresh命令把ES写入索引缓冲区的数据刷进Lucene,使数据可供查询,搜索,否则,在索引缓冲区是不可见的,不涉及到在 translog.log 和 Lucene 的数据结构。 通过这个流程知道ES如何把索引缓冲区的数据刷进Lucene的,

    2024年02月04日
    浏览(41)
  • 【Linux】文件缓冲区

    提到文件缓冲区这个概念我们好像并不陌生,但是我们对于这个概念好像又是模糊的存在脑海中,之间我们在介绍c语言文件操作已经简单的提过这个概念,今天我们不妨深入理解什么是文件缓冲区 通过自己实现库中的一些文件操作函数更加深入的理解文件缓冲区 自定义实现

    2024年02月10日
    浏览(56)
  • 8.缓冲区管理

    双缓冲区:TC+M 假设初始状态缓冲区1满,缓冲区2空,工作区为空。 刚开始缓冲区2为空,所以设备可以向缓冲区2中冲入数据耗时T,另一方面刚开始缓冲区1中是满的,所以刚开始就可以把缓冲区1中的数据传送到工作区中,M时刻工作区被充满,CPU就开始处理数据耗时C,处理完

    2024年02月11日
    浏览(40)
  • Redis 缓冲区

    缓冲区的应用场景 : 客户端与服务器端的通信时,暂存客户端发送的命令数据,或暂存服务器端返给客户端的数据结果 主从节点间进行数据同步时,暂存主节点接收的写命令和数据 缓冲区 : 避免客户端和服务器端的请求发送和处理速度不匹配 服务器给每个连接的客户端都准

    2024年02月07日
    浏览(68)
  • 理解缓冲区

    对于这样的代码,首先可以肯定的是 printf 语句先于 sleep 执行,既然如此那么就应该是先打印语句然后进行休眠,下面看看结果: 但这里却是先休眠以后再打印语句,这是因为存在一个叫缓冲区的东西,当我们要向外设写入数据(让显示器显示就是向显示器写入数据)时会将

    2023年04月25日
    浏览(71)
  • 【Linux】理解缓冲区

    我们发现 printf 和 fwrite (库函数)都输出了2次,而 write 只输出了一次(系统调用)。为什么呢?肯定和fork有关! C接口的函数被打印了两次系统接口前后只是打印了一次:和fork函数有关,fork会创建子进程。在创建子进程的时候,数据会被处理成两份,父子进程发生写时拷

    2024年01月23日
    浏览(52)
  • 【Linux】深入理解缓冲区

    目录 什么是缓冲区 为什么要有缓冲区 缓冲区刷新策略 缓冲区在哪里  手动设计一个用户层缓冲区 缓冲区本质上一块内存区域,用来保存临时数据。 缓冲区在各种计算任务中都广泛应用,包括输入/输出操作、网络通信、图像处理、音频处理等。 这块内存区域是由 谁提供的

    2024年02月15日
    浏览(62)
  • 【linux】重定向+缓冲区

    自我名言 : 只有努力,才能追逐梦想,只有努力,才不会欺骗自己。 喜欢的点赞,收藏,关注一下把! close(1),为什么没有打印新建文件fd呢? printf(“%dn”,fd); printf会把内容打印到stdout文件中。 但是close(1)关闭标准输出stdout—显示器,int fd=open();新打开的文件fd是1。 st

    2024年02月08日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包