19

在 JSON 输出中,“步骤”中有一个“机动”字段。在这个“左转”、“右转”、“微左转”等。例子在这里

我在哪里可以找到“机动”字段的定义以及可能值的列表?这里没有相关描述

提前致谢

4

5 回答 5

25

这是懒人的视觉效果:)

不敢相信谷歌还没有记录这一点......

机动包含对当前步骤采取的动作(左转、合并、直行等)。

此字段用于确定要显示的图标,并且可以包含以下值之一:

Google Maps Direction API - 机动

于 2014-03-09T15:51:22.243 回答
23

UPD

信不信由你,但最后他们记录了它!请看这里


根据这个 gmaps-api-issue我认为谷歌不急于记录这部分 api :(

但我至少可以通过以下方式帮助解决这个问题……“机动”字段是对步骤操作的简短描述。我想谷歌的脚本使用它来将 css 类应用于方向面板。我注意到每个步骤的图标取决于 css 类“.adp-{maneuver_name}”。面板的 Css 文件包含 18 个带有该掩码的类,我提取了操作列表:

  • 急转左
  • 右转
  • 轻微右转
  • 合并
  • 环岛左
  • 回旋处右
  • 左转
  • 微左转
  • 左转
  • 斜坡右
  • 右转
  • 右叉
  • 直的
  • 左叉
  • 渡轮火车
  • 右转
  • 左斜坡
  • 渡船

在工作期间,我发现了“maneuver”字段的两个附加值,它们没有 css 类:

  • 靠左
  • 靠右

我不能保证这个列表的完整性,但是我在我的项目中使用了这个列表并且它可以正常工作。

于 2013-07-31T15:52:52.370 回答
8

当您使用路线服务时,谷歌地图会在您的<head>

截至 2015 年 6 月,我在下面有这段代码。谷歌似乎只下载显示方向所需的内容,因此,您的结果可能会有所不同。

底部的背景图像文件:

.adp-substep .adp-stepicon .adp-maneuver {
        background-size: 19px 630px;
        position: absolute;
        left: 0;
        width: 16px;
        height: 16px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-ferry {
        background-position: 0 -614px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-ferry-train {
        background-position: 0 -566px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-merge {
        background-position: 0 -143px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-straight {
        background-position: 0 -534px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-fork-left {
        background-position: 0 -550px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-ramp-left {
        background-position: 0 -598px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-roundabout-left {
        background-position: 0 -197px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-left {
        background-position: 0 -413px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-sharp-left {
        background-position: 0 0
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-slight-left {
        background-position: 0 -378px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-uturn-left {
        background-position: 0 -305px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-fork-right {
        background-position: 0 -499px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-ramp-right {
        background-position: 0 -429px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-roundabout-right {
        background-position: 0 -232px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-right {
        background-position: 0 -483px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-sharp-right {
        background-position: 0 -582px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-turn-slight-right {
        background-position: 0 -51px
    }

    .adp-substep .adp-stepicon .adp-maneuver.adp-uturn-right {
        background-position: 0 -35px
    }

    .adp-substep .adp-stepicon .adp-maneuver {
        background-image: url(http://maps.gstatic.com/mapfiles/api-3/images/maneuvers.png);
    }
于 2015-06-17T19:30:08.987 回答
1

Maneuver 包含对当前步骤执行的操作(左转、合并、直行等)。此字段用于确定要显示哪个图标,并且可以包含以下值之一:turn-slight-left, turn-sharp-left, uturn-left, turn-left, turn-slight-right, turn-sharp-右,右转,右转,直,左坡,右坡,合并,左叉,右叉,渡轮,轮渡火车,左环岛,右环岛。此列表中的值可能会发生变化

下面的链接将帮助您找到所有图像 https://github.com/opentripplanner/OpenTripPlanner/tree/master/src/client/images/directions

于 2017-12-06T07:18:02.137 回答
1

看看他们的SDK

https://github.com/googlemaps/google-maps-services-js/blob/master/src/common.ts第1132行

export enum Maneuver {
    turn_slight_left = "turn-slight-left",
    turn_sharp_left = "turn-sharp-left",
    uturn_left = "uturn-left",
    turn_left = "turn-left",
    turn_slight_right = "turn-slight-right",
    turn_sharp_right = "turn-sharp-right",
    uturn_right = "uturn-right",
    turn_right = "turn-right",
    straight = "straight",
    ramp_left = "ramp-left",
    ramp_right = "ramp-right",
    merge = "merge",
    fork_left = "fork-left",
    fork_right = "fork-right",
    ferry = "ferry",
    ferry_train = "ferry-train",
    roundabout_left = "roundabout-left",
    roundabout_right = "roundabout-right"
}
于 2021-10-07T13:55:50.120 回答