Color.html 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <!DOCTYPE html>
  2. <html lang="it">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="page.css" />
  8. </head>
  9. <body>
  10. <h1>[name]</h1>
  11. <p class="desc">
  12. Classe che rappresenta un colore.
  13. </p>
  14. <p>
  15. L'iterazione di un'istanza [name] produrrà i suoi componenti (r, g, b) nell'ordine corrispondente.
  16. </p>
  17. <h2>Codice di Esempio</h2>
  18. <p>
  19. Un colore può essere inizializzato in qualsiasi dei seguenti modi:
  20. </p>
  21. <code>
  22. // Un costruttore vuoto - per impostazione predefinita sarà bianco
  23. const color1 = new THREE.Color();
  24. // Colore esadecimale (raccomandato)
  25. const color2 = new THREE.Color( 0xff0000 );
  26. // Una stringa RGB
  27. const color3 = new THREE.Color("rgb(255, 0, 0)");
  28. const color4 = new THREE.Color("rgb(100%, 0%, 0%)");
  29. // Nome del colore X11 - tutti i 140 nomi dei colori sono supportati.
  30. // Si noti la mancanza del CamelCase nel nome
  31. const color5 = new THREE.Color( 'skyblue' );
  32. // Una stringa HSL
  33. const color6 = new THREE.Color("hsl(0, 100%, 50%)");
  34. // Separa i valori RGB tra 0 e 1
  35. const color7 = new THREE.Color( 1, 0, 0 );
  36. </code>
  37. <h2>Costruttore</h2>
  38. <h3>[name]( [param:Color_Hex_or_String r], [param:Float g], [param:Float b] )</h3>
  39. <p>
  40. [page:Color_Hex_or_String r] - (opzionale) Se gli argomenti [page:Float g] e [page:Float b] sono definiti, indica il componente rosso del colore.
  41. Se non sono definiti, questo può essere una [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet tripletta esadecimale] (consigliato),
  42. una stringa CSS-style, o un'altra istanza `Color`.<br />
  43. [page:Float g] - (opzionale) Se è definito, indica la componente verde del colore.<br />
  44. [page:Float b] - (opzionale) Se è definito, indica la componente blu del colore.<br /><br />
  45. Si noti che il metodo standard per definire il colore in three.js è con una [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet tripletta esadecimale],
  46. questo metodo viene utilizzato nel resto della documentazione.<br /><br />
  47. Quando tutti gli argomenti sono definiti allora [page:Color_Hex_or_String r] è il componente rosso,
  48. [page:Float g] è il componente verde e [page:Float b] è il componente blue del colore.<br />
  49. Quando solo [page:Color_Hex_or_String r] è definito:<br />
  50. <ul>
  51. <li>Può essere una [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet tripletta esadecimale] che rappresenta il colore (consigliato).</li>
  52. <li>Può essere un'altra istanza di Color.</li>
  53. <li>Può essere una stringa CSS-style. Per esempio:
  54. <ul>
  55. <li>'rgb(250, 0,0)'</li>
  56. <li>'rgb(100%,0%,0%)'</li>
  57. <li>'hsl(0, 100%, 50%)'</li>
  58. <li>'#ff0000'</li>
  59. <li>'#f00'</li>
  60. <li>'red'</li>
  61. </ul>
  62. </li>
  63. </ul>
  64. </p>
  65. <h2>Proprietà</h2>
  66. <h3>[property:Boolean isColor]</h3>
  67. <p>
  68. Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
  69. </p>
  70. <h3>[property:Float r]</h3>
  71. <p>
  72. Valore del canale rosso tra 0 e 1. Il valore predefinito è 1.
  73. </p>
  74. <h3>[property:Float g]</h3>
  75. <p>
  76. Valore del canale verde tra 0 e 1. Il valore predefinito è 1.
  77. </p>
  78. <h3>[property:Float b]</h3>
  79. <p>
  80. Valore del canale blu tra 0 e 1. Il valore predefinito è 1.
  81. </p>
  82. <h2>Metodi</h2>
  83. <h3>[method:this add]( [param:Color color] ) </h3>
  84. <p>Aggiunge i valori RGB del [page:Color colore] ai valori RGB di questo colore.</p>
  85. <h3>[method:this addColors]( [param:Color color1], [param:Color color2] ) </h3>
  86. <p>Imposta questi valori RGB del colore alla somma dei valori RGB di [page:Color color1] e [page:Color color2].</p>
  87. <h3>[method:this addScalar]( [param:Number s] ) </h3>
  88. <p>Aggiunge [page:Number s] ai valori RGB di questo colore.</p>
  89. <h3>[method:Color clone]() </h3>
  90. <p>Restituisce un nuovo Color con gli stessi valori [page:.r r], [page:.g g] e [page:.b b] di questo.</p>
  91. <h3>[method:this copy]( [param:Color color] ) </h3>
  92. <p>
  93. Copia i parametri [page:.r r], [page:.g g] e [page:.b b] dal [page:Color colore] in questo colore.
  94. </p>
  95. <h3>[method:this convertLinearToSRGB]() </h3>
  96. <p>
  97. Converte questo colore dallo spazio lineare allo spazio sRGB.
  98. </p>
  99. <h3>[method:this convertSRGBToLinear]() </h3>
  100. <p>
  101. Converte questo colore dallo spazio sRGB allo spazio lineare.
  102. </p>
  103. <h3>[method:this copyLinearToSRGB]( [param:Color color] ) </h3>
  104. <p>
  105. [page:Color color] - Colore da copiare.<br /><br />
  106. Copia il colore passato in questo colore, e poi converte questo colore dallo spazio lineare allo spazio sRGB.
  107. </p>
  108. <h3>[method:this copySRGBToLinear]( [param:Color color] ) </h3>
  109. <p>
  110. [page:Color color] - Colore da copiare.<br /><br />
  111. Copia il colore passato in questo colore, e poi converte questo colore dallo spazio sRGB allo spazio lineare.
  112. </p>
  113. <h3>[method:Boolean equals]( [param:Color color] ) </h3>
  114. <p>Compara i valori RGB del [page:Color colore] con quelli di questo oggetto. Restituisce true se sono gli stessi, false altrimenti.</p>
  115. <h3>[method:this fromArray]( [param:Array array], [param:Integer offset] ) </h3>
  116. <p>
  117. [page:Array array] - [page:Array] di float nella forma [ [page:Float r], [page:Float g], [page:Float b] ].<br />
  118. [page:Integer offset] - Un offset opzionale nell'array.<br /><br />
  119. Imposta i componenti di questo colore in base a un array formattato come [ [page:Float r], [page:Float g], [page:Float b] ].
  120. </p>
  121. <h3>[method:this fromBufferAttribute]( [param:BufferAttribute attribute], [param:Integer index] )</h3>
  122. <p>
  123. [page:BufferAttribute attribute] - l'attributo sorgente.<br />
  124. [page:Integer index] - l'indice dell'attributo.<br /><br />
  125. Imposta i componenti del colore dall'[page:BufferAttribute attributo].
  126. </p>
  127. <h3>[method:Integer getHex]( [param:string colorSpace] = SRGBColorSpace )</h3>
  128. <p>Restituisce il valore esadecimale di questo colore.</p>
  129. <h3>[method:String getHexString]( [param:string colorSpace] = SRGBColorSpace )</h3>
  130. <p>Restituisce il valore esadecimale di questo colore come una stringa (per esempio, 'FFFFFF').</p>
  131. <h3>[method:Object getHSL]( [param:Object target], [param:string colorSpace] = LinearSRGBColorSpace )</h3>
  132. <p>
  133. [page:Object target] - questo risultato sarà copiato in questo Oggetto. Aggiunge le chiavi h, s e l all'oggetto (se non è già presente).<br /><br />
  134. Converte i valori [page:.r r], [page:.g g] e [page:.b b] del Color al formato [link:https://en.wikipedia.org/wiki/HSL_and_HSV HSL]
  135. e restituisce un oggetto della forma:
  136. <code>
  137. { h: 0, s: 0, l: 0 }
  138. </code>
  139. </p>
  140. <h3>[method:Color getRGB]( [param:Color target], [param:string colorSpace] = LinearSRGBColorSpace )</h3>
  141. <p>
  142. [page:Color target] - questo risultato sarà copiato in questo oggetto.<br /><br />
  143. Returns the RGB values of this color as an instance of [page:Color].
  144. </p>
  145. <h3>[method:String getStyle]( [param:string colorSpace] = SRGBColorSpace )</h3>
  146. <p>Restituisce il valore di questo colore come una stringa CSS style. Esempio: `rgb(255,0,0)`.</p>
  147. <h3>[method:this lerp]( [param:Color color], [param:Float alpha] ) </h3>
  148. <p>
  149. [page:Color color] - colore su cui convergere.<br />
  150. [page:Float alpha] - fattore di interpolazione nell'intervallo chiuso `[0, 1]`.<br /><br />
  151. Interpola linearmente i valori RGB di questo colore verso i valori RGB dell'argomento passato.
  152. L'argomento alfa può essere considerato come il rapporto tra i due colori, dove `0.0` è
  153. questo colore e `1.0` è il primo argomento.
  154. </p>
  155. <h3>[method:this lerpColors]( [param:Color color1], [param:Color color2], [param:Float alpha] )</h3>
  156. <p>
  157. [page:Color color1] - [page:Color colore] iniziale.<br />
  158. [page:Color color2] - [page:Color colore] verso cui interpolare.<br />
  159. [page:Float alpha] - fattore interpolazione, tipicamente nell'intervallo chiuso `[0, 1]`.<br /><br />
  160. Imposta questo colore per essere il colore interpolato linearmente tra [page:Color color1] e
  161. [page:Color color2] dove alfa è la distanza percentuale lungo la linea che collega i due colori
  162. - alfa = 0 sarà [page:Color color1], e alpha = 1 sarà [page:Color color2].
  163. </p>
  164. <h3>[method:this lerpHSL]( [param:Color color], [param:Float alpha] ) </h3>
  165. <p>
  166. [page:Color color] - colore su cui convergere.<br />
  167. [page:Float alpha] - fattore di interpolazione nell'intervallo chiuso`[0, 1]`.<br /><br />
  168. Interpola linearmente i valori HSL di questo colore verso i valori HSL dell'argomento passato.
  169. Si differenzia dal classico [page:.lerp] non interpolando direttamente da un colore all'altro,
  170. ma passando invece attraverso tutte le sfumature tra questi due colori.
  171. L'argomento alfa può essere considerato come il rapporto tra i due colori, dove `0.0` è
  172. questo colore e `1.0` è il primo argomento.
  173. </p>
  174. <h3>[method:this multiply]( [param:Color color] ) </h3>
  175. <p>Moltiplica i valori RGB di questo colore per i valori RGB del colore passato.</p>
  176. <h3>[method:this multiplyScalar]( [param:Number s] ) </h3>
  177. <p>Moltiplica i valori RGB di questo colore per [page:Number s].</p>
  178. <h3>[method:this offsetHSL]( [param:Float h], [param:Float s], [param:Float l] ) </h3>
  179. <p>
  180. Aggiunge [page:Float h], [page:Float s] e [page:Float l] passati ai valori di questo colore.
  181. Internamente, converte i valori [page:.r r], [page:.g g] e [page:.b b] del colore a HSL,
  182. aggiunge [page:Float h], [page:Float s], e [page:Float l] e poi converte il colore nero a RGB.
  183. </p>
  184. <h3>[method:this set]( [param:Color_Hex_or_String r], [param:Float g], [param:Float b] )</h3>
  185. <p>
  186. [page:Color_Hex_or_String r] - (optional) If arguments [page:Float g] and [page:Float b] are defined, the red component of the color. If they are
  187. not defined, it can be a [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet hexadecimal triplet] (recommended), a CSS-style string, or another `Color` instance.<br />
  188. [page:Float g] - (optional) If it is defined, the green component of the color.<br />
  189. [page:Float b] - (optional) If it is defined, the blue component of the color.<br /><br />
  190. See the Constructor above for full details about possible arguments. Delegates to [page:.copy],
  191. [page:.setStyle], [page:.setRGB] or [page:.setHex] depending on input type.
  192. </p>
  193. <h3>[method:this setHex]( [param:Integer hex], [param:string colorSpace] = SRGBColorSpace ) </h3>
  194. <p>
  195. [page:Integer hex] - formato [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet tripletta esadecimale].<br /><br />
  196. Imposta questo colore da un valore esadecimale.
  197. </p>
  198. <h3>[method:this setHSL]( [param:Float h], [param:Float s], [param:Float l], [param:string colorSpace] = LinearSRGBColorSpace ) </h3>
  199. <p>
  200. [page:Float h] - Valore di tonalità compreso tra 0.0 e 1.0 <br />
  201. [page:Float s] - Valore di saturazione compreso tra 0.0 e 1.0 <br />
  202. [page:Float l] - Valore di luminosità compreso tra 0.0 e 1.0<br /><br />
  203. Imposta il colore dai valori HSL.
  204. </p>
  205. <h3>[method:this setRGB]( [param:Float r], [param:Float g], [param:Float b], [param:string colorSpace] = LinearSRGBColorSpace ) </h3>
  206. <p>
  207. [page:Float r] - Valore del canale rosso tra 0.0 e 1.0.<br />
  208. [page:Float g] - Valore del canale verde tra 0.0 e 1.0.<br />
  209. [page:Float b] - Valore del canale blu tra 0.0 e 1.0.<br /><br />
  210. Imposta questo colore dai valori RGB.
  211. </p>
  212. <h3>[method:this setScalar]( [param:Float scalar] ) </h3>
  213. <p>
  214. [page:Float scalar] - un valore tra 0.0 e 1.0.<br /><br />
  215. Imposta tutti e tre i componenti del colore al valore [page:Float scalare].
  216. </p>
  217. <h3>[method:this setStyle]( [param:String style], [param:string colorSpace] = SRGBColorSpace ) </h3>
  218. <p>
  219. [page:String style] - colore come una stringa CSS-style.<br /><br />
  220. Imposta questo colore da una stringa CSS. Per esempio,
  221. "rgb(250, 0,0)",
  222. "rgb(100%, 0%, 0%)",
  223. "hsl(0, 100%, 50%)",
  224. "#ff0000",
  225. "#f00", o
  226. "red" ( o qualsiasi [link:https://en.wikipedia.org/wiki/X11_color_names#Color_name_chart nome dei colori X11]
  227. - tutti i 140 nomi dei colori sono supportati ).<br />
  228. Sono accettati anche colori traslucidi come "rgba(255, 0, 0, 0.5)" e "hsla(0, 100%, 50%, 0.5)",
  229. ma le coordinate del canale alfa verranno eliminate.<br /><br />
  230. Si noti che per i nomi dei colori X11, più parole come Dark Orange diventano la stringa 'darkorange'.
  231. </p>
  232. <h3>[method:this setColorName]( [param:String style], [param:string colorSpace] = SRGBColorSpace ) </h3>
  233. <p>
  234. [page:String style] - nome del colore ( dai [link:https://en.wikipedia.org/wiki/X11_color_names#Color_name_chart nomi dei colori X11] ).<br /><br />
  235. Imposta questo colore dal nome del colore. Più veloce del metodo [page:.setStyle] se non hai bisogno di altri formati in stile CSS.<br/><br/>
  236. Per convenienza, la lista dei nomi è esposta in Color.NAMES come un hash: <code>Color.NAMES.aliceblue // returns 0xF0F8FF</code>
  237. </p>
  238. <h3>[method:this sub]( [param:Color color] ) </h3>
  239. <p>
  240. Sottrae i componenti RGB del colore dato dai componenti RGB di questo colore.
  241. Se questo ritorna un componente negativo, tale componente viene impostato a zero.
  242. </p>
  243. <h3>[method:Array toArray]( [param:Array array], [param:Integer offset] ) </h3>
  244. <p>
  245. [page:Array array] - Un array opzionale in cui memorizzare il colore. <br />
  246. [page:Integer offset] - Un offset opzionale nell'array.<br /><br />
  247. Restituisce un array della forma [ r, g, b ].
  248. </p>
  249. <h3>[method:Number toJSON]()</h3>
  250. <p>
  251. This methods defines the serialization result of [name]. Returns the color as a hexadecimal value.
  252. </p>
  253. <h2>Source</h2>
  254. <p>
  255. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  256. </p>
  257. </body>
  258. </html>