Accueil > > > SELECTEUR DE COULEURS
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
/palette pour l'utiliser
Historique
- 02 décembre 2005 22:18:35 :
- optimisation
Sources du même auteur
Sources de la même categorie
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
|
Derniers Blogs
[WF4] PASSAGE D'ARGUMENTS LITERAL, VISUALBASICVALUE OU LAMBDAVALUE?[WF4] PASSAGE D'ARGUMENTS LITERAL, VISUALBASICVALUE OU LAMBDAVALUE? par JeremyJeanson
Avec la sortie de la RC de Visual Studio 2010, Microsoft a mis un peu les points sur leS i en ce qui concernait le passage d'arguments. Mais nous somme un certain nombre à avoir pris ce changement comme un coup dur. Pour résumer la situation : à la sortie...
Cliquez pour lire la suite de l'article par JeremyJeanson [RIA SERVICES] INCLUDE ET DOMAINDATASOURCE[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE par Audrey
Dans un de mes articles précédents , j'avais parlé des DomainDataSource avec RIA Services dans le cas d'une interface Maître - Détail. Dans le même principe, je vais parler d'une autre manière de mettre en forme ce cas d'interface avec RIA Services. Et po...
Cliquez pour lire la suite de l'article par Audrey ZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATIONZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATION par ROMELARD Fabrice
Une des nouveautés de la version V 3.0 était l'apparition de l'onglet Social qui ne fonctionnait que si le MarketPlace était activé sur son poste. Cela limitait donc son intérêt, car hors du cadre commercial USA-CANADA, peu de monde trouva...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
éditions PEARSON
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abor...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|