Nov 15
Cambiare il pivot di un MovieClip dinamicamente da as3 è molto semplice, seguire il codice seguente che è molto esplicativo:
package { import flash.display.Sprite; import flash.events.Event; import flash.geom.Rectangle; public class ChangePivot extends Sprite { private var new_reg_x,new_reg_y:int; public function ChangePivot(reg_x,reg_y) { new_reg_x=reg_x; new_reg_y=reg_y; addEventListener(Event.ENTER_FRAME,on_enter_frame); addEventListener(Event.ADDED_TO_STAGE,on_added); } public function on_added(e:Event) { /** ottengo il rettangolo dell'oggetto, per ottenere le coordinate locali*/ var rect:Rectangle=getBounds(this); var x_offset=new_reg_x+rect.x; var y_offset=new_reg_y+rect.y /** vengono aggiornate le coordinate globali dell'oggetto rispetto all'offset*/ x += x_offset; y += y_offset; /** sposto gli elementi che compongono l'oggetto rispetto all'offset*/ for (var i:uint=0; i < numChildren; i++) { getChildAt(i).x -= x_offset; getChildAt(i).y -= y_offset; } } public function on_enter_frame(e:Event) { rotation+=2; } } }
L’articolo da cui mi sono inspirato si trova qui.
This movie requires Flash Player 9
Ultimi Commenti