私が達成しようとしていることを示すために、この単純なフィドルがあります: http://jsfiddle.net/eUSep/
ご覧のとおり、test1
div を拡大し、新しい原点を指定しています。test2
変換後の新しい位置 (上、左) を計算するにはどうすればよいですか? 原点とスケールから計算する必要がありますが、正しく取得できませんでした.
最初は、(現在のスケールと前のスケールに基づいて)高さと幅の変化を計算し、その半分を現在の から差し引き、残りの半分を(疑似コード)left
に追加することで、それを実行できると考えました。width
var left = current_left - (width_change / 2);
var top = current_top - (height_change / 2 );
var right = current_left + width + (width_change / 2);
var bottom = current_top + height + (height_change / 2);
しかし、それは原点を考慮していません。これは、原点が毎回正確な中心にある場合にのみ機能すると思います。これを達成する方法を知っている人はいますか?