Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
dann probier es einfach selbst aus :
image1.Picture.Bitmap.Width := 200;
image1.Picture.Bitmap.Height := 200;
image1.Picture.Bitmap.Canvas.Pen.Color := clRed;
image1.Picture.Bitmap.Canvas.MoveTo(0, 0);
image1.Picture.Bitmap.Canvas.LineTo(100, 100);
image1.Picture.Bitmap.Canvas.Pen.Mode := pmXor;
for x:=1 to 100 do
for y := 1 to 100 do
...
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
um es verschwinden zu lassen, braucht man normalerweise ja nur ein zweites mal mit der selben farbe mit xor drübermalen
also erstes mal mit clBlack und Xor malen -> Grid ist da, zweites mal mit clBlack und Xor malen -> Grid ist weg, das wäre ja der sinn von den xor sachen beim malen.
@Robert: ich war auch der meinung, das es keinen einfluß hat, und auch wenns ms nicht dokumentiert hat, es hat...
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
sicher? - ich habs getestet und der pen.mode ist sehr wohl auch für das SetPixel zuständig
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
verwendet pixels überhaupt den PenMode? ... mal googeln
ok, verwendets
Aber mal eine andere Frage, was sollte den die Funktion genau machen?
du zeichnest einmal direkt schwarz drauf und einmal mit XOR ... ist irgendwie unlogisch für mich, entweder immer per schwarz, wenn das raster auf eine leere fläche gezeichnet wird, oder immer per XOR, wenn das raster über bestehende Grafik...
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
ja ist 0 ... ansonsten
FImageEnVect.Bitmap.Canvas.Pen.Mode := TPenMode(integer((not Show)) * (integer(pmNotXor) - integer(pmBlack)) + integer(pmBlack));
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
wäre sogar noch kürzer ;) (aber nicht wirklich gut lesbar ... )
FImageEnVect.Bitmap.Canvas.Pen.Mode := TPenMode(integer(not Show) * integer(pmNotXor));
Forum: Object-Pascal / Delphi-Language
by Gruber_Hans_12345,
10. Apr 2007
ist doch : if Show then
begin
FImageEnVect.Bitmap.Canvas.Pen.Mode := pmBlack;
end
else
begin
FImageEnVect.Bitmap.Canvas.Pen.Mode := pmNotXor;
end;
... oder hab ich da was falsch interpretiert ?