Nei nostri siti in Flash a volte è necessario inserire un orario Analogico o Digitale

Il codice base per un ora Digitale è da inserire su un movie clip nell’evento onClipEvent(enterFrame):
onClipEvent (enterFrame) {
myDate = new Date(); // creo l'oggetto Date
this.ora.text = myDate.getHours(); // ora
this.minuti.text = myDate.getMinutes(); // minuti
this.secondi.text = myDate.getSeconds(); // secondi
}
Dovrete creare nel clip, testi dinamici di nome istanza ora, minuti, secondi
Ma qual’è la vera difficoltà a creare un orologio Analogico? Esatto! La rotazione delle lancette!
Vediamo la funzione che ci viene in aiuto e che nel tutorial capirete meglio:
function tickHands() {
var _loc1 = new Date(); // creo oggetto Data
hours = _loc1.getHours(); // ora
minutes = _loc1.getMinutes(); // minuti
seconds = _loc1.getSeconds(); // secondi
milSeconds = _loc1.getMilliseconds(); // millisecondi
hourHand._rotation = 30*(hours+1.666667E-002*minutes); // ruoto la lancetta delle ore
minHand._rotation = 6*(minutes+1.666667E-002*seconds); // ruoto la lancetta dei minuti
secondsRotation = 6*(seconds+1.000000E-003*milSeconds); // ruoto la lancetta dei secondi
multiple = secondsRotation%6; // imposto la variabile multiple
if (multiple<3) {
secondsRotation = Math.floor(secondsRotation/6)*6;
} else {
secondsRotation = Math.round(secondsRotation/6)*6;
}
// Imposto la rotazione della lancetta dei secondi
if (secondsRotation>180) {
if (secondsRotation == 186) {
secHand._rotation = -179;
}
// end if
secondsRotation = secondsRotation-360;
}
// Imposto il ritorno della lancetta
bounce("_rotation", secondsRotation, secHand, 3, 6.000000E-001);
++bounced;
}
Scarica il sorgente
Guarda il Tutorial
Prezzo: EUR 7,90
Promozione: EUR 6,72
Prezzo: EUR 49,90
Promozione: EUR 42,42
Prezzo: EUR 12,90
Promozione: EUR 10,96
Prezzo: EUR 40,00 |
Promozione: EUR 38,00
Oggi vediamo alcuni indispensabili consigli SEO per migliorare la visibilità dei siti web o ancora meglio degli  articoli, con lo scopo di migliorare la predisposizione all’indicizzazione dei nostri progetti web sui motori di ricerca. Ormai anche il Web Designer, soprattutto se è ha intrapreso la carriera da Freelance, deve assolutamente conosce alcune nozioni base della SEO. [...]
Come ogni giorno, mi ritrovo a girovagare per il web: news dal mondo, articoli di nuovi o aggiornamenti social, altro vip che si cancella da Twitter… solita routine, quando ad un tratto vengo attratto dalla notizia di un nuovo Social Network super esclusivo. Già avevo sentito parlare di Path, ma non so per quale strano [...]
Sono sempre troppo poche le campagne creative che puntano a sensibilizzare sulla causa animalista, contro le violenze e i test sugli animali, eppure quelle che hanno colpito di più l’immaginazione sono scolpite nelle coscienze di ognuno come segni indelebili. Tra tutte, una delle più meritevole degli ultimi anni è quella dell’azienda inglese LUSH, che ha [...]
Christophe Huet è un fotografo specializzato nel fotoritocco digitale, che divide facilmente le opinioni del pubblico, in quanto sappiamo benissimo che esistono due distinte correnti di pensiero. I primi, puristi della foto per i quali la manipolazione è da pena di morte, e i secondi, gli artisti del fotoritocco come Christophe che del fotoritocco hanno [...]

DoZ
2 agosto 2007
Anchio avevo fatto il mio, qualche anno fa…
http://www.dozarte.com/what/portfol/orologio.htm
(credo ancora con Flash 4)
Julius
2 agosto 2007
Veramente bello Doz, mi piace la prospettiva delle lancette bravo!
DoZ
4 settembre 2007
Grazie.
Mi sono poi ricordato che avevo anche fatto un articolo nel blog, collegandomi ad un tutorial che avevo scritto per MMkit….
http://www.dozarte.com/wordpress/2006/08/14/costruiamo-un-orologio-analogico-flash5/
Julius
5 settembre 2007
good :)
MAnu
26 febbraio 2008
Ciao
inanzitutto COMPLIMENTI!
una domanda:
è possibile aggiungere più orologi digitali con differenti fusi orari?
dovrei creare almeno 5 orologi Roma Tokyo NewYork Sydney Dubai..
Potrei aggingere o togliere le ore di differenza ma nn so come fare.
Mi aiuti? grazie!!!
Julius
26 febbraio 2008
Ciao, ti basta individuare la variabile delle ore e sottrai il numero di ore di differenza per creare i diversi orari…
hours = _loc1.getHours()-1;fra_flash79
4 agosto 2009
ciao Julius eccomi qua ancora una volta dopo tanto tempo.. sto preparando una serie di orologi digitali con fusi orari diversi.
ho scaricato l’es e modificato il file clock.fla con quello che hai suggerito a Manu
hours = _loc1.getHours()-1;
se io sottraggo per es -12 ore mi succede che compare un meno davanti all’ora e se aggiungo invece +12 ore, lo script che fa il ciclo fino a 12 h e poi ritorna a zero non funziona e passa quindi a 14-15-18-..perdipiù se io metto +20h mi supera anche le 30h..non scatta quindi il meccanismo che mi fa
if (hours>12) {
hours= hours-12;
ampm_m = “pm”;
} else {
ampm_m = “am”;
}
if (hours== 0) {
hours = 12;
}
PUOI AIUTARMI PER FAVORE CHE NON NE VENGO PIù A CAPO
GRAZIE
Francesco