2013-08-07 102 views
1

我一直在尝试旋转一个线,该线源于在Javascript中的光标处的圆的中心。我让它移动,但它偏离了实际的方向。这是否有一个原因?我宁愿不需要添加到方向,直到它同步。旋转线偏移

这是我得到的方向:

var deltaY = pointerY - charY; 
var deltaX = pointerX - charY; 

charDirection = Math.atan2(deltaY,deltaX) * 180/ Math.PI; 

这是我如何计算可我想从中心100分之遥的新点。

var directionInRadians = charDirection * (Math.PI/180); 
var newX = 100 * Math.cos(directionInRadians) - 100 * Math.sin(directionInRadians); 
var newY = 100 * Math.cos(directionInRadians) + 100 * Math.sin(directionInRadians); 

JSFiddle post

回答

1

我不知道你为什么执行下一页末/ Y计算你的方式。 正确的计算实际上是一个简单了很多:

var newX = 100 * Math.cos(directionInRadians); 
var newY = 100 * Math.sin(directionInRadians); 

Demo

+0

-facepalm-你是对的!谢谢!我想这就是我一直展示的方式。 – Jaeg