{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671516336804,"data":{"id":71713046,"title":"5.4.3.3 导航引导车道线","slug":"cen3yl","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"
车道线样式
背景车道:是路口所有的车道线,如灰色车道。
前景车道:是沿路线行驶方向的车道线,如上图白色高亮车道,当路线是直行时,高亮直行车道,当路线左转时,高亮左转车道。
扩展车道:接近路口时在原车道基础上扩充的车道成为附加车道,附加车线信息是指附加车道内的行车引导线(包含空车道)。
public class LaneParam extends BaseParam {\n public boolean enable = true; // 设置导航车道线开关,默认打开\n}
/** @brief 车道类型 */\nenum LaneAction\n{\n LaneActionNULL = 0xFF, /**< 无对应车道 */\n LaneActionAhead = 0, /**< 直行 */\n LaneActionLeft = 1, /**< 左转 */\n LaneActionAheadLeft = 2, /**< 直行+左转 */\n LaneActionRight = 3, /**< 右转 */\n LaneActionAheadRight = 4, /**< 直行+右转 */\n LaneActionLUTurn = 5, /**< 左掉头 */\n LaneActionLeftRight = 6, /**< 左转+右转 */\n LaneActionAheadLeftRight = 7, /**< 直行+左转+右转 */\n LaneActionRUTurn = 8, /**< 右掉头 */\n LaneActionAheadLUTurn = 9, /**< 直行+左掉头 */\n LaneActionAheadRUTurn = 10, /**< 直行+右掉头 */\n LaneActionLeftLUTurn = 11, /**< 左转+左掉头 */\n LaneActionRightRUTurn = 12, /**< 右转+右掉头 */\n LaneActionLeftInAhead = 13, /**< 无效,保留 */\n LaneActionLeftLUturn = 14, /**< 无效,保留 */\n LaneActionReserved = 15, /**< 保留 */\n LaneActionAheadLeftLUTurn = 16, /**< 直行+左转+左掉头 */\n LaneActionRightLUTurn = 17, /**< 右转+左掉头 */\n LaneActionLeftRightLUTurn = 18, /**< 左转+右转+左掉头 */\n LaneActionAheadRightLUTurn = 19, /**< 直行+右转+左掉头 */\n LaneActionLeftRUTurn = 20, /**< 左转+右掉头 */\n LaneActionBus = 21, /**< 公交车道 */\n LaneActionEmpty = 22, /**< 空车道 */\n LaneActionVariable = 23, /**< 可变车道 */\n LaneActionDedicated = 24, /**< 专用车道 */\n LaneActionTidal = 25, /**< 潮汐车道 */\n};
/** @brief 扩展车道信息 */\nenum ExtenLaneAction\n{\n ExtenLaneActionNULL = 0xFF, /**< 无对应扩展车道 */\n ExtenLaneActionNormal = 0, /**< 普通 ,即无扩展车道*/\n ExtenLaneActionLeft = 1, /**< 左扩展 */\n ExtenLaneActionRight = 2, /**< 右扩展 */\n ExtenLaneActionLeftNarrow = 26, /**< 左侧车道变窄 */\n ExtenLaneActionRightNarrow = 27, /**< 右侧车道变窄 */\n};
//车道信息\npublic class LaneInfo {\n public ArrayList<Integer> backLane; \t\t/**< 背景车道 LaneAction */\n public ArrayList<Integer> frontLane;\t\t/**< 前景车道 LaneAction */\n public ArrayList<Integer> backExtenLane;\t/**< 巡航时的背景扩展车道信息 ExtenLaneAction (在线/离线都有。 0:普通,即无扩展车道 1:左扩展 2:右扩展) 如果有扩展信息时,backExtenLane.size=backLane.size, backExtenLane里面的成员用1或2标记出backLane对应该车道是否是扩展车道 ,0为不是扩展车道。扩展标示(车道之间的竖线)由HMI设计并绘制*/\n public ArrayList<Integer> frontExtenLane;\t/**< 无效字段。前景扩展车道信息 ExtenLaneAction (0:普通,即无扩展车道 1:左扩展 2:右扩展)如果有扩展信息时,frontExtenLane.size=frontLane.size, frontExtenLane里面的成员用1或2标记出frontLane对应该车道是否是扩展车道 ,0为不是扩展车道。扩展标示(车道之间的竖线)由HMI设计并绘制*/\n public ArrayList<Integer> extensionLane; /**< 导航时扩展车道信息,仅在线导航场景,该字段有效(0:普通,即无扩展车道 1:左扩展 2:右扩展 26:左侧车道变窄 27:右侧车道变窄)。当extensionLane.size不为0时,该车道信息已包含backExtenLane及frontExtenLane信息 当extensionLane.size=0时需要使用backExtenLane及frontExtenLane车道信息进行显示,扩展标示(车道之间的竖线)由HMI设计并绘制*/\n public Coord2DDouble point;\t\t\t\t\t/**< 车道坐标点 */\n public int segmentIdx;\t\t\t\t\t\t/**< 所在导航段索引 只有导航有效 */\n public int linkIdx;\t\t\t\t\t\t\t/**< 所在link索引 只有导航有效 */\n}
背景车道:左转|直行|直行|直行|直行|右转|右转
前景车道:0xFF|0xFF|0xFF|0xFF|0xFF|右转|右转
扩展车道:0 | 0 | 0 | 0 | 0 | 2 | 2
如果HMI不需要展示扩展车道的效果如下:
如果HMI需要展示扩展车道,效果如下:
扩展车道标示的样式,是HMI自行设计的,不属于资源图片。
导航过程中传出车道信息\nvoid com.autonavi.gbl.guide.observer.INaviObserver.onShowNaviLaneInfo(LaneInfo info)
导航过程中通知隐藏车道信息\nvoid com.autonavi.gbl.guide.observer.INaviObserver.onHideNaviLaneInfo()
说明:函数详情,请复制函数名称到在线API搜索。
接收引导回调的车道线信息:
INaviObserver naviObserver = new INaviObserver() {\n\t@Override\n\tpublic void onShowNaviLaneInfo(LaneInfo laneInfo) {\n\t\t//todo: 绘制车道线\n\t}\n\n\t@Override\n\tpublic void onHideNaviLaneInfo() {\n\t\t//todo: 隐藏车道线\n\t}\n};