ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

查找路径

  • 摘要
  • 插图
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

查找路径用于确定访问输入停靠点的最短路径,并返回行驶方向、所访问停靠点的信息以及路径(包括行驶时间和距离)。

利用该工具,可以查找能够按预定顺序或按使总行程最小化的顺序访问多个输入停靠点的路径。可以使用 RouteName 字段将输入停靠点分组到不同路径,该工具将为每组停靠点输出一个路径,以供您为一个求解操作中的多个车辆生成路径。

注:
当使用查找路径来为多个车辆查找路径时,您需要在求解前将停靠点分配到路径。如果需要使用工具来确定在多个不同车辆之间划分停靠点的最佳方式,然后确定各车辆的路径,可改为使用求解车辆配送问题 (VRP) (SolveVehicleRoutingProblem) 工具。

警告:

有关此工具的最新信息,请参阅 Web 帮助中本主题的最新版本。ArcGIS Online 会定期对此类工具进行功能更新,因此安装的帮助可能已过期。

了解“查找路径”的输出

插图

A 和 B 之间的最快路径

用法

  • 如果测量单位参数值是基于时间的,则该工具会根据行驶时间查找最短路径;如果该值是基于距离的,则根据行驶距离查找最短路径。

  • 为成功执行该工具,您至少需要指定两个停靠点。您最多可加载 10,000 个停靠点并最多为每个路径分配 150 个停靠点。

  • 最多可以添加 250 个点障碍。您可以添加任意数量的线障碍或面障碍,但线障碍的相交数不能超过 500 个街道要素,面障碍的相交数不能超过 2,000 个要素。

  • 求解时可选择使用道路等级以便比使用准确路径时更快地生成结果,但解决方案可能欠佳。

  • 无论是否选中应用等级参数 (True),只要任何一对停靠点之间的直线距离大于 50 英里(80.46 公里),便会始终使用等级。

  • 当出行模式设置为步行时或者设置为自定义并且使用步行约束条件时,任意一对停靠点之间的直线距离不得大于 50 英里(80.46 千米)。

  • 如果输入点与其最近的可穿过街道之间的距离大于 12.42 英里(20 千米),则将从分析中排除该点。

  • 此工具可在 ArcGIS Pro、ArcMap、ArcGlobe 和 ArcScene 中运行,但不适用于 ArcCatalog。

语法

FindRoutes_naagol (Stops, Measurement_Units, {Analysis_Region}, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Use_Time_Windows}, {Time_of_Day}, Time_Zone_for_Time_of_Day, {UTurn_at_Junctions}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Use_Hierarchy}, {Restrictions}, {Attribute_Parameter_Values}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Travel_Mode}, {Impedance}, {Time_Zone_for_Time_Windows}, {Save_Output_Network_Analysis_Layer}, {Overrides}, {Save_Route_Data})
参数说明数据类型
Stops

指定要在其间确定路径的两个或多个停靠点。您最多可以添加 10,000 个停靠点,并最多向一条路径分配 150 个停靠点。(使用 RouteName 属性向路径分配停靠点。)

指定停靠点后,可通过使用特性为每个停靠点设置属性,例如其名称或服务时间。可通过以下属性指定停靠点:

Name - 停靠点的名称。该名称用于行驶方向中。如果未指定名称,则会在输出停靠点、路径和方向中自动生成前缀为 Location 的唯一名称。

RouteName - 分配给停靠点的路径的名称。将相同的路径名称分配到不同的停靠点会导致这些停靠点被归为一组,并由同一路径进行访问。通过将唯一的路径名称分配到不同的停靠点组,可以在一个求解操作中生成多个路径。使用此工具,您最多可以将 150 个停靠点分组到一个路径中。

Sequence - 输出路径将按照您使用此属性指定的顺序访问停靠点。在一组具有相同 RouteName 值的停靠点中,序号应大于 0 且不大于停靠点的总数。而且,序号不应重复。

如果选中重新排序停靠点以查找最佳路径 (True),将忽略所有值(但每个路径名称的第一个和最后一个 sequence 值可能除外),以便工具查找可使每个路径总行程最小化的顺序。(保留停靠点的顺序和返回到起点的设置决定了是否忽略每个路径的第一个或最后一个 sequence 值。)

AdditionalTime - 在停靠点所花费的时间,该时间将被添加到路径总时间中。该属性值的单位由测量单位参数指定。仅在测量单位基于时间时,属性值才能包含在分析中。默认值为 0。

您可以将为了完成任务而在停靠点花费的额外时间考虑在内,例如,维修设备、配送包裹或检查场所。

AdditionalDistance - 在停靠点所行驶的额外距离,该距离将被添加到路径总距离中。该属性值的单位由测量单位参数指定。仅在测量单位基于距离时,属性值才能包含在分析中。默认值为 0。

通常,停靠点的位置(例如住宅)并不是恰好位于街道上,而是位于道路的后方。如果有必要将停靠点的实际位置与其在街道上的位置之间的距离计入总行驶距离,则可使用该属性值构建此段距离。

TimeWindowStart - 可以访问停靠点的最早时间。确保以日期和时间值的形式指定此值,例如 8/12/2015 12:15 PM。通过为停靠点时间窗指定开始时间和结束时间,您可以定义路径应在何时访问停靠点。只要选中应用时间窗并为测量单位选择了基于时间的单位,该工具就会尝试查找一个既能使总行程最小化又能在预定时间窗内到达停靠点的解决方案。

解决跨越多个时区的问题时,时间窗的值将采用停靠点所处位置的时区。

此字段可以包含空值;空值表示路径可以在 TimeWindowEnd 属性中所指定时间之前的任意时间到达。如果 TimeWindowEnd 中也出现空值,则路径可以随时访问停靠点。

TimeWindowEnd - 可以访问停靠点的最晚时间。确保以日期和时间值的形式指定此值,例如 8/12/2015 12:15 PM。通过为停靠点时间窗指定开始时间和结束时间,您可以定义路径应在何时访问停靠点。只要选中应用时间窗并为测量单位选择了基于时间的单位,该工具就会尝试查找一个既能使总行程最小化又能在预定时间窗内到达停靠点的解决方案。

解决跨越多个时区的问题时,时间窗的值将采用停靠点所处位置的时区。

此字段可以包含空值;空值表示路径可以在 TimeWindowStart 属性中所指定时间之后的任意时间到达。如果 TimeWindowStart 中也出现空值,则路径可以随时访问停靠点。

CurbApproach - 指定车辆到达和离开停靠点的方向。该字段值可指定为以下整数之一(请使用数值代码而非括号中的名称):

  • 0(车辆的任意一侧)- 车辆可从任一方向到达和离开停靠点,因此停靠点处允许 U 形转弯。如果您的车辆有可能要在停靠点处调头,则可以选择该设置。此决策可能取决于道路的宽度以及交通量,或者该停靠点是否有停车场能让车辆驶入并调头。
  • 1(车辆的右侧)- 当车辆到达和离开停靠点时,停靠点必须在车辆右侧。禁止 U 形转弯。通常用于必须在右侧停靠的车辆(如公共汽车)。
  • 2(车辆的左侧)- 当车辆到达和离开停靠点时,路边必须在车辆左侧。禁止 U 形转弯。通常用于必须在左侧停靠的车辆(如公共汽车)。
  • 3(禁止 U 形转弯)- 当车辆到达停靠点时,路边可在车辆的任意一侧;但是,车辆在离开时不得调头。

CurbApproach 属性是专为使用以下两种国家驾驶标准而设计的:右侧通行(美国)和左侧通行(英国)。首先,考虑位于车辆左侧的停靠点。不管车辆行驶在左车道还是右车道,停靠点始终位于车辆的左侧。不同国家的驾驶标准可能会要求您从这两种方向中的其中一个接近停靠点,也就是说,只能从车辆的右侧或左侧接近停靠点。例如,如果要到达一个停靠点并且在车辆与停靠点之间不存在其他交通车道,那么在美国应该选择“车辆的右侧”(1),而在英国应该选择“车辆的左侧”(2)。

LocationType - 指定停靠点类型。该字段值可指定为以下整数之一(请使用数值代码而非括号中的名称):

  • 0(停靠点)- 路径应访问的位置。这是默认设置。
  • 1(航路点)- 路径应经过但不停靠的位置。航路点可用于强制路径采用特定路线(经过航路点),无需将其视为实际停靠点。航路点不会显示在方向上。

Feature Set
Measurement_Units

指定用于测量和报告输出路径的总行驶时间或行驶距离的单位。

为此参数选择的单位可以确定工具将测量距离还是时间来查找最佳路径。选择时间单位最小化所选出行模式的行驶时间(例如驾车时间或步行时间)。要最小化给定出行模式的行驶距离,请选择一个距离单位。选择的单位还确定工具在结果中以哪种单位报告总时间或距离。其中包括以下选项:

  • Meters
  • Kilometers
  • Feet
  • Yards
  • Miles
  • NauticalMiles
  • Seconds
  • Minutes
  • Hours
  • Days

String
Analysis_Region
(可选)

指定要进行分析的区域。如果未对此参数指定值,工具会基于输入点的位置自动计算区域名称。为加快工具执行,建议设置区域名称。要指定区域,请使用以下值之一:

  • 欧洲
  • 希腊
  • 印度
  • 日本
  • 韩国
  • 中东和非洲
  • 北美
  • 大洋洲
  • 南美
  • 东南亚
  • 中国台湾
  • 泰国

String
Reorder_Stops_to_Find_Optimal_Routes
(可选)

指定是按照您定义的顺序还是按照工具确定的可使总行程最小化的顺序来访问停靠点。

  • 选中 (True):

    工具将确定可使总体行驶距离或时间最小化的顺序。它可以对停靠点进行重新排序并将停靠点的时间窗考虑在内。利用其他参数,可在使用该工具对中途的停靠点进行重新排序的同时保留第一个或最后一个停靠点。

  • 未选中 (False):

    将按照您定义的顺序访问停靠点。这是默认选项。您可以在输入停靠点要素中使用 Sequence 属性来设置停靠点的顺序,也可以通过停靠点的对象 ID 确定顺序。

查找最佳停靠点顺序和最佳路径通常称作解决流动推销员问题 (TSP)。

Boolean
Preserve_Terminal_Stops
(可选)

如果选中重新排序停靠点以查找最佳路径(或 True),您可以选择保留起始停靠点和结束停靠点,然后由该工具对余下的停靠点进行重新排序。

第一个和最后一个停靠点是通过其 Sequence 属性值确定的,如果 Sequence 值为空,则通过其对象 ID 值来确定。

  • 保留第一个:

    该工具不会对第一个停靠点进行重新排序。如果从已知位置开始(例如,您的住处、总部或当前位置),则选择此选项。

  • 保留最后一个:

    该工具不会对最后一个停靠点进行重新排序。输出路径可以从任意停靠点要素开始,但必须在预定的最后一个停靠点处结束。

  • 保留第一个和最后一个:

    该工具不会对第一个和最后一个停靠点进行重新排序。

  • 不保留:

    该工具可以对任意停靠点进行重新排序,包括第一个和最后一个停靠点。路径可以在任意停靠点要素处开始或结束。

如果未选中重新排序停靠点以查找最佳路径(或 False),则将忽略保留终端停靠点。

String
Return_to_Start
(可选)

选择路径是否应在同一位置开始和结束。使用此选项,可以避免重复第一个停靠点要素并避免在结束时对重复的停靠点进行排序。

路径的起始位置是 Sequence 属性值最低的停靠点要素。如果 Sequence 值为空,则为对象 ID 值最低的停靠点要素。

  • 选中 (True):

    路径应在第一个停靠点要素处开始和结束。这是默认值。

    如果同时选中重新排序停靠点以查找最佳路径和返回到起点(或 True),保留终端停靠点必须设置为保留第一个。

  • 未选中 (False):

    路径不会在第一个停靠点要素处开始和结束。

Boolean
Use_Time_Windows
(可选)

如果任何输入停靠点的时间窗指定了路径应在何时到达停靠点,则选中此选项(或将其设置为 True)。通过在 TimeWindowStart 和 TimeWindowEnd 属性中输入时间值,可以将时间窗添加到输入停靠点。

  • 选中 (True):

    输入停靠点具有时间窗,并且您希望该工具尝试遵照这些时间窗。

  • 未选中 (False):

    输入停靠点没有时间窗;或者即使有时间窗,您也不希望该工具尝试遵照这些时间窗。这是默认值。

当选中应用时间窗(或 True)时,即使所有输入停靠点都没有时间窗,该工具的运行时间也会稍长一些,因此建议在可能的情况下取消选中此选项(设置为 False)。

Boolean
Time_of_Day
(可选)

指定路径应该开始的时间和日期。

如果您正在对驾车出行模式进行建模并指定当前日期和时间作为该参数的值,则工具将使用实时交通状况查找最佳路径,并且总行驶时间将基于交通状况提供。

指定时间可提供更加准确的路径和行驶时间评估,因为行驶时间是根据相应日期和时间的交通状况而估算出的。

时间的时区参数指定该时间和日期是参考 UTC 还是停靠点所在时区。

如果未将测量单位设置为基于时间的单位,则该工具将忽略此参数。

Date
Time_Zone_for_Time_of_Day

指定时间参数的时区。

  • 本地地理位置:

    时间参数参考路径的第一个停靠点所处的时区。

    如果生成开始于多个时区的多个路径,则开始时间会采用协调世界时间 (UTC) 交错。例如,时间值为 10:00 a.m., 2 January 表示 始于东部时区的路径的开始时间为 东部标准时间上午 10:00(UTC 为下午 3:00), 始于中部时区的路径的开始时间为 中部标准时间上午 10:00(UTC 为下午 4:00)。开始时间以 UTC 偏差一小时。

    输出停靠点要素类中记录的到达与离开的时间和日期将参考每个路径第一个停靠点的本地时区。

  • UTC:

    时间参数是指协调世界时间 (UTC)。如果您想要在特定的时间(如现在)生成路径,但不确定第一个停靠点所在的时区,请选择此选项。

    如果您生成跨越多个时区的多个路径,以 UTC 表示的开始时间将发生同步。例如,时间值为 10:00 a.m., 2 January 表示 始于东部时区的路径的开始时间为东部标准时间上午 5:00 (UTC-5:00), 始于中部时区的路径的开始时间为中部标准时间上午 4:00 (UTC-6:00)。这两个路径均于上午 10:00 开始 进行记录。

    输出停靠点要素类中记录的到达与离开的时间和日期将参考 UTC。

String
UTurn_at_Junctions
(可选)

交汇点的 U 形转弯策略。允许 U 形转弯表示求解程序可以在交汇点处转向并沿同一街道往回行驶。考虑到交汇点表示街道交叉路口和死角,不同的车辆可以在某些交汇点转弯,而在其他交汇点则不行 - 这取决于交汇点是交叉路口还是死角。为适应此情况,U 形转弯策略参数由连接到交汇点的边数或街道数隐性指定,这称为交汇点原子价。此参数可接受的值如下所列;每个值的后面是根据交汇点原子价对其含义的描述。

  • 允许:

    无论在交汇点处有几条连接的边或街道,均允许 U 形转弯。这是默认值。

  • 不允许:

    在所有交汇点处均禁止 U 形转弯,不管交汇点原子价如何。

  • 仅在死角处允许:

    除仅有一条相邻边的交汇点(死角)外,其他交汇点均禁止 U 形转弯。

  • 仅在交点和死角处允许:

    在恰好有两条相邻边相遇的交汇点处禁止 U 形转弯,但是交叉点(三条或三条以上相邻边的交汇点)和死角(仅有一条相邻边的交汇点)处允许。通常,网络建模街道在路段中间有多余的交汇点。此选项可防止车辆在这些位置出现 U 形转弯。

除非将出行模式设置为自定义,否则会忽略此参数。

String
Point_Barriers
(可选)

指定一个或多个点作为临时限制,或显示在基础街道上行驶可能需要的附加时间或距离。例如,点障碍可用来显示一棵沿街倒下的树或是铁路道口上的时间延迟。

工具限制了可添加为障碍的点不得超过 250 个。

指定点障碍后,可通过使用特性为每个事件点设置属性,例如其名称或障碍类型。可通过以下属性指定点障碍:

Name:障碍名称。

BarrierType:指定点障碍是完全限制通行还是增加通过障碍时的时间或距离。此特性值可指定为以下整数之一(请使用数值代码而非括号中的名称):

  • 0(限制型)- 禁止穿过障碍。此障碍称为限制型点障碍,因为它作为限制使用。
  • 2(增加成本型)- 穿过此障碍会增加通过 Additional_Time 或 Additional_Distance 字段指定的行驶时间或行驶距离的数值。此障碍类型称为增加成本型点障碍。

Additional_Time:表示穿越障碍时会增加的行驶时间。此字段仅适用于增加成本型障碍且仅在测量单位基于时间时适用。此字段的值必须大于或等于零,并且其单位与“测量单位”参数中指定的单位相同。

Additional_Distance:表示穿越障碍时会增加的距离。此字段仅适用于增加成本型障碍且仅在测量单位基于距离时适用。此字段的值必须大于或等于零,并且其单位与“测量单位”参数中指定的单位相同。

Feature Set
Line_Barriers
(可选)

指定一条或多条线,这些线相交的街道上禁止通行。例如,线障碍可用于对阻塞若干个路段交通的游行或抗议队伍进行建模。线障碍还可用于快速隔离多条道路使其禁止被穿越,从而在可能的路径中去除不符合要求的街道网络部分。

该工具限制了您可以使用“线障碍”参数限制的街道数量。可指定为线障碍的线数没有限制时,所有线的相交街道的合并数不能超过 500。

指定线障碍时,可使用以下特性为每个障碍设置名称属性:

Name:障碍名称。

Feature Set
Polygon_Barriers
(可选)

指定面,该面完全限制通行或按比例调整行驶在面相交的街道上所需的行驶时间或距离。

该服务限制了您可以使用“面障碍”参数限制的街道数量。可指定为面障碍的面数没有限制时,所有面的相交街道的合并数不能超过 2,000。

指定面障碍时,可通过使用特性为每个面障碍设置属性,例如名称或障碍类型。可通过以下属性指定面障碍:

Name:障碍名称。

BarrierType:指定障碍的存在会完全禁止通行还是按比例调整行程时间或距离。该字段值可指定为以下整数之一(请使用数值代码而非括号中的名称):

  • 0(限制型)- 禁止穿过障碍的任何部分。此障碍称作限制型面障碍,因为它禁止在与障碍相交的街道上行驶。此类障碍的一个具体应用是对覆盖街道中某些区域且导致街道无法通行的洪水进行建模。
  • 1(调整成本型)- 通过使用 ScaledTimeFactor 或 ScaledDistanceFactor 字段指定的系数,调整在基础街道上行驶所需的时间或距离。如果障碍部分覆盖了街道,则会按比例调整行驶时间或行驶距离。例如,系数 0.25 表示在基础街道上行驶的速度是正常速度的四倍。系数 3.0 表示在基础街道上行驶相同距离所花费的时间为正常值的三倍。此障碍类型称为调整成本型面障碍。可用于对导致特定区域的行进速度减慢的暴风雨进行建模。

ScaledTimeFactor:它是与障碍相交街道的行驶时间要乘以的因子。此字段仅适用于调整成本型障碍且仅在测量单位基于时间时适用。该字段值必须大于零。

ScaledDistanceFactor:它是与障碍相交街道的距离要乘以的因子。此属性仅适用于调整成本型障碍且仅在测量单位基于距离时适用。该属性值必须大于零。

Feature Set
Use_Hierarchy
(可选)

指定在查找停靠点间的最短路径时是否应使用等级。

  • 选中 (True):

    查找路径时应用等级。在应用等级时,相比低等级的街道(例如地方道路),该工具更偏好等级较高的街道(例如高速公路),且该工具可以用于模拟驾驶员对在高速公路(而非地方道路)上行驶的偏好,即使这意味着行程更远。查找远距离位置的路径时尤为如此,因为长途驾驶员往往更偏好于在高速公路上行驶,这样可以避免停靠、交叉路口和转弯。应用等级可实现更快的计算速度,尤其是对于长途路径来说,因为该工具可以在相对较小的街道子集中确定最佳路径。

  • 未选中 (False):

    查找路径时不应用等级。如果没有应用等级,该工具就会考虑所有的街道且在选择路线时不会选择等级较高的街道。这常用于在市内查找短路径。

如果设施点和请求点间的直线距离大于 50 英里(80.46 公里),即使您已设置此参数为不应用等级,工具也会自动转换为应用等级。

除非将出行模式设置为自定义,否则会忽略此参数。对自定义步行模式进行建模时建议关闭等级,这是因为该等级专用于机动车辆。

Boolean
Restrictions
(可选)

指定在查找最佳路径时工具应使用的限制。限制表示行驶偏好或要求。在大多数情况下,限制会使道路被禁止选择,但限制也可以使道路被避免选择或优先选择。例如,使用“避开收费公路”限制的结果是,仅在为了访问停靠点而必须借道收费公路时,才会生成一条包含收费公路的路径。高度限制则使您可以绕开低于车辆高度的间隙。如果车辆上装载着腐蚀性物质,使用“禁止任何危险物品”限制可以防止在标记着运输腐蚀性材料为非法行为的路上运输这些材料。

除非将出行模式设置为自定义,否则会忽略您为此参数提供的值。

以下是可用限制的列表和简短描述。

注:

某些限制需要指定一个额外值以供它们使用。该值需要与限制名称和用于限制的特定参数相关联。如果在“属性参数值”参数中的 AttributeName 列显示限制名称,则可识别限制。发现可穿越道路时,为了正确使用限制,应在“属性参数值”参数中指定 ParameterValue 字段。

注:

有些限制仅适用于某些国家/地区;下表按区域显示这些限制的可用性。关于在某区域内可用性有限的限制,通过在网络分析服务的数据覆盖网页上查看“国家/地区列表”部分中的表,可以检查该限制在特定国家/地区是否可用。如果一个国家/地区具有 Logistics Attribute 列的 Yes 值,则该国家/地区支持具有区域可选性的限制。如果您指定的限制名称在事件点所在的国家/地区不可用,该服务会忽略无效限制。该服务还会忽略“限制用法”参数值为 0 到 1(请参阅“属性参数值”参数)的限制。它会禁止“限制用法”参数值大于 0 的所有限制。

该工具支持以下限制:

  • 禁止任何危险物品 - 结果将不包含禁止运输任何危险类型材料的道路。

    可用性:在北美洲及欧洲选择国家

  • 避开拼车道路 - 结果将避开专供拼车(高承载)车辆行使的道路。

    可用性:所有国家

  • 避开快速车道 - 结果将避开指定为快速车道的道路。

    可用性:所有国家

  • 避开渡轮 - 结果将避开渡轮。

    可用性:所有国家

  • 避开关口 - 结果将避开存在关键通道或守卫控制入口等关口的道路。

    可用性:所有国家

  • 避开限行道路 - 结果将避开限制进入高速公路的道路。

    可用性:所有国家

  • 避开私家道路 - 结果将避开非公有和维护的道路。

    可用性:所有国家

  • 避开收费公路 - 结果将避开收费公路。

    可用性:所有国家

  • 避开货车禁行道路 - 结果将避开禁止货车通行的道路,除非正在进行配送。

    可用性:所有国家

  • 避开未铺设道路 - 结果将避开未铺设(例如,泥土、砾石等)的道路。

    可用性:所有国家

  • 轴计数限制 - 结果将不包含具有指定轴数的卡车禁行的道路。可使用“车轴数”限制参数指定车轴数。

    可用性:在北美洲及欧洲选择国家

  • 驾驶公共汽车 - 结果将不包含公共汽车禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 驾驶配送车辆 - 结果将不包含配送车辆禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 驾驶出租车 - 结果将不包含出租车禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 驾驶卡车 - 结果将不包含卡车禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 驾驶轿车 - 结果将不包含轿车禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 驾驶急救车辆 - 结果将不包含急救车辆禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 高度限制 - 结果将不包含车辆高度超出道路所允许的最大高度的道路。可使用“车辆高度(米)”限制参数指定车辆高度。

    可用性:在北美洲及欧洲选择国家

  • 主销到后轴长度限制 - 结果将不包含车辆长度超出路上所有卡车所允许的主销到后轴最大长度的道路。可使用“车辆中心立轴-后轴长度(单位为米)”限制参数指定车辆中心立轴与后轴之间的长度。

    可用性:在北美洲及欧洲选择国家

  • 长度限制 - 结果将不包含车辆长度超出道路所允许的最大长度的道路。可使用“车辆长度 (单位为米)”限制参数指定车辆长度。

    可用性:在北美洲及欧洲选择国家

  • 骑摩托车 - 结果将不包含摩托车禁行的道路。使用此限制还将确保结果支持单行道。

    可用性:所有国家

  • 禁止在建道路 - 结果将不包含在建道路。

    可用性:所有国家

  • 禁止带有一个或多个拖车的半挂车或拖拉机 - 结果将不包含带有一个或多个拖车的半挂车或拖拉机禁行的道路。

    可用性:在北美洲及欧洲选择国家

  • 禁止单轴车辆 - 结果将不包含单轴车辆禁行的道路。

    可用性:在北美洲及欧洲选择国家

  • 禁止双轴车辆 - 结果将不包含双轴车辆禁行的道路。

    可用性:在北美洲及欧洲选择国家

  • 禁止过境交通 - 结果将不包含禁止过境交通(非本地)的道路。

    可用性:所有国家

  • 带拖车的卡车限制 - 结果将不包含禁止具有指定拖车数量的卡车通行的道路。可使用“卡车的拖车数”限制参数指定卡车的拖车数。

    可用性:在北美洲及欧洲选择国家

  • 使用首选危险物品路径 - 结果将首选专用于运输危险类型材料的道路。

    可用性:在北美洲及欧洲选择国家

  • 使用首选卡车路径 - 结果将首选指定为卡车路径的道路,例如,由美国的《国家地面交通援助法案》指定为国家网络的一部分的道路,由州或省指定为卡车路径的道路,或在某区域内驾驶卡车的首选道路。

    可用性:在北美洲及欧洲选择国家

  • 步行 - 结果将不包含行人禁行的道路。

    可用性:所有国家

  • 重量限制 - 结果将不包含车辆重量超出道路所允许的最大重量的道路。可使用“车辆重量 (千克)”限制参数指定车辆重量。

    可用性:在北美洲及欧洲选择国家

  • 轴负重限制 - 结果将不包含车辆轴负重超出道路所允许的最大轴负重的道路。可使用“车辆轴负重(单位为千克)”限制参数指定车辆轴负重。

    可用性:在北美洲及欧洲选择国家

  • 宽度限制 - 结果将不包含车辆宽度超出道路所允许的最大宽度的道路。可使用“车辆宽度(单位为米)”限制参数指定车辆宽度。

    可用性:在北美洲及欧洲选择国家

旧版本:

Driving a Delivery Vehicle 限制属性已弃用且无法在未来版本中使用。要获得类似的结果,请使用 Driving a Truck 限制属性以及 Avoid Truck Restricted Roads 限制属性。

String
Attribute_Parameter_Values
(可选)

指定某些限制需要的其他值,例如“重量限制”要求的车辆重量。您也可以使用属性参数指定限制对使用限制的行程是禁止、避免还是首选。如果该限制要避免或首选道路,您可以使用此参数进一步指定要避免或首选的程度。例如,您可以选择从不使用收费公路,尽可能地避开它们,或甚至格外倾向于使用它们。

注:

除非将出行模式设置为自定义,否则会忽略您为此参数提供的值。

如果指定了要素类的“属性参数值”参数,则要素类上的字段名称必须如下所示与字段相匹配:

AttributeName:列出限制名称。

ParameterName:列出与限制相关的参数名称。限制根据其用途可有一个或多个 ParameterName 字段值。

ParameterValue:工具在评估限制时使用的 ParameterName 的值。

“属性参数值”取决于“限制”参数。仅当限制名称指定为“限制”参数值时,ParameterValue 字段才可用。

在“属性参数值”中,每个限制(以 AttributeName 形式列出)具有一个 ParameterName 字段值,指定限制的行程是禁止、避免还是首选的“限制用法”与道路选择避免或首选的限制和程度相关联。可为限制用法 ParameterName 分配下列字符串值,或在括号内列出等效数值:

  • PROHIBITED (-1) - 完全禁止在使用限制的道路上行驶。
  • AVOID_HIGH (5) - 极不可能将工具包括在与限制相关的道路中。
  • AVOID_MEDIUM (2) - 不太可能将工具包括在与限制相关的道路中。
  • AVOID_LOW (1.3) - 不可能将工具包括在与限制相关的道路中。
  • PREFER_LOW (0.8) - 有可能将工具包括在与限制相关的道路中。
  • PREFER_MEDIUM (0.5) - 很有可能将工具包括在与限制相关的道路中。
  • PREFER_HIGH (0.2) - 极有可能将工具包括在与限制相关的道路中。

大多数情况下,如果限制取决于车辆特征(如车辆高度),则可以使用“限制用法”的默认值 PROHIBITED。但是在某些情况下,“限制用法”的值取决于您的路径偏好。例如,“避开收费公路”限制具有“限制用法”参数的默认值 AVOID_MEDIUM。这表示在使用限制时,在可能的情况下工具会试图绕开收费公路。AVOID_MEDIUM 也表示查找最佳路径时避开收费公路的重要性,即优先级为中等。选择 AVOID_LOW 会降低避开收费公路的重要性;而选择 AVOID_HIGH 则会增加其重要性,因此服务为避开收费公路而生成更长的路径时更容易为人所接受。选择 PROHIBITED 则会完全不允许在收费公路上行驶,因此路径不可能经过收费公路的所有部分。但是请注意,避开或禁止收费公路并由此避开公路通行费只是一部分人的目的;对另外一部分人来说,因为避开拥堵的交通比交一些公路通行费更为重要,会宁愿走收费公路。在后一种情况中,您可以选择 PREFER_LOW、PREFER_MEDIUM 或 PREFER_HIGH 作为“限制用法”的值。首选的等级越高,工具为了在与限制相关的道路上行驶就会绕行更远的路程。

Record Set
Route_Shape
(可选)

指定工具输出的路径要素的类型。可以使用以下值之一指定此参数:

  • 实际形状:

    返回基于基础街道所生成的路径的精确形状。

  • 具有测量值的实际形状:

    返回基于基础街道所生成的路径的精确形状。此外,会对该形状进行测量以便其可用于线性参考中。测量值从第一个停靠点开始增加,并以测量单位参数所指定的单位来记录累积行驶时间或累积行驶距离。

  • 直线:

    返回两个停靠点之间的一条直线。

  • 无:

    不返回任何路径形状。如果您只希望确定路径的总体行驶时间或行驶距离,则此值非常有用,而且会快速返回结果。

当路径形状参数设置为“实际形状”或“具有测量值的实际形状”时,可以使用适当的路线简化容差参数值对路径形状的制图综合进行进一步控制。

无论为路径形状参数选择哪个值,最佳路径始终通过最大限度地缩短行驶时间或行驶距离来确定,从不使用停靠点间的直线距离进行确定。这意味着只有路径形状是不同的,而非查找路径时搜索的基础街道。

String
Route_Line_Simplification_Tolerance
(可选)

指定要对路径、方向和路径边的输出线几何进行简化的程度。

如果路径形状参数未设置为“实际形状”,则工具将忽略此参数。

简化将保留路径上定义路径基本形状所需的关键点(例如交点处的转弯)而删除其他点。指定的简化距离为简化线偏离原始线的最大允许偏移。简化线将减少路径几何中的折点数。这将改善工具的执行时间。

Linear unit
Populate_Route_Edges
(可选)

指定工具是否应为每条路径生成边。路径边表示路径所遍历的各个街道要素或其他相似要素。输出路径边图层通常用于查看生成的路径在哪些街道或路径上行驶得最多或最少。

  • 选中 (True):

    生成路径边。输出路径边图层将由线要素填充。

  • 未选中 (False):

    不生成路径边。返回输出路径边图层,但该图层为空。

Boolean
Populate_Directions
(可选)

指定工具是否应为每条路径生成行驶方向。

  • 选中 (True):

    表示将会根据方向语言、方向样式名称和方向距离单位参数值生成和配置方向。

  • 未选中 (False):

    未生成方向,且工具返回一个空方向图层。

Boolean
Directions_Language
(可选)

指定在生成行驶方向时使用的语言。

此参数仅在选中填充方向参数或设置为 True 时使用。

可使用下列两位或五位字符语言代码指定参数值:

  • ar - 阿拉伯语
  • cs - 捷克语
  • de - 德语
  • el - 希腊语
  • en - 英语
  • es - 西班牙语
  • et - 爱沙尼亚语
  • fr - 法语
  • he - 希伯来语
  • it - 意大利语
  • ja - 日语
  • ko - 韩语
  • lt - 立陶宛语
  • lv - 拉脱维亚语
  • nl - 荷兰语
  • pl - 波兰语
  • pt-BR - 巴西葡萄牙语
  • pt-PT - 欧洲葡萄牙语
  • ru - 俄语
  • sv - 瑞典语
  • tr - 土耳其语
  • zh-CN - 简体中文

如果指定了某种不支持的语言代码,该工具将会使用默认语言(英语)返回方向。

String
Directions_Distance_Units
(可选)

指定在行驶方向中显示行驶距离的单位。此参数仅在选中填充方向参数或设置为 True 时使用。

  • Miles
  • Kilometers
  • Meters
  • Feet
  • Yards
  • NauticalMiles
String
Directions_Style_Name
(可选)

指定方向的格式化样式名称。此参数仅在选中填充方向参数或设置为 True 时使用。可以使用以下值指定此参数:

  • NA Desktop:

    生成适合打印的转弯说明。

  • NA Navigation:

    生成针对车载导航设备的转弯说明。

String
Travel_Mode
(可选)

指定用于在分析中建模的交通模式。出行模式在 ArcGIS Online 中进行管理,组织管理员可通过对其进行配置更好地反映组织工作流。您需要指定组织所支持的出行模式名称。

要获取受支持出行模式名称的列表,请使用与访问此工具时使用的相同 GIS 服务器连接,并在实用程序工具箱中运行 GetTravelModes。GetTravelModes 会将表和支持的出行模式添加到应用程序中。可将“支持的出行模式”表中“出行模式名称”字段的任何值指定为输入。您还可以将“出行模式设置”字段中的值指定为输入。由于工具不必查找基于出行模式名称的设置,因而加快了工具执行。

默认值,自定义,可以使用自定义出行模式参数(在交汇点处 U 形转弯、应用等级、限制、属性参数值和阻抗)配置您自己的出行模式。自定义出行模式参数的默认值对使用汽车的出行方式建模。您可能希望选择自定义并设置上述自定义出行模式参数,从而以快速步行速度对行人建模,或以给定高度、重量和特定危险材料货物对卡车建模。您可以选择执行此操作来尝试不同的设置以获取想得到的分析结果。一旦确定了分析设置,您应该使用组织管理员身份并将这些设置保存为新建或现有出行模式的一部分,以便您组织中的所有人均返回相同设置的分析。

警告:

选择自定义后,您为自定义出行模式参数设置的值便会包含在分析中。指定您组织定义的其他出行模式,将忽略为自定义出行模式参数设置的所有值;该工具将用您所指定的出行模式中的值将其覆盖。

String
Impedance
(可选)

指定阻抗,其值表示沿交通网络的路段或其他部分行进所需的精力或成本。

行程距离是一种阻抗,可将以千米表示的道路长度作为阻抗。从这个意义上,行程距离对所有模式均相同,即对行人而言 1 千米的距离对汽车而言也是 1 千米。(但不同模式所允许行进的线路可能会有变化,而这会影响两点间的距离,可通过出行模式设置对此进行建模。)

行程时间也可以是一种阻抗,比如,汽车花费一分钟沿空无一人的道路行驶一公里。行程时间会随出行模式的不同而不同(行人可能需要 20 多分钟才能走完一公里),所以在建模时为出行模式选择正确的阻抗非常重要。

从以下阻抗值中选择:

  • 行驶时间 - 对汽车的行驶时间建模。这些行驶时间是动态的,会随交通数据可用区域的交通流量而波动。这是默认值。

  • 货运时间 - 对卡车的行驶时间建模。这些行驶时间对每条道路都是静态的,不会随交通情况而波动。

  • 步行时间 - 对行人的行驶时间建模。

  • 行程距离 - 存储沿道路和路径测得的距离长度。要对步行距离建模,请选择此选项并确保在限制参数中设置了步行。同样,若对行驶距离或货运距离建模,则在此处选择行程距离并设置相应限制,以使车辆仅在允许的道路上行进。

除非将出行模式设置为自定义(这是默认值),否则会忽略您为此参数提供的值。

如果选择行驶时间、货运时间或步行时间,则必须将测量单位参数设置为基于时间的值,如果为阻抗选择了行程距离,则测量单位必须为基于距离的值。

String
Time_Zone_for_Time_Windows
(可选)

指定停靠点的时间窗值的时区。时间窗被指定为停靠点上 TimeWindowStart 和 TimeWindowEnd 字段的一部分。此参数仅在选中应用时间窗参数(或设置为 True)时可用。可以使用以下值之一指定此参数:

  • Geographically Local - 与停靠点相关的时间窗值位于停靠点所在的时区内。例如,如果停靠点所在的区域实行东部标准时间并且时间窗值为 8 AM 和 10 AM,则在东部标准时间中时间窗值将被视为 8 AM 和 10 AM。这是默认值。
  • UTC - 与停靠点相关的时间窗值采用协调世界时间 (UTC)。例如,如果停靠点所在的区域实行东部标准时间并且时间窗值为 8 AM 和 10 AM,则在东部标准时间中时间窗值将被视为 12 PM 和 2 PM(假设东部标准时间遵循夏令时)。如果不知道停靠点所在的时区,或者停靠点处在多个时区内并且您想要所有的时间窗同时启动,那么在 UTC 中指定时间窗值则非常有用。
Save_Output_Network_Analysis_Layer
(可选)

指定工具是否应将分析设置保存为网络分析图层文件。即使在 ArcGIS Desktop 应用程序(例如 ArcMap)中打开文件,仍然无法直接使用此文件。需要将其发送至 Esri 技术支持以诊断工具所返回结果的质量。

  • 选中 (True) - 保存网络分析图层文件。文件将下载到计算机上的临时目录中。在 ArcGIS Pro 中,可以通过查看输出网络分析图层参数的值来确定已下载文件的位置,该参数位于与工程地理处理历史中的工具执行对应的条目中。在 ArcMap 中,可以通过访问输出网络分析图层参数上的快捷菜单中的复制位置选项来确定文件的位置,该参数位于与地理处理结果窗口中的工具执行对应的条目中。

  • 取消选中 (False) - 不保存网络分析图层文件。这是默认设置。

Boolean
Overrides
(可选)

求解网络分析问题时,指定可影响求解程序行为的其他设置。

需要在 JavaScript 对象表示法 (JSON) 中指定此参数的值。例如,有效值的格式如下:{"overrideSetting1" : "value1", "overrideSetting2" : "value2"}。覆盖设置名称始终以双引号括起。该值可以是数字、布尔值或字符串。

此参数的默认值为无值,表示不覆盖任何求解程序设置。

覆盖是高级设置,应仅在谨慎分析应用设置前后得到的结果之后使用。要获得每个求解程序支持的覆盖设置及其可接受值的列表,请联系 Esri 技术支持。

string
Save_Route_Data
(可选)

选择输出中是否包括含有某类文件地理数据库的 zip 文件,该类文件地理数据库通过可与 ArcGIS Online 或 Portal for ArcGIS.共享路径图层的格式保存分析的输入和输出。

  • 选中 (True) - 将路径数据保存为 zip 文件。文件将下载到计算机上的临时目录中。在 ArcGIS Pro 中,可以通过查看输出路径数据参数的值来确定已下载文件的位置,该参数位于与工程地理处理历史中的工具执行对应的条目中。在 ArcMap 中,可以通过访问输出路径数据参数上的快捷菜单中的复制位置选项来确定文件的位置,该参数位于与地理处理结果窗口中的工具执行对应的条目中。

  • 取消选中 (False) - 不保存路径数据。这是默认设置。

Boolean

代码示例

FindRoutes 示例

以下 Python 脚本演示了如何在脚本中使用 FindRoutes 工具。

import arcpy
import time
import datetime
import sys

username = "<your user name>"
password = "<your password>"
FindRoute_service = "http://logistics.arcgis.com/arcgis/services;World/Route;{0};{1}".format(username, password)

#Add the geoprocessing service as a toolbox. Use an alias when importing
arcpy.ImportToolbox(FindRoute_service, "agol")

#Set the variables to call the tool
stops = r'C:/data/Inputs.gdb/Stops'
output_routes = r'C:/data/Results.gdb/Routes'
output_route_edges = r'C:/data/Results.gdb/Route_Edges'
output_directions = r'C:/data/Results.gdb/Directions'
output_stops = r'C:/data/Results.gdb/Stops'

#Call the tool
result = arcpy.agol.FindRoutes(stops, "Minutes",
                                Reorder_Stops_to_Find_Optimal_Routes=True,
                                Preserve_Terminal_Stops="Preserve First",
                                Time_of_Day=datetime.datetime(2014, 2, 10, 8, 0, 0))

#Check the status of the result object every 0.5 seconds 
#until it has a value of 4(succeeded) or greater 
while result.status < 4:
    time.sleep(0.5)

#print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
    print "An error occured when running the tool"
    print result.getMessages(2)
    sys.exit(2)
elif result_severity == 1:
    print "Warnings were returned when running the tool"
    print result.getMessages(1)
    
#Get the output routes  and save to a local geodatabase
result.getOutput(1).save(output_routes)
result.getOutput(2).save(output_route_edges)
result.getOutput(3).save(output_directions)
result.getOutput(4).save(output_stops)

环境

此工具不使用任何地理处理环境。

相关主题

  • 什么是 ArcGIS Online 网络分析服务?
  • 将 ArcMap 连接至 ArcGIS Online 网络分析服务

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2019 Esri. | 隐私政策 | 法律声明