类 TransferAnalystParameter
- java.lang.Object
-
- com.supermap.analyst.trafficanalyst.TransferAnalystParameter
-
public class TransferAnalystParameter extends Object
公交换乘分析参数类。该类主要用于设置公交换乘分析所需的参数,包括分析的起始点(或起始站点 ID)和终止点(或终止站点 ID)、最大换乘导引次数、步行与公交的权重比、换乘策略与偏好,以及优先和避让的站点、线路集合。
注意:
- 搜索模式:公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。设置的起始点和终止点类型(站点 ID 或 站点位置)必须与搜索模式相对应,详细介绍请参见
setSearchMode
} 方法。 - 优先与避让:如果将某线路(或站点)同时设置为优先或者避让的线路(或站点),系统将以避让线路(或站点)来处理。另外,优先或避让的站点必须是线路上的站点,例如,某站点在位置上位于某条线路上,但在关系表中不存在二者的对应关系,那么设置该站点为避让站点是无效的,换乘分析的结果中仍有可能包含通过该站点的线路。
- 示范代码:
- 请参见 TransferAnalyst 类的
findTransferSolutions
方法的示例。
- 搜索模式:公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。设置的起始点和终止点类型(站点 ID 或 站点位置)必须与搜索模式相对应,详细介绍请参见
-
-
构造器概要
构造器 构造器和说明 TransferAnalystParameter()
构造一个新的 TransferAnalystParameter 对象。TransferAnalystParameter(TransferAnalystParameter transferAnalystParameter)
根据指定的 TransferAnalystParameter 构造一个与其完全相同的新对象。
-
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 Point2D
getEndPosition()
返回公交换乘分析时输入的终点的坐标,可以是任意位置。long
getEndStopID()
返回公交换乘分析时输入的终止站点 ID。long[]
getEvadeLines()
返回避让线路的线路 ID 集合。long[]
getEvadeStops()
返回避让站点的站点 ID 集合。TransferPreference
getPreference()
返回乘车偏好。long[]
getPriorLines()
返回优先线路的线路 ID 数组。long[]
getPriorStops()
返回优先站点的站点 ID 数组。TransferSearchMode
getSearchMode()
返回公交换乘的搜索模式。int
getSolutionCount()
返回公交换乘分析返回的换乘方案的最大数量。Point2D
getStartPosition()
返回公交换乘分析时输入的起点的坐标,可以是任意位置。long
getStartStopID()
返回公交换乘分析时输入的起始站点 ID。TransferTactic
getTactic()
返回公交换乘策略类型。Date
getTravelTime()
返回公交换乘分析的出行时间。double
getWalkingRatio()
返回步行与乘车的权重比。void
setEndPosition(Point2D value)
设置公交换乘分析时输入的终点的坐标,可以是任意位置。void
setEndStopID(long value)
设置公交换乘分析时输入的终止站点 ID。void
setEvadeLines(long[] value)
设置避让线路的线路 ID 集合。void
setEvadeStops(long[] value)
设置避让站点的站点 ID 集合。void
setPreference(TransferPreference value)
设置乘车偏好。void
setPriorLines(long[] value)
设置优先线路的线路 ID 数组。void
setPriorStops(long[] value)
设置优先站点的站点 ID 数组。void
setSearchMode(TransferSearchMode value)
设置公交换乘的搜索模式。void
setSolutionCount(int value)
设置公交换乘分析返回的换乘方案的最大数量。void
setStartPosition(Point2D value)
设置公交换乘分析时输入的起点的坐标,可以是任意位置。void
setStartStopID(long value)
设置公交换乘分析时输入的起始站点 ID。void
setTactic(TransferTactic value)
设置公交换乘策略类型。void
setTravelTime(Date time)
设置公交换乘分析的出行时间。void
setWalkingRatio(double value)
设置步行与乘车的权重比。
-
-
-
构造器详细资料
-
TransferAnalystParameter
public TransferAnalystParameter()
构造一个新的 TransferAnalystParameter 对象。
-
TransferAnalystParameter
public TransferAnalystParameter(TransferAnalystParameter transferAnalystParameter)
根据指定的 TransferAnalystParameter 构造一个与其完全相同的新对象。- 参数:
transferAnalystParameter
- 指定的 TransferAnalystParameter 对象。
-
-
方法详细资料
-
getStartStopID
public long getStartStopID()
返回公交换乘分析时输入的起始站点 ID。当用户输入 ID 进行分析时,需要指定站点所属的数据集。
- 返回:
- 公交换乘分析时输入的起始站点 ID。
- 默认值:
- 默认值为 -1。
-
setStartStopID
public void setStartStopID(long value)
设置公交换乘分析时输入的起始站点 ID。当用户输入 ID 进行分析时,需要指定站点所属的数据集。
- 参数:
value
- 分析输入的起始站点 ID。
-
getEndStopID
public long getEndStopID()
返回公交换乘分析时输入的终止站点 ID。当用户输入 ID 进行分析时,需要指定站点所属的数据集。
- 返回:
- 公交换乘分析时输入的终止站点 ID。
- 默认值:
- 默认值为 -1。
-
setEndStopID
public void setEndStopID(long value)
设置公交换乘分析时输入的终止站点 ID。当用户输入 ID 进行分析时,需要指定站点所属的数据集。
- 参数:
value
- 分析输入的终止站点 ID。
-
getStartPosition
public Point2D getStartPosition()
返回公交换乘分析时输入的起点的坐标,可以是任意位置。- 返回:
- 公交换乘分析时输入的起点的坐标。
- 默认值:
- 默认值为一个空的
Point2D
对象。
-
setStartPosition
public void setStartPosition(Point2D value)
设置公交换乘分析时输入的起点的坐标,可以是任意位置。通过该方法可以设置公交换乘分析的终点为任意位置,而不限于公交站点的位置,分析时系统会自动寻找距离该点最近的公交站点。
- 参数:
value
- 公交换乘分析时输入的起点的坐标。
-
getEndPosition
public Point2D getEndPosition()
返回公交换乘分析时输入的终点的坐标,可以是任意位置。- 返回:
- 公交换乘分析时输入的终点的坐标。
- 默认值:
- 默认值为一个空的
Point2D
对象。
-
setEndPosition
public void setEndPosition(Point2D value)
设置公交换乘分析时输入的终点的坐标,可以是任意位置。通过该方法可以设置公交换乘分析的终点为任意位置,而不限于公交站点的位置,分析时系统会自动寻找距离该点最近的公交站点。
- 参数:
value
- 公交换乘分析时输入的终点的坐标。
-
getSolutionCount
public int getSolutionCount()
返回公交换乘分析返回的换乘方案的最大数量。详细介绍请参见
setMaxSolutionCount
方法。- 返回:
- 公交换乘分析返回的换乘方案的最大数量。
- 默认值:
- 默认值为 5。
-
setSolutionCount
public void setSolutionCount(int value)
设置公交换乘分析返回的换乘方案的最大数量。最多可以获取20个。根据实际参数的设置不同,公交换乘分析得出的换乘方案的实际数量可能小于或等于该值。
- 参数:
value
- 公交换乘分析返回的换乘方案的最大数量。
-
getWalkingRatio
public double getWalkingRatio()
返回步行与乘车的权重比。该权重比主要用来评价公交换乘的各种方案。详细介绍请参见
setWalkingRatio
方法。- 返回:
- 步行与乘车的权重比。
- 默认值:
- 默认值为 10。
-
setWalkingRatio
public void setWalkingRatio(double value)
设置步行与乘车的权重比。该权重比主要用来评价公交换乘的各种方案。因为有方案数量的限制(
setSolutionCount()
方法),所以就需要在所有方案中进行优选。比如现在有两种换乘方案:
- 方案1:坐车10公里,走路1公里;
- 方案2:坐车15公里,走路0.5公里;
- 假设权重比为15:
- 方案1的总消耗为:10 + 1*15 = 25
- 方案2的总消耗为:15 + 0.5*15 = 22.5
- 假设权重比为2:
- 方案1的总消耗为:10 + 1*2 = 12
- 方案2的总消耗为:15 + 0.5*2 = 17
- 参数:
value
- 步行与乘车的权重比。
-
getSearchMode
public TransferSearchMode getSearchMode()
返回公交换乘的搜索模式。详细介绍请参见
setSearchMode
方法。- 返回:
- 公交换乘的搜索模式。
- 默认值:
- 默认值为 ID 模式,即
TransferSearchMode.ID
。
-
setSearchMode
public void setSearchMode(TransferSearchMode value)
设置公交换乘的搜索模式。公交换乘分析支持两种搜索模式,ID 模式和Point 模式,由
TransferSearchMode
类定义。ID 模式是指公交换乘的起点和终点使用站点 ID 进行分析;Point 模式是指使用坐标位置(即 Point2D 对象)作为分析的起点和终点。设置了搜索模式后,必须设置相应的属性来指定分析的起点和终点,如果设置的起点和终点类型不符合搜索模式,调用 findTransferLines 方法进行换乘分析会失败,并返回 null。- 如果设置公交换乘的搜索模式为 ID 模式,则必须设置起始站点 ID(
setStartStopID
方法)和终止站点 ID(setEndStopID
方法); - 如果设置公交换乘的搜索模式为 ID 模式,则必须设置起点坐标(
setStartPosition
方法)和终点坐标(setEndPosition
方法)。
- 参数:
value
- 公交换乘的搜索模式。
- 如果设置公交换乘的搜索模式为 ID 模式,则必须设置起始站点 ID(
-
getTactic
public TransferTactic getTactic()
返回公交换乘策略类型。详细介绍请参见
setTactic
方法。- 返回:
- 公交换乘策略类型。
- 默认值:
- 默认值为
TransferTactic.LESS_TRANSFER
。
-
setPreference
public void setPreference(TransferPreference value)
设置乘车偏好。乘车偏好设置支持对公共交通工具进行选择,如不乘地铁、优先公交汽车等,可以和换乘策略、优先和避让配合使用,使公交换乘分析的结果更加灵活和满足出行者的多样需求。
需要特别注意,目前,乘车偏好主要是根据线路的类型来划分的。因此,乘车偏好是否有效还要取决于公交线路数据中是否包含线路类型的属性信息,并且该属性字段的值必须与要求一致。具体介绍请参见 LineSetting 类的
setLineIDField
方法。- 参数:
value
- 乘车偏好。
-
getPreference
public TransferPreference getPreference()
返回乘车偏好。详细介绍请参见
setPreference
方法。- 返回:
- 乘车偏好。
- 默认值:
- 默认值为
TransferPreference.NONE
,即无偏好。
-
setTactic
public void setTactic(TransferTactic value)
设置公交换乘策略类型。在公交换乘时,出行者往往有不同的偏好,如尽量少步行、少换乘、尽快到达目的地等。通过该方法设置了换乘策略后,进行公交换乘分析时,会为分析者优先提供满足策略要求的换乘方案。
- 参数:
value
- 公交换乘策略类型。
-
getEvadeStops
public long[] getEvadeStops()
返回避让站点的站点 ID 集合。- 返回:
- 避让站点的站点 ID 集合。
-
setEvadeStops
public void setEvadeStops(long[] value)
设置避让站点的站点 ID 集合。如果设置某些线路避让站点,则进行换乘分析时不会使用这些站点,例如,设置天安门西站为避让站点,那么公交换乘分析的结果中不会包含经过该站点的换乘方案。
注意,如果将某站点同时设置为优先或者避让的站点,系统将以避让站点来处理。另外,避让的站点必须是线路上的站点,例如,某站点在位置上位于某条线路上,但在关系表中不存在二者的对应关系,那么设置该站点为避让站点是无效的,换乘分析的结果中仍有可能包含通过该站点的线路。
- 参数:
value
- 避让站点的站点 ID 集合。
-
getEvadeLines
public long[] getEvadeLines()
返回避让线路的线路 ID 集合。- 返回:
- 避让线路的线路 ID 集合。
-
setEvadeLines
public void setEvadeLines(long[] value)
设置避让线路的线路 ID 集合。如果设置某些线路避让线路,则进行换乘分析时不会使用这些线路,例如,设置123路为避让线路,进行公交换乘分析,即使乘坐该线路可以到达目的地,换乘方案中也不会包含乘坐该线路的方案。
注意,如果将某线路同时设置为优先或者避让的线路,系统将以避让线路来处理。
- 参数:
value
- 避让线路的线路 ID 集合。
-
getPriorStops
public long[] getPriorStops()
返回优先站点的站点 ID 数组。- 返回:
- 优先站点的站点 ID 数组。
-
setPriorStops
public void setPriorStops(long[] value)
设置优先站点的站点 ID 数组。如果设置某些线路为优先站点,则进行换乘分析时会优先考虑这些站点,但最优换乘方案是由多个参数共同决定的,因此并不一定会包含这些站点。另外,优先的站点必须是线路上的站点,例如,某站点在位置上位于某条线路上,但在关系表中不存在二者的对应关系,那么设置该站点为优先站点是无效的,换乘分析时可能不会包含通过该站点的线路。
- 参数:
value
- 优先站点的站点 ID 数组。
-
getPriorLines
public long[] getPriorLines()
返回优先线路的线路 ID 数组。- 返回:
- 优先线路的线路 ID 数组。
-
setPriorLines
public void setPriorLines(long[] value)
设置优先线路的线路 ID 数组。如果设置某些线路为优先线路,则进行换乘分析时会优先考虑这些线路,但最优换乘方案是由多个参数共同决定的,因此并不一定会包含这些线路。
- 参数:
value
- 优先线路的线路 ID 数组。
-
getTravelTime
public Date getTravelTime()
返回公交换乘分析的出行时间。- 返回:
- 公交换乘分析的出行时间。
-
setTravelTime
public void setTravelTime(Date time)
设置公交换乘分析的出行时间。设置出行时间且Load时设置了公交首末班车时间字段后,公交换乘结果会依据不同线路的不同运行时间进行过滤,出行时间前后半小时内停运的公交线路将不会出现在结果中。
此参数设置时只需要关注小时和分钟。换乘分析时,此参数的DateTime值只取小时和分钟,其它值不参与分析。
- 参数:
time
- 公交换乘分析的出行时间。
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.