Anregungen und Vorschläge zu PROFAN
Hier können Vorschläge für künftige PROFAN-Versionen, Ausgestaltung der PROFAN-Seiten und -Foren, etc. gemacht werden.
  Suchen
 Zurück zur Übersicht
 AutorThema: Fehler bei @getXvalue ?
Uwe Grün
Datum:02.04.02 20:31 Antwortenals Email verschicken (ugruen@web.de) 


Hallo,

ich bin zwar noch in der "Testphase" von Profan 7, aber mir ist ein Fehler (in der Testversion) aufgefallen.
Meiner Meinung nach sind die Funktionen
"@GetGValue" und "@GetBValue" in ihrer Funktion vertauscht.

Ich wollte nur mal darauf hinweisen und fragen ob das Problem schon bekannt ist.

MfG UG


Heinz Kaiser
Datum:20.08.02 12:13 Antwortenals Email verschicken (hkaiser0711@gmx.de) 


Dasselbe ist mir gestern bei der getpixel-Funktion aufgefallen: dort ist der Blauanteil und der Rotanteil vertauscht. getpixel eines knallroten Pixels liefert den Wert 255, also den Wert für blau ;-)


René Bühling
Datum:21.08.02 22:43 Antwortenals Email verschicken (rene.buehling@gmx.de) 


Hallo!

Folgender Code funktioniert bei mir einwandfrei. (WinXP Prof, Profan 7.5)

windowtitle "RGBFarbe = getpixel-Farbe"
settruecolor 1
cls @rgb(255,0,0) 'rot
print @rgb(255,0,0)," = ",@getpixel(100,100)
print "rot  = ",@getrvalue(@getpixel(100,100))
print "grün = ",@getgvalue(@getpixel(100,100))
print "blau = ",@getbvalue(@getpixel(100,100))
waitinput

cls @rgb(0,255,0) 'grün
print @rgb(0,255,0)," = ",@getpixel(100,100)
print "rot  = ",@getrvalue(@getpixel(100,100))
print "grün = ",@getgvalue(@getpixel(100,100))
print "blau = ",@getbvalue(@getpixel(100,100))
waitinput

cls @rgb(0,0,255) 'blau
print @rgb(0,0,255)," = ",@getpixel(100,100)
print "rot  = ",@getrvalue(@getpixel(100,100))
print "grün = ",@getgvalue(@getpixel(100,100))
print "blau = ",@getbvalue(@getpixel(100,100))
waitinput


MfG
René


Heinz Kaiser
Datum:21.08.02 23:39 Antwortenals Email verschicken (hkaiser0711@gmx.de) 


Oh!!! Es funktionier ja doch :-)

Ähm, ich hatte die RGB-Werte aus dem getpixel-Wert "von Hand" berechnet, und dabei bin ich davon ausgegangen, daß der rot-Wert das höchstwertige Byte ist. Wenn der blau-Wert das höchstwertige Byte ist, stimmt es natürlich!


Roland G. Hülsmann
Datum: 22.08.02 09:06 Antwortenals Email verschicken (rgh-soft@t-online.de) 


Zur "händischen" Berechnung von RGB-Werten:

Die Formel lautet (im True-Color-Modus):

ROT + 256*GRÜN + 256*256*BLAU

Dabei kann jede Farbe eine Intensität zwischen 0 und 255 haben!

Im alten 32768-Farb-Modus (15 Bit) lautet die Formel:

ROT + 32*GRÜN + 32*32*BLAU

Und hier kann jede Farbe einen Wert zwischen 0 und 15 haben.

Als ich die erste PROFAN-Version (1.4) auf den Markt brachte, waren Grafikkarten üblich, die bei 800 * 600 ganze 16 Farben darstellen konnten und im VGA-Modus 640 * 480 höchstens auf 256 Farben kamen. Die Ausnahme bei den besseren Karten waren 16384 Farben. Luxuskarten hatten 1 MB Bildspeicher und da gingen auch 1024 * 768 Bildpunkte in 16384 Farben! Zudem kannte die erste PROFAN-Version keine Longints und daher wähnte ich mich mit 32768 Farben auf der sicheren Seite ...

Gruß
Roland



Sebastian Sprenger
Datum:21.08.02 23:46 Antwortenals Email verschicken (prof.chaos@netcologne.de) 


Hallo Uwe, (falls er nach über vier Monaten nochmal hierher kommt ;-))
das ist nur im 32768-Farben-Modus (SetTrueColor 0) so.
Die Werte in diesem Modus halte ich übrigens sowieso nicht für sehr genau...

Sebastian


 Zurück zur Übersicht
 

 Ein kostenloses WebMart Forum
WebMart Homepage Tools kostenlos
doteu.info: Don´t miss your .eu-Domain