---
# System prepended metadata

title: Prva samostojna vaja

---

# Prva samostojna vaja
## Ponovitev snovi

Processing: https://py.processing.org/

```python=

# setup funkcija se pokliče samo ob zagonu progama
def setup():
   global my_var     # najprej povemo da bo globalna 
   my_var = 10       # nato jo inicializiramo

    

# globalno spremenljivko lahko spreminjamo v drugih funkcijah

# če ne verjameš probaj brez global =)

# draw funkcija se kliče 30-60 na sekundo
def draw():
   global my_var     # če želimo spremeniti vrednost, rabimo global
   my_var += 1       # spreminjamo vrednost globalne sprmenljivke

def other_func():
   print(my_var)     # če samo beremo, ne rabimo global



# Barve:
fill(255, 0, 0)       # rdeča
fill(255, 100)        # bela s prosojnostjo
fill(120,120,120, ??)# kaj je ?? parameteri (dokumentacija)
stroke(0, 255, 0)     # zelena obroba
noStroke()            # brez obrobe

# Risanje:
circle(100, 100, 50)  # krog na (100,100) velikosti 50
rect(0, 0, 50, 50)    # kvadrat v levem zgornjem kotu



# Dogodki:
if mousePressed:                # ko držimo miško
   circle(mouseX, mouseY, 20)  # rišemo kroge

def mouseWheel(event):         # ko vrtimo kolešček
   if event.getCount() > 0:   # če vrtimo naprej
       size += 1              # povečamo velikost

def keyPressed():             # ko pritisnemo tipko
   if key == ' ':            # če je presledek
       background(255)       # pobrišemo zaslon
        
# Dokumentacija naj bo tvoja prijateljica
# V njej najdeš opis funkcije in uporabo

# Najdeš jo na https://processing.org/reference
```

## Naloga - slikar 0.1




1. OSNOVA:
- Nastavi velikost okna in belo ozadje
- Naredi globalne spremenljivke za velikost kroga
- Ko držimo miško, naj se izriše krog na poziciji miške

2. INTERAKCIJA:
- Z miškinim koleščkom spreminjamo velikost kroga, ki ga rišemo pod miško
- Ob miškinem kliku spremeni barvo na random barvo
- Tipka F zmanjša prosojnost kroga
- Tipka D poveča prosojnost kroga
- Presledek pobriše zaslon


BONUS:
- Dodaj omejitve vrednosti prosojnosti (med 0 in 1 ), poglej funkcijo constraints()
- Dodaj kontrolo obrobe (stroke)
- Shrani sliko na tipko S



Rešitve:

```python=
r = 1
a = 255
def setup():
    size(600,600)
    noStroke()
    
def draw(): # uporabimo barvo iz spremenljivke col
    if mousePressed:
        circle(mouseX, mouseY, r)
    
def mousePressed():             # ko pritisnemo tipko nastavimo random barvo
    global a
    fill(random(255), random(255), random(255), a)

def mouseWheel(event): 
    global r
    e = event.getCount()  # preverimo scroll up/down
    r += e*10
    
def keyPressed():             # ko pritisnemo tipko
   global a
   if key == ' ':            # če je presledek
       background(255) 
   elif key == "f":
       a-=10
   elif key == "s":
       a+=10
       
```
