先说令人迷惑的新单位朝向,这是由新单位生成的位置决定的。
为方便解释这个问题,需要引入“中心格”的定义:边长为奇数的地图的中心即为中心格,边长为偶数的地图中心四格中靠北的格子为中心格。中心格生成的新单位总是朝南。
以中心格为原点,西南方向为X轴正方向,西北方向为Y轴正方向建立直角坐标系,则新单位的朝向(heading)与其位置坐标(x,y)的关系为
heading的可能取值为0到7八个整数,依次对应东北、东、东南、南、西南、西、西北、北八个朝向。
round(x)表示四舍五入取整。
此处的atan2(y,x)定义为