Fő tartalom
Programozás
Tantárgy/kurzus: Programozás > 4. témakör
6. lecke: TranszformációkÁtméretezés
A legutolsó koordináta-rendszer transzformáció az átméretezés, ami a négyzetháló méretét változtatja. Nézd meg ezt a programot, ami kirajzol egy négyzetet, majd átméretezi a négyzethálót a normál méret kétszeresére, és utána ismét megrajzolja a négyzetet.
Először is azt láthatod, hogy a négyzet mintha elmozdult volna. Természetesen nem ez történt. A bal felső sarka továbbra is a (20,20)-ban van csak a nagyított négyzethálón, ezért az a pontja kétszer olyan messze van az origótól, mint az eredeti koordináta-rendszerben volt.
Ha azt szeretnéd, hogy a nagyobb négyzet ugyanott kezdődjön, mint a kisebb, akkor kezdheted mondjuk egy eltolással, és majd csak ezután jön az átméretezés:
Lehet, hogy az is feltűnt, hogy mindkét programban a nagyobb négyzet körvonalai vastagabbak. Ez nem optikai csalódás – a vonalak tényleg kétszer olyan vastagok, mert a koordináta-rendszer kétszeresére lett átméretezve. Explicit módon megváltoztathatod a
strokeWeight()
-et, hogy ezen módosíts, vagy egyszerűen ne használj scale()
-t, ha el szeretnéd ezt kerülni.A
scale()
parancs opcionálisan elfogad két paramétert is egy helyett, ezzel külön méretezheted át az x és y dimenzió szerint. Próbáld ki a scale(3{,}0, 0{,}5)
-t a fenti programban, hogy az x dimenziót az eredeti háromszorosára nagyítsd, míg az y dimenziót az eredeti felére kicsinyítsd!A tananyag a 2D Transformations adaptációja, mely J David Eisenberg munkája, és a következő licenc alatt elérhető: Creative Commons Attribution-NonCommercial-ShareAlike.
Szeretnél részt venni a beszélgetésben?
Még nincs hozzászólás.