- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- [AS3] Problema animazione
-
[AS3] Problema animazione
Salve a tutti!
Sono nuova nel forum e mi chiedevo se qualcuno potesse darmi una mano
Sto svolgendo un progetto di flash in action script 3 per un esame. A prescindere dal progetto in se, sono rimasta bloccata su un passaggio.
Ho una serie di copertine di libri, quando clicco su ognuna di queste si ingrandiscono e si legge la trama del libro. Con un pulsante la copertina si chiude e ne posso aprire un'altra.
Ora io sono riuscita a fare questo passaggio all'interno del clip filmato della copertina del libro. Clicco, il libro si ingrandisce, appare il testo e in basso il pulsante per chiudere il libro.
Sembra tutto fantastico, finché non mi accorgo che i libri si sovrappongono l'uno all'altro!C'è un modo per far sì che questo non accada? E' probabile che il procedimento con cui ho ottenuto l'animazione non sia proprio esatto, ma non sono un'esperta di flash...
Direte voi, hai provato a chiedere al tuo professore? Si ci ho provato. Ma è un po' irranggiungibile e l'appuntamento per revisionare il progetto oggi è saltato per via del maltempo. Siccome è il mio ultimo esame e poi in teoria dovrei laurearmi, iniziano a venirmi le crisi di panico!
Volevo inserire anche qualche immagine per farvi capire meglio di cosa parlo ma a quanto pare non posso farlo...
-
Ciao benvenuta sul forum GT, è un po? difficile capire come risolvere perchè la descrizione è abbastanza vaga, dovresti descrivere dettagliatamente la struttura del filmato.
-
Grazie per il benvenuto
Allora, quando io clicco sull'immagine X tramite l'azione "gotoAndPlay" si attiva l'interpolazione di movimento che ingrandisce l'immagine X e appare un testo al di sopra di essa.
Quando l'immagine X si ingrandisce però, finisce al di sotto delle altre immagini che ha vicino e che si apriranno in maniera identica quando ci si cliccherà di sopra.
Io invece vorrei che l'immagine ingrandita si aprisse sovrastando tutte le altre, un po' come quando visualizziamo una foto di una gallery in javascript.Non riesco ad essere più chiara di così, se potessi farvi vedere delle immagini sicuramente sarebbe tutto più facile
-
Ho visto le immagini che hai pubblicato in un altro forum e ho capito, non devi fare altro che portare il livello di visualizzazione del libro ingrandito su un livello superiore tramite l'istruzione setChildIndex(), se ad esempio hai tre libri: libro1, libro2, libro3 il codice sarà
libro1.addEventListener(MouseEvent.CLICK,scala1) libro2.addEventListener(MouseEvent.CLICK,scala2) libro3.addEventListener(MouseEvent.CLICK,scala3) function scala1(evt:MouseEvent):void{ setChildIndex(libro1,2) libro1.scaleX=1.5 libro1.scaleY=1.5 } function scala2(evt:MouseEvent):void{ setChildIndex(libro2,2) libro2.scaleX=1.5 libro2.scaleY=1.5 } function scala3(evt:MouseEvent):void{ setChildIndex( libro3,2) libro3.scaleX=1.5 libro3.scaleY=1.5 }
-
Ciao e grazie mille per la risposta
Ho capito a cosa mi serve l'istruzione setChildIndex(), ma potresti spiegarmi meglio alcuni passaggi?
Nella riga "setChildIndex(libro1,2)" il numero 2 per cosa sta? E' quello che mi stabilisce l'ordine?
E le coordinate x e Y sono standard?Voglio essere in grado di spiegare perché ho utilizzato questo metodo!
-
Numero 2 è il livello superiore, nel tuo filamto metti 6 uno in meno dei libri, lascia perdere lo scaleX e scaleY altrimenti ti incasini dovresti cambiare la struttura del filmato, puoi benissimo mettere setChildIdex() prima del gotoAndPlay() del tuo filmato.
-
Io però il gotoAndPlay() l'ho messo all'interno del clip filmato del rispettivo libro. Quindi dovrei mettere il setChildIdex() prima, sempre all'interno del clip filmato?
E libro1.addEventListener(MouseEvent.CLICK,scala1) dove lo metto?
Comunque ora farò qualche prova, vediamo cosa esce fuori...EDIT: Ho provato a inserire ogni azione all'interno del rispetto clip filmato (libro1, libro2, libro3, ecc), ma ottengo questo messaggio d'errore non appena clicco sul libro:
RangeError: Error #2006: L'indice fornito è fuori intervallo. at flash.display::DisplayObjectContainer/setChildIndex() at progettohpcs5_fla::Libro1_32/scala1()
Inizio a pensare di aver sbagliato qualcosa nel procedimento di animazione dei libri forse
Mi sa che più di così non mi puoi aiutare