/* * 说明: 科三项目[通过人行横道线]评判 * * 作者: 杨海洋 * 日期: 2024-03-19 * * *************************************************************************************** * * 补充知识-->可以人工触发的项目:直线行驶、变更车道、超车、会车、靠边停车、掉头:普通掉头(非路口项目定义的掉头) * 测绘及项目阶段定义 * * (1)测绘相关 * 人行横道内部代码:6,测绘点1个或者2个。 * 点1:人行横道网格起点(到达此点后,需要评判速度或者停车) * 点2:人行横道前方点(此点可以不用测绘,进项目用的) * (2)项目阶段定义 * 人行横道定义了3个阶段,1:未到达人行横道 2:到达人行横道 3:结束项目阶段(人行横道网格线行驶5米后(默认),结束人行横道项目) * * (3) 标准评判内容 * 评判减速动作。 * * * (项目初始化)、项目初始化 * 1)SysSet[509]-->7 连续的人行横道间隔不超过30米,不需判断减速(一般用不到) * 2)SysSet[334]-->1人行横道随机提示有行人通过(随机提示比例0~10)。 * 如果没有设置此参数,Itmv6.6.tmp_xrtg:=true; (表示已经行人停车,停车让行过了) * //人行横道随机提示有行人通过(随机提示比例0~10) * * end; * 3)SysSet[522]-->2 得到人行横道项目的减速类型 * * //减速类型 * * //速度阈值 * * 减速类型:1:30米前有刹车动作 * 2:30米前车速降到了规定的速度(默认30KM/H) * 3:30米前有刹车动作,并且车速降到了规定的速度(默认30KM/H) * 4:30米前降过速度 * * 4 )如果只测绘了点1(没有测绘点2) * //进项目,评判车速 * * (一)、未到达人行横道 * 1) 人行横道前是否有停车动作 * * 2) 状态转换 * * (二)、到达人行横道 * 1)如果设置了随机行人通过,此时需要评判停车让行 * //行人正在通过人行横道线 * * 2) 连续人行横道当前不扣分 * //按设定的减速参数,检查减速动作 * * 3)夜考相关的逻辑(原封不动翻译即可) * * 4) Itmv6.Status:=3; exit; * * (三)、结束项目阶段 * (人行横道网格线行驶5米后(默认),结束人行横道项目) * * (四)、轨迹跟踪 * * 快进到1506帧,然后步进进入人行横道项目。 * */ #ifndef SUB3JUDGE06RXHD_H #define SUB3JUDGE06RXHD_H #include "ISub3JudgeWrap.h" class JUDGE_API Sub3Judge06Rxhd : public ISub3JudgeWrap { public: explicit Sub3Judge06Rxhd(); virtual ~Sub3Judge06Rxhd(); DEAL_API bool dealJudgeEnter() override; DEAL_API void dealJudgeItem() override; protected: bool CheckJL_YJG(int jl); private: TSub3Item06Rxhd m_itemv; }; #endif // SUB3JUDGE06RXHD_H