RGB wert auslesen. ergebnis falsch
Übersicht

![]() |
beanage.johannesBetreff: RGB wert auslesen. ergebnis falsch |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi, ich lese den RGB wert aus einem pixmap mit 4 funktionen die ich mir geschrieben habe:
Code: [AUSKLAPPEN] Function getPixmapRed:Int(pixmap:TPixmap,x:Int,y:Int) Local position:Int = ReadPixel(pixmap,x,y) Return (position Shl 12) Shr 24 EndFunction Function getPixmapGreen:Int(pixmap:TPixmap,x:Int,y:Int) Local position:Int = ReadPixel(pixmap,x,y) Return (position Shl 16) Shr 24 EndFunction Function getPixmapBlue:Int(pixmap:TPixmap,x:Int,y:Int) Local position:Int = ReadPixel(pixmap,x,y) Return (position Shl 24) Shr 24 EndFunction Function getPixmapAlpha:Int(pixmap:TPixmap,x:Int,y:Int) Local position:Int = ReadPixel(pixmap,x,y) Return (position Shl 8) Shr 24 EndFunction nur ist das ergebnis immer etwas daneben... bei einen rotton den ich im mal - programm male zeigt mein wert 240 stat 255 an...weis net warum. jemand ne idee? Danke |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
kann es sein dass Du 16-Bit Farbe eingestellt hast? Wäre eine Möglichkeit warum die Farbe falsch ausgelesen wird.
Alternativ: Speicherst Du die Bilder als jpeg? Das ist ien verlustbehaftetes Format und es mag sein dass da Farben verfälscht werden beim Speichern. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
beanage.johannes |
![]() Antworten mit Zitat ![]() |
---|---|---|
nein speichere sie als png.
kann das am mac liegen? nee oder? danke |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ach, ich seh grad du shiftest 12 bits, das ist natürlich Käse.
Die Farbinfos nehmen jeweils 8 Bits ein, also musst du zurückgeben (bei ARGB): A: wert shr 24 r: (wert shr 16) & $ff g:(wert shr 8) & $ff b:wert &$ff |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
beanage.johannes |
![]() Antworten mit Zitat ![]() |
---|---|---|
ups^^habe auch gerade gemerkt^^ danke ![]() |
||
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Die Reihenfolge der Farbwerte ist aber auch vom Pixmap-Format abhängig. | ||
![]() |
beanage.johannes |
![]() Antworten mit Zitat ![]() |
---|---|---|
BigEndian und LittleEndian.. wirum ist eigentlucBig und wierum Little endian? | ||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Pixmap-Format ist was anderes als little und big endian.
Es gibt verschiedene Pixmapformate, das übliche ist A8R8G8B8, also je 8 bit pro Kanal, und alpha höchstwertig. Es gibt aber auch RGBA und nicht 32-Bit-Pixmaps. Siehe dazu in deiner BMax-Doku. Little und Big Endian: http://de.wikipedia.org/wiki/Big_endian HF. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group