{"id":360,"date":"2022-10-04T14:10:02","date_gmt":"2022-10-04T12:10:02","guid":{"rendered":"http:\/\/quadern-programacio.recursos.uoc.edu\/?page_id=360"},"modified":"2022-10-04T14:10:02","modified_gmt":"2022-10-04T12:10:02","slug":"2-9-color","status":"publish","type":"page","link":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/2-9-color\/","title":{"rendered":"2.9. Color"},"content":{"rendered":"<p>Hasta ahora, todas las formas que hemos dibujado tienen un relleno de color blanco y un trazo negro. En P5 podemos cambiar los colores tanto del relleno como del trazo usando los m\u00e9todos <span class=\"courier\">fill()<\/span> y <span class=\"courier\">stroke()<\/span>. Disponemos de m\u00faltiples maneras para especificar los colores y usaremos una u otra dependiendo de nuestras necesidades.<\/p>\n<h3>Escala de grises<\/h3>\n<p>Para definir un color en escala de grises, establecemos su valor dentro de <span class=\"courier\">fill()<\/span> o <span class=\"courier\">stroke()<\/span> con un n\u00famero entre 0 y 255. El 0 equivale a negro y el 255 a blanco; todos los valores intermedios son los grises que podemos conseguir (un total de 256 valores, lo que equivale a un modo de color de 8 bits 2<sup>8<\/sup> = 256).<\/p>\n<p>En los anteriores ejemplos ya hemos visto un caso en el que hemos utilizado este modo de color. El m\u00e9todo <span class=\"courier\">background()<\/span> espera dentro de sus par\u00e9ntesis un valor para pintar el fondo de nuestro <em>sketch<\/em>. En los ejemplos hemos usado un valor de <span class=\"courier\">background(200)<\/span>, un gris claro.<\/p>\n<figure id=\"attachment_80\" aria-describedby=\"caption-attachment-80\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" class=\"size-full wp-image-80\" src=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_023.jpg\" alt=\"\" width=\"800\" height=\"393\" srcset=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_023.jpg 800w, \/wp-content\/uploads\/2022\/10\/PID_00290094_023-300x147.jpg 300w, \/wp-content\/uploads\/2022\/10\/PID_00290094_023-768x377.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-80\" class=\"wp-caption-text\">Figura 23. Escala de grises<br \/>Fuente: elaboraci\u00f3n propia.<\/figcaption><\/figure>\n<h3>Color RGB<\/h3>\n<p>Si en lugar de pasar un \u00fanico valor a <span class=\"courier\">fill()<\/span> o <span class=\"courier\">stroke()<\/span> le pasamos tres, estaremos consiguiendo colores en modo RGB. El primer valor ser\u00e1 la cantidad de rojo (R), el segundo la cantidad de verde (G) y el tercero la cantidad de azul (B). Estos valores tambi\u00e9n van de 0 a 255.<\/p>\n<figure id=\"attachment_82\" aria-describedby=\"caption-attachment-82\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" class=\"size-full wp-image-82\" src=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_024.jpg\" alt=\"\" width=\"800\" height=\"361\" srcset=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_024.jpg 800w, \/wp-content\/uploads\/2022\/10\/PID_00290094_024-300x135.jpg 300w, \/wp-content\/uploads\/2022\/10\/PID_00290094_024-768x347.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-82\" class=\"wp-caption-text\">Figura 24. Color RGB<br \/>Fuente: elaboraci\u00f3n propia.<\/figcaption><\/figure>\n<p>Adem\u00e1s del modo de color RGB, P5 nos ofrece otros modos de definir los colores en nuestros <em>sketches<\/em>. Visitad la <a href=\"https:\/\/p5js.org\/es\/reference\/#\/p5\/colorMode\" target=\"_blank\" rel=\"noopener\">referencia<\/a> de <span class=\"courier\">colorMode()<\/span>\u00a0para aprender, por ejemplo, a utilizar el modo HSB (tono, saturaci\u00f3n, brillo).<\/p>\n<h3>Transparencia<\/h3>\n<p>P5 tambi\u00e9n nos permite aplicar transparencia a nuestros colores; si agregamos un par\u00e1metro adicional tanto a <span class=\"courier\">fill()<\/span> como a <span class=\"courier\">stroke()<\/span>, estaremos definiendo el nivel de transparencia del color que estemos utilizando. El valor de transparencia tambi\u00e9n es de 8 bits, por lo que podremos introducir valores de 0 a 255, donde 0 es completamente transparente y 255, completamente opaco.<\/p>\n<p>Tened en cuenta que al ejecutarse el <span class=\"courier\">draw()<\/span> de manera indefinida, si utilizamos un color con transparencia, esta se ir\u00e1 acumulando al dibujarse encima de s\u00ed misma continuamente. Para evitarlo, podemos poner el dibujo de nuestro <span class=\"courier\">background()<\/span> al principio del <span class=\"courier\">draw()<\/span> en lugar de en el <span class=\"courier\">setup()<\/span>. De esta manera, en cada bucle del <span class=\"courier\">draw()<\/span> estaremos \u00ablimpiando\u00bb el fondo y evitando que la transparencia de los colores se acumule.<\/p>\n<figure id=\"attachment_84\" aria-describedby=\"caption-attachment-84\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" class=\"size-full wp-image-84\" src=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_025.jpg\" alt=\"\" width=\"800\" height=\"481\" srcset=\"\/wp-content\/uploads\/2022\/10\/PID_00290094_025.jpg 800w, \/wp-content\/uploads\/2022\/10\/PID_00290094_025-300x180.jpg 300w, \/wp-content\/uploads\/2022\/10\/PID_00290094_025-768x462.jpg 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-84\" class=\"wp-caption-text\">Figura 25. Transparencia<br \/>Fuente: elaboraci\u00f3n propia.<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Hasta ahora, todas las formas que hemos dibujado tienen un relleno de color blanco y un trazo negro. En P5 podemos cambiar los colores tanto del relleno como del trazo usando los m\u00e9todos y . Disponemos de m\u00faltiples maneras para especificar los colores y usaremos una u otra dependiendo de nuestras necesidades. Escala de grises [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"acf":[],"_links":{"self":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/360"}],"collection":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/comments?post=360"}],"version-history":[{"count":1,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/360\/revisions"}],"predecessor-version":[{"id":361,"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/pages\/360\/revisions\/361"}],"wp:attachment":[{"href":"http:\/\/quadern-programacio.recursos.uoc.edu\/es\/wp-json\/wp\/v2\/media?parent=360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}