ich habe eine genrelle Frage.
Die 2D-Zeichenoperationen beziehen sich ja immer auf einen bestimmten Zeichenkanal der mit StartDrawing(OutputID(...)) gesetzt wird.
Wenn ich den Zeichenkanal auf ein Image setze, dann beziehen sich sowohl die schreibenden Zeichenoperationen (Plot), als auch die lesenden Operationen (Point) auf dieses Image.
Meine Frage:
Abgesehen davon, dass es andere Herangehensweisen gibt... ist es möglich ein Image on the fly pixelweise auszulesen und pixelweise in ein anderes Image zu schreiben ohne dabei für jeden Pixelzugriff den Zeichenkanal wechseln zu müssen?
Das switchen mittels StartDrawing() / StopDrawing() von Image1 auf Image2 bei jedem Pixel verbaucht immens Zeit und ist sicherlich auch nicht im Sinne des Erfinders.

Mögliche andere Lösungen, die mir einfallen sind:
- Direkter Zugriff auf den Bidspeicher mit Memorybefehlen (=gar kein point und plot benutzen)
- Image erst in ein Array kopieren, dann den Zeichenkanal auf Image 2 wechseln und das Array in das Zielimage plotten
- Image 1 nach Image 2 kopieren und dort dann die Pixel pointen, ändern und wieder an die selbe Stelle plotten (funktioniert nicht, wenn z.B. Zielimage.xy = Quellimage.xy/2 sein soll, also das Bild halbiert werden soll).
Hintergrund ist, das ich mir einige Bildbearbeitungsprozeduren schreiben möchte und die Routinen in einem Testprogramm entwickle, welches ein Quellimage und ein Zielimage darstellt und die Bearbeitungroutinen quasi gleichzeitigen Zugriff auf beide Images haben sollen (lesen, ändern, schreiben). Das ganze soll zwar Pixelweise ablaufen, aber mit wahlfreiem Zugriff auf die x/y Koordinaten beider Images.