|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
SELECTEUR DE COULEURS
Information sur la source
Description
Tout d'abord sachez que je poste ce code à titre d'exemple Il DESSINE un dégradé comme ceux que l'on peut trouver dans les logiciels de retourche d'images, une partie servant à selectionner la couleur, l'autre à selectionner la luminosité pour cette même couleur Enfin les valeurs rgb ou html peuvent être copiés Je rapelle que j'ai posté ce code car la plupart (tous ?) des selecteurs de couleurs sont fait soit a l'aide de scrollbars faisant varier les composantes R,G et B, soit d'image de dégradé Dernière chose, le dégradé n'est effectué qu'une seule fois, puis il est sauvegardé de manière a ne pas avoir a le redessiner à chaque fois !
Source
-
- alias palette {
- window -dopCk0 @palette -1 -1 390 420
- window -hp @pbuf
- if (!$exists($scriptdirpalette_claire.bmp)) draw_palette claire
- else { drawpic @palette 0 0 $+(",$scriptdirpalette_claire.bmp,") | drawcopy @palette 0 0 310 310 @pbuf 0 0 }
- lumdeg 255 | draw_infos 1 1 | fleche 1
- }
-
- alias draw_palette {
- var %f $+(",$scriptdirpalette,_,$1,.bmp,")
- if ($exists(%f)) drawpic @palette 0 0 %f
- else {
- var %x 1 , %r 255 , %g 0 , %b 0 , %ticks $ticks
- wait
- while (%x < 310) {
- var %y 1
- while (%y < 310) {
- if ($1 == claire) drawdot -rn @palette $rgb($calc($l(%r) + (((255 - %r) / 310) * %y)),$calc($l(%g) + (((255 - %g) / 310) * %y)),$calc($l(%b) + (((255 - %b) / 310) * %y))) 1 %x %y
- else {
- var %c $calc(%y * 255 / 310)
- drawdot -rn @palette $rgb($l($calc(%r - %c)),$l($calc(%g - %c)),$l($calc(%b - %c))) 1 %x %y
- }
- inc %y
- }
- if (%r >= 255) && (!%b) && (%g < 255) inc %g 5
- elseif (%g <= 255) && (%r > 0) && (!%b) dec %r 5
- elseif (%r <= 0) && (%g >= 255) && (%b < 256) inc %b 5
- elseif (%b >= 255) && (%r <= 0) && (%g > 0) dec %g 5
- elseif (%g <= 0) && (%b > 254) && (%r < 255) inc %r 5
- elseif (%r >= 255) && (%g <= 0) dec %b 5
- inc %x
- }
- drawdot @palette
- drawsave @palette %f
- wait
- echo -a Palette $1 dessinée en $duration($calc(($ticks - %ticks) / 1000)))
- }
- lumdeg 255 | draw_infos 1 1 | fleche 1
- drawcopy @palette 0 0 310 310 @pbuf 0 0
- }
-
- alias -l lumdeg {
- tokenize 44 $rgb($1)
- var %i 1 | while (%i < 310) {
- if ($getdot(@palette,1,309) > 50000) drawrect -frn @palette $rgb($l($calc($1 - (($1 / 310) * %i))),$l($calc($2 - (($2 / 310) * %i))),$l($calc($3 - (($3 / 310) * %i)))) 1 340 %i 20 1
- else drawrect -frn @palette $rgb($l($calc($1 + (((255 - $1) / 310) * %i))),$l($calc($2 + (((255 - $2) / 310) * %i))),$l($calc($3 + (((255 - $3) / 310) * %i)))) 1 340 %i 20 1
- inc %i
- }
- drawdot @palette
- }
-
- menu @palette {
- sclick {
- if ($inrect($mouse.x,$mouse.y,1,1,309,309)) {
- drawcopy @pbuf 0 0 310 310 @palette 0 0 310 310
- draw_infos $mouse.x $mouse.y | fleche 1
- lumdeg $getdot(@palette,$mouse.x,$mouse.y)
- drawrect -e @palette $iif($getdot(@palette,1,309) > 50000,1,0) 2 $calc($mouse.x - 6) $calc($mouse.y - 6) 11 11
- }
- elseif ($inrect($mouse.x,$mouse.y,340,1,20,309)) { fleche $mouse.y | draw_infos $mouse.x $mouse.y }
- }
- Degradé sombre:draw_palette sombre
- Dégradé clair:draw_palette claire
- -
- Copier
- .code RGB:clipboard $rgb($getdot(@palette,2,340))
- .code HTML:clipboard $html($rgb($getdot(@palette,2,340)))
- }
-
- alias -l draw_infos {
- drawrect -rf @palette $getdot(@palette,$1,$2) 1 1 320 120 60
- drawrect -f @palette 0 1 140 315 200 60
- drawtext -b @palette 1 0 arial 13 140 330 RGB: $rgb($getdot(@palette,$1,$2))
- drawtext -b @palette 1 0 arial 13 140 350 HTML: $html($rgb($getdot(@palette,$1,$2)))
- }
- alias -l html { tokenize 44 $1 | return $+($chr(35),$base($1,10,16,2),$base($2,10,16,2),$base($3,10,16,2)) }
- alias -l fleche {
- drawrect -f @palette 0 1 330 1 10 320 360 1 10 320
- drawtext @palette 1 wingdings 10 330 $1 è | drawtext @palette 1 wingdings 10 359 $1 ç
- }
- alias -l wait {
- if (!$window(@wait)) { window -pod @wait -1 -1 200 80 | drawtext @wait 1 arial 14 30 15 DESSIN EN COURS... }
- else close -@ @wait
- }
- alias -l l return $iif($1 < 0,0,$iif($1 > 255,255,$1))
-
- on *:close:@palette:window -c @pbuf
alias palette {
window -dopCk0 @palette -1 -1 390 420
window -hp @pbuf
if (!$exists($scriptdirpalette_claire.bmp)) draw_palette claire
else { drawpic @palette 0 0 $+(",$scriptdirpalette_claire.bmp,") | drawcopy @palette 0 0 310 310 @pbuf 0 0 }
lumdeg 255 | draw_infos 1 1 | fleche 1
}
alias draw_palette {
var %f $+(",$scriptdirpalette,_,$1,.bmp,")
if ($exists(%f)) drawpic @palette 0 0 %f
else {
var %x 1 , %r 255 , %g 0 , %b 0 , %ticks $ticks
wait
while (%x < 310) {
var %y 1
while (%y < 310) {
if ($1 == claire) drawdot -rn @palette $rgb($calc($l(%r) + (((255 - %r) / 310) * %y)),$calc($l(%g) + (((255 - %g) / 310) * %y)),$calc($l(%b) + (((255 - %b) / 310) * %y))) 1 %x %y
else {
var %c $calc(%y * 255 / 310)
drawdot -rn @palette $rgb($l($calc(%r - %c)),$l($calc(%g - %c)),$l($calc(%b - %c))) 1 %x %y
}
inc %y
}
if (%r >= 255) && (!%b) && (%g < 255) inc %g 5
elseif (%g <= 255) && (%r > 0) && (!%b) dec %r 5
elseif (%r <= 0) && (%g >= 255) && (%b < 256) inc %b 5
elseif (%b >= 255) && (%r <= 0) && (%g > 0) dec %g 5
elseif (%g <= 0) && (%b > 254) && (%r < 255) inc %r 5
elseif (%r >= 255) && (%g <= 0) dec %b 5
inc %x
}
drawdot @palette
drawsave @palette %f
wait
echo -a Palette $1 dessinée en $duration($calc(($ticks - %ticks) / 1000)))
}
lumdeg 255 | draw_infos 1 1 | fleche 1
drawcopy @palette 0 0 310 310 @pbuf 0 0
}
alias -l lumdeg {
tokenize 44 $rgb($1)
var %i 1 | while (%i < 310) {
if ($getdot(@palette,1,309) > 50000) drawrect -frn @palette $rgb($l($calc($1 - (($1 / 310) * %i))),$l($calc($2 - (($2 / 310) * %i))),$l($calc($3 - (($3 / 310) * %i)))) 1 340 %i 20 1
else drawrect -frn @palette $rgb($l($calc($1 + (((255 - $1) / 310) * %i))),$l($calc($2 + (((255 - $2) / 310) * %i))),$l($calc($3 + (((255 - $3) / 310) * %i)))) 1 340 %i 20 1
inc %i
}
drawdot @palette
}
menu @palette {
sclick {
if ($inrect($mouse.x,$mouse.y,1,1,309,309)) {
drawcopy @pbuf 0 0 310 310 @palette 0 0 310 310
draw_infos $mouse.x $mouse.y | fleche 1
lumdeg $getdot(@palette,$mouse.x,$mouse.y)
drawrect -e @palette $iif($getdot(@palette,1,309) > 50000,1,0) 2 $calc($mouse.x - 6) $calc($mouse.y - 6) 11 11
}
elseif ($inrect($mouse.x,$mouse.y,340,1,20,309)) { fleche $mouse.y | draw_infos $mouse.x $mouse.y }
}
Degradé sombre:draw_palette sombre
Dégradé clair:draw_palette claire
-
Copier
.code RGB:clipboard $rgb($getdot(@palette,2,340))
.code HTML:clipboard $html($rgb($getdot(@palette,2,340)))
}
alias -l draw_infos {
drawrect -rf @palette $getdot(@palette,$1,$2) 1 1 320 120 60
drawrect -f @palette 0 1 140 315 200 60
drawtext -b @palette 1 0 arial 13 140 330 RGB: $rgb($getdot(@palette,$1,$2))
drawtext -b @palette 1 0 arial 13 140 350 HTML: $html($rgb($getdot(@palette,$1,$2)))
}
alias -l html { tokenize 44 $1 | return $+($chr(35),$base($1,10,16,2),$base($2,10,16,2),$base($3,10,16,2)) }
alias -l fleche {
drawrect -f @palette 0 1 330 1 10 320 360 1 10 320
drawtext @palette 1 wingdings 10 330 $1 è | drawtext @palette 1 wingdings 10 359 $1 ç
}
alias -l wait {
if (!$window(@wait)) { window -pod @wait -1 -1 200 80 | drawtext @wait 1 arial 14 30 15 DESSIN EN COURS... }
else close -@ @wait
}
alias -l l return $iif($1 < 0,0,$iif($1 > 255,255,$1))
on *:close:@palette:window -c @pbuf
Conclusion
Historique
- 02 décembre 2005 22:18:35 :
- optimisation
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Couleur en rgb [ par kishkaya ]
Est il possible de mettre une couleur definie par des valeur rgb genre $rgb(1,2,5) plutot que 12,0 a un texte ??_Marikou
$rgb [ par Fat4L ]
Bonjour/bonsoir, j'ai un petit soucis, je m'explique: Dans mon script personnel je voulais facilité le changement de couleur ("thème") de mon script
Couleur RGB [ par scandalz ]
Bonjour, je cherche exactement la combine rgb de la couleur violet foncé celle qui correspond à ctrl + K 6, Je voudrai savoir le rgb exact.sccandalz
Code couleur [ par l1solent ]
on ^1:text:**:#:{ haltdef | var %temp.param = $nick $+ , $+ $chan | if ( $+ $color(background) isin $1-) { echo $chan < $+ $+ $nick(#,$nick).co
changer la couleur d'une boite de dialog [ par J4Gu4R ]
voila j'essaye depuis plusieurs jours de trouver comment changer la couleur d'une boite de dialog et ce qui est écrit dedansen gro voila mon dialog :t
detection [ par DaFtOu ]
bonjour je voudrais faire un remote pour detecter quand quelqu'un ecrit avec la meme couleur que la couleur de fond de l'ecritureexemple:[18:26] <J
couleurs [ par yo252yo ]
Bon j'ai cherché, et même si ca parait con pour vous je suis débutant.Je personalise WQuizz et j'aimerai savoir comment on fait pour mettre de la cou
Aide pour un bot irc [ par Ziploc ]
J'ai un problème , j'aimerais que mon bot réagisse sur un message en couleur mais j'ensuis incapable , j'ai sa ~~>On *:text:*test*:#:{ /msg $chan s
DEMANDE [ par Soprano71 ]
bonjour quelqu'n aurai t'il un addons pour mettre le pseudo que je hl d'une couleur differente que la couleur de mon ecriture ??
Dialog [ par Doudis ]
Bonjour j'ai rencontrer un petit probleme avec un dialog j'ai mit en couleur le texte du dialog avec mdx mais je voudrais savoir comment le faire pour
|
Téléchargements
Logiciels à télécharger sur le même thème :
|