0

だから、私はxtkで問題を抱えていました

var 回転 = m.rotate($ANGLE, $IAXIS);

かなり長い間機能します。基本的に、私がやりたいことは、他のオブジェクトやカメラを動かさずに、空間内の単一のオブジェクトを特定の軸を中心に回転させることです。私の考えは、オブジェクトの transform.matrix を含む X.matrix に回転関数を適用することによってそれを行うことです。

問題は、X.matrix.rotate をまったく動作させることができないことです。関数呼び出しがどのように見えるか、および $IAXIS を定義する方法の例を少なくともいくつか教えてください。それが問題であると思われるからです。

どうもありがとう!

4

2 に答える 2

0

ああ、軸は現在、camera3d.jsのようにgoog.math.Vec3である必要があります

  var yAxisVector = new goog.math.Vec3(parseFloat(this._view.getValueAt(1, 0)),
      parseFloat(this._view.getValueAt(1, 1)), parseFloat(this._view
          .getValueAt(1, 2)));

  // we rotate around the Y Axis when the mouse moves along the screen in X
  // direction
  var rotateX = identity.rotate(angleX, yAxisVector);

goog.math.Vec3はコンパイル中に最小化されるため、軸を配列[x、y、z]として渡すことも可能になりました。

ただし、オブジェクトを変換するには、より簡単に使用できます

var o = new X.object();
o.transform.rotateX(10);
o.transform.rotateY(10);
o.transform.rotateZ(10);
于 2013-01-29T20:58:10.823 に答える