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