Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Animazioni con Flash CS3 - spring e frizione + mouse

This is a discussion on Animazioni con Flash CS3 - spring e frizione + mouse within the Articoli e tutorials forums, part of the Flash CS3 e Actionscript 3.0 category; Eccoci ad un altro articolo in cui parlerò dell' effetto spring + frizione. A chi non avesse letto: inerzia , accelerazione , ...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > Articoli e tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 20-09-07, 13:22
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Animazioni con Flash CS3 - spring e frizione + mouse


Eccoci ad un altro articolo in cui parlerò dell' effetto spring + frizione.

A chi non avesse letto: inerzia, accelerazione, spring e spring+frizione, consiglio di dargli uno sguardo in modo da sapere quello di cui sto andando a trattare.

Questa volta applicherò l' effetto in base alle coordinate del mouse dell' utente.

Tengo a precisare che l' effetto che applico è molto semplice e niente di accattivante, come sempre questo articolo vorrebbe essere un tutorial prima di un' animazione e quindi lascio a voi la fantasia di applicare altre soluzioni in modo da ottenere animazioni sempre più consone alla vostra applicazione.



Entriamo nel vivo...
Creo un FLA che salvo con nome ' spring_2.fla ', al cui interno creo una MovieClip di qualsiasi forma a cui assegno il nomei stanza ' square_mc '.
Creo la Document Class, un file AS che salvo con nome ' Spring2.as ', implementata in questo modo:

Code:
package
{
	import flash.display.MovieClip;
	import flash.events.Event;
	
	public class Spring2 extends MovieClip
	{
		private const spring:Number=.1;
		private const frizione:Number=.9;
		private var vel_x:Number=0;
		private var vel_y:Number=0;

		public function Spring2()
		{
			init();
		}
		
		private function init():void
		{
			stage.frameRate=31;
			
			square_mc.addEventListener(Event.ENTER_FRAME,muovi);
		}
		
		private function muovi(e:Event):void
		{
			var acc_x:Number=(mouseX-square_mc.x)*spring;
			var acc_y:Number=(mouseY-square_mc.y)*spring;
			vel_x+=acc_x;
			vel_y+=acc_y;
			vel_x*=frizione;
			vel_y*=frizione;
			square_mc.x+=vel_x;
			square_mc.y+=vel_y;
		}
	}
}
Risultato:










Analizziamo il codice.

Proprietà:

la costante numerica spring
private const spring:Number=.1;
la costante numerica frizione
private const frizione:Number=.9;
le due velocità che prima di essere date in pastoalla X e Y di square_mc verranno alterate da spring e frizione
private var vel_x:Number=0;
private var vel_y:Number=0;


Metodi:
init();
imposto una velocità di frame rate
stage.frameRate=31;
aggiungo un intervallo ENTER_FRAME che chiama la funzione muovi() tante volta al secondo pari al valore del frame rate
square_mc.addEventListener(Event.ENTER_FRAME,muovi );



muovi();
creo una variabile che contiene il valore dell' effetto inerzia applicato sulle coordinate del mouse e gli aggiungo l' effetto spring
var acc_x:Number=(mouseX-square_mc.x)*spring;
var acc_y:Number=(mouseY-square_mc.y)*spring;
aggiungo a vel_x e vel_y ( ad ogni iterazione dell' intervallo ) l' inerzia
vel_x+=acc_x;
vel_y+=acc_y;
applico la frizione a vel_x e vel_y
vel_x*=frizione;
vel_y*=frizione;
do in pasto vel_x e vel_y alla x e y di square_mc
square_mc.x+=vel_x;
square_mc.y+=vel_y;

STay tuned !
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads

Thread Thread Starter Forum Replies Last Post
Animazioni con Flash CS3 - spring frizione e gravità Flep Articoli e tutorials 3 03-07-08 17:11
Animazioni con Flash CS3 - spring e frizione Flep Articoli e tutorials 2 27-04-08 23:50
Animazioni con Flash CS3 - spring su 3 punti Flep Articoli e tutorials 0 20-09-07 14:24
Animazioni con Flash CS3 - the spring Flep Articoli e tutorials 0 19-09-07 15:58
Animazioni con Flash CS3 - spring frizione e gravità zakwer Actionscript 3.0 avanzato 1 10-09-07 10:12


All times are GMT. The time now is 10:46.


Powered by vBulletin versione 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC4
Forum SiteMap


FlepStudio
by Filippo Lughi
P.IVA 03605860406