Crash Course i Programmering. HumTek, RUC



Relaterede dokumenter
Crash course i Programmering. HumTek, RUC

Crash Course i Programmering. HumTek, RUC

Penge Noget af det bedste software til kreativ kodning er freeware

Photoshop CC F u F ture tur Co C mpany an - y www. w future tur co c mpany an. y dk

Forelæsning Uge 4 Mandag

Forelæsning Uge 4 Mandag

Studiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen

Forelæsning Uge 4 Mandag

Eksempel: Skat i år 2000

Test af It-komponent

Serigrafisk tryk af bogomslag i flere farver

Michael Jokil

Programmering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale

AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007

Introduktion til ActionScript

Programmering for begyndere Lektion 2. Opsamling mm

Lær Python dag 1 - modul 1

APPENDIX A INTRODUKTION TIL DERIVE

Programmering i C. Lektion september 2009

Programmering i C Intro og grundlæggende C 5. marts 2007

Introduktion. Properties (egenskaber) Timeline (Tidslinien) Stage (hovedscenen) kan redigeres.

Datalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning

DM507 Algoritmer og datastrukturer

Vester Kopi A/S - Plotservice

Grafisk Tekniker Digitalprint. Klistermærker med og skærelinjer og metalfarver

Kapitel 3 Betinget logik i C#

Greenfoot En kort introduktion til Programmering og Objekt-Orientering

Forelæsning Uge 1 Torsdag

DM507 Algoritmer og datastrukturer

Forelæsning Uge 2 Torsdag

Klasser og nedarvning

Grafisk Tekniker Digitalprint. Klistermærker med skærelinjer

Forelæsning Uge 2 Mandag

Introduktion til Rhinoceros 3d

Indledning. Hvorfor det forholder sig sådan har jeg en masse idéer om, men det bliver for meget at komme ind på her. God fornøjelse med læsningen.

Testservice med anvendelse af Microsoft software.

Forelæsning Uge 1 Torsdag

DM507 Algoritmer og datastrukturer

Klasser og objekter. (Afsnit i manualen)

3 Tilføj printer "HP-GL/2 devices, ADI for Autodesk by HP" 5 Klik "Printer ikonet" - Print/Plot configuration

Workshop G3 MicroStation V8 XM edtion nye værktøjer 1

EDB trin 2 LAYOUT. Tekst i Paint Shop Pro 9

Indhold Nordcad Systems A/S Transmissionslinjer

Edb-tekstbehandling, præsentation mm

1. Variable og assignment

Installation af DATABOKS online backup manager

Introduktion til Calc Open Office med øvelser

Forelæsning Uge 2 Torsdag

Workshop G4 MicroStation V8 XM edtion nye værktøjer 2

Grafisk Tekniker Grundforløb. Serigrafisk tryk af smudsomslag i flere farver til hardcoverbog

Forelæsning Uge 3 Mandag

OrCAD Capture TCL IDE med Eclipse

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

02101 Indledende Programmering Introduktion til Eclipse

Forelæsning Uge 4 Torsdag

Forelæsning Uge 2 Torsdag

Pointers. Programmering i C. 11. december Lektion 5. Eksempel: denne plads. Getting the address of a variable:

Klik på menupunktet Format og herunder Units (eller skriv units på kommandolinien)

Brugervejledning til laserskærer

Prepress Serigrafi Grafisk Tekniker Grundforløb. Opgave: Klistermærker i flere farver

Dokumentation af programmering i Python 2.75

Grafisk Tekniker Digitalprint

Patientlister. Tilføj / rediger eksisterende lister. VEJLEDNING Patientlister

Workshop G8 Tasks og Templates

Mircobit Kursus Lektion 2

ØVELSESRÆKKE OG VEJLEDNING TIL CD-ORD 5

Kommuniker: Gennem Valg

Kom igang med Scroll:bit

Vejledning til Photofiltre nr.176 Side 1 Lave top til en hvor foto bliver drejet lidt, og lagt tekst på

Forelæsning Uge 2 Torsdag

Print vejledning af Skærmkort i QGIS Kortforsyningen WMS Vejledning til print i QGIS efter der er oprettet forbindelse til Skærmkort WMS service

Kompendium til Geogebra

Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge:

Start på Arduino og programmering

Frit efter Henning P, Ishøj

Programmering i C. Lektion september 2009

Photofiltre nr. 85 Lave grafikbillede hvor vi bruger plugins side 1

Vejledning til Photofiltre nr.194 Side 1 Lave en juletop til at sætte ind foroven på en Start med at gå op og vælge NY

Indholdsfortegnelse PSpice modul 3. Forudsætninger. Forberedelse til øvelser

PowerPoint Kursusmateriale til FHF s kursister

Sproget Six. Til brug i rapportopgaven på kurset Oversættere. Vinter Abstract

Software Construction 1 semester (SWC) Spørgsmål 1

Øvelser til Kemometri

DM507 Algoritmer og datastrukturer

Tastemanual til Webbyggeren

Offset til terminalskærm i Java

Scratchdag 16. maj Lær at programmere med scratch

Forelæsning Uge 2 Mandag

Adobe InDesign 1.5. Service & Kommunikation HTX / Viby

Forelæsning Uge 2 Mandag

Sådan starter du PowerPoint vha. Start-knappen

Vejledning til listings-pakken

Øvelser rundt på computeren

Kom hurtigt i gang. med. FloorPlan 3D. FloorPlan 3D er et program med mange anvendelsesmuligheder!

Online kursus: Programming with ANSI C

MS Visual Studio Basic En kort vejledning

Her vælger du den øverste skabelon og trykker på Download. Hvis du bruger Windows egen Browser Edge kommer dette frem hvor du trykker Åbn

Fundamentale sprogbegreber

Indhold Indledning... 2 A3 plakat fra tom side... 3

Magic Systems. Byg et lille hus med Magic Systems

Transkript:

Crash Course i Programmering HumTek, RUC

Kursus mål At give en basal introduktion til programmering i sproget Processing At give et overblik over sprogets potentiale At have det sjovt :-)

Kursus form Meget kompakt/intensivt: Kun 3 forelæsninger Enkelte øvelser indlagt undervejs Forberedelse hjemmefra Udbytte kræver en indsats(!)

At komme i gang... Download og installer Processing Download processing fra: http://processing.org/download/index.html eller kopier på anden måde unzip til foretrukken folder fx C:\Program Files opret evt et shortcut t i startmenuen eller andetsteds til processing.exe start Processing (brug shortcut eller dobbeltklik på processing.exe)

... At komme i gang kopier følgende program og sæt det ind i et Processing vindue size(400, 400); background(192, 64, 0); stroke(255); line(150, 25, 270, 350); kør programmet

... At komme i gang size(400, 400); background(192, 64, 0); stroke(255); line(150, 25, 270, 350);

PDE (Processing Development Environment) simpel editor vigtigste funktionalitet tilgængelig som knapper og menu: run stop new open save export

Processing Processing er først og fremmest et programmeringssprog appellerer også som visuelt udtryksmiddel og er særdeles brugbart til data visualisering. Processing et selvstændigt sprog, men også en slags skal uden på Java (samme syntaks) giver en intuitiv iti vej til visuel programmering derfor også velegnet til introduktion til programmering

program = "sketch" Programmer producerer tegninger / skitser To vigtigste måder et program kan køre på: Basic Mode producerer et enkelt billede opbygges som en liste af sætninger når billedet vises slutter programmet Continous Mode giver mulighed for animation og interaktion opbygges med standard-funktioner setup() - kaldes een gang (initalisering) draw() - kaldes løbende programmet slutter ikke, men kører indtil det bliver afbrudt

Eksempel, Basic Mode" size(400, 400); background(192, 64, 0); stroke(255); line(150, 25, 270, 350);

Eksempel, "Continous Mode" void setup( ) { size(400, 400); stroke(255); background(192, 64, 0); } void draw( ) { line(150, 25, mousex, mousey); }

Kursus materiale Processing web-site http://processing.org http://processing.org/reference http://processing.org/learning Processing-programmet (PDE'en): Help, Examples,... En god bog (med pdf-smagsprøve): Processing A Programming Handbook for Visual Designers and Artists, Casey Reas and Ben Fry, MIT press, Kursets hjemmeside: http://akira.ruc.dk/~jmid/crash/

PDE'en og processing.org Brug http://processing.org den er fyldt med information Brug PDE'en 'Referencen' er indbygget: Marker et ord Højreklik Vælg 'Find in Reference'

Let the crash begin

Structure 1: Kode-elementer Kommentarer - to måder // dette er en kommentar på een linie /* dette er en kommentar der strækker sig over flere linier */ Funktioner det meste af sproget er realiseret i funktioner, fx size(), background(), point(), line(), ellipse(),... parameter angives for funktion adskilles af kommaer, hvis flere parametre fx /* her kommer en grå baggrund på en sketch på 200 gang 200 punkter */ size(200,200); background(102);

Udtryk (expression) element i sproget der har en værdi: 5 17.7 3 + 5 ((3 + 5) * 7) + 1 "en prøve" "dette" + " er " + "en prøve" 6 > 3 6 < 3

Sætning (statement) enhed i sproget med bestemt betydning/effekt afsluttet med semikolon ";" fx funktionskald som: background(102); background((20-3) * 7 17); println("dette" + " er " + "en prøve");

Udskrivning - 2 steder på sketch'en point(), line(), ellipse(),... på konsollen print(), println() println("processing..."); println(10+20+30); print(10); println(20); println(30); println("dette" + " er " + "en prøve");

Structure 1 Opgaver Opg A Skriv et program der udskriver værdien af udtrykkene 3+4*2 30 + " kroner" sæt passende kommentarer ind Bogen s 21 opg 2 (Skriv et program der danner et 640*480 vindue med sort baggrund)

Shape 1: Koordinater Koordinater i display-vindue Egenskaber ved vindue size(), background(),

Punkt og linie point(), line(), Flader rect(), triangle(), quad(), ellipse(), Kurver bezier() Primitive former

Kurver??? Kurver bezier() Hvad er det? check matematikken eller eksperimenter: nofill(); stroke(255, 102, 0); line(85, 20, 10, 10); line(90, 90, 15, 80); stroke(0, 0, 0); bezier(85, 20, 10, 10, 90, 90, 15, 80); void draw(){ background(200); nofill(); stroke(255, 102, 0); line(85, 20, mousex, mousey); line(90, 90, 15, 80); stroke(0, 0, 0); bezier(85,20,mousex, mousey, 90, 90, 15, 80); }

Egenskaber Fyld-farve fill() nofill() Streg-farve stroke() nostroke() Streg-tykkelse strokeweight() Form på streg-ende strokecap() ROUND, SQUARE, eller PROJECT Form på streg-samling strokejoin() MITER, BEVEL, eller ROUND

Egenskaber Pæn tegning smooth() tegn med "blød" grafik altså uden hakker på kanter og streger (anti-aliased) nosmooth() slå smooth fra (mere effektivt) Ændring af parameterbetydning ellipsemode() rectmode()

Shape 1 Opgaver Opg A Tegn en tændstiksmand Opg B Giv ham en mave - fx som en trekant Opg C Ret tændstiksmanden, så han tegnes med tykke streger med afrundede kanter og samlinger Opg D Tegn et stort "S", der fylder det meste af vinduet Opg E Tegn på sort baggrund et hvidt øje med sort iris og hvid pupil

Data 1: Data og variable Data information på digital form mange forskellige slags numre tekst datoer billeder... Datatype en bestemt slags data Datatyper i Processing, bl.a. int heltal 17 float decimaltal 17.24 boolean sandhedsværdi true, false

Data 1: Data og variable øvrige datatyper(som vi vender tilbage til) primitive color char byte sammensatte String Array Object

Data 1: Data og variable Variabel en slags pladsholder af given datatype int X; Tilskrivning (assignment) "=" X = 17; Processing variable width, height int x; // Declare the variable x of type int float y; // Declare the variable y of type float boolean b; // Declare the variable b of type boolean x = 50; // Assign the value 50 to x y = 12.6; // Assign the value 12.6 to f b = true; // Assign the value true to b int x = 50; float y = 12.6; boolean b = true;

Data 1 Opgaver Bogen s 41 opg 1 og 2 Opg A Hvordan tegner man en streg fra øverste venstre hjørne til nederste højre af vinduet - som virker uanset hvad size er blevet kaldt med? Opg B Erklær to variable X og Y og sæt X til den halve bredde på vinduet og Y således at den er 1.2 større X. Tegn en cirkel med radius på 1/4 af vindues-bredden og centrum i (X,Y) Opg C Test Opg B med forskellige vindues-størrelser

Math 1: Aritmetik Aritmetiske udtryk kan skrives med +, -, *, /, %, og paranteser + (addition) - (minus) % (modulo) / (divide) (multiply) () Hvad er "operator precedens"? *, /, % +, - =

Aritmetik Forkortet skrivemåde ved tilskrivning ++, --, +=, -=, *=, /= ++ (increment) -- (decrement) += (add assign) -= (subtract assign) *= (multiply assign) /= (divide assign) Funktioner ceil() floor() round() abs() sq() sqrt() pow() min() max()

Math 1 Opgaver Bogen side 50 opg 1 og 2 Opg A Hvad udskriver følgende program int X=0; println(x++); println(x++); X=X+9; println(x); X=X-2; println(x); X=X/3; println(x); X=X*6; println(x);

Dagens debugging