kolmapäev, 15. mai 2019

3D printimine

Tauri võtmehoidja



Robini lennuk




Maria võtmehoidja



Anette võtmehoidja


Roosi-Rella võtmehoidja

Mattiase tripode




teisipäev, 19. veebruar 2019

3D Paint

Kuidas kasutada programmi Paint 3D.
Vaata videot ja püüa selle abil luua 3D objekt.

1. Juhend 1.


kolmapäev, 28. november 2018

Code.org, Play Lab. Python, Turtle


Python. Turtle. Thonny. Pildi joonistamine.

Anette pilt




Kristoferi pilt



Robin-Eriku pilt

Tauri pilt

Rasmuse pilt

Anette iseseisev töö




Projektid

Saad mängida kaaslaste loodud mänge.

Õpetaja mäng.
Anette mäng (5.a klass)
Tauri mäng (4.klass)
Robin-Eriku mäng1   ja mäng2 ja mäng3 ja mäng4 ja mäng5 (4.klass)
Anette tants (5.a klass)
Mattiase mäng (4.klass)
Maria tants (5.a klass)
Maria mäng (5.a klass)
Robin-Eriku joonistus.
Tauri joonistus.
Mattiase joonistus.
Roosi-Rella joonistus1 ja joonistus2.


Loo oma mäng.

1. Mängu alguses on mängu autor ning juhis, kuidas mängu mängida.

2. Loo 3 tegelast. Ühte saab juhtida nooleklahvidega, teine seikleb ringi juhuslikult, kolmandal on kindel teekond, mida mööda lõputult liigub.

3. Kui nooltega liigutatav tegelane saab kokku kolmanda tegelasega, võidab mängija punkti. Määra, kui palju punkte on vaja mängu võitmiseks. Kui mäng on võidetud, jääb suvaliselt liikuv tegelane seisma, kindlat teed mööda liikuv tegelane kaota ära.

4. Kui nooltega liigutatav tegelane saab kokku juhuslikult liikuva tegelasega, kaotab mängija punkti. Määra, mitme miinuspunktiga on mäng kaotatud. Kui mäng on kaotatud, jääb suvaliselt liikuv tegelane seisma, kindlat teed mööda liikuv tegelane kaota ära.

5. Lisa ka omalt poolt elemente, nt muuda tausta,  mängijate kiirust, tuju, suurust, lisa mõni lõbus detail.

6. Mäng on valmis siis, kui seda on sul endal mugav mängida, võitmine pole ei liiga kerge ega liiga raske.

7. Kui mäng on valmis, siis kliki sõnal: Jaga (üleval serval). Kopeeri mängu aadress ja saada see meiliga mulle: seller.mai@gmail.com




kolmapäev, 14. märts 2018

Kilpkonnagraafika


from turtle import *


Käsud:
forward(n) - liigu edasi (ingl. forward) n sammu võrra (ühe sammu pikkus on 1 piksel ehk üks täpike ekraanil);
back(n) - liigu tagasi (ingl. back) n sammu võrra;
left(d) - pööra vasakule (ingl. left) d kraadi;
right(d) - pööra paremale (ingl. right) d kraadi.
             * * * * *
fd(n) - võrdne käsuga forward(n);
bk(n) - võrdne käsuga back(n);
lt(d) - võrdne käsuga left(d);
rt(d) - võrdne käsuga right(d).
             * * * * *
color("red") - muudab jooned vastavat värvi
begin_fill() - sellest käsklusest alates värvib kujundi seest ära
end_fill() - selle käsklusega lõppeb värvimine
circle(100) - joonestab ringi raadiusega 100
pendown() | pd() | down() - pliiats alla
penup() | pu() | up() - pliiats üles
pensize() | width() - pliiatsi suurus
speed() - pliiatsi kiirus
color() - värv (joon, taust)
pencolor() - joone värv
fillcolor() - tausta värv
bgcolor() - taustavärv
goto(200, -300) - viib kilpkonna soovitud punkti
setup(900, 800) - tausta suurus
setpos(0,0) - kilpkonna positsioon
write("Tekst!", font = ("Soovitud fondi nimi", fondi suurus)) -kirjutab teksti soovitud fondiga ja fondi suurusega 

bgpic('failinimi.png') -taustapildi lisamine, pilt peab olema salvestatud samasse kausta

Pliiatsi seaded

Vaikimisi on meie nn kilpkonn noolekujuline.

Et muuta selle kuju, kasutame shape meetodit ning parameetritena on kasutada
“arrow”,
“turtle”,
“circle”,
“square”,
“triangle”
“classic”.

Võimalus on määrata ka kilpkonna kiirust 0-10.

Värvide loend
Vaata!

Näide 1. Ruudu joonistamine.

from turtle import *

forward(100) # Kilpkonn liigub edasi 100 pikslit
left(90) # Kilpkonn pöörab 90° vasakule
forward(100) # Kordame eelnevaid käske, sest ruudul on neli külge
left(90)
forward(100)
left(90)
forward(100)

exitonclick() # Saame akna sulgeda hiireklõpsuga

Näide 2. Ruut. Tsükkel.

from turtle import *

i = 0
while (i < 4):
    forward(150)
    left(90)
    i = i + 1

exitonclick()

Näide 3. Jaapani lipp.

from turtle import *

color("red") # Kilpkonn muutub punaseks
begin_fill() # Kilpkonn alustab ringi värvimist
circle(100) # Kilpkonn joonistab ringi raadiusega 100 pikslit
end_fill() # Kilpkonn lõpetab ringi värvimise

exitonclick()

Näide 4. Tsükkel. Juhuslikkus.

from turtle import *
from random import randint

i = 0
while (i < 6):
    pensize(randint(1, 10))
    pencolor("red")
    fillcolor("green")
    begin_fill()
    circle(randint(50, 150))
    end_fill()
    left(60)
    i = i + 1

exitonclick()

Näide 5. Funktsioon.

from turtle import *
def ruut(): # Defineerime funktsiooni nimega ruut
i = 0
while (i < 4):
    forward(100)
    left(90)
    i = i + 1
ruut() # Kutsume funktsiooni ruut välja. Kilpkonn joonistab  ruudu küljega 100 pikslit
right(45) # Pöörame paremale 45°
ruut() # Kutsume uuesti funktsiooni ruut välja

exitonclick()

Näide 6. Ruut. Funktsioon.

from turtle import *

def ruut(külg): # Defineerime funktsiooni nimega ruut, mille argumendiks on ruudu külje pikkus
    i = 0
    while (i < 4):
    forward(külg) # Siin kasutataksegi argumenti
    left(90)
    i = i + 1

ruut(50) # Kilpkonn joonistab ruudu küljega 50 pikslit
ruut(75) # Kilpkonn joonistab ruudu küljega 75 pikslit

exitonclick()

Näide 7. Mitu kilpkonna 1.

from turtle import *

kilp1 = Turtle()
kilp1.begin_fill()
kilp1.color("green")
kilp1.forward(100)
kilp1.end_fill()

kilp2 = Turtle()
kilp2.right(70)
kilp2.begin_fill()
kilp2.color("red")
kilp2.forward(100)
kilp2.end_fill()

kilp3 = Turtle()
kilp3.right(140)
kilp3.begin_fill()
kilp3.color("blue")
kilp3.forward(100)
kilp3.end_fill()

kilp4 = Turtle()
kilp4.right(210)
kilp4.begin_fill()
kilp4.color("grey")
kilp4.forward(100)
kilp4.end_fill()

exitonclick()

Näide 8. Mitu kilpkonna 2.

def kilbid(värv, pikkus):
    color(värv)
    forward(pikkus)
    backward(pikkus)
    left(70)

kilp1 = kilbid("green", 100)
kilp2 = kilbid("red", 100)
kilp3 = kilbid("blue", 100)
kilp4 = kilbid("yellow", 100)
kilp5 = kilbid("brown", 100)

exitonclick()

Näide 9. Juhuslikkus. Tekst.

from turtle import *
from random import randint

setup(900, 800) #tausta suurus
setpos(0,0) #kilpkonna positsioon
pencolor("#ff1a1a")
fillcolor("#ff00ff")
speed(20)
rt(90)
penup()
pendown()
rt(90)

i = 0
while i < 6:
    pensize(randint(2, 12)) #valib juhusliku pliiatsijoone jämeduse
    begin_fill()
    circle(randint(30, 150)) #valib juhusliku ringi raadiuse
    end_fill()
    lt(50)
    i = i + 1
penup()
goto(200, -300) #viib kilpkonna soovitud punkti
pendown()
write("Tore on!", font = ("Arial", 28)) #kirjutab teksti soovitud fondiga ja fondi suurusega

exitonclick()


Koordinaatteljed



Näide 10. Koordinaadid.

from turtle import *

goto(250, -250)

exitonclick()

Näide 11. Funktsioon - silm.

from turtle import *
def silm():
    pencolor("#000000")
    fillcolor("#FFFFFF")
    begin_fill()
    circle(25)
    end_fill()

penup()
goto(-30, 0)
pendown()
silm()
penup()
goto(30, 0)
pendown()
silm()
exitonclick()

Näide 12. Ovaal.

from turtle import *

shape("circle")
shapesize(10,16, 8) # arvud(ülevalt alla, vasakult paremale), max 30, saab lisada kolmanda arvu - joone paksus
fillcolor("pink")
pencolor("red")

exitonclick()

Näide 13. Kaar.

from turtle import * 


penup()
rt(90)
down()
circle(230, 90) # arvud - (kaare pikkus, pööre kraadides)

exitonclick()


Näide 14. Nägu.

from turtle import *
speed(1)
def kulm():
    pensize(4)
    circle(100, 90)
    
penup()
goto(-50, 100)
pendown()
lt(135)
kulm()

penup()
goto(150, 100)
pendown()
rt(90)
kulm()

def silm():
    pencolor("brown")
    fillcolor("blue")
    begin_fill()
    circle(50)
    end_fill()
    
penup()
goto(-160, 80)
pendown()
silm()

penup()
goto(50, 80)
pendown()
silm()
#suu
penup()
goto(-100, -100)
pendown()
lt(90)
pencolor("red")
pensize(7)
circle(130, 90)
#näo piirjoon
penup()
goto(-200, 200)
pendown()
pencolor("brown")
circle(300)

#nina
penup()
goto(-30, -10)
pendown()
rt(45)
shape("circle")
shapesize(3, 5, 3)
pencolor("pink")
begin_fill()
fillcolor("pink")
end_fill()

exitonclick()



Näide 15. Funktsioon (ristkülik, ovaal).


from turtle import *
setup(900, 700)
def ristkülik(külg1, külg2, külg3, külg4):
    fd(külg1)
    lt(90)
    fd(külg2)
    lt(90)
    fd(külg3)
    lt(90)
    fd(külg4)
    lt(90)

pencolor("red")
fillcolor("blue")
begin_fill()
ristkülik(100, 60, 100, 60)
end_fill()
goto(400, -320)
fd(20)

penup()
goto(300, 300)
pendown()

def ovaal(kõrgus, laius, pliiats):
    shape("circle")   
    shapesize(kõrgus, laius, pliiats)
    end_fill()

pencolor("blue")
fillcolor("yellow")
begin_fill()
ovaal(3, 6, 7)
end_fill()


exitonclick()


Näide 16. Aed.

from turtle import *
setup(900, 700)

penup()
goto(-400, -300)
pendown()
def aed():
    pencolor("#cccc00")
    fillcolor("#ffff1a")
    begin_fill()
    fd(40)
    lt(90)
    fd(100)
    lt(45)
    fd(30)
    lt(90)
    fd(30)
    lt(45)
    fd(100)
    end_fill()
penup()
fd(40)
pendown()
i=0
while (i < 8):
    aed()
    penup()
    lt(90)
    fd(60)
    pendown()

    i=i+1

teisipäev, 6. veebruar 2018

Python

1. Arva, mis arvu mõtles arvuti.

Kopeeri see programm Thonnysse.

from random import randint
valik = int(input("Sisesta arv 1-10: "))
arv = randint(1, 10)
if valik == arv:
    print("Arvasid õigesti!")
else:
    print("Arvasid valesti! Proovi veel!")

2. Kui palju said sünnipäevaks raha?

raha_emalt = int(input("Kui palju kinkis ema raha? "))
raha_isalt = int(input("Kui palju kinkis isa raha? "))
raha_teistelt = int(input("Kui palju kinkis keegi teine raha? "))
raha_kokku = raha_emalt + raha_isalt + raha_teiselt

print("Ma sain sünnipäevaks " + str(raha_kokku) + "eurot.")

3. Kas kull või kiri?

from random import randint

print("Kas kull (1) või kiri (2)?")
kasutaja_valik = int(input())
suvaline_arv = randint(1, 2)

if kasutaja_valik == suvaline_arv:
    print("Arvasid õigesti.")
else:
    print("Arvasid valesti.")

4. Öö ja päev

päev = int(input("Kui pikk on tänane päev? Kirjuta: "))
öö = 24 - päev

print(öö)

5. Sõne ja arv

päev = int(input("Kui pikk on tänane päev? Kirjuta: "))
öö = 24 - päev

print(öö)

6. Sõned kokku

linn = "Tartu"
hoone = "raekoda"
kokku = linn + " " + hoone
print(kokku)

7. Tsükkel 1


print("Tere!")
print("Tere!")
print("Tere!")
print("Tere!")
print("Tere!")

8. Tsükkel 2

i = 0 
while i < 5:
    print("Tere!")

    i = i + 1

9. Tsükkel 3


sisestatud_pin = ""
while sisestatud_pin != "1234":
    print("Sisesta PIN-kood:")
    sisestatud_pin = input()
print("Sisenesid pangaautomaati!")


10. Kui, siis, paarisarv

arv = 2230
if (arv % 2 == 0):
    print("Paarisarv")
else:

    print("Paaritu arv")

11. Kui, siis, vanus


print("Kui vana oled?")
vanus = int(input())
if vanus < 14:
    print("Oled natukene noor edasipääsuks.")
else:
    print("Sisenesid võlumaailma.")

12. Tehted

AvaldisVäärtusKommentaar
6 / 32.0Tavalise jagamise tulemus on alati ujukomaarv
5 // 31Täisarvuline jagamine
5 % 32Jagamise jäägi leidmine
5 ** 3125Astendamine
4 ** 0.52.0Juurimine astendamise kaudu
round(2.6375, 2)2.64Ümardamine nõutud täpsusega
round(2.6375)3Ümardamine lähima täisarvuni
int(2.6375)2Täisarvuks teisendades ei ümardata
3 + 5 * 213Python arvestab tehete järjekorda
(3 + 5) * 216
6 - 3 - 12Sama prioriteediga tehted tehakse vasakult paremale ...
6 - (3 - 1)4
2 ** 3 ** 2512... va. astendamised, mis tehakse paremalt vasakule
(2 ** 3) ** 264

Mäng

Mängi!