Thema: Delphi pmXOR-Grafikproblem

Einzelnen Beitrag anzeigen

Mysterio08

Registriert seit: 11. Jan 2009
142 Beiträge
 
#1

pmXOR-Grafikproblem

  Alt 5. Nov 2009, 16:40
Guten Tag Programmierer,
beim Programmieren von Grafiken ist gerade ein Problem mit dem Pen.Mode := pmXOR aufgetaucht. Zuerst erstelle ich eine Ellipse auf dem Image:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  with Image1.Canvas do
  begin
    Brush.Color := clRed;
    Ellipse(200, 50, 400, 200)
  end
end;
Nun möchte ich langsam einen Kreis über das Image wandern lassen, von links nach rechts. Zuerst lege ich Anfangskoordinaten fest:
Delphi-Quellcode:
x1: SmallInt = 10;
y1: SmallInt = 100;
x2: SmallInt = 60;
y2: SmallInt = 150;
Mit einem Timer bewege ich den Kreis nun über die Fläche, was auch soweit funktioniert. Der Kreis "zerstört" die Ellipse auch nicht, sondern der Hintergrund des Kreises wird, wie gewünscht, schwarz. Das einzige Problem ist die Anfangsdarstellung des Kreises, es sieht aus, als ob ein Kreis aus einen anderen Kreis schlüpft, aber hier der Code:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Image1.Canvas.Pen.Mode := pmXOR;
  Image1.Canvas.Ellipse(x1, y1, x2, y2);
  Inc(x1, 5);
  Inc(x2, 5);
  Image1.Canvas.Ellipse(x1, y1, x2, y2)
end;
Hier auch nochmal ein Bild meines Problem: Bild
Wie kann ich das umgehen?
mfg.
  Mit Zitat antworten Zitat