Forum: Programmieren allgemein
Delphi
by himitsu,
31. Mai 2015
Der Algo müsste praktisch einen Mittelpunkt berechnen und von diesem Punkt aus gesehn alle Punkte eher aufrunden, als abzurunden. (mit Bankers-Round würde das ganze noch unvorhersehbarer und sieht gleich anders aus, nur weil man das Bild um 1-2 Pixel verschiebt)
Forum: Programmieren allgemein
Delphi
by himitsu,
31. Mai 2015
Nichtmal "austricksen" lässt sich die Zeichenroutine. :stupid:
Canvas.MoveTo(A.X, A.Y);
Canvas.LineTo(A.X, A.Y);
Canvas.LineTo(A.X, A.Y);
Canvas.MoveTo(A.X, A.Y);
Canvas.LineTo(A.X, A.Y);
Da bleibt dann wohl nur selber malen. (Pixel für Pixel)
Forum: Programmieren allgemein
Delphi
by himitsu,
30. Mai 2015
Hallo, dein Dreieck ist vollkommen korrekt, auch wenn es nicht so aussieht.
Wenn man sich nur mal die Endpunkte noch mit einzeichnet, dann fällt es bestimmt besser auf, daß es wirklich stimmt.
procedure TForm5.FormPaint(Sender: TObject);
var
X, Y, S, I, J, K: Integer;
A: array of TPoint;
begin
X := 20;
Y := 20;
Forum: Programmieren allgemein
Delphi
by himitsu,
30. Mai 2015
Bei LineTo fehlt ja auch das letzte Pixel, aber ich hätte gedacht, daß somit nur beim letzen Punkt einer PolyLine das selbe Problem auftritt und es sich bei einem Polygon aufhebt, da dort der letzte Punkt eh dort ist, wo sich schon der erste Punkt hingemalt hatte. :gruebel: