张世豪
6 小时以前 8d3989dff1164588d45dbb30506da1a6e1094005
src/dikuai/daohangyulan.java
@@ -471,12 +471,13 @@
        }
        
        // 图标默认朝下(270度),需要计算旋转角度使车头朝向行驶方向
        // 如果运动方向向上(90度)→ 需要旋转180度(270 - 90 = 180)
        // 如果运动方向向右(0度)→ 需要旋转270度(270 - 0 = 270)
        // 如果运动方向向左(180度)→ 需要旋转90度(270 - 180 = 90)
        // 如果运动方向向下(270度)→ 需要旋转0度(270 - 270 = 0)
        // 公式:heading = (270 - atan2Angle + 360) % 360
        double heading = (270.0 - atan2Angle + 360.0) % 360.0;
        // 坐标系:North(+Y) -> Screen Down(90). East(+X) -> Screen Right(0).
        // atan2: North(90), East(0).
        // 目标:North -> Icon Down(0 rot). East -> Icon Right(270 rot).
        // 90 -> 0.
        // 0 -> 270.
        // 公式:heading = (atan2Angle + 270) % 360
        double heading = (atan2Angle + 270.0) % 360.0;
        
        return heading;
    }