Difference between revisions of "love.graphics.setColor (Français)"

 
Line 1: Line 1:
{{newin (Français)|[[11.3]]|113|type=function}}
+
Règle la couleur utilisée pour le tracé.
Convertit une couleur de l'intervalle 0..255 à 0..1.
 
  
 +
Dans les versions antérieures à [[11.0]], les valeurs des composantes de couleurs étaient située dans une plage allant de 0 à 255 au lieu de 0 à 1.
 
== Fonction ==
 
== Fonction ==
 
=== Synopsis ===
 
=== Synopsis ===
 
<source lang="lua">
 
<source lang="lua">
r, g, b, a = love.math.colorFromBytes( rb, gb, bb, ab )
+
love.graphics.setColor( red, green, blue, alpha )
 
</source>
 
</source>
 
=== Arguments ===
 
=== Arguments ===
{{param|number (Français)|rb|Composante couleur Rouge dans l'intervalle 0..255.}}
+
{{param|number (Français)|red|La quantité de rouge.}}
{{param|number (Français)|gb|Composante couleur Vert dans l'intervalle 0..255.}}
+
{{param|number (Français)|green|La quantité de vert.}}
{{param|number (Français)|bb|Composante couleur Bleu dans l'intervalle 0..255.}}
+
{{param|number (Français)|blue|La quantité de bleu.}}
{{param|number (Français)|ab (nil)|Composante couleur Alpha dans l'intervalle 0..255.}}
+
{{param|number (Français)|alpha (1)|La quantité d'alpha. La valeur d'alpha sera appliquée dans toutes les opérations de tracées consécutives , même le tracé d'une image.}}
 
=== Retourne ===
 
=== Retourne ===
{{param|number (Français)|r|Composante couleur Rouge dans l'intervalle 0..1.}}
+
Rien.
{{param|number (Français)|g|Composante couleur Vert dans l'intervalle 0..1.}}
 
{{param|number (Français)|b|Composante couleur Bleu dans l'intervalle 0..1.}}
 
{{param|number (Français)|a (nil)|Composante couleur Alpha dans l'intervalle 0..1 ou nil si alpha n'est pas spécifié.}}
 
  
== Notes ==
+
== Fonction ==
Voici une implémentation pour [[11.2]] et plus ancien.
+
{{newin (Français)|[[0.7.0]]|070|type=variant}}
 +
=== Synopsis ===
 +
<source lang="lua">
 +
love.graphics.setColor( rgba )
 +
</source>
 +
=== Arguments ===
 +
{{param|table (Français)|rgba|Une table indexée numériquement avec les valeurs rouge, vert, bleu et alpha sous forme de [[number (Français)|nombres]]. L'alpha est optionnel est sera réglé à 1 par défaut, si non précisé.}}
 +
=== Retourne ===
 +
Rien.
 +
== Exemples ==
 +
=== Trace des cercles rouge, bleu et vert ===
 
<source lang="lua">
 
<source lang="lua">
function love.math.colorFromBytes(r, g, b, a)
+
function love.draw()
if type(r) == "table" then
+
love.graphics.setColor(1, 0, 0)
r, g, b, a = r[1], r[2], r[3], r[4]
+
love.graphics.circle("fill", 50, 50, 20)
end
+
 
r = clamp01(floor(r + 0.5) / 255)
+
love.graphics.setColor(0, 0, 1)
g = clamp01(floor(g + 0.5) / 255)
+
love.graphics.circle("fill", 50, 100, 20)
b = clamp01(floor(b + 0.5) / 255)
+
 
a = a ~= nil and clamp01(floor(a + 0.5) / 255) or nil
+
myColor = {0, 1, 0, 1}
return r, g, b, a
+
love.graphics.setColor(myColor)
 +
love.graphics.circle("fill", 50, 150, 20)
 
end
 
end
 
</source>
 
</source>
Où <code>clamp01</code> est définie comme suit
+
=== Affiche un diagramme de Venn ===
 
<source lang="lua">
 
<source lang="lua">
local function clamp01(x)
+
function love.load()
return math.min(math.max(x, 0), 1)
+
baseX = 300
 +
baseY = 400
 +
radius = 100
 +
offsetY = radius*.5*math.sqrt(3)
 +
love.graphics.setBackgroundColor(1, 1, 1)
 +
end
 +
 
 +
function love.draw()
 +
love.graphics.setColor(1, 0, 0, 0.4)
 +
love.graphics.circle('fill', baseX, baseY, radius)
 +
love.graphics.setColor(0, 1, 0, 0.4)
 +
love.graphics.circle('fill', baseX + radius / 2, baseY - offsetY, radius)
 +
love.graphics.setColor(0, 0, 1, 0.4)
 +
love.graphics.circle('fill', baseX + radius, baseY, radius)
 
end
 
end
 
</source>
 
</source>
Line 41: Line 62:
 
== Voir également ==
 
== Voir également ==
 
* [[parent::love.graphics (Français)]]
 
* [[parent::love.graphics (Français)]]
* [[love.graphics.setColor (Français)]]
+
* [[HSL color (Français)]] (Un espace de couleur alternatif, basé sur la perception humaine)
* [[love.math.colorToBytes (Français)]]
 
 
[[Category:Functions (Français)]]
 
[[Category:Functions (Français)]]
{{#set:Description=Convertit une couleur de l'intervalle 0..255 à 0..1.}}
+
{{#set:Description=Règle la couleur utilisée pour le tracé.}}
{{#set:Since=113}}
+
{{#set:Since=000}}
 +
{{#set:Sub-Category=State (Français)}}
 
== Autres langues ==
 
== Autres langues ==
 
{{i18n|love.graphics.setColor}}
 
{{i18n|love.graphics.setColor}}

Latest revision as of 09:00, 9 May 2021

Règle la couleur utilisée pour le tracé.

Dans les versions antérieures à 11.0, les valeurs des composantes de couleurs étaient située dans une plage allant de 0 à 255 au lieu de 0 à 1.

Fonction

Synopsis

love.graphics.setColor( red, green, blue, alpha )

Arguments

number (Français) red
La quantité de rouge.
number (Français) green
La quantité de vert.
number (Français) blue
La quantité de bleu.
number (Français) alpha (1)
La quantité d'alpha. La valeur d'alpha sera appliquée dans toutes les opérations de tracées consécutives , même le tracé d'une image.

Retourne

Rien.

Fonction

Disponible depuis LÖVE 0.7.0
Ce-tte variant n'est pas supporté-e par des versions plus anciennes.

Synopsis

love.graphics.setColor( rgba )

Arguments

table (Français) rgba
Une table indexée numériquement avec les valeurs rouge, vert, bleu et alpha sous forme de nombres. L'alpha est optionnel est sera réglé à 1 par défaut, si non précisé.

Retourne

Rien.

Exemples

Trace des cercles rouge, bleu et vert

function love.draw()
	love.graphics.setColor(1, 0, 0)
	love.graphics.circle("fill", 50, 50, 20)

	love.graphics.setColor(0, 0, 1)
	love.graphics.circle("fill", 50, 100, 20)

	myColor = {0, 1, 0, 1}
	love.graphics.setColor(myColor)
	love.graphics.circle("fill", 50, 150, 20)
end

Affiche un diagramme de Venn

function love.load()
	baseX = 300
	baseY = 400
	radius = 100
	offsetY = radius*.5*math.sqrt(3)
	love.graphics.setBackgroundColor(1, 1, 1)
end

function love.draw()
	love.graphics.setColor(1, 0, 0, 0.4)
	love.graphics.circle('fill', baseX, baseY, radius)
	love.graphics.setColor(0, 1, 0, 0.4)
	love.graphics.circle('fill', baseX + radius / 2, baseY - offsetY, radius)
	love.graphics.setColor(0, 0, 1, 0.4)
	love.graphics.circle('fill', baseX + radius, baseY, radius)
end

Voir également


Autres langues