Tarkade seadmete ehitamise ring 10.01.2022

PYTHON

Lihtsamad käsud

Programmeerimiseks otsi arvutist programm: Thonny
Värvikoodide valimiseks veebist: https://htmlcolorcodes.com

Näitekood:
from turtle import *
penup()
goto(-100,100)
pendown()
color(“blue”)
begin_fill()
forward(250)
right(90)
forward(50)
right(90)
end_fill()

forward(n), fd(n) – liigu edasi n sammu võrra
back(n), bk(n) – liigu tagasi n sammu võrra
left(d), lt(d) – pööra vasakule d kraadi
right(d), rt(d) – pööra paremale d kraadi
pencolor(“red”) – joone värv
pensize(d), width(d) – joone laius d
goto(x,y) – liigu punkti koordinaatidega x ja y
speed(n) – kilpkonna kiirus n kiirusega (0..10)
penup(), up() – tõsta pliiats üles
pendown(), down() – lase pliiats alla

color(“red”), color(“#008000”) – värv
fillcolor(“yellow”) – kujundi värv seest
bgcolor(“black”) – ekraani tausta värv
begin_fill() – värvimise alustamine
end_fill() – värvimise lõpetamine

circle(r) – ringi joonistamine r raadiusega
circle(100,180) – poolringi joonistamine (raadius,joone pikkus)
shape(“circle”) – ovaali tegemine
shapesize(7,2,3) – ovaali suuruse määramine (kõrgus,laius,joone paksus)
dot(d) – täpi joonistamine d diameetriga

Tähekene

from turtle import *
color(‘red’, ‘yellow’)
begin_fill()
while True:
    forward(200)
    left(170)
    if abs(pos()) < 1:
        break
end_fill()

Kilpkonnagraafika pildid

Nädala tunnitöö 16.11.20

UFO droon

OPEN ROBERTA LAB

Mine Open Roberta Lab lehel:

lab.open-roberta.org/

Ülevalt ribalt useri alt vali: Log in with user group… (Robootikaring)

Vali robotiks ja versiooniks: EV3 – EV3 leJOS 0.9.1

Vasakult poolt saab valida plokke ja need programmiks ühendada. Paremal pool saab näha, kuidas robot liigub. Valides SIM saki saab avanenud aknast valida erinevaid stseene erinevate taustade ja objektidega. Taustapilte saab ka ise lisada.

Robotit ja objekte saab ekraanil ise sobivasse kohta liigutada.

Simulatsiooniakna all oleva kolmnurga peale vajutades saab programmi käivitada.

Ülesanne 1 – värvide tuvastamine

Liiguta robotit järgemööda erinevate värvideni ja siis tagurda algusesse tagasi. Hiljem võid programmi niimoodi muuta, et robot keereb peale värvi tuvastamist ennast ümber kuni musta jooneni. Siis pöörab jälle ümber ja liigub järgmise värvini.

Siin on näide, kuidas robot sõidab sinise värvini. Täienda programmi nii, et robot liiguks kõigi värvideni.

Ülesanne 2 – plokini sõitmine

Liiguta plokk simulatsiooniaknas kõigepealt nii kõrgele, et robot jõuaks otse sõites selleni.

Pane robot niimoodi liikuma, et see sõidaks sinise plokini ja tagurdaks algusesse tagasi. Pärast võid juurde lisada, et peale ploki tuvastamist pöörab robot ringi ja sõidab õigetpidi musta jooneni välja.

PYGAME

Pythonis ekraanide tegemine ja seal mängu loomine.

Pygame dokumendid:

www.pygame.org/docs/

Akna sulgemine ristist

import pygame
pygame.init()
ekraani_pind = pygame.display.set_mode( (640, 480) )
pygame.display.set_caption("Minu esimene aken")
ekraani_pind.fill( (0,255,0) )
while True:
    pygame.display.flip()
    
    pygame.draw.circle(ekraani_pind, [0, 0, 255], [150,200], 100, 2)
    
    event = pygame.event.poll()
    if event.type == pygame.QUIT:
        break
pygame.quit()

Akna sulgemine ristist

import pygame, sys
pygame.init()
screen=pygame.display.set_mode([600,400])
pygame.display.set_caption("Mang")
screen.fill([255,255,255])
gameover = False
while not gameover:
    pygame.display.flip()

    pygame.draw.circle(screen, [0, 0, 255], [150,200], 100, 2)
    
    font = pygame.font.Font(pygame.font.match_font('arial'), 50)
    text = font.render("Hello World", True, [0,0,0])
    screen.blit(text, [200,200])

    for i in pygame.event.get():
        if i.type == pygame.QUIT:
            sys.exit()
            
pygame.quit()

Kujundid

Joon
pygame.draw.line(aken, värv, algus_pos, lõpp_pos, paksus)
pygame.draw.line(screen, [255,0,0], [100,100], [200,200], 2)


Ristkülik
pygame.draw.rect(aken, värv, [x, y, w, h], joone_paksus)
pygame.draw.rect(screen, [0, 225, 0], [50, 80, 200, 300], 2)
Kui joone paksus tühi või 0, siis täidetakse ristkülik värviga

Ring
pygame.draw.circle(screen, värv, tsentri_pos, raadius, joone_paksus)
pygame.draw.circle(screen, [0, 0, 255], [150,200], 100, 1)

Ovaal
pygame.draw.ellipse(screen, värv, [x, y, r1, r2], joone_paksus)
pygame.draw.ellipse(screen, [0, 225, 0], [50, 80, 200, 300], 2)

Hulknurk
pygame.draw.polygon(screen, värv, koordinaatide_loend, joone_paksus)
pygame.draw.polygon(screen, [255, 0, 255], [[50,50],[100,50],[100,150],[250,50],[350,250],[50,250]], 2)

Tekst

font = pygame.font.Font(pygame.font.match_font(‘arial’), 50)

# font = pygame.font.Font(None, 30)

font.set_underline(True)

font.set_bold(True)

font.set_italic(True)

text = font.render(“Hello World”, True, [0,0,0])

screen.blit(text, [200,200])

Nädala tunnitöö 08.10.19

Helios puutetundlik valgustus

Ruubiku kuubiku lahendaja robot

DASH JA DOT

Blockly

Puzzlede lahendamine

 

SCRATCH

Sünnipäevakaart

Scratch happy birthday

 

PYTHON KILPKONNAGRAAFIKA

Pythoni kirjutamiseks avada arvutis programm Thonny. Enne programmi käivitamist programm salvestada ja siis vajutada Run või F5.

Sinise ruudu tegemine:
from turtle import *
color(“blue”)
begin_fill()
forward(250)
right(90)
forward(250)
right(90)
forward(250)
right(90)
forward(250)
right(90)
end_fill()

Kilpkonnagraafika koodid:
forward(n), fd(n) – liigu edasi n sammu võrra
back(n), bk(n) – liigu tagasi n sammu võrra
left(d), lt(d) – pööra vasakule d kraadi
right(d), rt(d) – pööra paremale d kraadi
circle(r) – ringi joonistamine r raadiusega
dot(d) – täpi joonistamine d diameetriga
pensize(d), width(d) – joone laius d
goto(x,y) – liigu punkti koordinaatidega x ja y
pendown(), down() – lase pliiats alla
penup(), up() – tõsta pliiats üles
speed(n) – kilpkonna kiirus n kiirusega (0..10)
color(“red”), color(“#008000”) – muuda värvi
begin_fill() – värvimise alustamine
end_fill() – värvimise lõpetamine

Värvikoodid:

htmlcolorcodes.com 

Nädala tunnitöö 11.02.19

Puuvilja koorija ja viilutaja masin

Jengat mängiv robot

Sophia beebi õde – Little Sophia

Hanson Robotics on loonud Humanoidrobot Sophiale beebiõe Little Sophia. Tema kõrgus on 35cm. Seda kasutatakse programmeerimise õppimiseks.

 

KLAVIATUURI LÜHITEED

 

CODE HS

Karel the dog

Python

 

PYTHON

Erineva suurusega ringid

from turtle import *
color("green")
circle(35)
forward(20)
circle(45)
forward(20)
circle(55)
forward(20)
circle(65)
forward(20)
circle(75)
forward(20)

 

Nädala tunnitöö 04.02.2019

Robotkalad

BLUETOOTH

Bluetooth on loodud seadmete omavahelise traadita side jaoks ja andmete vahetamiseks. Selle lõid rootslane Sven Mattisson ja Hollandi professor Jaap Haartsen.

Juba 1980. aastatel on proovitud vähendada juhtmeid arvutite ümber, aga alles 1999. aastal avaldati esimene Bluetoothi versioon.

Nimi „Bluetooth“ valiti 10. sajandil elanud Taani viikingite kuninga Harald Blåtandi (‘Sinihammas’) järgi, kes oli tuntud kui väga hea rääkija. Alguses oli see lihtsalt koodnimi, aga hiljem see nii ka jäeti.

 

SCRATCH

Krabikook

 

PYTHON

Ring juhusliku värviga

from turtle import *
from random import randint
 
sel_col = randint(1, 3)
if sel_col == 1:
    color("blue")                  # Sinine
if sel_col == 2:
    color("black")                 # Must
if sel_col == 3:
    color("white")                 # Valge
begin_fill()                       
circle(100)                        
end_fill()                         
 
exitonclick()

Nädala tunnitöö 28.01.2019

EINSTEINI MÕISTATUS

Tänaval on üksteise kõrval viis maja. Igas majas elab erinevast rahvusest inimene. Iga maja on värvitud erinevat värvi. Iga majaomanik joob erinevat jooki, sõidab erinevat marki autoga ning omab erinevat lemmiklooma.

Järgnevate vihjete põhjal püüa välja selgitada, kellele neist kuulub kuldkala.
1. Inglane elab punases majas.
2. Rootslase lemmikloom on koer.
3. Taanlane joob teed.
4. Roheline maja on valge maja kõrval vasakul.
5. Rohelise maja omanik joob kohvi.
6. Toyotaga sõitev majaomanik peab linde.
7. Kollase maja omanik sõidab Volvoga.
8. Keskmises majas elav inimene joob piima.
9. Esimeses majas elab norrakas.
10. BMW’ga sõitev majaomanik elab selle kõrval, kes peab kassi.
11. Hobust pidav inimene elab selle kõrval, kes sõidab Volvoga.
12. Mercedesega sõitev majaomanik joob limonaadi.
13. Sakslane sõidab Subaruga.
14. Norrakas elab sinise maja kõrval.
15. BMW’ga sõitev majaomanik elab selle kõrval, kes joob vett.

Fail mõistatuse lahendamiseks

PYTHON

Täht

from turtle import *

# Defineerime funktsiooni täht, mis joonistab 
# valitud värvi ja pikkusega tähe
def täht(pikkus, värv): 
    color(värv)
    begin_fill()
    i = 0
    while (i < 5):
        fd(pikkus)
        rt(144)
        i = i + 1
    end_fill()

# Kilpkonn joonistab kollase tähe pikkusega 100 pikslit
täht(200, "yellow") 

exitonclick()

Nädala tunnitöö 21.01.2019

Võlu malelaud

Ameerika mäed

Esimese Ameerika mägede atraktsiooni ehitas ameerika leidur ja ärimees LeMarcus Adna Thompson 1884. aastal. Idee sai ta Pennsylvanias asunud Summit Hilli söekaevanduse raudteelt, kus tehti 1820. aastatel soovijatele lõbusõite. 1885. aastal New Yorgis Coney Islandi poolsaarel avatud Switchback Railway koosnes istmetest, mis liikusid 180 meetrit mööda rööpaid mäest alla. Vagunite kiirus oli umbes 10 km/h.

 

SCRATCH

Liikuv ekraanipilt punktide lugemisega

Tee nurkadesse neli uut ruudukujulist spraidi, mille puutumisel arvestatakse nurkade punkte.

Seina punktide arvestamiseks tee uus ruudukujule sprait, mis asub ekraani servades ja seest on läbipaistev.

 

SPHERO

Rakett

Programmeeri Spherole programm, mis jäljendab raketi lendu laskmist. Kõigepealt loetakse numbreid stardini, seejärel muutub Sphero värv, tekib müra ja Sphero hakkab keerutama.

Päikesesüsteem

Pane Sphero liikuma ringi nii nagu planeedid kosmoses.

PYTHON

Naerunägu

 

from turtle import *

def silm(): # Defineerime funktsiooni silmade joonistamiseks
pencolor(“#000000”)
fillcolor(“#FFFFFF”)
begin_fill()
circle(25)
end_fill()

fillcolor(“#000000”)
begin_fill()
circle(10)
end_fill()

pencolor(“#000000”) # Pea
fillcolor(“#FFFF00”)
begin_fill()
circle(100)
end_fill()

up()
bk(45)
lt(90)
fd(100)
rt(90)
down()

silm() # Vasak silm

up()
fd(90)
down()

silm() # Parem silm

up() # Suu
bk(95)
rt(90)
fd(30)
down()
circle(50,180) # Pool ringjoonest
bgcolor(“#AFEEEE”)

exitonclick()

 

MINECRAFT

Liikuvad põõsad

Shadersid, mis muudavad nii valgust kui ka liigutavad taimi. Nõrgematel arvutitel tuleks laadida lite, aga extreme’de jaoks on vaja võimsamaid arvuteid.  Motion-blur teeb ka mängu palju aeglasemaks:
www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1291396-1-6-4-1-13-2-sildurs-shaders-pc-mac-intel-vibrant

Shadersid, mis lihtsalt liigutavad taimi:
www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1288392-1-10-2-waving-plants-shaders-mod-by-regi24

Juhend shaders’ite installimiseks:
www.youtube.com/watch?v=-nKuyAqd1cQ

Vaja läheb Optifine programmi:
optifine.net/downloads