计算地图上路标图钉之间的路线(预览)

[本主题是预发行文档,有可能会有所更改。]

画布应用中的 map 控件可以使用从 Excel 工作簿中的表导入的数据添加路标图钉。 此控件可以计算路标之间的路线、重新排序路标并重新计算路线以改善旅行时间或距离。

重要

  • 这是一项预览功能。
  • 预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前已经可用,以便客户可以及早使用并提供反馈。

您将需要一个包含具有以下列的命名表的数据源。 每个列对应于 map 控件的一个高级属性。 每一行被固定为地图上的一个路标。

列名称 对应于 必需
名称(或标签) RouteWaypointsLabels 可选
经度 RouteWaypointsLongitudes 可选(未提供地址时为必需)
纬度 RouteWaypointsLatitudes 可选(未提供地址时为必需)
地址 RouteWaypointsAddresses 可选(未提供经度和纬度时为必需)

备注

所有属性在技术上是可选的。 但是,必须至少为要绘制的路标位置提供地址或纬度/经度对中的一个。

从 Excel 表导入路标图钉

在此示例中,我们将从名为 TestData 的 Excel 表导入路标数据。

创建数据源

  1. 使用下列数据在 Excel 中创建一个表。 将表命名为 TestData

    名称 经度 纬度 地址
    工作 -122.156481 47.663448 1 Microsoft Way, Redmond, WA 98052
    见面 -122.221037 47.57137
    游泳 -122.144133 47.600373
    网球 -122.137265 47.616115

    您的表应如下所示:

    一个示例 Excel 工作表,包含一个名为 TestData 的表,表中包含在地图上放置路标图钉所需的信息。

  2. 将工作簿保存到您的 OneDrive for Business 并关闭文件。

将数据源绑定到 map 控件

  1. 创建画布应用。 确保它满足地理空间先决条件

  2. 插入 map 控件

  3. 在控件的属性选项卡上,选择 Route waypoints(Items) 框,键入 excel

    显示如何搜索路标数据源以连接到 Power Apps Studio 中的 map 控件的屏幕截图。

  4. 选择从 Excel 导入

  5. 导航到您的 OneDrive for Business,选择您之前保存的 Excel 工作簿。

  6. 选择表 TestData,然后选择连接

    表选择面板的屏幕截图。

  7. 高级选项卡上,找到 RouteWaypointsLabelsRouteWaypointsLatitudesRouteWaypointsLongitudesRouteWaypointsAddresses,输入表中对应列的名称。 (在此示例中,在 RouteWaypointsLabels 中输入名称,在 RouteWaypointsLatitudes 中输入纬度,依此类推。)用引号将列名括起来。

    备注

    地址可与纬度和经度互换。 如果提供了纬度和经度,则不会使用地址。 如果提供了地址,则不需要纬度和经度。 使用地址时可以显示的路标数量有限制,因此请尽可能使用纬度和经度。

图钉将出现在地图上由表中的坐标或地址描述的位置。 如果表包含标签,将对图钉进行标记。 图钉按照路标位置在表中出现的顺序编号。

地图的屏幕截图,带标签的固定的路标显示在地图属性旁边。

计算路标之间的路线

选择 map 控件后,打开属性选项卡,打开启用路线

此控件计算固定路标之间的路线。

显示固定路标之间路线的地图的屏幕截图。

备注

默认情况下,map 会重新排序中间路标以减少旅行时间或旅行距离。 第一个和最后一个路标被视为起点和终点,不能重新排序。 要让路标保持数据源中的给定顺序,打开控件的 Maintain waypoint order 属性。

属性

更改使用属性计算路线的方法。

属性 说明 类型​​ 选项卡
启用路线 计算路线路标之间的路线。 布尔值 属性;高级:UseRouting
保持路标顺序 确定计算的路线是否按数据源中提供的顺序维护路标。 布尔值 属性;高级:RouteMaintainOrder
优化路线 确定计算的路线是针对距离、时间优化还是未优化。 下拉列表 属性;高级:RouteOptimization
路线旅行模式 确定是为汽车还是卡车计算路线,这可能需要避开具有特定高度或重量限制的桥梁。 下拉列表 属性;高级:RouteTravelMode
显示路线图钉 确定是否在路线路标上显示图钉。 布尔值 属性;高级:ShowRoutePins

输出属性

有些属性仅在计算的路线更改时才可用。 这些输出属性放在 RouteDirection 对象中。 OnRouteDirectionChange 事件是在其他控件中使用输出或自定义应用体验的推荐方式。

属性 说明 类型​​ 选项卡
OnRouteDirectionChange 包含在路线更改时运行的代码。 事件 高级
RouteDirection 描述路线输出:
  • LengthInMeters:整个路线的长度(以米为单位)
  • TravelTimeInSeconds:整个路线的预期旅行时间(以秒为单位)
  • RouteGeoJSON:以 GeoJSON 格式描述路线的字符串
  • RouteLegs:描述路线每个区段的表:
    • Index:表示路线中区段顺序的数字
    • LengthInMeters:区段的长度(以米为单位)
    • TravelTimeInSeconds:区段的预期旅行时间(以秒为单位)
    • StartLabel:区段起点的标签
    • StartLatitude:区段起点的纬度
    • StartLongitude:区段起点的经度
    • StartAddress:区段起点的地址
    • EndLabel:区段终点的标签
    • EndLatitude:区段终点的纬度
    • EndLongitude:区段终点的经度
    • EndAddress:区段终点的地址
  • OrderedWaypoints:描述路标排序后每个路标的表:
    • Index:表示路线中路标顺序的数字
    • Label:路标的标签
    • Latitude:路标的纬度
    • Longitude:路标的经度
    • Address:路标的地址
对象 不适用(仅输出属性)

另请参阅

Interactive map 控件