Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Flash & ActionScript
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti

Flash & ActionScript Animazione web e linguaggio di programmazione

Hey Amico Visitatore,
Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Flash & ActionScript


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 05-10-06, 09:56   #1 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
slide immagini con effetto tipo veneziana

Salve,
devo realizzare un effetto in flash che ho visto su vari siti. Vi riporto il link ad un esempio che vorrei emulare.

http://www.template-help.com/screenshots/5200/5280.swf

Per realizzare un effetto del genere avrei pensato a spezzettare l'immagine in tanti rettangolini e poi animarli, ma la cosa mi sembra un po' macchinosa. Esiste un'altra soluzione?

Se qualcuno potesse aiutarmi dandomi qualche dritta o il link a qualche esempio da studiare gliene sarei molto grato.

Grazie
Nicola
nedone non in linea   Rispondi citando
Vecchio 05-10-06, 10:37   #2 (permalink)
User Attivo
 
L'avatar di Flep
 
Data di registrazione: Feb 2006
Ubicazione: Undisclosed city of South America
Messaggi: 4,901
Ciao Nicola,
lo spezzettare l'immagine sarebbe la via più corretta ma di sicuro non a mano o con un photo editor.
Serve un grossa conoscenza di actionscript per utilizzare le classi BitmapData e Matrix.

Nel tuo esempio vengono usate delle maschere (forse la via più semplice).
Flep non in linea   Rispondi citando
Vecchio 05-10-06, 10:47   #3 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
Ho tentato con le maschere, ma non riesco a far venire questo effeto. potresti indicarmi qualche risorsa dove poter colmare le mie lacune (per quanto riguarda la programmazione non ci sono grandi problemi ho molta esperienza...non moltissima con actionscript però )
nedone non in linea   Rispondi citando
Vecchio 05-10-06, 11:25   #4 (permalink)
User Attivo
 
L'avatar di Flep
 
Data di registrazione: Feb 2006
Ubicazione: Undisclosed city of South America
Messaggi: 4,901
Copia e incolla questo script nel primo frame della timeline di Flash.
Tieni un'immagine nella stessa directory e chiamala pic_1.jpg .
Codice:
// importo le classi
import flash.display.BitmapData;
import flash.geom.Point;
import flash.geom.Matrix;

// Gestione listener e broadcasting con la root

var temp:MovieClip=_root.createEmptyMovieClip('temp_mc',_root.getNextHighestDepth());
var  empty:MovieClipLoader=new MovieClipLoader();
var shuf:MovieClip=_root.shuffle_mc;
empty.addListener(this);
empty.loadClip('pic_1.jpg',temp);

// Creo gli  Arrays per le clip che comporranno il puzzle e dei punti
var clips_array:Array=new Array();
var points_array:Array=new Array();

// metodo onLoadInit della classe MovieClipLoader

this.onLoadInit=function():Void
{
    var w:Number=5;
    var h:Number=5;
    var x:Number=0;
    var y:Number=0;
    var width:Number=Math.floor(temp._width/w);
    var height:Number=Math.floor(temp._height/h);
    var m:Matrix;
    var  bitmap:BitmapData;
    var point:Point;
    var clip:MovieClip;
    var  copy:MovieClip;
    // applico 2  cicli for per creazione di bitmapdata e matrici
    for(var i:Number=0;i<h;i++)
    {
        for(var j:Number=0;j<w;j++)
        {
            bitmap=new BitmapData(width,height,true,0xFFFFFFFF);
            m=temp.transform.matrix;
            m.translate(-width*j,-height*i);
            bitmap.draw(temp,m);
            //creo le clips e le inserisco in un array così come creo dei punti e li inserisco in un array.
            clip=_root.createEmptyMovieClip('clip_'+i+'_'+j+'_mc',_root.getNextHighestDepth());
            clips_array.push(clip);
            point=new Point(width*j,height*i);
            points_array.push(point);
            clip.attachBitmap(bitmap,1);
            clip._x=point.x;
            clip._y=point.y;
            clip.onPress=function():Void
            {
                this.startDrag();
            }
            clip.onRelease=function():Void
            {
                this.stopDrag();
            }
        }
    }
    temp.removeMovieClip();
}
Ho aggiunto startDrag() solo per farti vedere che puoi trascinare ogni singolo pezzo e l'immagine è tagliata.
Studia lo script per tagliare l'immagine in strisce e poi, siccome ogni pezzo è dentro una movieclip li puoi muovere a tuo piacimento.
Flep non in linea   Rispondi citando
Vecchio 05-10-06, 11:35   #5 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
ehm...suppongo che mi serva flash 8...vero?
nedone non in linea   Rispondi citando
Vecchio 05-10-06, 11:39   #6 (permalink)
User Attivo
 
L'avatar di Flep
 
Data di registrazione: Feb 2006
Ubicazione: Undisclosed city of South America
Messaggi: 4,901
Si, per forza.
Flep non in linea   Rispondi citando
Vecchio 05-10-06, 11:42   #7 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
ok...mi organizzerò in proposito...
nedone non in linea   Rispondi citando
Vecchio 06-10-06, 20:46   #8 (permalink)
Esperta
 
L'avatar di Onsitus
 
Data di registrazione: Oct 2006
Ubicazione: RM
Messaggi: 2,953
Onsitus non in linea   Rispondi citando
Vecchio 09-10-06, 09:17   #9 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
Ho provato lo script che mi hai postato sul PC di un mio collega il quale ha Flash 8, ma mi dice che non conosce la classe Matrix.

Che posso fare?
nedone non in linea   Rispondi citando
Vecchio 09-10-06, 09:27   #10 (permalink)
User Attivo
 
L'avatar di Flep
 
Data di registrazione: Feb 2006
Ubicazione: Undisclosed city of South America
Messaggi: 4,901
Scusami, non ho ben capito
Chi non conosce la classe Matrix, il tuo collega?
Oppure Flash non la trova ?
Flep non in linea   Rispondi citando
Vecchio 09-10-06, 10:45   #11 (permalink)
User
 
Data di registrazione: Oct 2006
Messaggi: 186
Scusa sono stato poco chiaro...

Ti trascrivo il messaggio di errore che mi da:


**Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 28: Impossibile caricare la classe o l'interfaccia 'flash.geom.Matrix'.
var m:Matrix;

**Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 29: Impossibile caricare la classe o l'interfaccia 'flash.display.BitmapData'.
var bitmap:BitmapData;

**Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 30: Impossibile caricare la classe o l'interfaccia 'flash.geom.Point'.
var point:Point;

**Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 38: Impossibile caricare la classe o l'interfaccia 'flash.display.BitmapData'.
bitmap=new BitmapData(width,height,true,0xFFFFFFFF);

**Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 45: Impossibile caricare la classe o l'interfaccia 'flash.geom.Point'.
point=new Point(width*j,height*i);

Totale errori ActionScript: 5 Errori segnalati: 5
nedone non in linea   Rispondi citando
Vecchio 09-10-06, 10:51   #12 (permalink)
User Attivo
 
L'avatar di Flep
 
Data di registrazione: Feb 2006
Ubicazione: Undisclosed city of South America
Messaggi: 4,901
Ok, non trova le classi.
Guarda in questa path se c'è la classe BitamapData:
C:\Program Files\Macromedia\Flash 8\en\First Run\Classes\FP8\flash\display
Flep non in linea   Rispondi citando
Rispondi
Tags: , , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 09:58.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.