1

很难想出适合我的问题的主题描述,但我会详细说明:

我正在计算并绘制一条从 A 到 C 的路线,沿途有 1 个航路点,我们称之为 B

所以我的路线看起来像这样: A -> B(航路点)-> C

如果路线具有这种格式(通过航路点 B)我想强制 点 A 和 B 之间的路线使用旅行模式“步行”我很想以最干净的方式进行此操作,但我无法以这种方式使用“航点”。

我想出了一个非常老套的替代方案,将 A 到 C 的路线分成 2 条单独的路线(因此需要两个单独的 DirectionsRenderer 对象(每条路线 1 个)),这使我能够将旅行模式分别强制到这些对象中。最终这正是我想要它做的......但它仍然感觉不对。

有人有这样做的经验吗?我觉得我只是查看了文档中的某些部分,该部分解释了如何为航点之间的每条路线设置单独的旅行模式。

我的 hacky 替代方案的简短片段:

... code omitted ...

var directionsDisplayDrive  = new google.maps.DirectionsRenderer({suppressMarkers: false, polylineOptions: polylineOptionsDrive});
var directionsDisplayWalk = new google.maps.DirectionsRenderer({suppressMarkers: false, polylineOptions: polylineOptionsWalk});

directionsDisplayWalk.setMap(map);
directionsDisplayDrive.setMap(map);

calcRoute("WALKING", fromCoded, waypoint1); // force WALK from A to B
calcRoute("DRIVING", waypoint1, toCoded);   // force DRIVE from B to C

... rest of code omitted...

谢谢

4

0 回答 0