Cambiare il pivot di un movieclip in as3

Animazioni, AS3, Flash, Flex Soft! Commenta l'articolo

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

Scrivi un Commento

Home | Graffiti e Disegni | Educazione | Chi siamo | Blog | Progetti | Contatti
RSS Feed Comments RSS Accedi