Funktion periaate. Ensin luodaan 100x1pix kuva. Sitten otetaan selville pisteenkoordinaateista (x,y), että minkä väristä sen alla on. Sitten otetaan selville piirretäävän kuvapisteen väri. Siitä piirretään kuvaan väriliuku. Sitten siitä piirretään drawimagebox:illa koordinaateihin (x,y) 1pix kuvan sisältä. (väliltä 0 - 100)
Parhaani yritin, ja toivottavasti joku olisi tyytyväinen..
Code: Select all
ab = 50
palette = LoadImage("Media\palette.bmp")
ClsColor 0,100,0
Repeat
DrawImage palette,0,0,0,OFF
If MouseX()<ImageWidth(palette) And MouseY()<ImageHeight(palette)
PickImageColor palette,MouseX(),MouseY()
EndIf
ab = ab + UpKey() - DownKey()
For x = 0 To 5
For y = 0 To 5
DrawABDot(200+x,150+y,ab)
Next y
Next x
Color 255,255,255
Text 50,50,FPS()
DrawScreen
Forever
Function DrawABDot(x,y,ab=50)
img = MakeImage(100,1)
r = getRGB(RED)
g = getRGB(GREEN)
b = getRGB(BLUE)
PickColor x,y
r2 = getRGB(RED)
g2 = getRGB(GREEN)
b2 = getRGB(BLUE)
DrawToImage img
For i=0 To 100
Color r2 *(100-i)/100+r*i/100,g2*(100-i)/100+g*i/100,b2*(100-i)/100+b*i/100
Dot 0+i,0
Next i
DrawToScreen
DrawImageBox img,x,y,ab,0,1,1
DeleteImage img
Return 0
EndFunction
EDIT:
Kommenttia?