прямое панорамирование холста с помощью Raphael.js - PullRequest
8 голосов
/ 05 октября 2011

Я пытаюсь создать приложение, которое, когда вы нажимаете за пределами фигуры, позволяет вам панорамирование области просмотра с помощью setviewbox (); я сделал что-то близкое к этому, но я не доволен этим, я используя прямоугольник:

canvas = new Raphael(0,0,canvas_size, canvas_size); 
 var rectan = paper.rect(0,0,canvas_size,canvas_size); 
using .drag(move,dragger,up); 
and in the function of move 
var bboxx=this.getBBox(false) 
paper.setViewBox(bboxx.x,bboxx.y,canvas_size,canvas_size,true); 
                        this.toBack(); 

Я отправляю обратно, чтобы не связываться с другими объектами. анимации (перетащить ....) это работает, но мне все еще нужно знать, если это возможно, и лучше нажмите / коснитесь холста вместо прямоугольника

1 Ответ

2 голосов
/ 30 декабря 2011

Я рекомендую библиотеку tihs для панорамирования и масштабирования, прекрасно работает для меня.

https://github.com/andrewseddon/raphael-zpd

Тогда, если вы хотите выполнять панорамирование только при нажатии за пределами фигуры, вам просто нужно предотвратить или остановить события при щелчке по любой фигуре.

...