Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di eng
    Registrato dal
    Mar 2002
    Messaggi
    1,227

    [mx] approx casuali di Math.round?

    modifico la scala di una barra rettangolare con questo script
    che contiene in un layer superiore una griglia regolare

    codice:
    	Vpercent = Math.round(((getTimer()-this.start)/V_END)*100);
    	}
    	if ((getTimer()-this.start)<=H_END1) {
    		Hpercent = Math.round(((getTimer()-this.start)/H_END1)*100);
    	}
    	_parent.Bars.vert._yscale = Vpercent;
    con i parametri maiuscoli= valori costanti

    una volta terminata la condizione che soddsfa l'if
    capita a volte che la griglia sia cresciuta di piu', e altre di meno.
    Questione di 2-4%

    Perche' ?

  2. #2
    non è il round che fa problemi... è il getTimer()

    prova questo codice:

    palla.cont = 0;
    _root.maxtime = 10000;
    _root.onEnterFrame = function() {
    with (this) {
    t = getTimer();
    if (t < maxtime) {
    cont++;
    }
    trace(t);
    trace(cont);
    }
    };

    semplicemente traccia "t" che è il getTimer() (che viene incrementato in base ai millisecondi reali) e "cont" che è un contatore, che viene incrementato di 1 ogni fotogramma. Per capire meglio ho messoun limite al tempo... se t è minore di maxtime allora incrementa cont...

    maxtime è sempre uguale, e quindi nello stesso tempo cont dovrebbe raggiungere sempre la stessa cifra e invece no... prova a eseguirlo + volte...
    questo è dovuto dal fatto che il timer è tempo reale trascorso dall'inizo, cont invece sono i fotogrammi che la cpu è riuscita ad eseguire... che ovviamente cambia leggermente a seconda di che cpu hai, di quanto complessa è l'animazione, di quanti programmi hai in background o anche solo di quanto caldo fa... eheh e figurati che il mio esempio è un filmato vuoto... con il solo trace e nessun elemento visivo

    invece di usare il getTimer, incrementa una variabile... così sarai sicuro che se sale di uno ogni frame, dopo 300 frames sta sempre a 300

    spero di essermi spiegato, am sono un po' stanco

    ciao
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  3. #3
    Utente di HTML.it L'avatar di eng
    Registrato dal
    Mar 2002
    Messaggi
    1,227
    grazie Panta!
    6 stato chiarissimo
    e mi ha salvato le ciapet
    :gren:

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.