您的位置:首页 > 其它

flash学习笔记:人物行走八方向坐标。

2011-03-07 13:31 423 查看
public static function direction(firstPos:Point,nextPos:Point):int{
var angle:Number = Math.atan2(firstPos.y-nextPos.y,nextPos.x-firstPos.x)*(180/Math.PI);
if(angle>22.5 && angle<=67.5){//右上
return ActionEnum.StandOrWalk_RightUp;
}
if(angle>-22.5 && angle<=22.5){//右
return ActionEnum.StandOrWalk_Right;
}
if(angle>-67.5 && angle<=-22.5){//右下
return ActionEnum.StandOrWalk_RightDown;
}
if(angle>-112.5 && angle<=-67.5){//下
return ActionEnum.StandOrWalk_Down;
}
if(angle>-157.5 && angle<=-112.5){//左下
return ActionEnum.StandOrWalk_LeftDown;
}
if((angle>-180 && angle<=-157.5) || (angle>157.5 && angle<=180)){//左
return ActionEnum.StandOrWalk_Left;
}
if(angle>112.5 && angle<=157.5){//左上
return ActionEnum.StandOrWalk_LeftUp;
}
if(angle>67.5 && angle<=112.5){//上
return ActionEnum.StandOrWalk_Up;
}
return -1;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: