![]() |
Bitmaps intern als Arrays verwalten
Hallo,
ich schreibe mir gerade ein Programm zum Zeichnen. Als Zeichenfläche verwende ich eine PaintBox. Da ich mit verschiedenen Ebenen arbeiten möchte, die ich später im OnPaint-Ereignis in die PaintBox laden möchte, arbeite ich mit Bitmaps. Jedoch ist das Zeichnen auf Bitmaps ziemlich langsam.. deshalb habe ich mir überlegt die Ebenen(Bitmaps) intern als dynamische Arrays zu verwalten. Welche Art von Array würde sich da anbieten? Wie bekomme ich das Array später wieder ein eine Bitmap "konvertiert"? Beste Grüße |
Re: Bitmaps intern als Arrays verwalten
Ein Bitmap ist doch selbst eine Art Array...
Deshalb kann man ja auch so schön Scanline machen. Ich verstehe nicht, was du mit einem Array sparen willst? Du solltest eher wohl Scanline öfter im Code verwenden. |
Re: Bitmaps intern als Arrays verwalten
Ja, Scanline verwende ich bisher auch.
Aber ich möchte auch einzelne Pixel einfärben können z.B. beim Zeichnen mit einem Stift. Und da ich in meiner internen Datenstruktur der Geschwindigkeit halber ohne Canvas auskommen wollte würden sich dynamische Arrays anbieten. Da man dort auch die einzelnen Pixel direkt setzen könnte. |
Re: Bitmaps intern als Arrays verwalten
Einzelne Pixel kann man auch via ScanLine setzen.
Jede Linie ist nur ein Array aus den Pixeln der entsprechenden Zeile. .Pixels ist dagegen wirklich verdamt langsam ... warum auch immer. |
Re: Bitmaps intern als Arrays verwalten
Zitat:
Zitat:
Zitat:
|
Re: Bitmaps intern als Arrays verwalten
Zitat:
Und bevor du anfängst Bitmaps in Arrays zu konvertieren, ein paar Pixel änderst und die ganze Suppe wieder zurück: Scanline. Und NUR das. Keine Arrays. Schneller als mit Scanline geht's nicht, da du direkt über einen Pointer in die "rohen" Bitmap-Daten greifst. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz