-- 根据两点求夹角
function getAngleByPos(p1, p2)
local p = {};
p.x = p2.x - p1.x;
p.y = p2.y - p1.y;
local r = math.atan2( p.y, p.x ) * 180 / math.pi;
return r
end
-- 计算原点到目标点的夹角弧度
function UtilsCalcRotate( srcPos, targetPos )
local disqrt =(targetPos.x - srcPos.x) *(targetPos.x - srcPos.x) +(targetPos.y - srcPos.y) *(targetPos.y - srcPos.y)
local dis = math.sqrt(disqrt)
local sin_value =(targetPos.x - srcPos.x) / dis
local angle = math.acos(sin_value)
if targetPos.y > srcPos.y then
angle = 2 * math.pi - angle
end
angle = angle + math.pi / 2
return angle
end