Zmiany

Skocz do: nawigacji, wyszukiwania

Generator wielokątów

Dodane 1737 bajtów, 11:00, 7 lis 2014
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]] '''Materiały stworzone przez Fundację Coder Dojo Polska w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska, objęte licencją CC BY 3.0 PL "Creative Commons Uznanie Autorstwa 3.0 Polska".''' == Cele ==Celem jest stworzenie generatora wielokątów, umożliwiającego rysowanie wielokąty o zadanych przez użytkownika parametrach - liczbie boków i długości boku, jednocześnie wprowadzona zostanie procedura w języku Scratch tworzenia własnych klocków (opcja [[Więcej bloków]]) i projektowanie interfejsu użytkownika.
==Informacje==
© Oparto o pomysł Wiesławy Bednarkiej [https://www.dropbox.com/sh/65n404j8p7pd6ox/AACqat9v9wfGvBnHmf9QD2uMa "Miara kątów wielokąta i kąty foremne"], licencja: [http://creativecommons.org/licenses/by-sa/3.0/ CC-BY-SA 3.0 Deed]
'''Założenia projektu© Oparto o pomysł Wiesławy Bednarskiej [https:'''//www.dropbox.com/sh/65n404j8p7pd6ox/AACqat9v9wfGvBnHmf9QD2uMa "Miara kątów wielokątów i wielokąty foremne"], licencja: [http://creativecommons.org/licenses/by-sa/3.0/ CC-BY-SA 3.0 Deed] === Cele ===Celem jest stworzenie generatora wielokątów, umożliwiającego rysowanie wielokątów o zadanych przez użytkownika parametrach - liczbie boków i długości boku, jednocześnie wprowadzona zostanie procedura w języku Scratch tworzenia własnych klocków (opcja [[Więcej bloków]]) i projektowanie interfejsu użytkownika.
* Aplikacja ma umożliwiać rysowanie dowolnych wielokątów - od trójkąta aż po wielokąt o tysiącu boków
* Aplikacja ma umożliwiać regulowanie długości boku wielokąta tak, żeby uzyskać wielokąt mały lub duży
Działający # Przypomnienie i utrwalenie poznanych wcześniej poleceń i konstrukcji języka Scratch ('''zmienna, pisak, nadaj wiadomość i czekaj'''), # Implementacja projektu w środowisku Scratch# Wykorzystanie opcji '''definiuj'''[[Plik:Definiuj.png]] ===Poziom trudności i proponowane wersje=== Poziom trudności dla klas 4-6 ✪✪✰✰ Gotowy projekt [http://scratch.mit.edu/projects/24590302/ Wielokąty] Projekt można rozwinąć o: '''1. regulację liczby elementów w rozecie''' - to nie musi być zawsze tyle ile liczba boków - można wyobrazić sobie np. 20 trójkątów rozłożonych równomiernie na portalu Scratchplanie okręgu.Dobrze dodać na scenie również informację o tym, że "flaga" czyści ekran.Ciekawe efekty daje łączenie wielu figur na jednym ekranie. '''2. wypełnianie kolorem rozety złożonej z wieloboków'''# [http://scratch.mit.edu/projects/25798168/ wypełnianie wieloboków i układanie rozety]# [http://scratch.mit.edu/projects/25798410/ rysowanie rozety i wypełnianie jej kolorem] ===Orientacyjny czas realizacji===Orientacyjny czzas realizacji podstawowej wersji 2x45minut.
==Etapy==
===Skrypt duszka ''Rysownik''===
Generator wielokątów ma umożliwić tworzenie figur zgodnie z uniwersalną zasadą: '''duszek ma obrócić się o liczbę stopni według wzoru 360 stopni / liczba boków,''' czyli np. w przypadku trójkąta o 120, w przypadku kwadratu o 90, pięcioboku pięciokąta o 72 itd. Aby tworzenie figur było widoczne wykorzystujemy klocki bloku [[Pisak]].
Aby przetestować założenia programujemy prosty skrypt dla trójkąta:
[[Plik:Wielokaty skrypt 1.png]]
2: Poprzez uzycie użycie suwaków dla zmiennych oraz stworzyć stworzenie duszka "start", po którego kliknięciu rozpocznie się rysowanie. W dalszej części proponowanego projektu realizowany będzie drugi sposób:
W bloku [[Dane]] zaznaczamy stworzone zmienne:
[[Plik:Wielokaty skrypt 3.png]]
Ustawiamy '''Uwaga:'''Istotne jest, aby w trakcie ustalania minimalnej oraz maksymalnej ilości kątów, położyć nacisk na rozsądne wartości: minimalna liczba boków 3, maksymalna np.: boki od 3 do 20, długość boku od 2 do 50.
=== "Interfejs użytkownika"===
==== Przycisk "Rysuj" ====
Dodajemy przycisk uruchamiający grafikę przycisku uruchamiającego rysowanie: duszek ''rysuj''.
[[Plik:Wielokaty rysuj.png]]
Oraz Na tym etapie tworzymy prosty skrypt, nadający sygnał "rysuj" kiedy przycisk zostanie wciśnięty. W dalszej części powstanie skrypt umożliwiający uruchamianie rysowania.
[[Plik:Wielokaty rysuj1.png]]
'''Zadanie:Wskazówka''' Dlaczego użycie W proponowanej wersji, zamiast wersji "nadaj rysuj" jest gorszym rozwiązaniem od użuwamy klocka "nadaj "rysuj" i czekaj"?<small>''Możliwość , aby uniknąć możliwość zakłócenia trwającą procedurę trwającej procedury rysownika''</small>. Zmiana parametrów wielokąta jest możliwa dopiero po ukończeniu rysowania figury.
==== Modyfikacja skryptu ''Rysownik''====
Na tym etapie konieczne jest zaktualizowanie dotychczasowego Przygotowanie do zaktualizowania skryptu duszka ''Rysownik''. Taktak, aby reagował na komunikat "Rysuj", a nie [[Plik:Kiedy kliknieto ZF.png]] która ma rozpoczynamy od poleceń mających tylko przygotować ''Rysownika'' do działania:
[[Plik:Wielokaty rysuj2.png]]
=== Tworzenie własnej procedury ''[[Więcej Bloków]]''===
Procedura rysowania wielokąta W dalszej części, aktualizacja skryptu duszka ''Rysownik'' tak aby po otrzymaniu komunikatu narysował wielokąt, oparta jest dobrym momentem do wprowadzenia o wprowadzenie "własnych klocków" czy "procedur". W tym celu korzystamy z opcji [[Więcej Bloków]]:
[[Plik:Procedura.png]]
Do bloku rozpoczynającego procedurę dodajemy kolejne etapy rysowania wieloboku w oparciu o zmienne.
 '''Uwaga:''' procedura nie reaguje na zmienne zewnętrzne (pomarańczowe owale w Scratch), a jedynie swoje własne parametry (niebieskie owale). W procedurze wykorzystywane są parametry wasnewłasne.
[[Plik:Procedura4.png]]
===Opcje dodatkowe===
====Kolorowe figury====
Dodanie jednego klocka do zdefiniowanej procedury ''rysuj_wielobok'', umożliwia wprowadzenie zmmian zmiany kolorów rysowanych figur.
* Aby cała figura została narysowana tęczowymi kolorami:
=====Skrypt duszka ''Rozeta''=====
Skrypt duszka ''Rozeta'' ma umożliwić zmianę wyglądu przycisku oraz zmianę trybu włączony/wyłączony, w uzależnieniu zależności od zaznaczenia opcji przez gracza.
[[Plik:Rozeta1.png]]
[[Plik:Polozenie rysowania.png]]
==Rozwinięcie projektu===Dodatki=====Można dodać regulację liczby elementów '''Zadanie problemowe:''' w rozecie - to nie musi być zawsze tyle ile liczba boków - jaki sposób uzyskać efekt wypełnienia kolorem pola wielokątów?Proponujemy uczniom samodzielne poszukiwanie rozwiązań. Uzyskane wyniki można wyobrazić sobie npporównać z dwoma propozycjami:# projekt zawierający kod [http://scratch. 20 trójkątów rozłożonych równomiernie na planie okręgumit.edu/projects/25798168/ wypełniania kolorem wieloboków a następnie układania rozety]Dobrze dodać na scenie również informację o tym, że "flaga" czyści ekran# projekt zawierajacy kod [http://scratch.Ciekawe efekty daje łączenie wielu figur na jednym ekraniemit.edu/projects/25798410/ rysowania rozety i stopniowe wypełnianie jej kolorem]