当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python ArcGIS RouteLayer.solve用法及代码示例


本文简要介绍 python 语言中 arcgis.network.RouteLayer.solve 的用法。

用法:

solve(stops, barriers=None, polyline_barriers=None, polygon_barriers=None, travel_mode=None, attribute_parameter_values=None, return_directions=True, return_routes=True, return_stops=False, return_barriers=False, return_polyline_barriers=True, return_polygon_barriers=True, out_sr=None, ignore_invalid_locations=True, output_lines=None, find_best_sequence=False, preserve_first_stop=True, preserve_last_stop=True, use_time_windows=False, start_time=None, start_time_is_utc=False, accumulate_attribute_names=None, impedance_attribute_name=None, restriction_attribute_names=None, restrict_u_turns=None, use_hierarchy=True, directions_language=None, directions_output_type=None, directions_style_name=None, directions_length_units=None, directions_time_attribute_name=None, output_geometry_precision=None, output_geometry_precision_units=None, return_z=False, overrides=None, preserve_objectid=False, future=False, time_windows_are_utc=False, return_traversed_edges=None, return_traversed_junctions=None, return_traversed_turns=None, geometry_precision=None, geometry_precision_z=None, geometry_precision_m=None)

返回:

dict

求解操作在网络层资源上执行。在 layerType 为 esriNAServerRouteLayer 的网络层上支持求解操作。您可以将参数作为查询参数提供给求解路线操作。

Parameter

Description

stops

所需的点/函数集/函数列表。在分析期间作为网络位置加载的停靠点集。可以使用基于简单逗号/semi-colon 的语法或 JSON 结构来指定停止点。如果未指定停靠点,则在分析中使用Map文档中的预加载停靠点。

barriers

可选点/特征集。分析期间加载为网络位置的障碍集。可以使用基于简单逗号/semi-colon 的语法或 JSON 结构来指定障碍。如果未指定障碍,则在分析中使用Map文档中的预加载障碍。如果传递了一个空的 json 对象(“{}”),则忽略预加载的障碍。

polyline_barriers

可选的折线/特征集。分析期间作为网络位置加载的多段线障碍集。如果未指定折线障碍,则在分析中使用Map文档中预加载的折线障碍。如果传递了一个空的 json 对象(‘{}’),则忽略预加载的折线障碍。

polygon_barriers

可选多边形/特征集。分析期间加载为网络位置的多边形障碍集。如果未指定面障碍,则在分析中使用Map文档中预加载的面障碍。如果传递了一个空的 json 对象(‘{}’),则忽略预加载的多边形障碍。

travel_mode

可选字符串。出行模式提供覆盖值,可帮助您快速一致地为车辆或交通方式建模。所选出行模式必须在路径服务引用的网络数据集上进行预配置。

attribute_parameter_values

可选字符串/列表。一组属性参数值,可以参数化以确定车辆可以使用哪些网络元素。

return_directions

可选的布尔值。如果为真,将生成方向并与分析结果一起返回。默认为真。

return_routes

可选的布尔值。如果为 true,则路由将与分析结果一起返回。默认为真。

return_stops

可选的布尔值。如果为真,将返回止损点和分析结果。默认为假。

return_barriers

可选的布尔值。如果为真,障碍将与分析结果一起返回。默认为假。

return_polyline_barriers

可选的布尔值。如果为 true,则折线障碍将与分析结果一起返回。默认为假。

return_polygon_barriers

可选的布尔值。如果为 true,多边形障碍将与分析结果一起返回。默认为假。

out_sr

可选整数。与分析结果一起返回的几何图形的空间参考。

ignore_invalid_locations

可选的布尔值。 - 如果为真,求解器将忽略无效位置。否则,它将引发错误。默认为真。

output_lines

要在结果中生成的输出行的类型。默认值在网络层中定义。值:esriNAOutputLineTrueShape |

esriNAOutputLineTrueShapeWithMeasure | esriNAOutputLineStraight | esriNAOutputLineNone

find_best_sequence

可选的布尔值。如果为真,求解器应以最佳顺序重新排序路线。默认值在网络层中定义。

preserve_first_stop

可选的布尔值。如果为真,求解器应保持序列中的第一个停靠点固定。默认值在网络层中定义。

preserve_last_stop

可选的布尔值。如果为真,求解器应保持序列中的最后一个停靠点固定。默认值在网络层中定义。

use_time_window

可选的布尔值。如果为真,求解器应考虑时间窗。默认值在网络层中定义。

start_time

可选字符串。路线开始的时间。如果未指定,求解器将使用网络层中定义的默认值。

start_time_is_utc

可选的布尔值。 startTime 参数的时区。

accumulate_attribute_names

可选字符串。与分析一起累积的网络属性名称列表。默认值在网络层中定义。该值应指定为属性名称的逗号分隔列表。您还可以指定值 none 以指示不应累积任何网络属性。

impedance_attribute_name

可选字符串。在分析中用作阻抗属性的网络属性名称。默认值在网络层中定义。

restriction_attribute_names

可选字符串。 - 用作分析限制的网络属性名称列表。默认值在网络层中定义。该值应指定为属性名称的逗号分隔列表。您还可以指定值 none 以指示不应将网络属性用作限制。

restrict_u_turns

可选的布尔值。指定如何在分析中限制 U-Turns。默认值在网络层中定义。值:esriNFSBAllowBacktrack | esriNFSBAtDeadEndsOnly |

esriNFSBNoBacktrack | esriNFSBAtDeadEndsAndIntersections

use_hierarchy

可选的布尔值。如果为 true,则应在分析中使用网络的层次属性。默认值在网络层中定义。

directions_language

可选字符串。计算方向时使用的语言。默认值为服务器操作系统的语言。支持的语言列表可以在 REST 层说明中找到。

directions_output_type

可选字符串。定义返回方向的内容和详细程度。默认值为 esriDOTInstructionsOnly。值:esriDOTComplete | esriDOTCompleteNoEvents

esriDOTInstructionsOnly | esriDOTStandard |

esriDOTSummaryOnly

directions_style_name

可选字符串。返回路线时使用的样式。默认值在网络层中定义。支持的样式列表可以在 REST 层说明中找到。

directions_length_units

可选字符串。计算方向时使用的长度单位。默认值在网络层中定义。值:esriNAUFeet | esriNAUK 公里| esriNAUMeters |

esriNAUMiles | esriNAUNauticalMiles | esriNAUYards | esriNAUUnknown

directions_time_attribute_name

可选字符串。计算方向时用于行驶时间的网络属性名称。默认值在网络层中定义。

output_geometry_precision

可选浮点数。泛化后输出几何的精度。如果为 0,则不执行输出几何的泛化。默认值在网络服务配置中定义。

output_geometry_precision_units

可选字符串。输出几何精度的单位。默认值为 esriUnknownUnits。值:esriUnknownUnits | esri厘米 | esriDecimalDegrees |

esriDecimeters | esriFeet | esriInches | esriKilometers | esriMeters | esriMiles | esriMillimeters | esriNauticalMiles | esriPoints | esriYards

return_z

可选的布尔值。如果为 true,如果网络数据集为 Z-aware,则 Z 值将包含在返回的路径和压缩几何中。默认值为假。

overrides

可选字典。指定可以影响求解器行为的其他设置。可以通过联系 Esri 技术支持获取每个求解器支持的覆盖设置列表及其可接受的值。

preserve_objectid

可选布尔值。如果为 True,则保留所有 objectid 值。默认值为假。

future

可选布尔值。如果为 True,则将返回 future 对象,并且进程不会等待任务完成。默认为False,表示等待结果。

time_windows_are_utc

可选的布尔值。指定停靠点上的TimeWindowStart 和TimeWindowEnd 属性值是采用协调世界时 (UTC) 还是地理本地时间。

return_traversed_edges

可选的布尔值。指定服务是否返回遍历的边。

return_traversed_junctions

可选的布尔值。指定服务是否将返回遍历的结点。

return_traversed_turns

可选的布尔值。指定服务是否返回遍历的转弯。

geometry_precision

可选整数。使用此参数指定求解操作返回的响应几何中的小数位数。这仅适用于 x/y 值(不适用于 m- 或 z-values)。

geometry_precision_z

可选整数。使用此参数指定求解操作返回的响应几何中的小数位数。这仅适用于z-value。

geometry_precision_m

可选整数。使用此参数指定求解操作返回的响应几何中的小数位数。这仅适用于m-value。

例子:

# USAGE EXAMPLE: Solving the routing problem by passing in a FeatureSet

# get a FeatureSet through query
fl = sample_cities.layers[0]
cities_to_visit = fl.query(where="ST = 'CA' AND POP2010 > 300000",
                           out_fields='NAME', out_sr=4326)

type(cities_to_visit)
>> arcgis.features.feature.FeatureSet

# pass in the FeatureSet
result = route_layer.solve(stops=cities_to_visit, preserve_first_stop=True,
                           preserve_last_stop=True, find_best_sequence=True, return_directions=False,
                           return_stops=True, return_barriers=False, return_polygon_barriers=False,
                           return_polyline_barriers=False, return_routes=True,
                           output_lines='esriNAOutputLineStraight')

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 arcgis.network.RouteLayer.solve。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。