使用Kinetic Js放大当前(可拖动)舞台中心

时间:2013-10-22 08:59:34

标签: javascript canvas kineticjs scaling

使用Kinetic JS,当整个舞台可以拖动时,我如何放大当前的舞台中心?

previous question answer的帮助下,我让它从中心缩放。然而,问题在于它总是从原始中心点缩放,即使舞台被拖到其他地方也是如此。原始中心点不再是当前的中心点,因此当您放大时,舞台会开始移动到其他位置。

为了演示我创建了这个JSFiddle:http://jsfiddle.net/uJeyC/2/

var group = new Kinetic.Group({
    x: width / 2,
    y: height / 2,
    width: width,
    height: height
});

group.setOffset(width / 2, height / 2);

这是一张展示问题的图片:

enter image description here

我尝试了几个方法,比如计算当前的中心点,通过缩放因子多次计算组,然后计算新的中心点。使用与之相反的差异来抵消该组,但由于偏移量太大而无效。

一个类似的问题是:Adjusting offset on a dragged Kinetic.Path element in Kinetic JS to always keep the offset center to the Stage。但给出的答案并不令人满意,因为它建议一个从左上角放大的图书馆只适用于过时版本的KinectJS。

0 个答案:

没有答案
相关问题