py•LABCreative Coding LabPython · former · bevægelse ← Alle laboratorier

6 NIVEAUER · 60 ØVELSER · DINE EGNE IDÉER

Lær Python. Tegn det, du tænker.

Et p5.js-inspireret tegnemiljø med rigtig Python. Begynd med en cirkel, giv den liv med kode, og byg dig frem til rekursive mønstre.

    Et lille hint

    Se løsningsforslag

    Der findes flere rigtige løsninger. Sammenlign med din egen kode.

    Klar · tryk Kør sketchCtrl/⌘ + Enter kører koden

    DIN PYTHON-KODE

    Tab: 4 mellemrum · Esc: forlad editor

    LÆRRED

    720 × 500
    Din browser skal understøtte canvas for at vise tegningen.
    mus 0, 0tast —frame 0

    (0, 0) er øverst til venstre. x går mod højre, y går nedad. Klik på lærredet for tastaturinput.

    KONSOL / FEJL

    Her vises print() og Python-fejl med linjenummer.

    Din lille Python-tegnebog

    Funktionerne er klar i laboratoriet. Du behøver ingen import for at tegne. Gemte .py-filer kan åbnes her igen; tegnefunktionerne kræver dette laboratorium.

    Et program, der lever

    def setup():
        background("#07111f")
    
    def draw():
        background("#07111f")
        circle(mouseX, mouseY, 40)

    setup() kører én gang. draw() kører op til 60 gange i sekundet. background() rydder tidligere tegninger. Brug global x, hvis en funktion skal ændre en global variabel.

    Former og farver

    circle(x, y, diameter)
    ellipse(x, y, bredde, højde)
    rect(x, y, bredde, højde)
    line(x1, y1, x2, y2)
    triangle(x1, y1, x2, y2, x3, y3)
    text(tekst, x, y, størrelse=18)

    fill("#45e6c4") eller fill(69, 230, 196). Gråtoner: fill(200). Gennemsigtighed: fill(69, 230, 196, 100) (0–255). Også stroke(), stroke_weight(3), no_fill() og no_stroke().

    Bevægelse og input

    width, height, frameCount, mouseX, mouseY, mouseIsPressed, key, keyIsPressed.

    Hændelser: def mouse_pressed():, mouse_released(), key_pressed(), key_released().

    translate(x, y), rotate(radianer), scale(faktor), push() og pop() gemmer og gendanner både farver og koordinatsystem. no_loop() standser animationen, loop() starter den igen.

    Python + p5-idéer

    import math og import random giver matematik og tilfældige tal. PI, TWO_PI, sin(), cos(), sqrt(), radians() og dist(x1,y1,x2,y2) er også klar.

    create_canvas(720, 500) ændrer lærredet (højst 1600 × 1200). frame_rate(30) ændrer tempoet. p5-navne som createCanvas, noStroke, strokeWeight, mousePressed og noLoop virker også.

    Rigtig Python via Pyodide 0.29.2. Internet kræves ved indlæsning. Stop-knappen kan også afbryde en uendelig løkke.