Zitat:
Du verstehst mich scheinbar nicht.
Kann sein..
In dem vorherigen Beispiel mache ich es auch nicht anders (falsch oder richtig das wäre dann die frage)
bin mir jetzt nicht so sicher weil hier mit Scanline die
RGB Farben übergeben werden. Also eine ganz andere Sache.
Hier ist nochmal mein Code.. Variablen anders vergeben zum besseren Verständnis.
Ok zeichne Horizontal..
Delphi-Quellcode:
x: PByteArray;
Value: Byte;
....
Delphi-Quellcode:
Value := round(Sqrt(Sqrt(Buffer[i + 1]) * 3 * BuffBMP.Width));
if bScanLines then
begin
QueryPerformanceCounter(timeDraw0);
k := BuffBMP.Height - i - 1;
x := BuffBMP.ScanLine[k];
Move(x[OffsetX], x[0], (BuffBMP.Width - OffsetX));
x[BuffBMP.Width - OffsetX] := Value;
QueryPerformanceCounter(timeDraw1);
timeDraw := timeDraw + (timeDraw1-timeDraw0);
end
Das Problem das ich habe ist das mein Bitmap dann umgekehrt nicht verdreht ist.
Also das was eigentlich vorne sein soll ist hinten..
Da nutzt auch ein drehen um 90 grad nichts.
Deine Vermutung das ich nicht vertikal zeichne mag das Problem mit meiner Performance sein.
Dem will ich nicht widersprechen.
EDIT:
Ok denke verstehe was du meinst.
Ich soll das leere Bitmap vorher drehen dann mit ScanLine Horizontal zeichen
und anschließend wieder zurück drehen.
Das kann ich aber nicht machen weil beim Fortschritt direkt gezeichnet wird. (sichtbar)
gruss