RaphaelElement を移動したいので、簡単なテスト ケースを作成します。
var paper = Raphael(0, 0, 500, 500);
var rect = paper.rect(50, 50, 100, 100);
rect.attr("fill", "blue");
rect.matrix.translate(300, 300);
しかし、四角形は移動しません。最初は、マトリックスがおそらく正しく更新されていないと思い、これを試しました:
//...
alert("" + rect.matrix.x(0,0)); // prints 0
rect.matrix.translate(300, 300);
alert("" + rect.matrix.x(0,0)); //prints 300
明らかにマトリックスは変更されますが、長方形はそれを気にしません。したがって、コードを次のように変更しました。
rect.matrix=rect.matrix.translate(300,300);
しかし、それはプログラムをクラッシュさせるか、まったく効果がありません。RaphaelElement にマトリックスを適用するために、ある種の更新メソッドが欠落しているようです。次のようになります。
rect.updateMatrix();
ドキュメントを検索しましたが、そのような方法は見つかりませんでした。RaphaelJsでの行列の標準的な使用法は何ですか?