得到一个简单的问题。我有一个应用程序,平原的徽标随机飞过。 (他们在每X秒获得左边距和上边距的随机新位置)。旋转它们的下一个挑战是,飞机的头部将朝向它们飞行的角度。
没有真正找到解决方法如何做到这一点。我们只知道:
MARGIN-LEFT
MARGIN-TOP
但随着飞机随机飞行,这些价值不断变化。有什么想法或建议吗?
UPDATE(为了更加明显)这里有一大堆代码:
var nh = Math.floor(Math.random() * $(window).height() - 50);
var nw = Math.floor(Math.random() * $(window).width() - 50);
$('#plane').animate({ top: nh, left: nw}, 10000, function(){});
$('#plane').css({"transform" : "rotate(" + Math.atan2(nh,nw)/Math.PI*180 +"deg)"});
答案 0 :(得分:1)
目前还不是很清楚你想要达到的目标。
为了根据边距计算角度,您可以使用Math.atan2()
function getAngle(x1,y1,x2,y2){
return Math.atan2(y2-y1,x2-x1)/Math.PI*180
}
var angle = getAngle(MARGIN-LEFT, MARGIN-TOP);
console.log('the angle is',angle,'degrees')