home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 October / PCO1097.ISO / FilesBBS / FREI / ANJAVAPP.EXE / FIRE / fireit.txt < prev    next >
Encoding:
Text File  |  1997-08-24  |  12.0 KB  |  267 lines

  1.  
  2.             AnfyFire 2.1 - Copyright (C) by Fabio Ciucci 1996/97
  3.  
  4.  
  5. Questa applet puo' generare e animare un effetto "fiamma" calcolato in
  6. tempo reale. Questo significa che non e' un'animazione (il cui caricamento
  7. in rete richiederebbe minuti), ma e' il risultato di formule complicatissime
  8. che eseguono miliardi di istruzioni per ogni fotogramma. Piu' o meno... :)
  9. Questa e' la versione 2.0, molto piu' veloce della 1.0, credo che sia il
  10. massimo possibile in Java, a meno che non si precalcoli un'animazione col
  11. fuoco e si rivisualizzi, ma cio' farebbe finire la memoria e richiederebbe
  12. un sacco di tempo all'inizio, e la gente avrebbe gia' cambiato pagina :)
  13. Ricordate che servono sia fire.class che Lware.class.
  14. Dovete uploadare sul vostro sito questi 2 file .class e aggiungere il
  15. tag <applet> al documento html per inserire l'applet nella vostra pagina.
  16. L'applet e' pienamente parametrizzata, per cui si puo' generare qualsiasi
  17. tipo di plasma. Ecco un esempio di cio' che si deve scrivere nell'html
  18. (le cose dopo i ; sono commenti con i valori minimi-massimi accettati):
  19.  
  20.  
  21. <applet code="fire.class" width=140 height=256>  ; Nome, larghezza, altezza
  22. <param name=fwidth value="70">            ; larghezza (1-1024)
  23. <param name=fheigth value="64">           ; altezza (1-1024)
  24. <param name=resx value="2">               ; risoluzione orizzontale (1-8)
  25. <param name=resy value="4">               ; risoluzione verticale (1-8)
  26. <param name=fcut value="7">               ; inizio del taglio fiamma (1-127)
  27. <param name=fsub value="4">               ; valore graduale di taglio (1-127)
  28. <param name=deflight value="30">          ; luce minima alla base (0-127)
  29. <param name=fmode value="2">              ; modalita' (1=rettangolo 2=cono)
  30. <param name=rndrep value="4">             ; tipo di generatore casuale (1-9)
  31. <param name=paletteR value="5">           ; quantita' rosso (0-8)
  32. <param name=paletteG value="3">           ; quantita' verde (0-8)
  33. <param name=paletteB value="1">           ; quantita' blu (0-8)
  34. <param name=textscroll value="firescr.txt"> ; File per lo scrolltext o "NO"
  35. <param name=textoffset value="140">         ; Txtscroll posizione y
  36. <param name=textspeed value="1">          ; Txtscroll velocita'
  37. <param name=textfont value="Arial">       ; Txtscroll nome font
  38. <param name=textbold value="NO">          ; Txtscroll grassetto (YES - NO)
  39. <param name=textsize value="24">          ; Txtscroll grandezza font
  40. <param name=textshadow value="YES">       ; Txtscroll ombra ("YES" o "NO")
  41. <param name=TextColR value="200">         ; Txtscroll colore (compon. rossa)
  42. <param name=TextColG value="255">         ; Txtscroll colore (compon. verde)
  43. <param name=TextColB value="190">         ; Txtscroll colore (compon. blu)
  44. <param name=TextSColR value="20">         ; Txtscroll col. ombra (c. rossa)
  45. <param name=TextSColG value="20">         ; Txtscroll col. ombra (c. verde)
  46. <param name=TextSColB value="50">         ; Txtscroll col. ombra (c. blu)
  47. <param name=TextJumpAmp value="0">        ; Txtscroll ampiezza salti
  48. <param name=TextJumpSpd value="0">        ; Txtscroll velocita' salti
  49. <param name=memdelay value="1000">        ; Ritardo deallocazione memoria
  50. <param name=priority value="3">           ; Priorita' applet (1..10)
  51. <param name=fixnetscape value="NO">       ; Correggi Netscape 3.0 (YES - NO)
  52. Your browser doesn't suppor Java.         ; Msg nei browsers senza java
  53. </applet>                                 ; Fine classtag
  54.  
  55.  
  56. NOTA: Non mettere i "; commenti" nell'HTML finale!!!
  57.  
  58. Copia e incolla nell'html questo tag corretto e "pulito":
  59.  
  60.  
  61. <applet code="fire.class" width=140 height=256>
  62. <param name=fwidth value="70">
  63. <param name=fheigth value="64">
  64. <param name=resx value="2">
  65. <param name=resy value="4">
  66. <param name=fcut value="7">
  67. <param name=fsub value="4">
  68. <param name=deflight value="30">
  69. <param name=fmode value="2">
  70. <param name=rndrep value="4">
  71. <param name=paletteR value="5">
  72. <param name=paletteG value="3">
  73. <param name=paletteB value="1">
  74. <param name=textscroll value="firescr.txt">
  75. <param name=textoffset value="1">
  76. <param name=textspeed value="1">
  77. <param name=textfont value="Arial">
  78. <param name=textbold value="NO">
  79. <param name=textsize value="18">
  80. <param name=textshadow value="NO">
  81. <param name=TextColR value="255">
  82. <param name=TextColG value="55">
  83. <param name=TextColB value="0">
  84. <param name=TextSColR value="20">
  85. <param name=TextSColG value="20">
  86. <param name=TextSColB value="50">
  87. <param name=TextJumpAmp value="0">
  88. <param name=TextJumpSpd value="0">
  89. <param name=memdelay value="1000">
  90. <param name=priority value="3">
  91. <param name=fixnetscape value="NO">
  92. Spiacente, ma il tuo browser non supporta il Java
  93. </applet>
  94.  
  95.  
  96.                              ---------
  97.  
  98.  
  99. Istruzioni dettagliate sul cambiamento dei parametri:
  100.  
  101.  
  102. fwidth e fheight sono la larghezza e altezza "interne" del fuoco, ma sono
  103. quelle "reali" dell'applet solo se resx=1 e resy=1. Infatti, resx e resy
  104. sono una specie di moltiplicatori di dimensioni, uno zoom: se fwidth e
  105. fheigth sono a 8 e 10 rispettivamente, e resx=2 & resy=2, la grandezza reale
  106. sara' 16x20. Cioe' la grandezza reale e' fwidth*resx X fheight*resy.
  107. Questo effetto e' migliore quando resy e' maggiore di resy.
  108.  
  109. In quando ai valori di "taglio" delle fiamme, fcut e fsub, considerate che
  110. fcut deve essere maggiore di fsub, e alcuni valori generano effetti sbagliati
  111. e a dir poco orribili. I valori possono andare da 1 a 127.
  112.  
  113. Il deflight (0-127) determina la luce minima alla base del fuoco... quindi
  114. mettendolo a 0 il fuoco avra' piu' "buchi" neri che mettendolo a 127, dove
  115. spariscono tutti (il fuoco pero' diventa piatto).
  116.  
  117. Se preferisci il fuoco come un blocco rettangolare, setta fmode=1, oppure
  118. settalo a 2 per avere una fiamma conica (che si restringe salendo).
  119.  
  120. Si puo' decidere il grado di "sfumatura" del generatore casuale, tramite
  121. il parametro rndrep (1-9)... con valori piu' bassi si hanno fiamme meno
  122. sfumate, piu' "vive e selvagge", e vice-versa.
  123.  
  124. Per quanto riguarda la palette, ci sono 3 valori per Rosso Vered Blu (RGB),
  125. che possono andare da 0 (niente) a 8 (pieno), e sono chiamati paletteR,
  126. paletteG, paletteB.
  127. Quindi puoi generare fiamme rosse (fuoco), verdi (magia), blu (gas) eccetera
  128. eccetera, come preferisci... ci sono 700 combinazioni possibili, scegli
  129. quella che preferisci.
  130.  
  131.  
  132.                              ---------
  133.  
  134.  
  135. Parametri dello Scrolltext (testo scorrevole) opzionale:
  136.  
  137.  
  138. Si puo' attivare opzionalmente un testo scorrevole sopra l'applet.
  139. Se non si desidera lo scrolltext, basta disattivarlo mettendo "NO" al
  140. parametro "textscroll".
  141. Altrimenti occorre fornire il name di un file di testo ASCII, dove occorre
  142. scrivere il tesco che si vuole far scorrere.
  143. E' supportata solo una linea di testo, che puo' essere lunga quanto si
  144. desidera.
  145. Ricordati di uploadare (mandare sul server) anche il file di testo, se
  146. attivi lo scrolltext!
  147.  
  148. Se e' attivato, ecco i parametri:
  149.  
  150. Con "textoffset" si sceglie lo scostamento Y rispetto alla prima linea
  151. in alto: mettendoci 0 il testo sara' posizionato in cima, per esempio, e
  152. mettendo un valore vicino all'altezza dell'applet sara' posizionato in
  153. fondo.
  154.  
  155. Col parametro "textspeed" si decide la velocita' di scorrimento.
  156.  
  157. Con "textfont" si sceglie il font del testo (tipo di carattere).
  158. Non scegliere font strane o non standard, non presenti in tutti i sistemi.
  159. I font piu' comuni sono "Arial", "TimesRoman" e "Courier".
  160. Se il font richiesto non e' presente, viene adottato il piu' "vicino".
  161.  
  162. Settando "textbold" a "YES" si mette il grassetto al font, che quindi
  163. diventa un po' piu' grosso, altrimenti settandolo a "NO" si hanno i contorni
  164. normali.
  165.  
  166. Con "textsize" si puo' cambiare la grandezza del font.
  167. Le grandezze standard sono: 8,9,10,11,12,14,16,18,20,22,24,26,28,36,48,72.
  168. Valori intermedi saranno scalati alla grandezza disponibile piu' vicina.
  169.  
  170. Settando "textshadow" a "YES", un'ombra sara' aggiunta al testo scorrevole.
  171. Altrimenti, settandolo a "NO", nessuna ombra sara' "proiettata".
  172.  
  173. Puoi scegliere il colore del testo con:
  174.  
  175. TextColR = Componente rossa del colore (0-255)
  176. TextColG = Componente verde del colore (0-255)
  177. TextColB = Componente blu del colore (0-255)
  178.  
  179. Per esempio, 0,0,0 e' nero, 255,255,255 e' bianco, 255,0,0 e' rosso,
  180. 255,255,0 e' giallo, 128,128,128 e' grigio.
  181. Puoi comporre qualsiasi colore, puoi cercarlo provando "a mano" o usando
  182. il selettore/miscelatore colori di un qualsiasi programma da disegno, per
  183. trovare le componenti di rosso, verde, blu (red, green, blue) del colore che
  184. cerchi.
  185.  
  186. Con TextSColR,TextSColG,TextSColB puoi selezionare il colore per l'ombra
  187. del testo.
  188.  
  189. Se si vuole, e' possibile attivare la funzione di "saltellamento" del testo.
  190. Se "TextJumpAmp" e' settato a "0", non sara' mostrato alcun saltellamento.
  191. Ma incrementando il valore si avra' un maggiore saltellamento.. maggiore
  192. ampiezza = salti piu' alti.
  193.  
  194. Col parametro "TextJumpSpd" si seleziona la velocita' di saltellaggio.
  195.  
  196.  
  197.                              ---------
  198.  
  199.  
  200. Parametri di compatibilita':
  201.  
  202.  
  203. Il parametro "memdelay" e' utile solo per far funzionare le applet senza
  204. problemi in alcune versioni piene di bug (errori) di Netscape 3, che non
  205. sono in grado di liberare (deallocare) correttamente la memoria occupata
  206. precedentemente (allocata): questo porterebbe al riempimento di tutta la
  207. memoria dopo un minuto o due che l'applet e' in esecuzione.
  208. In certo casi questo provoca anche crash del sistema operativo.
  209. Le ultime versioni dei browsers hanno corretto questo problema, ma se vuoi
  210. far funzionare bene le applet anche nelle vecchie ed errate versioni dei
  211. browsers, si puo' settare "memdelay" a valori bassi, ad esempio "10" o "16".
  212. Questo pero' rallentera' di molto la velocita' dell'applet, quindi occorre
  213. scegliere tra l'avere la velocita' (memdelay settato a 1000 o superiori) o
  214. lentezza compatibile con i vecchi browsers (memdelay settato a 20 o meno).
  215.  
  216. Il parametro "priority" e' utile principalmente quando si eseguono piu' di
  217. un'applet nella stessa pagina, e una di queste rallenta o si blocca.
  218. Se questa applet viene eseguita troppo rallentata, o si blocca perche'
  219. un'altra ruba tutta la potenza del processore, prova ad incrementare la
  220. priorita'.
  221. Altrimenti, se l'applet funziona bene e le altre sono rallentate, decrementa
  222. la priorita'. Considera che la priorita' minima e' 1, la priorita' normale
  223. e' 5, e la massima e' 10.
  224. Normalmente una priorita' di 3 e' giusta per applet singole.
  225.  
  226. Il parametro "fixnetscape" e' utile solo quando l'applet e' visualizzata
  227. con Netscape 3, sotto Win95. Infatti, tale netscape commette un errore
  228. visualizzando l'IndexColorModel, diminuendo i colori e retinando l'immagine.
  229. Settando "fixnetscape" a "YES", l'effetto sara' piu' lento in tutti i
  230. browsers, ma avra' i colori corretti in Netscape 3.0.
  231. Settandolo a "NO", l'effetto funzionera' piu' velocemente in tutti i
  232. browser, eccetto Netscape 3.0 che li visualizzata in modo peggiore.
  233. Da notare che Netscape 4 ed explorer non hanno questo problema.
  234.  
  235.  
  236.                              ---------
  237.  
  238.  
  239. Copyright e note sulla distribuzione.
  240.  
  241.  
  242. Fabio Ciucci e' l'autore e proprietario di questa applet.
  243. Puoi usare liberamente questa applet per abbellire le tue pagine web.
  244. Pero', dato che sono l'autore, ho inserito una finestrella segreta che
  245. apparira' se l'applet e' clickata col mouse: e' esterna al browser, percui
  246. non danneggera' il design della tua bellissima pagina html.
  247. Tale piccola finestrella mostra semplicemente il mio nome e chiede se si
  248. vuole fare una visitina alla pagina delle mie applet, per poterle prendere
  249. e usare. L'utente potra' connettersi o meno, a seconda delle sue preferenze,
  250. dopo aver visitato il vostro stupendo sito.
  251. In ogni caso, se il link (connect) e' accettato, sara' aperta una nuova
  252. finestra browser, e la tua pagina rimarra' nella finestra originale, in
  253. questo modo non "perderai" il visitatore.
  254. Spero che questa credit part non sia un problema eccessivo per te...
  255. Considera che userai un effetto programmato da me, senza pagare niente!
  256.  
  257.  
  258.  
  259.  
  260. Fabio Ciucci (Randy/Ram Jam)
  261.  
  262. fabioc@anfiteatro.it
  263.  
  264. http://www.anfiteatro.it/java.html
  265.  
  266.  
  267.