类 TransportationAnalystResult
- java.lang.Object
-
- com.supermap.analyst.networkanalyst.TransportationAnalystResult
-
- 直接已知子类:
- ServiceAreaResult
public class TransportationAnalystResult extends java.lang.Object
交通网络分析结果类。
该类用于返回分析结果的路由集合、分析途经的结点集合以及弧段集合、行驶导引集合、站点集合和权值集合以及各站点的花费。通过该类的设置,可以灵活地得到最佳路径分析、旅行商分析、物流配送和最近设施查找等分析的结果。
-
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 void
dispose()
释放对象所占用的资源。int[][]
getEdges()
返回分析结果的途经弧段集合。int[][]
getNodes()
返回分析结果的途经结点集合。PathGuide[]
getPathGuides()
返回行驶导引集合。GeoLineM[]
getRoutes()
返回分析结果的路由对象集合(GeoLineM
的集合)。int[][]
getStopIndexes()
返回站点索引的二维数组,该数组反映了站点在分析后的排列顺序。double[][]
getStopWeights()
返回根据站点索引对站点排序后,站点间的花费(权值)。double[]
getWeights()
返回代表花费的权值数组。
-
-
-
方法详细资料
-
dispose
public void dispose()
释放对象所占用的资源。调用该方法之后,此对象不再可用。
-
getRoutes
public GeoLineM[] getRoutes()
返回分析结果的路由对象集合(GeoLineM
的集合)。注意,必须将TransportationAnalystParameter
对象的setRoutesReturn
方法设置为 true,分析结果中才会包含路由集合,否则为一个空的数组。在不同的分析中,该返回值代表的含义不一样:
- 最佳路径分析(
findPath
方法)和旅行商分析(findTSPPath
方法):永远只有一条结果路由。 - 最近设施查找(
findClosestFacility
方法):查找到的设施个数就是结果路由的数量。 - 多旅行商分析(
findMTSPPath
方法):配送模式为局部最优时,有多少个配送中心就会有多少个结果路由,为总花费最小模式下,结果路由的个数可能会小于配送中心的个数。 - 服务区分析(
findServiceArea
方法):该数组存储了按照中心点的指定顺序,每个服务区所覆盖(包括部分覆盖)的路由。服务区分析结果中的getServiceRouteCounts
方法,返回的数组的元素顺序对应了中心点的指定顺序,元素值为该中心点的服务区所覆盖(包括部分覆盖)的路由的数量,结合该数组,可以得知每个服务区对应的路由有哪些。
- 返回:
- 分析结果的路由对象集合。
- 最佳路径分析(
-
getNodes
public int[][] getNodes()
返回分析结果的途经结点集合。注意,必须将TransportationAnalystParameter
对象的setNodesReturn
方法设置为 true,分析结果中才会包含途经结点集合,否则为一个空的数组。在不同的分析中,该方法的返回值代表的含义不一样:
- 最佳路径分析(
findPath
方法)和旅行商分析(findTSPPath
方法):由于只有一条结果路径,因此数组的一维长度为 1,二维元素为该路径途经结点的结点 ID。 - 最近设施查找(
findClosestFacility
、findClosestFacility
方法):由于分析结果中路径的数量与查找到的最近设施点的数目相同,因此数组的一维长度为结果设施点的个数,二维元素为各条路径途经结点的结点 ID。 - 多旅行商分析(
findMTSPPath
、findMTSPPath
方法):数组的一维长度为参与配送的中心点数,每一个配送中心点对应一条路径;二维元素为各条路径途经结点的结点 ID。注意,配送模式为局部最优时,所有中心点参与配送,为总花费最小模式时,参与配送的中心点数可能少于指定的中心点数。 - 服务区分析(
findServiceArea
方法):数组的一维长度为服务中心点数,二维元素为每个中心点的服务区所覆盖的结点的结点 ID。
- 返回:
- 分析结果的途经结点 ID 的集合。
- 最佳路径分析(
-
getEdges
public int[][] getEdges()
返回分析结果的途经弧段集合。注意,必须将TransportationAnalystParameter
对象的setEdgesReturn
方法设置为 true,分析结果中才会包含途经弧段集合,否则为一个空的数组。在不同的分析中,该方法的返回值代表的含义不一样:
- 最佳路径分析(
findPath
方法)和旅行商分析(findTSPPath):由于分析结果只有一条路径,因此数组的一维长度为 1,二维元素为该路径途经弧段的弧段 ID。 - 最近设施查找(
findClosestFacility
、findClosestFacility
方法):由于分析结果中路径的数量与查找到的最近设施点的数目相同,因此数组的一维长度为结果设施点的个数,二维元素为该路径途经弧段的弧段 ID。 - 多旅行商分析(
findMTSPPath
、findMTSPPath
方法):数组的一维长度为参与配送的中心点数,每一个配送中心点对应一条路径;二维元素为各条路径途经弧段的弧段 ID。注意,配送模式为局部最优时,所有中心点参与配送,为总花费最小模式时,参与配送的中心点数可能少于指定的中心点数。 - 服务区分析(
findServiceArea
方法):数组的一维长度为服务中心点数,二维元素为每个中心点的服务区所覆盖(包括部分覆盖)的弧段的弧段 ID。
- 返回:
- 分析结果的途经弧段集合。
- 最佳路径分析(
-
getStopIndexes
public int[][] getStopIndexes()
返回站点索引的二维数组,该数组反映了站点在分析后的排列顺序。注意,必须将TransportationAnalystParameter
对象的setStopIndexesReturn
方法设置为 true,分析结果中才会包含站点索引集合,否则为一个空的数组。在不同的分析中,该方法的返回值代表的含义不一样:
- 最佳路径分析(
findPath
方法): - 旅行商分析(
findTSPPath
方法): - 多旅行商分析(
findMTSPPath
、findMTSPPath
方法):
结果路径只有一条,故数组的一维长度为 1,二维元素表示结果路径经过站点的次序:
结点模式:如设置的分析结点 ID 为 1,3,5 的三个结点,因为结果途经顺序必须为 1,3,5,所以二维元素值依次为 0,1,2,即结果途经顺序在初始设置结点串中的索引。
坐标点模式:如设置的分析坐标点为 Pnt1,Pnt2,Pnt3,因为结果途经顺序必须为 Pnt1,Pnt2,Pnt3,所以二维元素值依次为 0,1,2,即结果途经坐标点顺序在初始设置坐标点串中的索引。
结果路径只有一条,故数组的一维长度为 1,二维元素表示结果路径经过站点的次序:
结点模式:如设置的分析结点 ID 为 1,3,5 的三个结点,而结果途经顺序为 3,5,1,则二维元素值依次为 1,2,0,即结果途经顺序在初始设置结点串中的索引。
坐标点模式:如设置的分析坐标点为 Pnt1,Pnt2,Pnt3,而结果途经顺序为 Pnt2,Pnt3,Pnt1,则二维元素值依次为 1,2,0,即结果途经坐标点顺序在初始设置坐标点串中的索引。
类似于旅行商分析,只不过数组的一维长度为参与配送的中心点数。二维元素的含义与旅行商分析相同,表示对应的中心点的配送路径经过站点的次序。注意,配送模式为局部最优时,所有中心点参与配送,为总花费最小模式时,参与配送的中心点数可能少于指定的中心点数。
对于最近设施查找分析(
findClosestFacility
方法),该方法无效。- 返回:
- 站点索引的二维数组。
- 最佳路径分析(
-
getStopWeights
public double[][] getStopWeights()
返回根据站点索引对站点排序后,站点间的花费(权值)。单位与交通网络分析参数(TransportationAnalystParameter
)对象的setWeightName
方法所指定的权值字段信息(WeightFieldInfo
)对象的权值字段的单位相同。该方法返回的是站点与站点间的耗费,这里的站点指的是用于分析结点或坐标点,而不是路径经过的所有结点或坐标点。该方法返回的权值所关联的站点顺序与
getStopIndexes
方法中返回的站点索引值的顺序一致,但对于不同的分析功能需注意其细微差别。例如:- 对于最佳路径分析(
findPath
方法),由于结果路径只有一条,故数组的一维长度为 1。假设指定经过点 1、2、3,则二维元素依次为:1 到 2 的耗费、2 到 3 的耗费; - 对于旅行商分析(
findTSPPath
方法),由于结果路径只有一条,故数组的一维长度为 1。假设指定经过点 1、2、3,分析结果中站点索引为 1、0、2,则二维元素依次为:2 到 1 的耗费、1 到 3 的耗费; - 对于多旅行商分析(
findMTSPPath
、findMTSPPath
方法),即物流配送,分析的结果可能有多条路径,因此数组一维长度为路径的数量,二维元素为该路径所经过的站点的之间的耗费,需要注意的是,多旅行商分析的路径经过的站点是包括中心点的,且路径的起终点均是中心点。例如,一条结果路径是从中心点 1 出发,经过站点 2、3、4,对应的站点索引为 1、2、0,则站点权重依次为:1 到 3 的耗费、3 到 4 的耗费、4 到 2 的耗费和 2 到 1 的耗费。
对于最近设施查找分析,该方法无效。
- 返回:
- 分析经过站点的权值。
- 对于最佳路径分析(
-
getPathGuides
public PathGuide[] getPathGuides()
返回行驶导引集合。注意,必须将TransportationAnalystParameter
对象的setPathGuidesReturn
方法设置为 true,分析结果中才会包含行驶导引集合,否则为一个空的数组。注意:必须将交通网络分析参数设置(
TransportationAnalystParameter
)对象的isPathGuidesReturn
方法设置为 true,才能从分析结果中获取到行驶导引集合。- 返回:
- 行驶导引集合。
-
getWeights
public double[] getWeights()
返回代表花费的权值数组。单位与交通网络分析参数(TransportationAnalystParameter
)对象的setWeightName
方法所指定的权值字段信息(WeightFieldInfo
)对象的权值字段的单位相同。在不同的分析中,该方法的返回值代表的含义不一样:
- 最佳路径分析(
findPath
方法)和旅行商分析(findTSPPath
方法):因为只有一条路径,所以只有一个值,即该路径的总花费。 - 最近设施查找(
findClosestFacility
、findClosestFacility
方法):权重值的个数与结果设施点的个数相同,每个元素代表从事件点到达该设施点的路径的总花费。 - 多旅行商分析(
findMTSPPath
、findMTSPPath
方法):权重值的个数与分析结果中所使用的配送中心的个数相同,元素的含义为对应中心点的配送路线的总花费。注意,配送模式为局部最优时,所有中心点参与配送,为总花费最小模式时,参与配送的中心点数可能少于指定的中心点数。
- 返回:
- 代表花费的权值数组。
- 最佳路径分析(
-
-