Visualizzazione dei risultati da 1 a 2 su 2

Discussione: rotazione oraria movie

  1. #1

    rotazione oraria movie

    Ciao a tutti...aiuto principiante please!!!

    Ho trovato diverse funzioni in giro ma nessuna che faccia al caso mio e mi sia abbastanza semplice da capire...

    il problema è questo:
    ho una serie di pulsanti, ognuno dovrebbe far ruotare in senso orario di 60 gradi un cerchio (proprio tipo disco orario) ed in + il movimento dovrebbe avere un effetto di decelerazione alla fine...

    ho trovato in giro alcune funzioni ma niente che faccia al caso mio...qualcuno ha dei suggerimenti o mi può indicare dove poter vedermi un tutorial?


  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182

    Re: rotazione oraria movie

    Originariamente inviato da Goliath
    Ciao a tutti...aiuto principiante please!!!

    Ho trovato diverse funzioni in giro ma nessuna che faccia al caso mio e mi sia abbastanza semplice da capire...
    quanto ho sottolineato è alquanto soggettivo, nel senso che io non posso sapere quale codice possa essere semplice da capire per te, oltre al fatto che comunque la cosa, per quanto semplice, per essere ben espressa e non creare problemi, va scritta in un certo modo, ti dico subito che in generale la formula di rallentamento per qualsiasi proprietà di clip è questa
    MovieClip.proprietà += (arrivo-MovieClip.proprietà)/indice_di_decelerazione;

    vista così non è molto efficace ma se ad esempio vai ad applicarla ad un movieclip come prototype (se hai dubbi su cosa sia, usa F1 per la guida interna a flash), puoi ottenere attraverso i metodi del MovieClip, una funzione che modifichi la proprietà nel tempo, ad esempio
    codice:
    // inserisci un clip sullo stage e istanzialo "mioClip"
    // poi al primo frame del filmato attacca questo codice
    // avvia il filmato e clicca sul clip, lo vedrai routare
    // rallentando fino a 60°
    MovieClip.prototype.easeRotation = function(arrivo:Number, frames:Number){
    	this.onEnterFrame = function(){
    		var parziale = Math.round((arrivo-this._rotation)/frames);
    		this._rotation += parziale;
    		if(Math.round(this._rotation) == Math.round(arrivo)){
    			delete this.onEnterFrame;
    			this._rotation = arrivo;
    		}
    	}
    }
    mioClip.onRelease = function(){
    	this.easeRotation(60, 4);
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.