原文AE中网络分析的实现 的各个类之间的关系

1.     创建网络数据集

在ArcCatalog中勾选网络分析模块,新建个人地理信息数据库—>新建要素数据集—>批量导入要素—>创建网络数据集。

在网络的属性中,可以添加成本等级限制等属性。成本用于累积计算最短路径(一般为距离和时间);等级用于道路等级的划分(使用等级执行网络分析时,将应用启发式算法,该算法在选择道路时倾向于更高级别的等级);可以针对特定元素标识约束条件,这样在分析过程中,不可遍历限制元素。

2.     AE中的网络分析

在AE中网络分析对应于NetworkAnalyst命名空间。在这里会用到很多不常见的接口INetworkLayer(网络图层),INetworkDataset(网络数据集),INASolver(网络分析求解器),INASolverSettings(网络分析设置),IDENetworkDataset(数据元素网络数据集),INAContext(网络分析环境),INALayer(网络分析图层),INAClass(网络分析类型),INALocator(网络分析定位器)等待。

在网络分析中,网络数据集是一切分析的基础,所以在进行网络分析之前,首先要得到网络数据集。将数据加载到AxMapControl之后,网络数据集所对应的图层类型为INetworkLayer,通过它的属性INetworkLayer.NetworkDataset就可以的到网络数据集INetworkDataset

要想进行网络分析,还需要新建一个网络分析求解器(INASolver),并且根据不同的分析需求实例化不同的求解器类型,而不同的求解器类型中包含着不同的网络分析类型(NAClass),不同的求解器接口又可以进行相应不同的设置(如INAClosestFacilitySolver可以设置默认目标设施点数量和默认成本切断值即最大成本)。

如果要对网络分析进行设置,则通过强制转换将NASolver转换为INASolverSettings,根据实际需要对其属性进行设置。AccumulateAttributeNames用于设置多个累积单位字段,ImpedanceAttributeName用于设置成本字段,HierarchyAttributeName用于设置等级字段,UseHierarchy设置是否使用道路等级,RestrictionAttributeNames用于设置限制字段。

在INASolver和INetworkDataset基础上使用INASolver.CreateContext方法创建网络分析环境,使用INASolver.CreateLayer方法创建网络分析图层,在INALayer上就可以进行网络分析了。在最近设施点分析(NAClosestFacilitySolver)中,事件点(Incidents)和设施点(Facilities)是两个必要的网络分析类型,所以在进行分析之前需要加载位置要素到网络分析环境的网络分析类型中,可以使用INAClassLoader批量加载,也可以将INAClass强制转换为IfeatureClass然后通过CreateFeature添加单个要素。

准备工作完毕,使用ISolver.Solve方法进行分析计算。不同的分析求解器有不同的输出要素类型,均包含在网络分析环境中,可以对其进行查询或其它操作。

AE中网络分析的实现 的各个类之间的关系的更多相关文章

  1. 请解释ASP. NET中的web页面与隐藏类之间的关系

    请解释ASP.NET中的web页面与其隐藏类之间的关系 其实页面与其隐藏类之间就是一个部分类的关系,你在页面上放一个一个的控件就是在这个类中定义一个一个的属性, 因为是同一个类的部分类的关系,所以隐藏 ...

  2. 全面解释java中StringBuilder、StringBuffer、String类之间的关系

    StringBuilder.StringBuffer.String类之间的关系 java中String.StringBuffer.StringBuilder是编程中经常使用的字符串类,在上一篇博文中我 ...

  3. python中对象、类型和元类之间的关系

    在python中对象.类型和元类构成了一个微妙的世界. 他们有在这个世界里和平共处,相辅相成.它们遵循着几条亘古不变的定律: 1.python中无处不对象 2.所有对象都有三种特性:id.类型.值 3 ...

  4. 请解释ASP.NET中的web页面与其隐藏类之间的关系

    其实页面与其隐藏类之间就是一个部分类的关系,你在页面上放一个一个的控件就是在这个类中定义一个一个的属性, 因为是同一个类的部分类的关系,所以隐藏类可以访问到页面上控件,这样做是为了把展现与处理逻辑分开 ...

  5. 请解释ASP.NET 中的web 页面与其隐藏类之间的关系?

    一个ASP.NET 页面一般都对应一个隐藏类,一般都在ASP.NET 页面的声明中指定了隐藏类例如一个页面 Tst1.aspx 的页面声明如下 <%@ Page language="c ...

  6. java中StringBuilder、StringBuffer、String类之间的关系

    今天在CSDN的高校俱乐部里看到了"Java基础水平測试(英文)".感觉自己学了java这么久,想看下自己的java水平究竟是个什么样.測试结果就不说了,反正是慘不忍睹. 看了一下 ...

  7. Python中对象、类型、元类之间的关系

    Python里的对象.类型和元类的关系很微妙也很有意思. 1989年圣诞节期间,上帝很无聊,于是创造了一个世界. 对象 在这个世界的运转有几条定律. 1.一切都是对象 对象(object)是这个世界的 ...

  8. Java中接口与接口和类之间的关系

    接口和接口之间的关系 继承关系 可以多继承,并且可以多层继承 注意: 1.如果多个父接口中有同名的抽象方法,那么子接口只需要实现一次即可 2.如果多个父接口中有同名的默认方法,那么子接口必须重写默认方 ...

  9. Java 中类与类之间的关系

    在java中类和类之间的关系基本上有依赖.关联.聚合.组合等 一.继承关系     继承指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功能的能力.在J ...

随机推荐

  1. hdu-3642--Get The Treasury-线段树求面积并

    求空间中叠加3次及3次以上的体积. 由于|z|<=500.所以直接把z轴剥离出来1000层. 然后对于每一层进行线段树求面积并. #include<stdio.h> #include ...

  2. Android中Alarm的机制

    本次给大家分析的是Android中Alarm的机制所用源码为最新的Android4.4.4.首先简单介绍如何使用Alarm并给出其工作原理,接着分析Alarm和Timer以及Handler在完成定时任 ...

  3. 【习题 3-9 UVA - 10340】All in All

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 相当于让你判断s1是不是s2的子序列. for一遍就好 [代码] #include <bits/stdc++.h> us ...

  4. POJ 3134 - Power Calculus (IDDFS)

    题意:求仅仅用乘法和除法最快多少步能够求到x^n 思路:迭代加深搜索 //Accepted 164K 1094MS C++ 840B include<cstdio> #include< ...

  5. 【例题5-5 UVA 12096 】The SetStack Computer

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 用set来解决这个问题. 考虑如何表示 { {{}} }这个集合 我们可以把{}这个集合和一个数字映射->1 然后把1加入到某 ...

  6. DBeaver无法执行数据库脚本

    网上查了查相关问题,自己写了个步骤,记录下来方便以后查找 此处我连接的是mysql数据库,就以mysql为例说明: 在使用DBeaver过程中,别人给了几个sql文件,想直接导入数据库中,正常流程应该 ...

  7. POJ 3100 Root of the Problem || 1004 Financial Management 洪水!!!

    水两发去建模,晚饭吃跟没吃似的,吃完没感觉啊. ---------------------------分割线"水过....."--------------------------- ...

  8. outlook vba 1

  9. 12.1、USB驱动——描述符、URB、管道

    大家常说,一个设备通常有多个配置,配置通常有多个接口,接口通常有多个端点.接口代表逻辑上的设备,比如声卡分为 录音和播放.访问设备时,访问的是某个接口(逻辑设备).除了端点0之外,每个端点只支持一个传 ...

  10. hibernate---java.lang.UnsupportedOperationException: The user must supply a JDBC connection

        在配置hibernate时.运行代码时一直抛错: Exception in thread "main" java.lang.UnsupportedOperationExce ...