javascript - GLGE API setRot / setRotXが機能しない

javascript 3d rotation glge

3Dモデルを表示するための小さなシーンを作成しようとしています。

GLGE Colladaの例を変更して、コードから.daeモデルを追加しました。

http://goleztrol.nl/SO/GLGE/01/

私が持っているもの
これまでのところ機能します。カメラはアニメーションを使用して回転します。

ボタン「追加」と「削除」を使用して、次のコードを使用してモデルをシーンに追加および削除します(「アヒル」は気にしないでください。元の例ではアヒルでした)。

var duck = null;
function addDuck()
{
    if (duck) return;
    duck = new GLGE.Collada();

    doc.getElement("mainscene").addCollada(duck);

    duck.setId("duck");
    duck.setDocument("amyrose.dae");
    duck.setLocY(-15);
    duck.setRotX(1);
    duck.setScale(2);
}

function removeDuck()
{
    if (!duck) return;
    doc.getElement("mainscene").removeChild(duck);
    duck = null;
}


問題
これで、モデルは立ち上がっていますが、立ち上がるはずです。要素のさまざまな方法が機能しているようです。場所が設定され、スケールが設定されていますが、setRotXの呼び出しは無視されているようです。私はAPIから他のさまざまなメソッドを試しましたが、setRotY、setRot、setQuatX、およびsetDRotXはすべて失敗したようです。エラーは発生しません(この方法についてはわかりません)。 1.57(約90度)の値を試しましたが、他の値も1〜180の範囲です。

何が悪いのかわかりません。もちろんBlenderでモデル自体を回転させることもできますが、GLGE APIを使用して回転させたいです。

更新
デモモデルseymourplane_triangulate.daeをロードすると、回転が機能します。どうやら私のモデルは回転できないという点で異なります。理由がわかりません。モデルがさまざまな個別のメッシュで構築されているためと考えられますが、スケーリングと移動が機能する理由がわかりません。

誰もがこのモデルの何が悪いのか、そしてそれを修正するために何ができるのか知っていますか?

シーンを含むXMLファイルで初期回転を設定しても機能します。別の要素(シーン全体など)に回転を設定することもできます。
答え
ロードされたら、回転する必要があります。

setDocumentへのコールバックでこれを行うことができます

duck.setDocument("amyrose.dae", null, function() {
    duck.setLocY(-15);
    duck.setScale(2);
    duck.setRotX(0);
    duck.setRotY(0);
    duck.setRotZ(3);
});
関連記事

javascript - asp.netのマウスオーバーでラベルテキストを変更する方法

javascript - 段落の最初の2行のみを表示する

javascript - JavaScriptのプロトタイプを使用してオブジェクトに配列を追加すると、オブジェクトのすべてのインスタンスが1つの配列を共有しているように動作します[重複]

javascript - 非表示フォームHTMLの送信

javascript - HTMLタグではなくテキストを置き換えますか?

java - Javascript呼び出しからdllをロードするときにアプレットから直接呼び出されたときではなく、Javaセキュリティエラー

javascript - focusout / blurでテキストを取得する

javascript - フォームの一部をトラバースするjquery

php - jQueryを使用してフォームデータを送信する

javascript - 画像内のアンカーでonclickイベントが発生しないのはなぜですか?