Mélangeur Alpha
Publié : lun. 22/févr./2010 19:23
bonjour
j'avais commencer une boite de couleurs avec l'alpha, j'aurais bien voulu la finir..
pour la mettre dans un de mes codes.
mais je rencontre un problème avec la fonction alpha(couleur), Elle me renvoie rien?
Cordialement
voila mon code
j'avais commencer une boite de couleurs avec l'alpha, j'aurais bien voulu la finir..
pour la mettre dans un de mes codes.
mais je rencontre un problème avec la fonction alpha(couleur), Elle me renvoie rien?
Cordialement
voila mon code
Code : Tout sélectionner
;#############################################
;### Kernadec le 02/2010 PB441 ##
;### Mélangeur RGBA ##
;#############################################
Enumeration
#fenetre
#TrackBarGadget1:#TrackBarGadget2:#TrackBarGadget3:#TrackBarGadget4
#StringGadget1:#StringGadget2:#StringGadget3:#StringGadget4:#StringGadget5
#StringGadget6:#StringGadget7:#StringGadget8:#StringGadget9
#OptionGadget1:#OptionGadget2:#OptionGadget3:#OptionGadget4:#OptionGadget5
#Image1:#Image2:#Image3:#Image4:#Image5:#Image6:#Image7:#Image8::#Image9
EndEnumeration
If OpenWindow(#fenetre,0,0,306,454,"Mélangeur RGBA",#PB_Window_SystemMenu | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget)
TrackBarGadget(#TrackBarGadget1,4,3,265,20,0,255)
StringGadget(#StringGadget1,270,1,24,20,"0",#PB_String_ReadOnly)
TrackBarGadget(#TrackBarGadget2,4,25,265,20,0,255)
StringGadget(#StringGadget2,270,26,24,20,"0",#PB_String_ReadOnly)
TrackBarGadget(#TrackBarGadget3,4,47,265,20,0,255)
StringGadget(#StringGadget3,270,48,24,20,"0",#PB_String_ReadOnly)
TrackBarGadget(#TrackBarGadget4,4,69,265,20,0,255)
StringGadget(#StringGadget4,270,70,24,20,"0",#PB_String_ReadOnly)
StringGadget(#StringGadget5,2,120,96,20,"Couleur: ",#PB_String_ReadOnly)
StringGadget(#StringGadget6,100,120,49,20,"R= ",#PB_String_ReadOnly)
StringGadget(#StringGadget7,151,120,49,20,"V= ",#PB_String_ReadOnly)
StringGadget(#StringGadget8,202,120,49,20,"B= ",#PB_String_ReadOnly)
StringGadget(#StringGadget9,252,120,49,20,"A= ",#PB_String_ReadOnly)
OptionGadget(#OptionGadget1,28,95,60,20,"ROUGE")
OptionGadget(#OptionGadget2,104,95,60,20,"VERT")
OptionGadget(#OptionGadget3,178,95,60,20,"BLEU")
OptionGadget(#OptionGadget4,252,95,60,20,"FOND")
CreateImage(#Image1,18,18,32)
CreateImage(#Image2,18,18,32)
CreateImage(#Image3,18,18,32)
CreateImage(#Image4,18,18,32)
CreateImage(#Image5,243,5)
CreateImage(#Image6,243,5)
CreateImage(#Image7,243,5)
CreateImage(#Image8,243,5)
CreateImage(#Image9,306,453,32)
EndIf
;couleur a l'ouverture de la boite
StartDrawing(ImageOutput(#Image1))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Rouge1=255:Vert1=0:Bleu1=0:Alpha1=255
Box(0,0,18,18,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
StopDrawing()
StartDrawing(ImageOutput(#Image2))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Rouge2=0:Vert2=255:Bleu2=0:Alpha2=255
Box(0,0,18,18,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
StopDrawing()
StartDrawing(ImageOutput(#Image3))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Rouge3=0:Vert3=0:Bleu3=255:Alpha3=255
Box(0,0,18,18,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
StopDrawing()
StartDrawing(ImageOutput(#Image4))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Rouge4=0:Vert4=0:Bleu4=0:Alpha4=255
Box(0,0,18,18,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
StopDrawing()
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Rouge4=0:Vert4=0:Bleu4=0:Alpha4=0
Box(0,0,306,306,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Rouge4=255:Vert4=255:Bleu4=255:Alpha4=255
Circle(153,153,150,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Circle(153,98,95,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
Circle(105,180,95,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
Circle(201,181,95,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
StopDrawing()
; couleur sous les curseurs
StartDrawing(ImageOutput(#Image5))
Rouge5=255:Vert5=0:Bleu5=0
Box(0,0,243,5,RGB(Rouge5,Vert5,Bleu5))
StopDrawing()
StartDrawing(ImageOutput(#Image6))
Rouge6=0:Vert6=255:Bleu6=0
Box(0,0,243,5,RGB(Rouge6,Vert6,Bleu6))
StopDrawing()
StartDrawing(ImageOutput(#Image7))
Rouge7=0:Vert7=0:Bleu7=255
Box(0,0,243,5,RGB(Rouge7,Vert7,Bleu7))
StopDrawing()
StartDrawing(ImageOutput(#Image8))
Rouge8 =255:Vert8=255:Bleu8=255
Box(0,0,243,5,RGB(Rouge8,Vert8,Bleu8))
StopDrawing()
; couleurs par defaut
SetGadgetState(#OptionGadget4,1)
SetGadgetState(#TrackBarGadget1,Rouge4):SetGadgetState(#TrackBarGadget2,vert4):SetGadgetState(#TrackBarGadget3,bleu4):SetGadgetState(#TrackBarGadget4,Alpha4)
SetGadgetText(#StringGadget1,Str(Rouge4)):SetGadgetText(#StringGadget2,Str(Vert4)):SetGadgetText(#StringGadget3,Str(Bleu4)):SetGadgetText(#StringGadget4,Str(Alpha4))
Repeat
Event=WaitWindowEvent()
x=WindowMouseX(#fenetre)
y=WindowMouseY(#fenetre)
; couleur des boxs
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image1),6,95)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image2),85,95)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image3),156,95)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image4),230,95)
StopDrawing()
; couleur sous les curseurs
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image5),15,18)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image6),15,40)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image7),15,62)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawImage(ImageID(#Image8),15,84)
StopDrawing()
StartDrawing(WindowOutput(#fenetre))
DrawingMode(#PB_2DDrawing_AlphaBlend)
DrawImage(ImageID(#Image9),0,150)
StopDrawing()
If Event=#PB_Event_Gadget
Select EventMenu()
Case #OptionGadget1
SetGadgetState(#TrackBarGadget1,Rouge1):SetGadgetState(#TrackBarGadget2,vert1):SetGadgetState(#TrackBarGadget3,bleu1):SetGadgetState(#TrackBarGadget4,Alpha1)
SetGadgetText(#StringGadget1,Str(Rouge1)):SetGadgetText(#StringGadget2,Str(Vert1)):SetGadgetText(#StringGadget3,Str(Bleu1)):SetGadgetText(#StringGadget4,Str(Alpha1))
Case #OptionGadget2
SetGadgetState(#TrackBarGadget1,Rouge2):SetGadgetState(#TrackBarGadget2,vert2):SetGadgetState(#TrackBarGadget3,bleu2):SetGadgetState(#TrackBarGadget4,Alpha2)
SetGadgetText(#StringGadget1,Str(Rouge2)):SetGadgetText(#StringGadget2,Str(Vert2)):SetGadgetText(#StringGadget3,Str(Bleu2)):SetGadgetText(#StringGadget4,Str(Alpha2))
Case #OptionGadget3
SetGadgetState(#TrackBarGadget1,Rouge3):SetGadgetState(#TrackBarGadget2,vert3):SetGadgetState(#TrackBarGadget3,bleu3):SetGadgetState(#TrackBarGadget4,Alpha3)
SetGadgetText(#StringGadget1,Str(Rouge3)):SetGadgetText(#StringGadget2,Str(Vert3)):SetGadgetText(#StringGadget3,Str(Bleu3)):SetGadgetText(#StringGadget4,Str(Alpha3))
Case #OptionGadget4
SetGadgetState(#TrackBarGadget1,Rouge4):SetGadgetState(#TrackBarGadget2,vert4):SetGadgetState(#TrackBarGadget3,bleu4):SetGadgetState(#TrackBarGadget4,Alpha4)
SetGadgetText(#StringGadget1,Str(Rouge4)):SetGadgetText(#StringGadget2,Str(vert4)):SetGadgetText(#StringGadget3,Str(bleu4)):SetGadgetText(#StringGadget4,Str(Alpha4))
Case #TrackBarGadget1
Rouge = GetGadgetState(#TrackBarGadget1)
SetGadgetText(#StringGadget1,Str(Rouge))
If GetGadgetState(#OptionGadget1)=1
Rouge1=Rouge
EndIf
If GetGadgetState(#OptionGadget2)=1
Rouge2=Rouge
EndIf
If GetGadgetState(#OptionGadget3)=1
Rouge3=Rouge
EndIf
If GetGadgetState(#OptionGadget4)=1
Rouge4=Rouge
EndIf
Case #TrackBarGadget2
Vert = GetGadgetState(#TrackBarGadget2)
SetGadgetText(#StringGadget2,Str(Vert))
If GetGadgetState(#OptionGadget1)=1
vert1=vert
EndIf
If GetGadgetState(#OptionGadget2)=1
vert2=vert
EndIf
If GetGadgetState(#OptionGadget3)=1
vert3=vert
EndIf
If GetGadgetState(#OptionGadget4)=1
vert4=vert
EndIf
Case #TrackBarGadget3
Bleu = GetGadgetState(#TrackBarGadget3)
SetGadgetText(#StringGadget3,Str(Bleu))
If GetGadgetState(#OptionGadget1)=1
bleu1=bleu
EndIf
If GetGadgetState(#OptionGadget2)=1
bleu2=bleu
EndIf
If GetGadgetState(#OptionGadget3)=1
bleu3=bleu
EndIf
If GetGadgetState(#OptionGadget4)=1
bleu4=bleu
EndIf
Case #TrackBarGadget4
Alpha = GetGadgetState(#TrackBarGadget4)
SetGadgetText(#StringGadget4,Str(Alpha))
If GetGadgetState(#OptionGadget1)=1
Alpha1=Alpha
EndIf
If GetGadgetState(#OptionGadget2)=1
Alpha2=Alpha
EndIf
If GetGadgetState(#OptionGadget3)=1
Alpha3=Alpha
EndIf
If GetGadgetState(#OptionGadget4)=1
Alpha4=Alpha
EndIf
EndSelect
If GetGadgetState(#OptionGadget1)=1
StartDrawing(ImageOutput(#Image1))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Box(0,0,60,20,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
StopDrawing()
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Circle(153,153,150,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Circle(201,181,95,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
Circle(105,180,95,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
Circle(153,98,95,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
StopDrawing()
EndIf
If GetGadgetState(#OptionGadget2)=1
StartDrawing(ImageOutput(#Image2))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Box(0,0,60,20,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
StopDrawing()
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Circle(153,153,150,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Circle(201,181,95,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
Circle(153,98,95,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
Circle(105,180,95,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
StopDrawing()
EndIf
If GetGadgetState(#OptionGadget3)=1
StartDrawing(ImageOutput(#Image3))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Box(0,0,60,20,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
StopDrawing()
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Circle(153,153,150,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Circle(153,98,95,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
Circle(105,180,95,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
Circle(201,181,95,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
StopDrawing()
EndIf
If GetGadgetState(#OptionGadget4)=1
StartDrawing(ImageOutput(#Image4))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Box(0,0,60,20,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
StopDrawing()
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
Circle(153,153,150,RGBA(Rouge4,Vert4,Bleu4,Alpha4))
Circle(201,181,95,RGBA(Rouge3,Vert3,Bleu3,Alpha3))
Circle(105,180,95,RGBA(Rouge2,Vert2,Bleu2,Alpha2))
Circle(153,98,95,RGBA(Rouge1,Vert1,Bleu1,Alpha1))
StopDrawing()
EndIf
EndIf
If GetAsyncKeyState_(#VK_LBUTTON)
StartDrawing(ImageOutput(#Image9))
DrawingMode(#PB_2DDrawing_AlphaBlend)
If x=>0 And y=>150:Couleur.l=Point(x,y-150):EndIf
StopDrawing()
SetGadgetText(#StringGadget5,"Couleur: "+Str(Couleur))
SetGadgetText(#StringGadget6,"R="+Str(Red(Couleur)))
SetGadgetText(#StringGadget7,"G="+Str(Green(Couleur)))
SetGadgetText(#StringGadget8,"B="+Str(Blue(Couleur)))
SetGadgetText(#StringGadget9,"A="+Str(Alpha(Couleur)))
EndIf
Until Event=#PB_Event_CloseWindow