1.算法功能简介

  缓冲区分析是指有点、线、面实体为基础,自动建立其周围一定宽度范围内的缓冲区多边形图层,然后建立该图层与目标图层的叠加,进行分析而得到的所需的结果。他是用来解决邻近度问题的控件分析工具之一。邻近度描述了地理空间中两个地物距离相近的程度。

  缓冲区分析一般涉及点、线、面要素对象的操作,基于点要素的缓冲区,通常以点为圆心、以一定距离为半径的圆;基于线要素的缓冲区,通常是以线为中心轴线,距中心轴线一定距离的平行条带多边形;基于面要素多边形边界的缓冲区,向外或向内扩展一定距离以生成新的多边形。

  缓冲区分析是地理信息系统重要的空间分析功能之一,它在交通、林业、资源管理、城市规划中有着广泛的应用,例如湖泊和河流周围的保护区的定界、汽车服务区的选择、民宅区远离街道网络的缓冲区的建立等。想更多的了解原理可以点击链接

  PIE支持缓冲区分析算法的执行,下面对此算法功能进行介绍。

2.算法功能实现说明

2.1 实现步骤

第一步

算法参数设置

第二步

算法执行

第三步

结果显示

2.2 算法参数

算法名称

缓冲区分析算法

C#算法DLL

PIE.CommonAlgo.dll

C#算法名称

PIE.CommonAlgo. BufferAnalysisAlgo

参数结构体

stBufferAnalyse_Exchange_Info

参数说明

strInputFile

String

输入进行缓冲区分析的矢量文件

strOutputFile

String

缓冲区分析的输出结果文件

sideType

PIE.CommonAlgo.SideType

侧类型(枚举类型)

fuseType

PIE.CommonAlgo.FuseType

融合类型(枚举类型)

endCapStyle

EndCapStyle

末端类型

dbDistance

double

缓冲区分析的距离

2.3 示例代码

数据路径

百度云盘地址下/ PIE示例数据/矢量数据/Shape/省会城市.shp

视频路径

百度云盘地址下/PIE视频教程/10.算法调用/实用工具/缓冲区分析算法.avi

示例代码

 /// <summary>
/// 缓冲区分析
/// </summary>
public void BufferAnalysis()
{
//1、参数设置
PIE.CommonAlgo.stBufferAnalyse_Exchange_Info info = new stBufferAnalyse_Exchange_Info();
info.strInputFile = @"D:\data\China1\省会城市.shp";
info.strOutputFile = @"D:\data\China1\buffer省会城市.shp";
info.dbDistance = ;
info.sideType = SideType.SideType_Left;//侧类型
info.fuseType = FuseType.FuseType_All;//融合类型
info.endCapStyle = EndCapStyle.EndCapStyle_Round;//末端类型 //2、创建算法对象
PIE.SystemAlgo.ISystemAlgo algo = PIE.SystemAlgo.AlgoFactory.Instance().CreateAlgo("PIE.CommonAlgo.dll", "PIE.CommonAlgo.BufferAnalysisAlgo");
if (algo == null) return;
algo.Name = "缓冲区分析";
algo.Params = info; //3、执行算法并显示
bool result = PIE.SystemAlgo.AlgoFactory.Instance().ExecuteAlgo(algo);
if (result)
{
MessageBox.Show("执行成功");
ILayer layer = LayerFactory.CreateDefaultLayer(info.strOutputFile);
if (layer == null) return;
m_HookHelper.ActiveView.FocusMap.AddLayer(layer);
m_HookHelper.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
}
}

2.4 示例截图

PIE SDK缓冲区分析算法的更多相关文章

  1. PIE SDK矢量栅格化算法

    1.算法功能简介 矢量栅格化,由矢量数据向栅格数据的转换一般比较方便.对于点.线目标,由其所在的栅格行.列数表示,对于面状目标,则需判定落人该面积内的像元.通常栅格(像元)尺寸均大于原来坐标表示的分辨 ...

  2. PIE SDK水深提取算法

    1.算法功能简介 水深提取算法就是根据输入的水位设为d,dem设为h 这两个数据做一个差值运算,则水深计算公式为d-h;本示例中的是基于洞庭湖提取的水体矢量文件的范围来计算dem和水位25米的差值. ...

  3. PIE SDK创建金字塔算法

    1.算法功能简介 为栅格影像建立了金字塔,这些影像便能快速进行显示.除了在屏幕上显示外,金字塔还包含了很多其他信息.如果没有金字塔,那么在显示时就要访问整理栅格数据集,然后进行大量计算来选择哪些栅格像 ...

  4. PIE SDK图像重采样算法

    1.算法功能简介 图像重采样是指对采样后形成的由离散数据组成的数字图像按所需的像元位置或像元问距重新采样,以构成几何变换后的新图像.重采样过程本质上是图像恢复过程,它用输入的离散数字图像重建代表原始图 ...

  5. PIE SDK与IDL算法结合说明文档

    1.功能简介 IDL是一门简单易用的科学计算和可视化语言,包含大量的图形图像处理函数,尤其是同ENVI结合集成了该软件的大量功能,因此被广泛用于遥感.地信领域. 本示例程序实现了IDL算法与PIESD ...

  6. PIE SDK水体指数法

    1.算法功能简介 单波段阈值法是通过选择某单一波段为判识参数,这一波段往往是水体特征最明显而其它地物相对不太突出的波段(如近红外波段和中红外波段),然后再划定阈值来确定水体信息.该方法主要是利用水体在 ...

  7. PIE SDK主/次要分析

    1.算法功能简介 主要分析功能是采用类似卷积滤波的方法将较大类别中的虚假像元归到该类中,首先定义一个变换核尺寸,然后用变换核中占主要地位(像元最多)类别数代替中心像元的类别数,次要分析相反,用变换核中 ...

  8. PIE SDK算法的同步调用

    1.    算法功能简介 同步调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为. PIE SDK支持算法功能的执行,下面对算法的同步调用功能进行介绍. 2.    算法功能实现说明 2. ...

  9. PIE SDK算法的异步调用

    1.算法功能简介 异步方法一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作.异步方法通常会在另外一个线程中,“真实”地执行着.整个过程,不会阻碍调用者的工作. PIE SDK支持算法功能的执 ...

随机推荐

  1. Nginx+Docker部署模式下 asp.net core 获取真实的客户端ip

    目录 Nginx+Docker部署模式下 asp.net core 获取真实的客户端ip 场景 过程还原 结论 参考资料 Nginx+Docker部署模式下 asp.net core 获取真实的客户端 ...

  2. Jenkins参数化构建(七)

    一.配置参数化构建过程 主要用来区分分支,使用传参的方式,将分支名称传入脚本中进行拉取代码. 1.1 最常用的是:字符参数.文本参数.  1.2 添加字符参数和文本参数,并配置变量名称  1.3 配置 ...

  3. 关于苹果macOS更新到Catalina后出现的各种问题(持续更新)

    一.Mac系统更新后 Git 不能用,提示 missing xcrun at:xxx xcrun: error: invalid active developer path (/Library/Dev ...

  4. 关于如何自定义修改pytest-html报告深度学习总结

    第一.pytest-html执行命令总结: pytest test_case.py --html=report.html --self-contained-html 直接html独立显示pytest ...

  5. E05 【餐厅】What kind of coffee or tea would you like?

    核心句型 What  kind  of  coffee or tea would you like? 你想喝什么咖啡或者茶? What  would  you like? 你喜欢什么?/你想要什么? ...

  6. 【Java】Spring

    AnnotationConfigApplicationContext:从一个或多个基于Jav a的配置类中加载Spring应用上下文.AnnotationConfigWebApplicationCon ...

  7. IP、MAC和端口号(六)

    在茫茫的互联网海洋中,要找到一台计算机非常不容易,有三个要素必须具备,它们分别是 IP 地址.MAC 地址和端口号. 一.IP地址 IP地址是 Internet Protocol Address 的缩 ...

  8. zz——Recent Advances on Object Detection in MSRA

    本文由DataFun社区根据微软亚洲研究院视觉组Lead Researcher Jifeng Dai老师在2018 AI先行者大会中分享的<Recent Advances on Object D ...

  9. c#中几种数据结构

    数组型: Array:内存连续分配,长度不可变,可索引访问. ArrayList:早期版本使用,非泛型,类型不安全,如果元素数据类型不同可考虑使用. List<>:泛型,可变长度,内存连续 ...

  10. Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4) 题解

    Happy Birthday, Polycarp! Make Them Odd As Simple as One and Two Let's Play the Words? Two Fairs Bea ...