Grundprinzip: Trenne die Daten von der Darstellung.
Daten: Ein riesiges Bild, meinetwegen 50.000 x 50.000 Pixel
Anzeige: Ein kleines Bild, so groß wie das Display, meinetwegen 1.000 x 1.000 Pixel.
Mein Vorgehen wäre: Daten aufteilen in kleine Bitmap-Dateien, da würde ich als Richtwert die Displaygröße nehmen. Beim Bewegen auf der Karte muss dann bestimmt werden, welche Daten benötigt werden (das wären dann max. die Daten aus 4 Bitmap-Dateien). Daraus dann zuerst offscreen ein Bitmap zusammenbasteln (iirc geht das mit
draw sehr einfach) und das dann auf die Anzeige-Komponente kopieren (
assign).
Beim Drehen auch: Da wird nicht das Anzeigepanel gedreht (wüsste auch nicht, wie das gehen soll), sondern das gedrehte Bild wird erst "intern berechnet". D.h. zunächst ein etwas größeres Bild wie oben erstellen, das dann drehen (Forensuche müsste dazu was hergeben, auf Anhieb habe ich da keine Idee), und dann den entsprechenden Ausschnitt in das TImage kopieren.
We are, we were and will not be.