ArcGIS 网络分析[8.4] 资料4 聚合——创建及打开网络数据集的类实现
这篇是对前三篇的总结,因为网络数据集涉及的“点”太多了,我只能挑重点来设置,大家明白框架后可以自行寻求帮助文档添加功能。
我以C#类的形式给出,这个类包含很多种方法,因为本人的C#功底还不是很好,对设计模式还不能很好的把控,应该算是工厂模式的一个小小实验吧,如果有不对的地方请编程大佬指出。
这个类的名称是NetworkDatasetConstrutor,实现多个接口(加载的放一个接口,网络属性的一个接口,网络源一个接口,创建并构建一个接口等),其中设置方法如下:
- NetworkDatasetConstrutor.LoadFeatureDataset(),给定一个字符串,返回一个IFeatureDataset对象;
- NetworkDatasetConstrutor.CreateDENetworkDataset(),给定【】,返回一个空白IDENetworkDataset;
- NetworkDatasetConstrutor.IsEmptyDENetworkDataset(),给定IDENetworkDataset,判断其中空白的属性,返回字符串信息;
- NetworkDatasetConstrutor.CreateNetworkSources(),给定网络源类型,返回空白网络源对象;
- NetworkDatasetConstrutor.SetEdgeNetworkSource(),给定网络源和它的属性,设置其连通性、方向等属性;
- NetworkDatasetConstrutor.SetJunctionNetworkSource(),同上,是交点的属性;
- NetworkDatasetConstrutor.SetTurnNetworkSource(),同上,是转弯的属性。
- NetworkDatasetConstrutor.CreateNetworkCostAttribute(),给定【】,返回成本网络属性;
- NetworkDatasetConstrutor.SetNetworkCostAttribute(),给定【】,设置成本类型网络属性;
- NetworkDatasetConstrutor.CreateNetworkDirection(),返回网络导航空白对象;
- NetworkDatasetConstrutor.SetNetworkDirection(),设置网络导航对象的属性;
- NetworkDatasetConstrutor.LoadNetworkDataset(),给定一个字符串,返回一个INetworkDataset
- NetworkDatasetConstrutor.CreateNetworkDataset(),给定一个IDENetworkDataset,创建一个INetworkDataset并返回
- NetworkDatasetConstrutor.BuildNetworkDataset(),给定IDENetworkDataset或INetworkDataset,构建。
其中,网络属性部分比较复杂,仍需斟酌。
待细化。(同理,在后面NetworkAnalyst中,为了方便,我也会自定义一个类)
ArcGIS 网络分析[8.4] 资料4 聚合——创建及打开网络数据集的类实现的更多相关文章
- ArcGIS 网络分析[8.1] 资料1 使用AO打开或创建网络数据集之【打开】
为了创建或打开一个网络数据集,你必须使用NetworkDatasetFDExtension对象(文件地理数据库中的数据集)或NetworkDatasetWorkspaceExtension对象(对于S ...
- ArcGIS 网络分析[8.6] 资料6 创建网络分析图层及进行路径分析
基于上篇所介绍的内容,就说说如何利用访问到的网络数据集,在Map中添加网络数据集图层.创建网络分析图层中的路径图层,并执行路径分析示例.
- ArcGIS 网络分析[8.2] 资料2 使用IDatasetContainer2接口的CreateDataset方法创建网络数据集
上节提及如何使用IDatasetContainer2接口访问到网络数据集,上例可以封装为一个方法. 这节就使用IDatasetContainer2接口(Geodatabase类库)的CreateDat ...
- ArcGIS 网络分析[2] 利用自定义基础数据创建网络数据集
前言 似乎除了官方介绍的例子,我还没有在网上见过一篇介绍如何"使用自己的数据"创建"网络数据集"的文章. 有介绍几何网络的,有介绍如何用官方SanFrancis ...
- ArcGIS 网络分析[8.5] 资料5 网络分析拓展模块及各种接口说明
说完了网络数据集如何用AO来创建,接下来就说说如何用另一个类库--NetworkAnalyst来做网络分析. 区别于NetworkAnalysis,这个是几何网络分析用的类库. 本篇先做类库和有关接口 ...
- ArcGIS 网络分析[0] 介绍与博文目录【更新中】
网络分析是个热点,理论上是属于计算机图形学和数据结构的,GIS以此为基础做出应用. 以下列举本人在学习中遇到的网络分析问题与经验总结. 1. 软件平台及数据准备 平台:Windows 10 操作系统, ...
- ArcGIS 网络分析[8.3] 设置IDENetworkDataset的属性及INetworkDataset的对比/创建网络数据集
创建网络数据集就得有各种数据和参数,这篇文章很长,慎入. 网络分析依赖于网络数据集的质量,这句话就在这里得到了验证:复杂.精确定义. 本节目录如下: 1. INetworkDataset与IDENet ...
- ArcGIS 网络分析[1.2] 利用1.1的线shp创建网络数据集/并简单试验最佳路径
上篇已经创建好了线数据(shp文件格式)链接:点我 这篇将基于此shp线数据创建网络数据集. 在此说明:shp数据的网络数据集仅支持单一线数据,也就是说基于shp文件的网络数据集,只能有一个shp线文 ...
- ArcGIS 网络分析[3] 发布NAServer到ArcGIS for Server(以Server 10.4为例)
前阵子对ArcGIS API For JavaScript的网络分析有兴趣,但是不知道其数据是如何获取的. 查阅API知道,AJS的网络分析只有三个功能:最短路径(RouteTask).最近设施点(C ...
随机推荐
- Java 执行CMD/DOS
最近在写一个自己的邮箱服务器里用到 监视及起/停 windows 中的服务,调查发现还是得用dos来做这些事情 说一下遭遇战的过程 首先是java里如何执行DOS命令,查到下记函数 Runtime.g ...
- 【深圳】大湾区第三次.NET技术交流会(网络直播)
活动简介 云.devops.微服务.容器是现在这个发展阶段的软件形态, 本次活动我们围绕这些话题介绍.NET生态下的发展.SQL Server 2017可根据需要运行本地部署的SQL Server,当 ...
- node入门笔记
看了<node入门>http://www.nodebeginner.org/index-zh-cn.html.有些疑难点记下来. 在导出模块的时候给出的代码是这样的 var http = ...
- Android OpenGL ES 开发(三): OpenGL ES 定义形状
在上篇文章,我们能够配置好基本的Android OpenGL 使用的环境.但是如果我们不了解OpenGL ES如何定义图像的一些基本知识就使用OpenGL ES进行绘图还是有点棘手的.所以能够在Ope ...
- Laravel框架使用的一些注意细节(一)
1.资源路由RESTful 当你不想编写太多的路由的时候,肯定会用到RESTful资源控制器.但当你使用资源控制器的时候,需要注意的是,你的资源路由的名字不能与public目录下的文件有重名,否则会导 ...
- IntelliJ IDEA(一) :安装
前言 我是从eclipse转IDEA的,对于习惯了eclipse快捷键的我来说,转IDEA开始很不习惯,IDEA快捷键多,组合多,记不住,虽然可以设置使用eclipse的快捷键,但是总感觉怪怪的.开始 ...
- CCF-201412-1-门禁系统
问题描述 试题编号: 201412-1 试题名称: 门禁系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况.每位 ...
- 如何打包静态库.framework文件 iOS
代码调试好了开始打包成sdk,下面是将要打包的FRSDK代码(FRSDK.h暴露在外面有别人调用) 1.创建新工程(Xcode File-New-Project) 2.把下面的红色框的东西移除 3.将 ...
- IDEA 无法运行Junit, 报错Class not found xxxx Empty test suite.
网上搜了一圈没找到答案, 最后才发现是因为testmodule没有把class编译到主代码编译的路径.
- java设计模式—多工厂模式
概念 多个工厂模式,是对普通工厂方法的改进,在普通工厂模式中,如果字符串传递出错,则不能正 确创建对象,而多个工厂模式是提供多个工厂方法,分别创建对象. 多个工厂模式关 ...