これはかなり簡単な質問かもしれませんが、私はこのコードを8時間以上書いていますので、私の脳はわずかにうんざりしています。基本的に、私は次のようなフレームを持っています:(http://imgur.com/a/DFSI5)JFrameの角度/ウィンドウサイズを指定して座標を調整する
私の原図を言いたいなら、私は数学について疑問を抱いていました。角度θを考えると、私がしたいのは、特定のPointオブジェクトが与えられたとき、それは私が撮影する弾丸になります。どのようにx/y座標をその角度に沿って並行して調整するのですか? JFrame内には700x500のウィンドウサイズがあります。私はペーストビンにコードを掲載しますが、それが必要なのであれば、この質問は純粋に算術演算(sin/cos/tan)に関連していると感じました。
基本的に私は、この持っている:だからpinballCoordinate私はシータの角度を与え調整するためにしようとしているPointオブジェクトである、それはピンボールを撃つ「銃」である
if(pinballAngle > 90){
pinballCoordinate.x+=(pinballAngle/3);
pinballCoordinate.y-=20;
}
else if(pinballAngle < 90){
pinballCoordinate.x+=(pinballAngle/3);
pinballCoordinate.y-=20;
}
else{
pinballCoordinate.y-=20;
}
を。 'pinballAngle'変数はガンの角度です。
だから、あなたはJavaで正弦と余弦をうまくする方法を求めていますか? –
それで問題は、問題に続く線形パスにまで沸騰する可能性があります。つまり、出発点があり、角度があり、開始点から離れた経路をたどりたいとします。ここでは、目標点を生成するために円上の点を計算することに戻ります。次に、それらの点の間の直線をたどる必要があります:P - おそらく少し畳み込まれていますが、私はこのような問題が発生したときに解決してください;) – MadProgrammer
引用された例[here](http://stackoverflow.com/a/4550667/230513)を参照してください。 – trashgod