{"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":"

场景图

车道线样式

背景车道:是路口所有的车道线,如灰色车道\"image.png\"

前景车道:\"image.png\"是沿路线行驶方向的车道线,如上图白色高亮车道,当路线是直行时,高亮直行车道,当路线左转时,高亮左转车道。

扩展车道:\"image.png\"接近路口时在原车道基础上扩充的车道成为附加车道,附加车线信息是指附加车道内的行车引导线(包含空车道)。

时序图

关键参数

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不需要展示扩展车道的效果如下:

       \"image.png\"

 如果HMI需要展示扩展车道,效果如下:

\"image.png\"

 扩展车道标示的样式\"image.png\"是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};


","body_lake":null,"pub_level":null,"status":"0","updated_at":"2022-04-06 07:03:16","deleted_at":null,"nameSpace":"mnlcaa/v610","browseCount":324,"collectCount":0,"estimateDate":10,"docStatus":0,"permissions":true,"overView":false}}