1.53-2017国标车身灯光定义
2.VTD 灯光定义
/** @addtogroup RDB_VEHICLE_LIGHT
* ------ light states ------
* @{
*/
#define RDB_VEHICLE_LIGHT_OFF 0x00000000 /**< all lights OFF @version 0x0100 */
#define RDB_VEHICLE_LIGHT_PARK 0x00000001 /**< front and rear lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_LOW_BEAM 0x00000002 /**< front and rear lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_HIGH_BEAM 0x00000004 /**< front lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_REAR_BRAKE 0x00000008 /**< only rear lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_REAR_DRIVE 0x00000010 /**< only rear lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_INDICATOR_L 0x00000020 /**< left indicator lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_INDICATOR_R 0x00000040 /**< right indicator lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_FLASH 0x00000080 /**< special light for police forces etc. @version 0x0100 */
#define RDB_VEHICLE_LIGHT_FRONT_FOG 0x00000100 /**< only front lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_REAR_FOG 0x00000200 /**< only rear lights are ON @version 0x0100 */
#define RDB_VEHICLE_LIGHT_VIRES1 0x00000400 /**< used internally by VIRES @version 0x0100 */
#define RDB_VEHICLE_LIGHT_DRL 0x00000800 /**< daytime running light @version 0x0100 */
#define RDB_VEHICLE_LIGHT_DRL_LEFT_LOW 0x00001000 /**< dimmed state of left front DRLs @version 0x0100 */
#define RDB_VEHICLE_LIGHT_DRL_RIGHT_LOW 0x00002000 /**< dimmed state of right front DRLs @version 0x0100 */
#define RDB_VEHICLE_LIGHT_EMERGENCY 0x00004000 /**< emergency indicator lights @version 0x0100 */
#define RDB_VEHICLE_LIGHT_INDICATOR_LAMP_ON 0x00008000 /**< true if an indicator lamp is @version 0x0111 */
#define RDB_VEHICLE_LIGHT_FORCE 0x00010000 /**< if received via RDB, RDB will be the only source for the light mask @version 0x0111 */
/** @} */
3.RDB尝试打印灯光
void printLight(RDB_VEHICLE_SYSTEMS_t item)
{
printf("id:%d light: %#23x \n",item.playerId , item.lightMask);
}
结果与part1一致,其中?表示不关心的位置
制动
0x?? ?? ?8
左转
0x?? ?? 2?
右转
0x?? ?? 4?
双闪
0x?? ?? 6?
前雾灯
0x?? ?1 ??
后雾灯
0x?? ?2 ??
紧急制动灯
0x?? 4? ??
4.获取相应灯色
#左转
if (item->lightMask % 256 / 16 == 2)
#右转
if (item->lightMask % 256 / 16 == 4)
#双闪
if (item->lightMask % 256 / 16 == 6)
#雾灯
if (item->lightMask % 4096 / 256 == 1)
#紧急制动
if (item->lightMask % 98869 / 4096 == 4)