Discuss Scratch
- Discussion Forums
- » Polski
- » Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
W tym poradniku pokażę jak rysować najbardziej podstawowe figury geometryczne w scratchu za pomocą pisaka. Dla każdej omówionej tu figury geometrycznej zrobiłem osobny projekt, w którym zastosowałem gotowy skrypt. Poradnik ten będzie miał też nieco inną formę niż wszystkie napisane przeze mnie do tej pory poradniki. Mianowicie instrukcje dot. rysowania poszczególnych figur umieszczę w osobnych postach dzięki czemu będę mógł umieścić w głównym poście do nich odsyłacze (jest ich bardzo dużo). Wydaje mi się, że pomoże to zachować przejrzystość treści. Napiszcie w komentarzach jakie jest wasze odczucie.
W moim poradniku będę nazywał oś odciętych osią X, a oś rzędnych osią Y.
SPIS TREŚCI:
W moim poradniku będę nazywał oś odciętych osią X, a oś rzędnych osią Y.
SPIS TREŚCI:
PROSTOKĄT:
- kwadrat o zadanym boku
- kwadrat o zadanej przekątnej
- kwadrat o zadanym obwodzie
- prostokąt o zadanych dwóch bokach
TRÓJKĄT:
- trójkąt równoboczny o zadanym boku
- trójkąt równoboczny o zadanej wysokości
- trójkąt prostokątny o zadanych przyprostokątnych
- trójkąt prostokątny o zadanej przyprostokątnej i kącie
OKRĄG:
- okrąg o zadanym promieniu i liczbie kątów (właściwie wielokąt)
ELIPSA:
- elipsa o zadanych długościach półosi i kącie
- elipsa o zadanych ogniskach i mimośrodzie
POZOSTAŁE:
- wykres funkcji
- wielokąt foremny o zadanej liczbie i długości boków (przez PL_DkD_PL)
Last edited by AANNTTOONNII (June 28, 2020 08:03:18)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
KWADRAT O ZADANYM BOKU
Kwadrat to czworokąt o wszystkich równych kątach. Ma on również wszystkie równe boki i każdy jego kąt ma 90 stopni (te własności wynikają z definicji). Przyjmując n jako długość boku, jego wierzchołki mają w układzie kartezjańskim następujące współrzędne:
[0, 0]
[n, 0]
[n, n]
[0, n]
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:28:14)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
KWADRAT O ZADANEJ PRZEKĄTNEJ
Znając przekątną kwadratu możemy obliczyć jego bok za pomocą twierdzenia pitagorasa. Oznaczmy długość boku przez a, a przekątnej przez p. Wtedy:

Żeby narysować kwadrat o zadanej przekątnej wystarczy więc napierw wyliczyć długość boku dzieląc długość przekątnej przez pierwiastek z dwóch, a następnie stosując skrypt rysujący kwadrat o zadanym boku. Oto przykładowy skrypt:
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 24, 2020 21:29:31)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
KWADRAT O ZADANYM OBWODZIE
Znając obwód kwadratu możemy w prosty sposób wyliczyć bok dzieląc go przez cztery (jako, że kwadrat ma cztery równe boki). Żeby narysować kwadrat o zadanym obwodzie wystarczy więc napierw wyliczyć długość boku dzieląc długość przekątnej przez cztery, a następnie stosując skrypt rysujący kwadrat o zadanym boku. Oto przykładowy skrypt:
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 24, 2020 21:30:57)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
PROSTOKĄT O ZADANYCH DWÓCH BOKACH
Prostokąt to czworokąt o dwóch parach boków równoległych. Każdy jego kąt ma 90 stopni (wynikaja to z definicji). Jego szczególnym przypadkiem jest kwadrat. Przyjmując a i b jako długośći jego boków, jego wierzchołki mają w układzie kartezjańskim następujące współrzędne:
[0, 0]
[a, 0]
[a, b]
[0, b]
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:28:50)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
TRÓJKĄT RÓWNOBOCZNY O ZADANYM BOKU
Trójkąt równoboczny to trójkąt o trzech równych bokach. Ma on wszystkie kąty równe 60 stopni (wynika to z definicji). Przyjmując a jako długość jego boku, jego wierzchołki mają w układzie kartezjańskim następujące współrzędne:
[0, 0]
[a, 0]
[a/2, sqrt(3) * a / 2]
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:29:14)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
TRÓJKĄT RÓWNOBOCZNY O ZADANEJ WYSOKOŚCI
Znając wysokość w trójkącie równobocznym możemy obliczyć jego bok za pomocą twierdzenia pitagorasa. Można wyprowadzić to w podobny sposób jak wysokość znając bok. Żeby narysować trójkąt równoboczny o zadanej wysokości wystarczy więc napierw wyliczyć długość boku mnożąc długość wysokości przez dwa przez pierwiastek z trzech, a następnie stosując skrypt rysujący trójkąt równoboczny o zadanym boku. Oto przykładowy skrypt:
Gotowy skrypt został zastosowany w tym projekcie.
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
TRÓJKĄT PROSTOKĄTNY O ZADANYCH PRZYPROSTOKĄTNYCH
Trójkąt prostokątny to trójkąt, który ma kąt prosty. Boki, pomiędzy którymi jest kąt prosty nazywają się przyprostokątnymi, a bok na przeciwko kąta prostego nazywa się naprzeciwprostokątną lub przeciwprostokątną. Przyjmując a i b jako długośći jego przyprostokątnych, jego wierzchołki mają w układzie kartezjańskim następujące współrzędne:
[0, 0]
[a, 0]
[0, b]
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:29:31)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
TRÓJKĄT PROSTOKĄTNY O ZADANEJ PRZYPROSTOKĄTNEJ I KĄCIE
Znając jedną przyprostokątną i kąt pomiędzy nią, a przeciwprostokątną możemy obliczyć wszystkie boki tego trójkąta korzystając z twierdzenia kosinusów (uogólnionego twierdzenia pitagorasa). Oznaczmy długość przyprostokątnej przez a, a kąt przez alfa. Wtedy druga przyprostokątna jest równa a * tg(alfa). Teraz wystarczy użyć skryptu rysującego trójkąt prostokątny o zadanych przyprostokątnych. Oto przykładowy skrypt:
Gotowy skrypt został zastosowany w tym projekcie.
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
OKRĄG O ZADANYM PROMIENIU I LICZBIE KĄTÓW (WŁAŚCIWIE WIELOKĄT)
Okrąg można narysować na wiele sposobów. Ja postanowiłem opisać tu jak go narysować poprzez wyznaczenie punktów które na nim leżą w równej odległości i połączenie ich. Po pierwsze zauważmy, że punkt, który leży na okręgu pod kątem alfa ma współrzędne:
[cos(alfa) * p, sin(alfa) * p]
360 stopni / l_kt
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:29:49)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
ELIPSA O ZADANYCH DŁUGOŚCIACH PÓŁOSI I KĄCIE
Podobnie jak w przypadku okręgu, elipsę narysujemy poprzez wyznaczenie punktów które na niej leżą w równej odległości i połączenie ich. Najpierw zauważmy, że punkt, który leży na elipsie pod kątem alfa ma współrzędne:
[cos(alfa) * d_poś, sin(alfa) * m_poś]
360 stopni / l_kt
Mamy już skrypt, który rysuje elipsę. Chcemy jeszcze narysować tą elipsę pod zadanym kątem. Zamienimy więc wzór:
[cos(alfa) * d_poś, sin(alfa) * m_poś]
[cos(alfa) * cos(beta) * d_poś - sin(alfa) * sin(beta) * m_poś, sin(beta) * cos(alfa) * d_poś + cos(beta) * sin(alfa) * m_poś ]
cos(alfa + beta)
cos(alfa) * cos(beta) - sin(alfa) * sin(beta)
sin(alfa + beta)
sin(alfa) * cos(beta) + cos(alfa) * sin(beta)
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:30:14)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
ELIPSA O ZADANYCH OGNISKACH I MIMOŚRODZIE
Elipsa to zbiór takich punktów, że suma ich odległości od ognisk jest stała. Mimośród to stosunek długości ogniskowej do długości wielkiej półosi. Ogniskowa z kolei jest połową odległości między ogniskami lub, jak kto woli, odległością pomiędzy środkiem elipsy, a ogniskami. Elipsę o zadanych ogniskach i mimośrodzie narysujemy wyliczając długości obu półosi, oraz kąt nachylenia elipsy i stosując skrypt rysujący elipsę o zadanych długościach półosi i kącie. Na początek wyliczmy ogniskową. Przyda się przy obliczaniu obu półosi. Nie jest to trudne obliczamy ją z twierdzenia pitagorasa:
Teraz wyliczymy wielką półoś. Wystarczy podzielić ogniskową przez mimośród jak w poniższym skrypcie:
Teraz wyliczmy małą półoś. Jest to pierwiastek kwadratowy z wartości bezwzględnej z różnicy kwadratu wielkiej półosi i kwadratu ogniskowej jak w poniższym skrypcie:
Pozostało jeszcze obliczenie kąta nachylenia elipsy. Jest to arcus sinus sinusa tego kąta, czyli arcus sinus różnicy pomiędzy współrzędnymi y ognisk podzelonej przez dwa podzielonej przez długość ogniskowej, jak w poniższym skrypcie:
Mamy już wszystkie wartości. Możemy zastosować skrypt rysujący elipsę o zadanych długościach półosi i kącie. Oto przykładowy skrypt:
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:30:50)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
WYKRES FUNKCJI
Wykres funkcji to jedna z najprostszych do narysowania figur geometrycznych opisanych w tym poradniku. Potrzebujemy zdefiniować blok, który ustawia zmienną wynik na wartość wymyślonej przez nas funkcji od x. Dla funkcji f(x) := x^2 + 2x - 81 będzie to taki blok:
Teraz dla każdej współrzędnej x na ekranie zamalowujemy piksel o współrzędnej y odpowiadającej wartości naszej funkcji dla tego x. Oto przykładowy skrypt:
Oczywiście skrypt ten narysuje wykres funkcji w skali 1:1. Można go skalować mnożąc go (np. pomnożenie go przez dwa rozciągnie go dwukrotnie) i przesuwać dodając do niego liczby (np. dodanie do niego dwóch przesunie go o dwa w górę) i przesuwać w drugiej osi (np. zamiana x na x + 2 przesunie go o 2 w lewo).
Gotowy skrypt został zastosowany w tym projekcie.
Last edited by AANNTTOONNII (April 25, 2020 14:30:35)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
W końcu skończyłem pisać ten długi poradnik… Wybaczcie, że niektóre posty zrobione są na “odwal się”, ale jest ich strasznie dużo, a z każdym postem zapał malał pewnie tak… dwukrotnie. Na początku wstawiałem obrazki z symbolami matematycznymi… potem już mi się nie chciało… Błędy porawię pewnie za godzinę, albo w ogóle jutro… Idę teraz odpocząć… Możecie mi pomóc pisząc błędy w komentarzach. Wszelka współpraca jest mile widziana. Możecie napisać własny poradnik dot. nie wiem rysowania trójkąta o zadanych bokach, albo rysowania wielokąta foremnego… Nie ma tych obrazków,.. Jest masa błędów… Ale i tak robi wrażenie!
- MentolMen
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
że ci się w ogóle chciało
spoko sprawa
od razu można wejść i wziąć skrypt na figurę
fajnie, gdyby ktoś dodał od razu zdjęcie tych figur pod tytułem
nie każdy zna z nazwy figurę, której szuka.
teraz jak tak sobie myślę, to można zrobić projekt w którym w łatwy sposób można by tworzyć figury
stworzyć jakby siatkę kratową i użytkownik zaznaczałby na niej punkty, a program rysowałby figurę, a potem pokazywał skrypt w scratchu do zrobienia takiej figury.
To jest nawet do ogarnięcia, gdyby ktoś miał za dużo wolnego czasu.
edit:
ciekawy sposób na generowanie wykresu funkcji, w sumie nigdy tego nie robiłem, ale nie wpadłbym na takie podejście.
spoko sprawa
od razu można wejść i wziąć skrypt na figurę
fajnie, gdyby ktoś dodał od razu zdjęcie tych figur pod tytułem
nie każdy zna z nazwy figurę, której szuka.
teraz jak tak sobie myślę, to można zrobić projekt w którym w łatwy sposób można by tworzyć figury
stworzyć jakby siatkę kratową i użytkownik zaznaczałby na niej punkty, a program rysowałby figurę, a potem pokazywał skrypt w scratchu do zrobienia takiej figury.
To jest nawet do ogarnięcia, gdyby ktoś miał za dużo wolnego czasu.
edit:
ciekawy sposób na generowanie wykresu funkcji, w sumie nigdy tego nie robiłem, ale nie wpadłbym na takie podejście.
Last edited by MentolMen (April 24, 2020 21:11:15)
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
Kiedy zaczynałem pisać ten poradnik myślałem, że zrobię drugi dla generowania skomplikowanych figur (krzywa beziera itp.). Teraz wiem, że na pewno go nie zrobię. Uwierz mi. Jeśli myślisz, że napisanie takiego czegoś to dużo roboty… to nawet nie wiesz jak bardzo dużo. Tego się nie pisze w 15 minut. 15 minut zajęło mi uploadowanie że ci się w ogóle chciało
spoko sprawa
od razu można wejść i wziąć skrypt na figurę
fajnie, gdyby ktoś dodał od razu zdjęcie tych figur pod tytułem
nie każdy zna z nazwy figurę, której szuka.
teraz jak tak sobie myślę, to można zrobić projekt w którym w łatwy sposób można by tworzyć figury
stworzyć jakby siatkę kratową i użytkownik zaznaczałby na niej punkty, a program rysowałby figurę, a potem pokazywał skrypt w scratchu do zrobienia takiej figury.
To jest nawet do ogarnięcia, gdyby ktoś miał za dużo wolnego czasu.
edit:
ciekawy sposób na generowanie wykresu funkcji, w sumie nigdy tego nie robiłem, ale nie wpadłbym na takie podejście.

PS:
Jak ci się podoba pomysł z podzieleniem poradnika na posty?
- MentolMen
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
Tak, spoko rozwiązane to jest (podzielenie na posty)
ja wiem, robienie takich rzeczy to masa roboty, nawet do podstawowych figur, nie mówiąc już o jakichś bardziej skomplikowanych.
Szacun, bo widzę, że to jest to dobrze zrobione z wieloma parametrami. Szkoda, że nie zrobiłeś tego wcześniej, bo jak potrzebowałem rysować owal, to nikt tego nie miał i zmarnowałem parę godzin.
ja wiem, robienie takich rzeczy to masa roboty, nawet do podstawowych figur, nie mówiąc już o jakichś bardziej skomplikowanych.
Szacun, bo widzę, że to jest to dobrze zrobione z wieloma parametrami. Szkoda, że nie zrobiłeś tego wcześniej, bo jak potrzebowałem rysować owal, to nikt tego nie miał i zmarnowałem parę godzin.
- AANNTTOONNII
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
Owala w tym poradniku nie mam. Mam elipsę, która jest szczególnym przypadkiem owala, ale owal jest ogólnie znacznie bardziej skomplikowaną figurą. Zobacz w wikipedii.
- MentolMen
-
1000+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
wikipedii.ta Owala w tym poradniku nie mam. Mam elipsę, która jest szczególnym przypadkiem owala, ale owal jest ogólnie znacznie bardziej skomplikowaną figurą. Zobacz w
szukałem owala, ale jednak zrobiłem elipse
ale robiłem to na chama, bez żadnej matematyki. ale działa, także jest git xD
- PL_DkD_PL
-
500+ posts
Rysowanie podstawowych figur geometrycznych przy pomocy pisaka
WIELOKĄT FOREMNY O ZADANEJ LICZBIE BOKÓW I DŁUGOŚCI BOKÓW
Najpierw zacznijmy od wzoru na wielkość kątów w wielokącie foremnym:
180 - 360/nJeśli chcemy narysować trójkąt to n będzie 3. Kiedy narysujemy kąt obracając duszka o 180/3 (60) stopni wyjdzie kąt 120… Jeśli zmienimy działanie na
180 - (180 - 360/n)czyli
360/nto wyjdzie 120. Kiedy narysujemy kąt obracając duszka o 120 stopni otrzymamy kąt 60 stopni!
Teraz skoro znamy wielkość kątu czas na skrypt.
Gotowy skrypt został zastosowany w tym projekcie. Tutaj również jest rysowany prostokąt pokazany w jednym ze wcześniejszych poradników.
Last edited by PL_DkD_PL (June 27, 2020 19:38:41)
- Discussion Forums
- » Polski
-
» Rysowanie podstawowych figur geometrycznych przy pomocy pisaka