我正在开发一个应用程序,在该应用程序中,我需要显示一条消息,显示用户点击路线上的位置后,在Google地图上的路线帮助下突出显示的位置。
这个Groute类提供了很多信息,比如两个地方之间的距离,持续时间,但它没有提供有关方向的信息。
答案 0 :(得分:2)
从GRoute中,您可以使用.getStep(i)获取GRoute中每个步骤的GStep对象。 .getNumSteps()告诉你GRoute中有多少GSteps。
对于每个GStep,您可以调用.getDescriptionHtml(),它将返回该单个步骤的格式化描述。如“将第一个正确带到 A5099 / Coronation St ”或“在环形交叉路口,将第3个出口带到 A6 / Garstang Rd 前往 Preston “。
要将GStep与折线的特定顶点相关联,请扫描所有GSteps,查找最后一个,其中getPolylineIndex()小于或等于指定的顶点。像这样:
var v = 66; // The vertex you are looking for
var targetStep = route.getStep(0);
for (var j=0; j<route.getNumSteps(); j++) {
var step = route.getStep(j);
if (step.getPolylineIndex() < v) targetStep = step;
}
GLog.writeHtml(targetStep.getDescriptionHtml());
请勿尝试解析.getDescriptionHtml(),因为结构的详细信息会不时更改,具体取决于路由的国家/地区以及主机语言或区域设置。