// 路口方向 icon token 几何注册表 // // 16 个 token = 4 方向 × {直行/左转/左转掉头/右转} // // 命名约定: TOKEN = (动作类型)_(车头方向)[_(变体)] // STRAIGHT_ 直行 (4 个) // TURN__LEFT 左转 (4 个) // TURN__LEFT_UTURN 左转掉头 (4 个) // TURN__RIGHT|UP|DOWN 右转 (4 个, 镜像左转 SVG 生成) // // 坐标系: 30 × 30 单位的路口方块, 四角 + padX/padY + baseW/baseH // pos: LT / RT / LB / RB — 哪个角落锚定 // LT = 北方向 (上方驶入) // RB = 南方向 (下方驶入) // RT = 东方向 (右侧驶入) // LB = 西方向 (左侧驶入) // padX, padY: 离该角落的偏移 // baseW, baseH: 箭头本身占的尺寸 export const POS_MAP = { // 1. 上方驶入 (北方向) -> 靠左上角 (LT) 'STRAIGHT_DOWN': { pos: 'LT', padX: 10, padY: 0, baseW: 7, baseH: 20.67 }, 'TURN_DOWN_LEFT': { pos: 'LT', padX: 10, padY: 0, baseW: 13, baseH: 21.33 }, 'TURN_DOWN_LEFT_UTURN': { pos: 'LT', padX: 10, padY: 0, baseW: 13, baseH: 22.67 }, 'TURN_DOWN_RIGHT': { pos: 'LT', padX: 10, padY: 0, baseW: 13, baseH: 21.33 }, // 北右转(镜像) // 2. 下方驶入 (南方向) -> 靠右下角 (RB) 'STRAIGHT_UP': { pos: 'RB', padX: 10, padY: 0, baseW: 7, baseH: 20.67 }, 'TURN_UP_LEFT': { pos: 'RB', padX: 10, padY: 0, baseW: 13, baseH: 21.33 }, 'TURN_UP_LEFT_UTURN': { pos: 'RB', padX: 10, padY: 0, baseW: 13, baseH: 22.67 }, 'TURN_UP_RIGHT': { pos: 'RB', padX: 10, padY: 0, baseW: 13, baseH: 21.33 }, // 南右转(镜像) // 3. 右侧驶入 (东方向) -> 靠右上角 (RT) 'STRAIGHT_LEFT': { pos: 'RT', padX: 0, padY: 10, baseW: 20.33, baseH: 6.33 }, 'TURN_LEFT_DOWN': { pos: 'RT', padX: 0, padY: 10, baseW: 20.67, baseH: 12.33 }, 'TURN_LEFT_DOWN_UTURN': { pos: 'RT', padX: 0, padY: 10, baseW: 22.67, baseH: 12.33 }, 'TURN_LEFT_UP': { pos: 'RT', padX: 0, padY: 10, baseW: 20.67, baseH: 12.33 }, // 东右转(镜像) // 4. 左侧驶入 (西方向) -> 靠左下角 (LB) 'STRAIGHT_RIGHT': { pos: 'LB', padX: 0, padY: 10, baseW: 20.33, baseH: 6.33 }, 'TURN_RIGHT_UP': { pos: 'LB', padX: 0, padY: 10, baseW: 20.67, baseH: 12.33 }, 'TURN_RIGHT_UP_UTURN': { pos: 'LB', padX: 0, padY: 10, baseW: 22.67, baseH: 12.33 }, 'TURN_RIGHT_DOWN': { pos: 'LB', padX: 0, padY: 10, baseW: 20.67, baseH: 12.33 }, // 西右转(镜像) };