Nämä löydät myös CB Repositorystä
Eli PixToRGB(pix, rgbkanava) palauttaa yhden rgb arvon kerrallaan pixel arvosta.
Ja sitten RGBToPix(r, g, b) muuttaa rgb värin pikseliarvoksi.
Code: Select all
//Esimerkki
Dim palette(3) As Integer
Dim names(3) As String
palette(0) = DS_RGBToPix(255, 255, 255) 'cbwhite
palette(1) = DS_RGBToPix(255, 0, 0) 'cbred
palette(2) = DS_RGBToPix(207, 185, 237) 'cblightpurple
palette(3) = DS_RGBToPix(123, 90, 0) 'cbblackskin
names(0) = "cbwhite"
names(1) = "cbred"
names(2) = "cblightpurple"
names(3) = "cbblackskin"
For i = 0 To 3
Color 0, 0,palette(i)
Print names(i) +"; "+ palette(i)
Next i
Print ""
Color cbwhite
For i = 0 To 3
Color DS_PixToRGB(palette(i), RED), DS_PixToRGB(palette(i), GREEN), DS_PixToRGB(palette(i), BLUE)
Print names(i)
For j = 1 To 3
Print " "+DS_PixToRGB(palette(i), j)
Next j
Next i
WaitKey
//Funktiot//
Function DS_PixToRGB(pixel, rgbchannel)
Return ((pixel Shl (rgbchannel*8)) Shr 24)
EndFunction
Function DS_RGBToPix(r, g, b)
Return b + r Shl 16 + g Shl 8
EndFunction
EDIT:
Niin ja kertokaa heti kaikki epäkohat, joita löydätte. Olen siihen nyt varautunutkin.. x)