2013-05-06 3 views
1

J'ai des poignées d'échelle qui peuvent vous permettre de mettre à l'échelle l'objet. Les poignées dans les coins ont dragbehavior = 0 les 1 supérieur et inférieur et gauche et droite 2.Kineticjs dragBoundFunc poignée de l'échelle après rotation

dragBoundFunc: function(pos) { 

      if(dragbehavior == 0) {var posx = pos.x; var posy = pos.y;} 
      if(dragbehavior == 1) {var posx = this.getAbsolutePosition().x; var posy = pos.y;} 
      if(dragbehavior == 2) {var posx = posx; var posy = this.getAbsolutePosition().y;} 
       return { 
       x: posx, 
       y: posy 
       } 
      }, 

Cela fonctionne parfaitement et quand je tourne un objet puis le coin ne fonctionne toujours très bien, mais les gestionnaires du côté agissent bizarrement après la rotation. Je sais que j'ai besoin d'une rotation de traduction (sin/cos) mais je ne sais pas comment l'implémenter. C'est parce que la plupart des exemples utilisent une certaine orientation de l'objet que vous voulez faire pivoter, mais c'est avec les coordonnées de la scène.

enter image description here enter image description here

Ma souris est à la flèche mais rect est plus grande et la poignée d'échelle ne sont pas sur la place rect. Si j'essaie de faire le curseur à la fin du rect, le rect s'étire sur tout l'écran.

enter image description here

+0

avez-vous un violon pour ça? – aversag

Répondre

0

est la rotation appliquée sur un groupe contenant la forme et les gestionnaires?

+0

il est appliqué au groupe qui contient: forme, scalehandlers et poignée de rotation –

Questions connexes