私はキャンバスに画像を置くだけで、キャンバスを適切な位置に移動してキャンバスを変更するというサンプルゲームのデモに取り組んでいます。キャンバスをちょうどy軸(上下)に翻訳し、それをx軸上で回転させたいと思います。キャンバスを最初に回転させると、y軸の座標が変化し、x軸で変換が行われます。キャンバスを回転させた後の座標の計算で問題が発生する
私は、キャンバスの回転角度と新しいx、y座標の計算に関する問題を知っていますが、どうやってそれを行うのか分かりません。
これはサンプルコードです:事前にonDraw()メソッド
canvas.rotate(rotateX, imageCenterX, imageCenterY);
canvas.translate(0,translateY);
ありがとうで今ゲームビュークラスで
私の活動のクラスで@Override
public void onSensorChanged(int sensor, float[] values) {
// TODO Auto-generated method stub
rotateX = values[0];
translateY = values[1];
Game.setDirection(rotateX,translateY);
}
。
私はblah.draw(キャンバス)が私のために働いていないことを示唆するコードを表示するために、Viewクラスのoverride onDrawメソッドを使用しています。もし私が間違っていたら、私にコードを教えてください。 – user370305
私は私の問題を解決しました。私はcanvas.likeのメソッドをスワップします。canvas.translate(0、translateY); canvas.rotate(rotateX、imageCenterX、imageCenterY);それはうまく動作します。エミアムはあなたの助けに感謝します。 – user370305