2013-05-07 102 views
0

我有这个简单的小提琴来证明什么,我试图完成:http://jsfiddle.net/eUSep/计算变换和变换原点后的新(x,y)坐标?

正如你所看到的,我扩大我的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); 

但是,这并不需要原产地进去了,我认为,如果起源是在正中央,每次这只会工作。有谁知道我能做到这一点?

回答