如何使用paper.js进行平移

Sam*_*m P 5 paperjs

我一直试图找出如何在paperjs中使用onMouseDrag和onMouseDown进行平移/缩放。
我见过的唯一参考文献是coffescript,并且未使用paperjs工具。

Sam*_*m P 5

这花了我比它应该弄清楚的时间更长的时间。

var toolZoomIn = new paper.Tool();
toolZoomIn.onMouseDrag = function (event) {
    var a = event.downPoint.subtract(event.point);
    a = a.add(paper.view.center);
    paper.view.center = a;
}
Run Code Online (Sandbox Code Playgroud)


Ste*_*ger 2

你可以进一步简化 Sam P 的方法:

var toolPan = new paper.Tool();
toolPan.onMouseDrag = function (event) {
    var offset = event.downPoint - event.point;
    paper.view.center = paper.view.center + offset;
};
Run Code Online (Sandbox Code Playgroud)

事件对象已经有一个变量,其起点称为downPoint

我整理了一个快速草图来测试这一点。