Gwiazdozbiór
Scenariusz
W kolejnym projekcie scenę podzielimy na dwie części. Na górnej części sceny (dla współrzędnych y nieujemnych) duszek (ukryty) narysuje gwiazdy. Na dolnej drugi duszek (lub więcej duszków, jeśli zechcesz) będzie działał według Twojego własnego scenariusza.
W pierwszej wersji projektu wszystkie gwiazdy będą tej samej wielkości, ośmioramienne. Możesz oczywiście zaproponować własną wersję gwiazdy.
Zapisz w punktach przepis‑algorytm rysowania gwiazdy ośmioramiennej.
Zadaniem ukrytego duszka będzie narysowanie kilku lub kilkunastu gwiazd losowo położonych na niebieskim tle. Dobierz długość ramienia gwiazdy i zastanów się, z jakiego zakresu powinieneś losować współrzędne x i y punktu, z którego duszek rozpoczyna rysowanie gwiazdy.
Zapisz w punktach przepis na rysowanie 10 gwiazd na niebieskiej części tła sceny.
Tworzymy własny blok (klocek)
Opisując algorytm realizujący rysowanie gwiazd na niebieskim tle założyliśmy, że umiemy narysować pojedynczą gwiazdę w określonym miejscu sceny. Innymi słowy, chcielibyśmy mieć do dyspozycji klocek rysujący taką gwiazdę. Wśród dziesięciu kategorii klocków (bloków) znajdziesz kategorię Więcej bloków, a w niej przycisk Stwórz blok. Obejrzyj na filmie, jak stworzyć nowy własny blok.
Dodaj nowy blok Gwiazda rysujący gwiazdę ośmioramienną wg algorytmu z poprzedniego podrozdziału.
Napisz skrypt, który po kliknięciu w zieloną flagę rysuje kilka lub kilkanaście gwiazd losowo rozmieszczonych na niebieskim tle wg algorytmu z poprzedniego podrozdziału.
Przygotuj własny scenariusz działań dla drugiego duszka w dolnej części sceny, zapisz przepis - algorytm działania w punktach i skrypt (skrypty) go realizujące.
Rysujemy mniejsze i większe gwiazdy
Wszystkie rysowane gwiazdy były tej samej wielkości – miały taką samą, z góry ustaloną długość ramienia. Korzystając np. z klocka przesuń o …przesuń o … masz możliwość podania liczby kroków, o jaką chcesz przesunąć duszka. Podobnie chcielibyśmy uczynić z klockiem Gwiazda, móc podawać długość ramienia gwiazdy. Służą do tego parametry. Tworząc nowy blok (lub poprawiając go – w tym celu należy kliknąć prawym przyciskiem myszy w klocek i wybrać opcję edytuj) możesz dodać parametr. Zobacz na poniższym filmie, jak dodać parametr i jak go wykorzystać we własnym bloku.
Popraw klocek Gwiazda w swoim projekcie dodając parametr określający długość ramienia gwiazdy.
Popraw skrypt uruchamiany po kliknięciu zielonej flagi tak, aby długość ramienia rysowanych gwiazd losowała się z określonego zakresu.
Pamiętaj, że powinieneś zadbać, żeby gwiazdy mieściły się na niebieskim tle. Dotychczasową, stałą długość ramienia możesz potraktować jako wartość maksymalną.
Zadania uzupełniające
Napisz skrypt (skrypty) tworzący poniższe rysunki. Po kliknięciu w zieloną flagę duszek powinien zapytać się o liczbę obracanych kwadratów. Zapisz najpierw w punktach przepis‑algorytm postępowania.
Wskazówka:
Załóż, że duszek umie narysować kwadrat o stałej długości boku, np. 100. Stwórz blok rysujący taki kwadrat. Zastanów się, o jaki kąt duszek powinien się obracać po narysowaniu każdego kwadratu, aby na koniec patrzeć znowu w tą samą stronę (w sumie wykonać obrót o kąt pełny 360 stopni).
Napisz skrypt (skrypty) tworzący poniższy rysunek. Może umiesz podać więcej niż jeden przepis‑algorytm na rysowanie go?
Stwórz własne bloki rysujące kwadrat oraz prostokąt z parametrami określającymi długości boków. Rozwiąż ponownie zadanie dotyczące cyfr z ostatniego rozdziału z klasy 4. Zbuduj skrypty, które po naciśnięciu klawiszy i 8 narysują odpowiednio cyfry 0 i 8.
Popraw klocek rysujący gwiazdę w taki sposób, żeby miał drugi parametr liczbowy określający kąt obrotu.
Wskazówka:
Zakończ rysowanie, kiedy duszek powróci do pierwotnego kierunku (prawo – 90 stopni). Wykorzystaj w tym celu pętlę powtarzaj ażpowtarzaj aż.
Uwaga:
Nie każda wartość kąta daje ciekawy rysunek. Popróbuj działanie skryptu dla różnych wartości kątów. Duszek przed rysowaniem może się pytać o wartość kąta. Czy umiesz policzyć na podstawie wartości kąta, ile ramion będzie miała gwiazda?