com.supermap.analyst.trafficanalyst

类 TransferAnalystParameter



  • public class TransferAnalystParameter
    extends Object
    公交换乘分析参数类。

    该类主要用于设置公交换乘分析所需的参数,包括分析的起始点(或起始站点 ID)和终止点(或终止站点 ID)、最大换乘导引次数、步行与公交的权重比、换乘策略与偏好,以及优先和避让的站点、线路集合。

    注意:

    • 搜索模式:公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。公交换乘分析支持两种搜索模式:ID 模式和 Point 模式。设置的起始点和终止点类型(站点 ID 或 站点位置)必须与搜索模式相对应,详细介绍请参见 setSearchMode} 方法。
    • 优先与避让:如果将某线路(或站点)同时设置为优先或者避让的线路(或站点),系统将以避让线路(或站点)来处理。另外,优先或避让的站点必须是线路上的站点,例如,某站点在位置上位于某条线路上,但在关系表中不存在二者的对应关系,那么设置该站点为避让站点是无效的,换乘分析的结果中仍有可能包含通过该站点的线路。
    示范代码:
    请参见 TransferAnalyst 类的 findTransferSolutions 方法的示例。
    • 构造器详细资料

      • 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公里;
        1. 假设权重比为15:
          • 方案1的总消耗为:10 + 1*15 = 25
          • 方案2的总消耗为:15 + 0.5*15 = 22.5
          此时方案2较好;
        2. 假设权重比为2:
          • 方案1的总消耗为:10 + 1*2 = 12
          • 方案2的总消耗为:15 + 0.5*2 = 17
          此时方案1较好。
        参数:
        value - 步行与乘车的权重比。
      • setSearchMode

        public void setSearchMode(TransferSearchMode value)
        设置公交换乘的搜索模式。

        公交换乘分析支持两种搜索模式,ID 模式和Point 模式,由 TransferSearchMode 类定义。ID 模式是指公交换乘的起点和终点使用站点 ID 进行分析;Point 模式是指使用坐标位置(即 Point2D 对象)作为分析的起点和终点。设置了搜索模式后,必须设置相应的属性来指定分析的起点和终点,如果设置的起点和终点类型不符合搜索模式,调用 findTransferLines 方法进行换乘分析会失败,并返回 null。

        • 如果设置公交换乘的搜索模式为 ID 模式,则必须设置起始站点 ID(setStartStopID 方法)和终止站点 ID(setEndStopID 方法);
        • 如果设置公交换乘的搜索模式为 ID 模式,则必须设置起点坐标(setStartPosition 方法)和终点坐标(setEndPosition 方法)。
        参数:
        value - 公交换乘的搜索模式。
      • setPreference

        public void setPreference(TransferPreference value)
        设置乘车偏好。

        乘车偏好设置支持对公共交通工具进行选择,如不乘地铁、优先公交汽车等,可以和换乘策略、优先和避让配合使用,使公交换乘分析的结果更加灵活和满足出行者的多样需求。

        需要特别注意,目前,乘车偏好主要是根据线路的类型来划分的。因此,乘车偏好是否有效还要取决于公交线路数据中是否包含线路类型的属性信息,并且该属性字段的值必须与要求一致。具体介绍请参见 LineSetting 类的 setLineIDField 方法。

        参数:
        value - 乘车偏好。
      • 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.