Graphics Reference
In-Depth Information
Abb. 7.6
Positionierung eines Grafik-
koordinatensystems in VisualBasic
bei 0 beginnen, liegt der Ursprung stets oben links bei (0,0)!! Der Zeichenbereich
auf der Form ist ein 1:1-Abbild des Bildspeichers im Programm.
Da Arrays schon lange vor der Computergrafik verwendet wurden, sei hier auf
einen Unterschied in den 2-dimensionalen Rastern von Bildschirm und Array er-
innert: Beim Bildschirm wird das Bild zeilenweise erzeugt, aber das Array wird
spaltenweise gespeichert! Dies irritiert gelegentlich bei der praktischen Program-
mierarbeit.
7.1.4 Homogene Koordinaten
Die Einführung „homogener“ Koordinaten ist nötig, um alle Transformationen ein-
heitlich auf Matrizenmultiplikationen zurückführen zu können. Die Verwendung
einer einzigen Standardoperation ist immer dann von Vorteil, wenn Matrizenope-
rationen durch Spezialhardware beschleunigt werden können, wie z. B. Arraypro-
zessoren. Allerdings muss dann auch die verwendete Programmiersprache diese
Technik unterstützen.
Die Verschiebung eines Punktes P
1
.
x
1
;
y
1
;
z
1
/
um den Translationsvektor
{t}
!
.
t
x
,t
y
;
t
z
/
führt zu einem neuen Punkt P
2
.
x
2
;
y
2
;
z
2
/
, dessen natürliche Koordinaten
durch folgende Vektoraddition festgelegt sind:
Diese Vektoraddition lässt sich nicht ohne Weiteres in eine Matrizenmultiplikation
überführen, dazu stört der additive Term. Wenn man jedoch die Ordnung der Vekto-
ren um 1 erhöht mit einer beliebigen Hilfskoordinate w
¤ 0
, lässt sich das Ergebnis