2016-03-31 21 views
0

bir kapsayıcı üzerinde çalışma döndüremiyor Bu bir github projeye bağlı olarak bir süre görüntü yakınlaştırma, çimdikleme ve döndürme çalışıyorum: https://github.com/vakrilov/native-script-pan-scale-demo/blob/master/app/main-page.js. Ama trigonometriyi tam olarak alamıyorum. Ayrıca onPinch yöntemi sırasında neden bir çeviri olması gerektiğinden emin değilim.Sıkıştırma yakınlaştırma ve döndürme hareketleri Nativescript

//initial touch during onPinch method 
//args has the touch positions and item is the item to scale 
if (args.state === 1) { 
    var newOriginX = args.getFocusX() - item.translateX; 
    var newOriginY = args.getFocusY() - item.translateY; 

    var oldOriginX = item.originX * item.width; 
    var oldOriginY = item.originY * item.height; 

    item.translateX += (oldOriginX - newOriginX) * (1 - item.scaleX); 
    item.translateY += (oldOriginY - newOriginY) * (1 - item.scaleY); 

    item.originX = newOriginX/item.width; 
    item.originY = newOriginY/item.height; 

    startScale = item.scaleX; 
} 

Herhangi bir yardım çok takdir edilecektir.

cevap

0

Aşağıdaki satırların kaldırılması benim için çalışacak gibi görünüyor.

var newOriginX = args.getFocusX() - item.translateX; 
var newOriginY = args.getFocusY() - item.translateY; 

var oldOriginX = item.originX * item.width; 
var oldOriginY = item.originY * item.height; 

item.translateX += (oldOriginX - newOriginX) * (1 - item.scaleX); 
item.translateY += (oldOriginY - newOriginY) * (1 - item.scaleY); 

item.originX = newOriginX/item.width; 
item.originY = newOriginY/item.height;