Hi,
ich schreibe zurzeit an einem Programm mit dem ich einen Rot-Grün-3D Effekt erstelle.
Dafür zeichne auf dem Canvas nacheinander zwei Würfel aus unterschiedlichen Blickwinkeln. Nun möchte ich, nach dem Zeichnen des ersten Würfels aufs Canvas zugreifen und die
RGB Werte an einer bestimmten Position abgreifen, zB (120;200) und diese in einem Array speichern. Nach dem Zeichnen des zweiten Würfels das selbe Spiel:
RGB-Werte an der bestimmten Posi abgreifen und Speichern. Danach verrechne ich die
RGB Werte in einer Matritze miteinander und möchte den neuen
RGB Wert zeichnen.
So, zu meiner Frage:
a) wie greife ich die
RGB-Werte ab?
b) Wie "zeichne" ich den neuen
RGB-Wert?
Mit der Berechnung habe ich keine Probleme.
Code:
function GetPixel(Pos: TPoint): TColor;
var
DC: HDC;
Handle: HWND;
begin
Handle:=WindowFromPoint(Pos);
DC:=GetDC(
Handle);
result:=Windows.GetPixel(
DC, Pos.X, Pos.Y);
ReleaseDC(
Handle,
DC);
end;
Ich bin auf diese Funktion hier im Forum gestoßen, nur ist mir nicht ganz klar was ich in meine Procedure schreiben muss um diese Richtig nutzen zu können..