2d isometric 坐标变换
等轴游戏的坐标体系分成3种;
普通的笛卡尔坐标系;
正则网格坐标;
仿射网格坐标;

其中正则网格的宽度和高度是 仿射网格宽度 高度的一半;
关键就是找到这三种坐标的转换公式:
SIZEX, SIZEY 是菱形网格宽度高度的一半,
从笛卡尔坐标到正则网格
function cartesianToNormal(x, y)
return round(x/SIZEX), round(y/SIZEY)
end
从正则网格到仿射网格
function normalToAffine(nx, ny)
return round((ny-nx)/2), round((nx+ny)/2)
end
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步