//
Komplementärfarbe (lat. complementum: Ergänzung) ist ein Begriff aus der
// Farbenlehre. Komplementärfarben mischen sich bei der additiven
// Farbmischung
zu Weiß und bei der subtraktiven Farbmischung zu
Schwarz.

// Getestet mit D4 unter XP
// komplementäre Farbe ermitteln 
 
function ComplementaryColor(const c: TColor): TColor; 
begin 
  Result := clWhite xor ColorToRGB(c); 
end; 
 
// auf komplementäre Farbe prüfen 
 
function isComplementaryColor(c1, c2: TColor): boolean; 
begin 
  c1 := ColorToRGB(c1); 
  c2 := ColorToRGB(c2); 
  Result := (c1 and c2 = clBlack) 
    and (c1 or c2 = clWhite); 
end; 
 
 
 
// Beispielaufrufe 
 
procedure TForm1.Button3Click(Sender: TObject); 
begin 
  Panel1.color := clRed; 
  Panel2.color := ComplementaryColor(Panel1.color); 
end; 
 
procedure TForm1.Button4Click(Sender: TObject); 
begin 
  if isComplementaryColor(clBlue, clYellow) 
    then showmessage('komplementär') 
  else showmessage('nicht'); 
end;



 

Zugriffe seit 6.9.2001 auf Delphi-Ecke