即時通訊在一個JavaScript遊戲即時通訊嘗試使三角學問題卡住了。 (xa,ya)半徑和目標點(ya,yb)我需要找到一個新點的位置。找到一個點的原點,角度和半徑的位置
//calculate a angle in degree
function angle(xa, ya, xb, yb)
{
var a= Math.atan2(yb - ya, xb - xa);
a*= 180/Math.PI;
return a;
}
function FindNewPointPosition()
{
//radius origine(xa,xb) destination(ya,yb)
var radius=30;
var a = angle(xa, xb, ya, yb);
newpoint.x = xa + radius * Math.cos(a);
newpoint.y = ya + radius * Math.sin(a);
return newpoint;
}
試想一個形象,因爲我沒有足夠的聲譽發佈一個: 藍色正方形是地圖(5000x5000),黑色正方形(500×500)什麼玩家看到(HUD)。 十字(400,400)是起點和太陽(4200,4200)的目的地。 紅點(?,?)向玩家指示朝向哪個方向去尋找太陽。 但是太陽和十字位置可以顛倒或在不同的角落或任何地方!
目前的紅點不這樣做,所有..
韓國社交協會的幫助。
1.我不知道我數學非常糟糕,在這個網站找到的例子..與阿坦似乎是更好..但不是所有人2.交叉停留在中間的hud,因爲它移動和紅點是周圍。 – softindev
試試這個代碼https://jsfiddle.net/ka9xr07j/ - 看看瀏覽器控制檯。 new.x和new.y計算正確 – Trike
我做索姆修改https://jsfiddle.net/softindev/1qcbth3x/8/但它顯示430,400爲什麼? – softindev