Promotic

scale - metoda objektu CanvasCtx

Popis:
Metoda v zadaném poměru zvětší/zmenší následující kreslení.
Syntaxe:
Object scale(Long scalewidth, Long scaleheight)
Parametry:
scalewidth(Long) Poměr zvětšení/zmenšení šířky následujících kreslení (1 = 100%, 0.5 = 50%, 2 = 200%, ...)
scaleheight(Long) Poměr zvětšení/zmenšení výšky následujících kreslení (1 = 100%, 0.5 = 50%, 2 = 200%, ...)
Poznámka:
Transformace umožňují mapovat pozice z jednoho souřadnicového systému do jiného. Umožňuje to kreslení stejného tvaru do různě zvětšeného/zmenšeného, otočeného, posunutého, zrcadlově otočeného 2D prostoru. Je jednodušší transformovat souřadnice 2D prostoru než přepočítavat souřadnice všech objektů pro dosažení stejného efektu. Veškeré transformace pozic jsou definovány 6 měnitelnými hodnotami a, b, c, d, e, f (z celkem 9) transformační matice pro 2D prostor. Výchozí hodnota netransformovaného 2D prostoru je 1, 0, 0, 1, 0, 0 (tzv. jednotková matice). Transformační matice je součástí kreslící plochy. Metody save a restore ukládají i tuto transformační matici.
Transformační metody transform, translate, scale nebo rotate ovlivňují některou (nebo všechy) hodnotu transformační matice. Každá z těchto metod zachová aktuální platný stav transformační matice a do něj provede svojí změnu. To znamená, že změny jsou kumulativní a sčítají se.
Transformační metoda setTransform naproti tomu nejprve nastaví právě platnou transformační matici na výchozí hodnotu a nad ní provede transformaci transform. Jako jediná z transformačních metod umožňuje vynulovat kumulované transformace a nastavit novou transformaci bez kumulace.

Tato metoda je funkční i ve Web obrazech.
Viz také:
- CanvasCtx.lineTo (metoda)
Příklad:
Proměná ctx reprezentuje kreslící plochu (CanvasCtx). Ta se nastaví v kartě "Draw" na začátku skriptu kreslící události onDraw takto:
 
var ctx = pEvent.GetCtx(1);
JavaScriptVyber a zkopíruj do schránky

ctx.strokeRect(5, 5, 25, 15);
ctx.scale(2, 2);
ctx.strokeRect(5, 5, 25, 15);

Historie:
Pm8.02.06: Vytvořeno
© MICROSYS, spol. s r.o.