If you're seeing this message, it means we're having trouble loading external resources on our website.

Jeżeli jesteś za filtrem sieci web, prosimy, upewnij się, że domeny *.kastatic.org i *.kasandbox.org są odblokowane.

Główna zawartość

Skalowanie

Ostatnią transformacją układu współrzędnych jest skalowanie, zmieniające rozmiar siatki. Spójrz na ten program. Rysuje on kwadrat, po czym skaluje siatkę powiększając ją dwukrotnie, po czym ponownie rysuje kwadrat.
Po pierwsze można odnieść wrażenie, że kwadrat się przesunął. Oczywiście, nie przesunął się. Jego lewy górny róg dalej jest na pozycji (20,20) przeskalowanej siatki, ale ten punkt jest teraz dwa razy dalej od początku układu współrzędnych, właśnie z powodu skalowania.
Jeśli chcesz, aby większy kwadrat zaczynał się w tym samym miejscu co mały, musisz wpierw przekształcić jego koordynaty, a dopiero potem skalować:
Patrząc na oba te programy, można również zauważyć, że linie są grubsze na większych kwadratach. To nie złudzenie optyczne—linie naprawdę są dwa razy grubsze, ponieważ układ współrzędny stał się dwa razy większy. Możesz samodzielnie zmienić linie za pomocą metody strokeWeight() aby to wyrównać, albo po prostu unikać używania scale().
Metoda scale() przyjmuje opcjonalnie dwa parametry zamiast jednego, więc możesz oddzielnie skalować wymiar x i y. Spróbuj użyć scale(3.0, 0.5) w powyższym programie by zwiększyć wielkość wymiaru x trzykrotnie, a wymiar y zmniejszyć o połowę.

Ten artykuł jest adaptacją Transformacji 2D napisanej przez Davida Eisenberga wykorzystaną na licencji Creative Commons Attribution-NonCommercial-ShareAlike.

Chcesz dołączyć do dyskusji?

Na razie brak głosów w dyskusji
Rozumiesz angielski? Kliknij tutaj, aby zobaczyć więcej dyskusji na angielskiej wersji strony Khan Academy.