Transformation von Koordinatenbereichen

Ein Koordinatenraum ist ein planarer Raum, der auf dem kartesischen Koordinatensystem basiert. Dieses System bietet eine Möglichkeit, die Position jedes Punkts auf einer Ebene anzugeben. Es sind zwei Achsen erforderlich, die senkrecht und gleich lang sind. Die folgende Abbildung zeigt einen Koordinatenbereich.

Abbildung eines Koordinatenraums mit dem Ursprung, beiden Achsen und den maximalen und minimalen Werten jeder Achse

Das System unterstützt vier Koordinatenräume, wie in der folgenden Tabelle beschrieben.

Koordinatenraum Beschreibung
world Wird optional als Startkoordinatenraum für Grafiktransformationen verwendet. Sie ermöglicht Skalierung, Übersetzung, Drehung, Schub und Reflektion. Der Weltraum misst eine Breite von 2^32 Einheiten und einer Breite von 2^32 Einheiten.
Seite (page) Wird entweder als nächster Raum nach dem Weltraum oder als Startbereich für Grafiktransformationen verwendet. Der Zuordnungsmodus wird festgelegt. Der Seitenbereich misst auch eine Höhe von 2^32 Einheiten und einer Breite von 2^32 Einheiten.
device Wird als nächstes Leerzeichen nach dem Seitenbereich verwendet. Sie lässt nur die Übersetzung zu, wodurch sichergestellt wird, dass der Ursprung des Geräteraums der richtigen Position im physischen Gerätebereich zugeordnet wird. Der Geräteraum misst eine Breite von 2^27 Einheiten und einer Breite von 2^27 Einheiten.
Physisches Gerät Der endgültige (Ausgabe-)Bereich für Grafiktransformationen. Er bezieht sich in der Regel auf den Clientbereich des Anwendungsfensters. Sie kann jedoch auch den gesamten Desktop, ein vollständiges Fenster (einschließlich Rahmen, Titelleiste und Menüleiste) oder eine Seite mit Drucker- oder Plotterdokumenten enthalten, je nachdem, welche Funktion das Handle für den Gerätekontext abgerufen hat. Die Abmessungen physischer Geräte variieren je nach den Dimensionen, die von der Anzeige-, Drucker- oder Plottertechnologie festgelegt werden.

Der Seitenbereich arbeitet mit dem Gerätebereich zusammen, um Anwendungen geräteunabhängige Einheiten wie Millimeter und Zoll bereitzustellen. Diese Übersicht bezieht sich sowohl auf den Weltraum als auch auf den Seitenraum als logischen Raum.

Um die Ausgabe auf einem physischen Gerät darzustellen, kopiert (oder ordnet das System) einen rechteckigen Bereich mithilfe einer Transformation aus einem Koordinatenbereich in den nächsten, bis die Ausgabe vollständig auf dem physischen Gerät angezeigt wird. Die Zuordnung beginnt im Weltbereich der Anwendung, wenn die Anwendung die SetWorldTransform-Funktion aufgerufen hat. Andernfalls erfolgt die Zuordnung im Seitenbereich. Wenn das System jeden Punkt innerhalb des rechteckigen Bereichs aus einem Raum in einen anderen kopiert, wendet es einen Algorithmus an, der als Transformation bezeichnet wird. Eine Transformation ändert (oder transformiert) die Größe, Ausrichtung und Form von Objekten, die aus einem Koordinatenraum in einen anderen kopiert werden. Obwohl sich eine Transformation auf ein Objekt als Ganzes auswirkt, wird sie auf jeden Punkt oder jede Zeile im Objekt angewendet.

Die folgende Abbildung zeigt eine typische Transformation, die mithilfe der SetWorldTransform-Funktion ausgeführt wird.

Abbildung eines Rechtecks, das die Größe und Position ändert, wie es im Raum der Welt, im Seitenbereich, im Gerätebereich und auf dem Gerät angezeigt wird