Update cookies preferences
Promotic

setTransform - metoda obiektu CanvasCtx

Opis:
Resetuje bieżącą transformację do nowej macierzy. Później uruchomi metodę transform.
Składnia:
Object setTransform(Long a, Long b, Long c, Long d, Long e, Long f)
Parametry:
a(Long) Pozioma proporcja rysowania
b(Long) Poziomy skos rysowania
c(Long) Pionowy skos rysowania
d(Long) Pionowa proporcja rysowania
e(Long) Poziome przesunięcie rysowania
f(Long) Pionowe przesunięcie rysowania
Notatka:
Transformacje umożliwiają odwzorować pozycję z jednego układu współrzędnych do drugiego. Umożliwia rysowanie identycznego kształtu do różnie zwiększonej/zmniejszonej, odwróconej, przesuniętej, lustrzanie odwróconej 2D powierzchni. Prostrzym jest transformacja współrzędnych 2D powierzchni aniżeli przeliczać współrzędne wszystkich obiektów dla uzyskania identycznego efektu. Wszystkie transformacje pozycji są zdefiniowane 6 zmiennymi wartościami a, b, c, d, e, f (z 9) macierzy tranformacji dla 2D powierzchni. Wartość domyślna nietransformowanej 2D powierzchni to 1, 0, 0, 1, 0, 0 (tzw. macierz jednostkowa). Macierz transformacji jest częścią składową powierczni do rysowania. Metody save oraz restore zapisują również taką macierz transformacji.
Metody transformacji transform, translate, scale lub rotate wpływają na niektóre (lub wszastkie) wartości macierzy transformacji. Każda z tych metod zachowuje ważny aktualny stan macierzy transformacji oraz do niej przeprowadzi swoją zmianę. To znaczy, że zmiany są kumulatywne oraz naliczają się.
Przeciwnie metoda transformacji setTransform najpierw ustawi bieżącą macierz transformacji na wartość domyślną a ponad nią przeprowadzi transformację transform. Jako jedyna z metod transformacji umożliwia wyzerować kumulowane transformacje oraz ustawić nową transformację bez kumulacji.
Patrz również:
- CanvasCtx.rotate (metoda)
Przykład:
Zmienna ctx reprezentuje obszar do rysowania (CanvasCtx). Ta jest ustawiana w karcie "Draw" na początku skryptu rysującego zdarzenia onDraw następująco:
 
var ctx = pEvent.GetCtx(1);
JavaScriptWybierz oraz skopiuj do schowka

ctx.fillStyle = "yellow";
ctx.fillRect(0, 0, 250, 100);

ctx.setTransform(1, 0.5, -0.5, 1, 30, 10);
ctx.fillStyle = "red";
ctx.fillRect(0, 0, 250, 100);

ctx.setTransform(1, 0.5, -0.5, 1, 30, 10);
ctx.fillStyle = "blue";
ctx.fillRect(0, 0, 250, 100);

Historia:
Pm8.02.06: Wytworzono
© MICROSYS, spol. s r.o.