VTK - The Visualization Toolkit. Del 1 Introduksjon til VTK VTK. Objektorientering (OO) i C++ Objekt-orientert bibliotek for visualisering Fordeler:

Størrelse: px
Begynne med side:

Download "VTK - The Visualization Toolkit. Del 1 Introduksjon til VTK VTK. Objektorientering (OO) i C++ Objekt-orientert bibliotek for visualisering Fordeler:"

Transkript

1 VTK - The Visualization Toolkit Del Introduksjon til VTK Objekt-orientert bibliotek for visualisering Fordeler: Fritt tilgjengelig Stor brukergruppe Godt designet, testet og dokumentert (se VTK brukermanual på kurssiden!) Rik funksjonalitet, fleksibelt Pedagogisk! Portabelt (MS Windows, SGI, Sun, Linux...) Kan brukes fra flere vertsspråk (C++, Tcl/Tk, Python, Java,...) Mulighet for utvidelser med egne C++ klasser INF2340 / V04 2 VTK Ulemper: Dårlig ytelse (i mange tilfeller) Utnytter ikke visse typer maskinvare for grafikk... Til dels dårlig dokumentasjon... Objektorientering (OO) i C++ En klasse er en datatype med tilstand (variable, data, datastrukturer,...) algoritmer for å endre tilstanden (prosedyrer, funksjoner, metoder, operasjoner,...) Et objekt er en instansiert klasse (instans av en klasse) INF2340 / V04 3 INF2340 / V04 4

2 Eksempel Litt notasjon for OO-modellering class Adder { public: void Add(int x, int y) {sum = x + y;} int GetSum() {return sum;} private: int sum; }; Adder a; a.add(3, 4); cout << a.getsum() << \n ; A B En klasse Et objekt (instans av klassen A) A A er en generalisering av B (A er en superklasse (baseklasse) av B) B er et spesialtilfelle av A (B er en subklasse (avledet klasse) av A) A B A har kjennskap til B (assosiasjon) (Egentlig: A har behov for å kjenne til B!) A Adder* a2 = new Adder; a2->add(5, 6); cout << a2->getsum() << \n ; INF2340 / V04 5 A B A og B har kjennskap til hverandre (toveis assosiasjon) A B A består av B, B er en del av A (aggregering - spesiell form for assosiasjon) INF2340 / V04 6 A A A osv. Litt OO notasjon (forts.) B A består av nøyaktig én instans av B 0.. B A består av null eller én instans av B 0..* B A består av null eller flere instanser av B VTK - Overordnet Arkitektur..*..*..*..*..*..* 0..* 0.. Tilsvarende for assosiasjon! INF2340 / V04 7 INF2340 / V04 8 2

3 *..*..*..* 0..*..*..*..*..*..*..* 0..*..*..* Ansvarlig for opptegning av all grafikk i et hovedvindu. Håndterer mus- og tastaturhendelser ( events ). Gir -objektet beskjed om ny opptegning der typisk verdier i objektene er endret. INF2340 / V04 9 INF2340 / V *..*..*..* 0..*..*..*..*..*..*..* 0..*..*..* Representerer et geometrisk objekt i en 3D scene. Mange operasjoner utføres på en 3D aktør som helhet, bl.a. skjuling, deformering og rotasjon. Definerer egenskaper for flaten til en 3D aktør, deriblant farge hvordan lys reflekteres representasjonsform ((fylte) polygoner, linjer eller punkter) transparens INF2340 / V04 INF2340 / V04 2 3

4 *..*..*..* 0..*..*..* Representerer sluttproduktet i i form av et sett med grafiske primitiver. Flere detaljer om kommer senere!..*..*..*..* 0..*..*..* Ansvarlig for å lage et 2D bilde av 3D aktørene eller 2D aktørene vtkviewport..*..* 2D INF2340 / V04 3 INF2340 / V *..*..*..* 0..*..*..*..*..*..*..* 0..*..*..* Definerer en lyskilde for belysning av 3D aktørene. En lyskilde kan bl.a. ha farge og plassering. Definerer synsvinkelen vi betrakter 3D aktørene med. Bl.a. kan graden av perspektiv manipuleres. INF2340 / V04 5 INF2340 / V04 6 4

5 Instansiering av objekter VTK-objekter skal alltid instansieres med New og slettes med Delete! * rdr = ::New(); rdr->delete(); Pga. Dynamisk minnehåndtering garbage collection Korrekt instansiering av subklasser (se kap. 3.0 i VTK-boka)... INF2340 / V04 7 Sammenkobling av objekter SetRenderWindow 0.. AddRenderer..*..* AddActor..*..*..* SetMapper AddLight..* SetActiveCamera 0..* SetProperty Disse instansieres (og kobles opp) automatisk INF2340 / V04 8 Sammenkobling av objekter i SetInput GetOutput vtkspheresource vtkspheresource* ssphere = vtkspheresource::new(); vtkpolydatamapper* msphere = vtkpolydatamapper::new(); msphere->setinput(ssphere->getoutput()); Mer om dette senere! Typisk hovedstruktur i et C++/VTK program i IN229 // Inkludering av nødvendige filer // *** Hovedprogram *** main() { // - Instansiér og koble sammen, og // evt. objekter. // - Instansiér aktør objekter og deres tilhørende visualization // pipelines // - Koble aktør objektene til objektet/objektene // - Sett opp vinduet og start evt. mus/tastatur interaksjon } Se pekeren Kompilering av... på kurs-siden for et eksempel (sphere.c) INF2340 / V04 9 INF2340 / V

6 VTK så langt Nok informasjon til å lage enkle programmer der fokus ikke er på visualization pipeline Bruk manualsidene! Del 2 Grafisk databehandling INF2340 / V04 2 Lys Elektromagnetisk energi med bølgelengde i intervallet 400- til 700 nm (0-9 m) Kosmisk stråling Gamma stråling Røntgen Ultrafiolett Infrarødt Mikrobølge Radar Radio (nm) Fargen til et objekt Definert som bølgelengdene det reflekterer eller transmitterer (genererer selv) Synlig lys (nm) INF2340 / V04 23 INF2340 / V

7 Fargeoppfattelse Defineres typisk vha. tre størrelser: dominerende bølgelengde Akromatisk lys (gråtoner) Ingen dominerende bølgelengde Metning lik null metning ( avstand fra grått) intensitet ( lyshet ) INF2340 / V04 25 INF2340 / V04 26 Øyet To typer fotoreseptorer: staver ( rods ) aktive ved svakt lys (om natten etc.) oppfatter mest gråtoner tapper ( cones ) aktive ved normalt lys oppfatter alle farger (inkl. gråtoner) tre typer - mest sensitive for hhv. blått, grønt og rødt Bølgelengde (nm) fiolett! INF2340 / V04 27 INF2340 / V

8 Fargesyntese Additiv kombinasjon av farget lys dataskjermer totalfargen lysere (mer intens) og mer mettet enn enkeltkomponentene modeller: RGB, HSV Subtraktiv refleksjon fra kombinasjon av fargede pigmenter printere totalfargen mørkere (mindre intens) og mindre mettet enn enkeltkomponentene modeller: CMY(K) INF2340 / V04 29 Fargemodeller (-rom) RGB-kuben Blue (0, 0, ) Cyan (0,, ) Magenta (, 0, ) White (,, ) Gråtoner Black (0, 0, 0) Green (0,, 0) Red (, 0, 0) Yellow (,, 0) INF2340 / V04 30 Basiskomponenter: R (red), G (green) og B (blue) Additiv syntese Fargeskjermer Fargen oppfattes som hvit når hver komponent har full intensitet Fargen oppfattes som sort når hver komponent har null intensitet CMY(K)-kuben Yellow (0, 0, ) Red (0,, ) Green (, 0, ) Black (,, ) Gråtoner White (0, 0, 0) Magenta (0,, 0) Cyan (, 0, 0) Blue (,, 0) INF2340 / V04 3 INF2340 / V

9 Basiskomponenter: C (cyan), M (magenta) og Y (yellow) Subtraktiv syntese Printere Fargen oppfattes som sort når hver komponent har full intensitet Fargen oppfattes som hvit når hver komponent har null intensitet I praksis (trykkeribransjen) brukes en fire-farge teknikk med sort (K) som en fjerde farge Fordeler med kubemodellene Enkel geometri Korresponderer direkte med maskinvare (RGB-kanonene i skjermen effektiv! INF2340 / V04 33 INF2340 / V04 34 Ulemper med kubemodellen En gitt RGB-verdi vil ikke nødvendigvis gi samme farge på andre skjermer! RGB kan i praksis ikke overføres direkte til CMY kun ved å ta inversen (R = - C) Sammenhengen mellom forskjell i fargeoppfattelse og geometrisk avstand mellom to fargepunkter varierer med hvor i kuben man er (f.eks. enklere å skille farger i det lyse hjørnet!) Representerer styrken på RGB-kanonene i skjermen i større grad enn hvordan fotoreseptorene i øyet oppfatter farge Ikke spesielt intuitiv! HSV-modellen Basert på kunstmaler-modell Blanding med hvitt Ren farge Blanding med både hvitt og sort Gråtoner Blanding med sort INF2340 / V04 35 INF2340 / V

10 HSV = generalisert kunstmaler-modell: V Green 20 Yellow 60 Cyan 80 White.0 Red 0 Blue 240 Magenta 300 Fordeler med HSV-modellen Intuitiv! Enkel geometri (nesten like enkel som RGB) Enkel algoritme for å konvertere til RGB Basiskomponenter: H (hue), S (saturation) og V (value) Additiv syntese Fargeskjermer Black 0.0 H S INF2340 / V04 37 INF2340 / V04 38 Ulemper med HSV-modellen En gitt HSV-verdi vil ikke nødvendigvis gi samme farge på andre skjermer! Sammenhengen mellom forskjell i fargeoppfattelse og geometrisk avstand mellom to fargepunkter varierer med hvor man er (spesielt langs hue -dimensjonen: langsommere endringer ved RGB-vinklene) Aksene oppfattes ikke som helt ortogonale (uavhengige). F.eks. vil ulike punkter i HS-planet kunne gi litt ulik intensitet selv om V er numerisk konstant. RGB vs HSV RGB (red, green, blue) and HSV (hue, saturation, value) colour systems. Color RGB HSV Black 0,0,0 *,*,0 White,, *,0, Red,0,0 0,, Green 0,,0 0.33,, Blue 0,0, 0.67,, Sky Blue 0.5,0.5, 0.67,0.5, INF2340 / V04 39 INF2340 / V

11 Basal Maskinarkitektur for Rastergrafikk Frame buffer Grensesnitt mot vertsmaskin Grafikk kommandoer Display controller Video controller Interaksjons data Mus / Tastatur Pixel (picture element) INF2340 / V04 4 Skjermoppløsning vs. pixeldybde Skjermoppløsning = antall pixler Pixeldybde = antall bit pr pixel F.eks. en skjerm med oppløsning 280x024 og pixeldybde 24, krever 3.75 MB RAM Skjermoppløsning Pixeldybde INF2340 / V bits fargebuffer s fargebuffer - alternativ Video controller Video controller 2 bit Blue 3 bit Green 3 bit Red (2 8 ) 3 = 6,777,26 ulike farger i et enkelt pixel ubegrenset antall ulike pixler (med dagens skjermoppløsning!) 2 8 = 256 ulike farger i et enkelt pixel 2 8 = 256 ulike pixler INF2340 / V04 43 INF2340 / V04 44

12 s fargebuffer - alternativ 2 (bedre) 0 Colormap (Lookup Table) 24 bit (2 8 ) 3 = 6,777,26 ulike farger å velge mellom 2 8 = 256 ulike pixler 255 Video controller 24 bit Annen bruk av frame buffer et Bl.a. Dobbeltbuffering (animasjon etc.) Z-verdi (skjulte flater) Alpha-verdi (transparens) Mer om dette senere! INF2340 / V04 45 INF2340 / V04 46 Grafiske primitiver Linje og triangel-polygon i VTK Fundamentale Punkt (node) Linje (kant) Mer komplekse Polylinje Polygon vtkpolydatamapper vtklinesource vtkpolydata vtkpolydata vtkpolydatamapper vtkfloatpoints vtkcellarray vtkidlist (x, y, z) ID = 2 (x, y, z) ID = 0 (x, y, z) ID = INF2340 / V04 47 INF2340 / V

13 3D primitiv Projisering Rasterisering Å avgjøre hvilke pixler som blir dekket av et 3D primitiv ( scan-konvertering ) Å utføre diverse operasjoner relatert til enkelt-pixler (f.eks. korrekt fargelegging i forhold til belysning) Aliasing (kap. 7.5 VTK-boka) Rasteriserte primitiver ser generelt taggete ut Rasterisering D primitiv Rasterisert 2D primitiv Ideelt I praksis INF2340 / V04 49 INF2340 / V04 50 Antialiasing La primitivet ha tykkelse lik en pixelbredde. La bidraget w til forgrunnsfargen i et pixel være proporsjonal med arealet som dekkes av primitivet: % dekningw = 0... Resultatfargen i pixelet er da essensielt gitt ved wf + (-w)b, der f og b er hhv. for- og bakgrunnsfargen % av pixel-areal w = Objektrom Objekt- og bilderom (kap 3.6 i VTK-boka) Modell-koordinater (model-) Verdens-koordinater (world-) Bilderom Syns-koordinater (view-) Skjerm-koordinater (display-) Det finnes også andre metoder INF2340 / V04 5 INF2340 / V

14 Objektrom z Transformasjon y Bildeplan Bilderom x Transformasjon Transformasjon Verdens-koordinater y z y Syns-koordinater x z y z y y z x x x Objekt (f.eks. en VTK actor ) Bilde (f.eks. en PC-skjerm) Modellkoordinater z x x y z Transformasjon Skjerm-koordinater INF2340 / V04 53 INF2340 / V04 54 Objekt- og bilderekkefølge (kap. 3. i VTK-boka) Klassifikasjon av algoritmer som avbilder informasjon i objektrommet på bildeplanet: Objektrekkefølge Kontstruer bildet ved å gå systematisk gjennom ett og ett objekt. Bilderekkefølge Konstruer bildet ved å gå systematisk gjennom ett og ett pixel. Scanning av CRT (Cathode Ray Tube) Frame buffer Video controller Elektronkanoner mot rødt, grønt og blått fosfor Scan linje Vertikal retrace Horisontal retrace INF2340 / V04 55 INF2340 / V

Visualiseringsdelen - Oppsummering

Visualiseringsdelen - Oppsummering Visualiseringsdelen - Oppsummering Fenomen/prosess Visualisering i inf2340 Måling Mat. modell Simulering inf2340 - Simuleringsdelen inf2340 - Visualiseringsdelen 1.23E-08 2.59E-10 3.04E-08 3.87E-09 7.33E-06

Detaljer

Fargebilder. Lars Vidar Magnusson. March 12, 2018

Fargebilder. Lars Vidar Magnusson. March 12, 2018 Fargebilder Lars Vidar Magnusson March 12, 2018 Delkapittel 6.1 Color Fundamentals Delkapittel 6.2 Color Models Delkapittel 6.3 Bildeprosessering med Pseudofarger Delkapittel 6.4 Prosessering av Fargebilder

Detaljer

Del 1: Introduksjon til VTK. Visualiseringsdelen - Oppsummering. Del 2: Grafisk databehandling. "Visualization Pipeline" "Rendering Pipeline"

Del 1: Introduksjon til VTK. Visualiseringsdelen - Oppsummering. Del 2: Grafisk databehandling. Visualization Pipeline Rendering Pipeline Del 1: Introduksjon til VTK Visualiseringsdelen - Oppsummering INF2340 / V04 2 vtkrenderwindow vtkrenderer Del 2: Grafisk databehandling INF2340 / V04 3 INF2340 / V04 4 1 Lysogfarge ñ ÿ yets oppfattelse

Detaljer

INF 1040 høsten 2008: Oppgavesett 11 Farger (kapittel 15)

INF 1040 høsten 2008: Oppgavesett 11 Farger (kapittel 15) INF 1040 høsten 2008: Oppgavesett 11 Farger (kapittel 15) Fasitoppgaver Denne seksjonen inneholder innledende oppgaver hvor det finnes en enkel fasit bakerst i oppgavesettet. Det er ikke nødvendigvis meningen

Detaljer

INF våren 2017

INF våren 2017 INF1010 - våren 2017 Om Java Objekter og klasser Både for deg som kan og for deg som ikke kan Java Stein Gjessing Universitetet i Oslo Ny versjon etter forlesningen der tre meningsløse private modifikatorer

Detaljer

IN våren 2019 Onsdag 16. januar

IN våren 2019 Onsdag 16. januar IN1010 - våren 2019 Onsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel

Detaljer

IN våren 2018 Tirsdag 16. januar

IN våren 2018 Tirsdag 16. januar IN1010 - våren 2018 Tirsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel

Detaljer

Skalar-til-farge korrespondanse. Del 5 Visualisering av skalarfelt. Regnbue-skalaen

Skalar-til-farge korrespondanse. Del 5 Visualisering av skalarfelt. Regnbue-skalaen Skalar-til-farge korrespondanse Del 5 Visualisering av skalarfelt Skalar-intervallet i datasettet korresponderer med en fargeskala s max egnbue ød til Gråtoner s min Sort/hvitt utskrift! INF340/ V04 For

Detaljer

Farger. Introduksjon. Skrevet av: Sigmund Hansen

Farger. Introduksjon. Skrevet av: Sigmund Hansen Farger Skrevet av: Sigmund Hansen Kurs: Processing Tema: Tekstbasert Fag: Matematikk, Programmering, Kunst og håndverk Klassetrinn: 8.-10. klasse, Videregående skole Introduksjon På skolen lærer man om

Detaljer

Kantdeteksjon og Fargebilder

Kantdeteksjon og Fargebilder Kantdeteksjon og Fargebilder Lars Vidar Magnusson April 25, 2017 Delkapittel 10.2.6 More Advanced Techniques for Edge Detection Delkapittel 6.1 Color Fundamentals Delkapittel 6.2 Color Models Marr-Hildreth

Detaljer

HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning

HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning Eksamen i SOD 165 Grafiske metoder Klasse : 3D Dato : 15. august 2000 Antall oppgaver : 4 Antall sider : 4 Vedlegg : Utdrag fra OpenGL Reference Manual

Detaljer

Fargetyper. Forstå farger. Skrive ut. Bruke farger. Papirhåndtering. Vedlikehold. Problemløsing. Administrasjon. Stikkordregister

Fargetyper. Forstå farger. Skrive ut. Bruke farger. Papirhåndtering. Vedlikehold. Problemløsing. Administrasjon. Stikkordregister Skriveren gir deg mulighet til å kommunisere i farger. Farger tiltrekker seg oppmerksomhet og gir trykt materiale og informasjon større verdi. Bruk av farger øker lesbarheten, og dokumenter med farger

Detaljer

Inf109 Programmering for realister Uke 5. I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse.

Inf109 Programmering for realister Uke 5. I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse. Inf109 Programmering for realister Uke 5 I denne leksjonen skal vi se på hvordan vi kan lage våre egne vinduer og hvordan vi bruker disse. Før du starter må du kopiere filen graphics.py fra http://www.ii.uib.no/~matthew/inf1092014

Detaljer

Grafisk pakke dataseminar ARK6 12.feb 2008

Grafisk pakke dataseminar ARK6 12.feb 2008 Farger Fonter Raster og vektor Filtyper Komprimering Programmer FARGER : RGB-SKJERM - additiv fargemodell beregnet for bruk i skjerm, scanner og digitalkamera - Ulikt forhold mellom Rød, Grønn og Blå skaper

Detaljer

Kartografisk formidling. Fargar og Visuelle variablar

Kartografisk formidling. Fargar og Visuelle variablar Kartografisk formidling Fargar og Visuelle variablar FARGER Fysikalsk Fysiologisk Psykologisk Synleg lys Synlig område for bølgelengder er mellom 380 og 740 nm (nanometer 10-9 m) Fargene varierer med lyskilden

Detaljer

INF Stikkord over pensum til midtveis 2017 Kristine Baluka Hein

INF Stikkord over pensum til midtveis 2017 Kristine Baluka Hein INF2310 - Stikkord over pensum til midtveis 2017 Kristine Baluka Hein 1 Forhold mellom størrelse i bildeplan y og "virkelighet"y y y = s s og 1 s + 1 s = 1 f Rayleigh kriteriet sin θ = 1.22 λ D y s = 1.22

Detaljer

Teksturering. Mer om Grafisk Databehandling. Et annet eksempel. Eksempel

Teksturering. Mer om Grafisk Databehandling. Et annet eksempel. Eksempel Teksturering Mer om Grafisk Databehandling Øker detaljgraden uten å øke antall grafiske primitiver. Grafiske primitiver brukes som bærere for bilder (f.eks. fotografier). INF2340 / V04 2 Eksempel Et annet

Detaljer

Generiske mekanismer i statisk typede programmeringsspråk

Generiske mekanismer i statisk typede programmeringsspråk Generiske mekanismer i statisk typede programmeringsspråk Dette stoffet er Pensum, og det er bare beskrevet her Mye her er nok kjent stoff for mange INF5110 7. mai 2013 Stein Krogdahl 1 Hvordan kunne skrive

Detaljer

Bilder del 2. Farger og fargesyn. Tre-farge syn. Farger og fargerom. Cyganski, kapittel 5. Fargesyn og fargerom. Fargetabeller

Bilder del 2. Farger og fargesyn. Tre-farge syn. Farger og fargerom. Cyganski, kapittel 5. Fargesyn og fargerom. Fargetabeller Litteratur : Tema i dag: Neste uke : Bilder del 2 Cyganski, kapittel 5 Fargesyn og fargerom Fargetabeller Endre kontrasten i et bilde Histogrammer Terskling Video og grafikk, litt enkel bildebehandling

Detaljer

AlgDat 10. Forelesning 2. Gunnar Misund

AlgDat 10. Forelesning 2. Gunnar Misund AlgDat 10 Forelesning 2 Oversikt Java repetisjon IDE eller teksteditor + kommandolinje? Java Collections and Generics Programvareutvikling En mengde mer eller mindre veldefinerte metoder (software engineering):

Detaljer

Farger Introduksjon Processing PDF

Farger Introduksjon Processing PDF Farger Introduksjon Processing PDF Introduksjon På skolen lærer man om farger og hvordan man kan blande dem for å få andre farger. Slik er det med farger i datamaskinen også; vi blander primærfarger og

Detaljer

Introduksjon til objektorientert programmering

Introduksjon til objektorientert programmering Introduksjon til objektorientert programmering Samt litt mer om strenger og variable INF1000, uke6 Ragnhild Kobro Runde Grunnkurs i objektorientert programmering Strategi: Splitt og hersk Metoder kan brukes

Detaljer

INF 1040 høsten 2009: Oppgavesett 11 Farger (kapittel 15) Løsningsforslag Flervalgsoppgaver

INF 1040 høsten 2009: Oppgavesett 11 Farger (kapittel 15) Løsningsforslag Flervalgsoppgaver INF 1040 høsten 2009: Oppgavesett 11 Farger (kapittel 15) Løsningsforslag Flervalgsoppgaver I disse oppgavene er det oppgitt fem svaralternativer der bare ett svar er riktig. 8. Fargerommet som brukes

Detaljer

Oppsummering. Kort gjennomgang av klasser etc ved å løse halvparten av eksamen Klasser. Datastrukturer. Interface Subklasser Klasseparametre

Oppsummering. Kort gjennomgang av klasser etc ved å løse halvparten av eksamen Klasser. Datastrukturer. Interface Subklasser Klasseparametre Oppsummering Kort gjennomgang av klasser etc ved å løse halvparten av eksamen 2012. Klasser Interface Subklasser Klasseparametre Datastrukturer Hva er problemet? Oppgaven Emballasjefabrikken Renpakk skal

Detaljer

Simulering i IN229. INF2340 Våren 2004 Oversikt over innhold. Del 2: Endelige differanser. Del 1: MyVector. Del 3: ODESolver. Del 4: Bølgeligning

Simulering i IN229. INF2340 Våren 2004 Oversikt over innhold. Del 2: Endelige differanser. Del 1: MyVector. Del 3: ODESolver. Del 4: Bølgeligning Simulering i IN229 INF2340 Våren 2004 Oversikt over innhold Fysisk problem Ex: Svingende streng Vannbølger Varme i jordskorpen Matematisk modell Ex: ODE Bølgeligning Varmeligning Simulatorkode Proseduralt

Detaljer

Forelesningsnotater SIF8039/ Grafisk databehandling

Forelesningsnotater SIF8039/ Grafisk databehandling Forelesningsnotater SIF8039/ Grafisk databehandling Notater til forelesninger over: Kapittel 1: Graphics Systems and Models i: Edward Angel: Interactive Computer Graphics Vårsemesteret 2002 Torbjørn Hallgren

Detaljer

Interaksjon mellom farger, lys og materialer

Interaksjon mellom farger, lys og materialer Interaksjon mellom farger, lys og materialer Etterutdanningskurs 2015. Lys, syn og farger - Kine Angelo Fakultet for arkitektur og billedkunst. Institutt for byggekunst, form og farge. Vi ser på grunn

Detaljer

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk Innhold uke 7 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2017 uke 7 Siri Moe Jensen Lite tilbakeblikk: Prosedyrer og funksjoner Objektorientert programmering Introduksjon: Hvorfor,

Detaljer

Veiledning om fargekvalitet

Veiledning om fargekvalitet Side 1 av 6 Veiledning om fargekvalitet Veiledningen om fargekvalitet hjelper brukerne med å forstå hvordan funksjoner som er tilgjengelige på skriveren, kan brukes til å justere og tilpasse fargene på

Detaljer

Post-it spørsmål fra timen (Arv og subklasser)

Post-it spørsmål fra timen (Arv og subklasser) Post-it spørsmål fra timen 30.01 (Arv og subklasser) Tegning Spørsmål: Skjønte ikke tegningene Hater tegningene. Lær meg å tegne. Mvh frustrert elev. Spørsmål: Datastruktur-tegning, og hvor mye detaljer

Detaljer

Funksjonell (dataflyt-) modell. Del 3 "Visualization Pipeline" Sammenkobling i praksis. Prosess- og data-objekter. Transformasjon. Representasjon (mer

Funksjonell (dataflyt-) modell. Del 3 Visualization Pipeline Sammenkobling i praksis. Prosess- og data-objekter. Transformasjon. Representasjon (mer Funksjonell (dataflt-) modell Del 3 "Visualization Pipeline" Transformasjon Konvertere data fra opprinnelig form til grafiske primitiver (tpisk gjennom flere ledd) Representasjon (mer om dette i neste

Detaljer

Semantisk Analyse del III

Semantisk Analyse del III Semantisk Analyse del III Typesjekking Kapittel 6.4 08.03.2013 1 Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem

Detaljer

Kap3: Klassemodellering

Kap3: Klassemodellering Kap3: Klassemodellering I dag: Litt repetisjon fra sist (innledende om klassemodellen) Deretter egentlig litt mer repetisjon, men nå fra intro- Felt-/Instansvariabler og kurset i Java: Klasser og Objekt,

Detaljer

Mars Robotene (5. 7. trinn)

Mars Robotene (5. 7. trinn) Mars Robotene (5. 7. trinn) Lærerveiledning Informasjon om skoleprogrammet Gjennom dette skoleprogrammet skal elevene oppleve og trene seg på et teknologi og design prosjekt, samt få erfaring med datainnsamling.

Detaljer

Eksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus

Eksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus // class Bygning Oppgave 1 System.out.println( Bolighus ); // class Bolighus Hva blir utskriften fra dette programmet? class Blokk extends Bolighus{ // class Blokk IN105subclassesII-1 Eksekveringsrekkefølgen

Detaljer

RF5100 Lineær algebra Leksjon 10

RF5100 Lineær algebra Leksjon 10 RF5100 Lineær algebra Leksjon 10 Lars Sydnes, NITH 11. november 2013 I. LITT OM LYS OG FARGER GRUNNLEGGENDE FORUTSETNINGER Vi ser objekter fordi de reflekterer lys. Lys kan betraktes som bølger / forstyrrelser

Detaljer

Læringsmål uke 7. Objektorientert programmering i Python: Introduksjon. Innhold uke 7. Lite tilbakeblikk: Programflyt og skop

Læringsmål uke 7. Objektorientert programmering i Python: Introduksjon. Innhold uke 7. Lite tilbakeblikk: Programflyt og skop Læringsmål uke 7 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2018 uke 7 Siri Moe Jensen Kjenne til motivasjon og bakgrunn for objektorientert programmering Kunne definere en klasse,

Detaljer

klassen Vin må få en ny variabel Vin neste alle personvariable (personpekere) i listeklassen må byttes til Vin

klassen Vin må få en ny variabel Vin neste alle personvariable (personpekere) i listeklassen må byttes til Vin INF1010 forelesning Lenkelister II Dette skrivet inneholder en oversikt over det jeg planlegger å forelese på andre forlesning om lenkelister. Det inneholder stort sett programeksempler med kommentarer

Detaljer

Denne veiledningen hjelper deg med å forstå hvordan du kan bruke skriverens funksjoner til å justere og tilpasse fargene på utskriftene.

Denne veiledningen hjelper deg med å forstå hvordan du kan bruke skriverens funksjoner til å justere og tilpasse fargene på utskriftene. Side 1 av 5 Fargekvalitet Denne veiledningen hjelper deg med å forstå hvordan du kan bruke skriverens funksjoner til å justere og tilpasse fargene på utskriftene. Quality (Kvalitet), meny Print Mode (Utskriftsmodus)

Detaljer

Anatomien til en kompilator - I

Anatomien til en kompilator - I Anatomien til en kompilator - I program Symboltabell tekst tokens syntaks-tre beriket syntaks-tre Finne struktur i programmet OK i henhold til grammatikk? Preprocessor Makroer Betinget kompilering Filer

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF330 Metoder i grafisk databehandling og diskret geometri Eksamensdag: 3. desember 010 Tid for eksamen: 14.30 18.30 Oppgavesettet

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

Repetisjon av histogrammer

Repetisjon av histogrammer Repetisjon av histogrammer INF 231 Hovedsakelig fra kap. 3.3 i DIP Histogramtransformasjoner Histogramutjevning Histogramtilpasning Standardisering av histogram for billedserier Litt om histogramtransformasjoner

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Side 1 Det matematisk-naturvitenskapelige fakultet Eksamen i: INF1010 Objektorientert programmering Eksamensdag: Onsdag 4. juni 2014 Tid for eksamen: 9:00-15:00 Oppgavesettet er på

Detaljer

Midtveiseksamen Løsningsforslag

Midtveiseksamen Løsningsforslag INSTITUTT FOR INFORMATIKK, UNIVERSITETET I OSLO Midtveiseksamen Løsningsforslag INF2310 - Digital Bildebehandling Eksamen i: INF2310 - Digital Bildebehandling Eksamensdag: Tirsdag 21. mars 2017 Tidspunkt

Detaljer

d. Utviklingssteg for å utforme animasjonssekvenser:

d. Utviklingssteg for å utforme animasjonssekvenser: Oppgave 1: Generelt a. Logisk inndeling av inputdata: Locator En enhet for å spesifisere en koordinatposisjon. Stroke En enhet for å spesifisere et sett med koordinatposisjoner. String En enhet for å spesifisere

Detaljer

LØSNINGSANTYDNING EKSAMEN

LØSNINGSANTYDNING EKSAMEN Universitetet i Agder Fakultet for teknologi og realfag LØSNINGSANTYDNING EKSAMEN Emnekode: Emnenavn: DAT Grafisk Databehandling Dato: 5. desember Varighet: 9 - Antall sider inkl. forside 8 Tillatte hjelpemidler:

Detaljer

EKSAMEN I EMNE TDT4230 VISUALISERING FREDAG 10. DESEMBER 2010 KL LØSNINGSFORSLAG

EKSAMEN I EMNE TDT4230 VISUALISERING FREDAG 10. DESEMBER 2010 KL LØSNINGSFORSLAG Side 1 av 11 EKSAMEN I EMNE TDT4230 VISUALISERING FREDAG 10. DESEMBER 2010 KL. 09.00 13.00 LØSNINGSFORSLAG OPPGAVE 1 Kubiske Bézier-kurver og flater a) Sammenhengen mellom vektoren av blandefunksjoner

Detaljer

E K S A M E N S O P P G A V E

E K S A M E N S O P P G A V E HØGSKOLEN I AGDER Fakultet for teknologi E K S A M E N S O P P G A V E EMNE: FAGLÆRER: DAT 2 Grafisk Databehandling Morgan Konnestad Klasse(r): 2DTM, 2DT, 2 Siving, DT Dato: 8.2.6 Eksamenstid, fra-til:

Detaljer

(MVC - Model, View, Control)

(MVC - Model, View, Control) INF1010 - våren 2008 Modell - Utsyn - Kontroll (MVC - Model, View, Control) Stein Gjessing Inst. for informatikk Et bankprogram Vi skal lage et program som håndterer kontoene i en bank. En konto eies av

Detaljer

GUI («Graphical User Interface»)

GUI («Graphical User Interface») GUI («Graphical User Interface») Om GUI JavaFX Se også på Infoskrivet https://www.uio.no/studier/emner/matnat/ ifi/in1010/v18/gui/fx-intro-in1010.pdf Programkoden i https://www.uio.no/studier/emner/ matnat/ifi/in1010/v18/gui/

Detaljer

Arv. Book book1 = new Book(); book1. title = "Sofies verden" class Book { String title; } class Dictiona ry extends Book {

Arv. Book book1 = new Book(); book1. title = Sofies verden class Book { String title; } class Dictiona ry extends Book { Arv Arv (eng: inheritance) er en mekanisme for å bygge videre på eksisterende klasser og regnes ofte som varemerket til objektorientert programmering. Når arv brukes riktig, kan den gjøre koden ryddigere

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Gaustadbekkdalen, januar 22 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår i primærlageret når

Detaljer

Velkommen til. INF våren 2016

Velkommen til. INF våren 2016 Velkommen til INF1010 - våren 2016 Denne uken (onsdag og torsdag): Om INF1010 Java datastrukturer Klasser med parametre i Java Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 1 INF1010

Detaljer

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en

Detaljer

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java INF høsten 2 Uke 4: 3. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Mål for uke 4: Innhold uke 4 Repetisjon m/ utvidelser:

Detaljer

Løsningsforslag til kapittel 15 Fargerom og fargebilder

Løsningsforslag til kapittel 15 Fargerom og fargebilder Løsningsforslag til kapittel 15 Fargerom og fargebilder Oppgave 1: Representasjon av et bilde Under har vi gitt et lite binært bilde, der svart er 0 og hvit er 1. a) Kan du skrive ned på et ark binærrepresentasjonen

Detaljer

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays Oversikt C programmering 1 C programmering Introduksjon Kildekode Kompilering Hello world Hello world med argumenter 2 Funksjoner 3 Datatyper 4 Pekere og arrays 5 Kontrollstrukturer Lars Vidar Magnusson

Detaljer

Gråtonehistogrammer. Histogrammer. Hvordan endre kontrasten i et bilde? INF Hovedsakelig fra kap. 6.3 til 6.6

Gråtonehistogrammer. Histogrammer. Hvordan endre kontrasten i et bilde? INF Hovedsakelig fra kap. 6.3 til 6.6 Hvordan endre kontrasten i et bilde? INF 230 Hovedsakelig fra kap. 6.3 til 6.6 Histogrammer Histogramtransformasjoner Histogramutjevning Histogramtilpasning Histogrammer i flere dimensjoner Matematisk

Detaljer

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister Videre

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister Videre Dagens tema Lister og generiske klasser, del I Array-er og ArrayList (Big Java 6.1 & 6.8) Ulike lagringsformer (Collection) i Java (Big Java 15.1) Klasser med typeparametre («generiske klasser») (Big Java

Detaljer

Læringsmål for forelesningen

Læringsmål for forelesningen Læringsmål for forelesningen Objektorientering Abstrakte klasser og grensesnitt, redefinering av metoder Java-programmering Arv og bruk av abstrakte klasser Eclipse Undersøke instanser i Eclipse 1 Dagens

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

Algoritmer og datastrukturer Kapittel 2 - Delkapittel 2.1

Algoritmer og datastrukturer Kapittel 2 - Delkapittel 2.1 Delkapittel 2.1 Plangeometriske algoritmer Side 1 av 7 Algoritmer og datastrukturer Kapittel 2 - Delkapittel 2.1 2.1 Punkter, linjesegmenter og polygoner 2.1.1 Polygoner og internett HTML-sider kan ha

Detaljer

class Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; }

class Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; } Arv Arv (eng: inheritance) er en mekanisme for å bygge videre på eksisterende klasser og regnes ofte som varemerket til objektorientert programmering. Når arv brukes riktig, kan den gjøre koden ryddigere

Detaljer

SCANNING OG REPARASJON AV GAMLE BILDER Jessheim bibliotek 21. august 2007. Minikurs. Adobe Photoshop Elements. v/ Randi Lersveen - Krem reklame

SCANNING OG REPARASJON AV GAMLE BILDER Jessheim bibliotek 21. august 2007. Minikurs. Adobe Photoshop Elements. v/ Randi Lersveen - Krem reklame 1 Minikurs v/ Randi Lersveen - Krem reklame Adobe Photoshop Elements Viktige begrep for digitale bilder 2 FARGER (mode) Bitmap: Grayscale: RGB-color: CMYK: Bildet inneholder kun sorte og hvite punkter

Detaljer

Sudokubrettet Et sudokubrett består av n n ruter. Vi bruker følgende begreper i oppgaven:

Sudokubrettet Et sudokubrett består av n n ruter. Vi bruker følgende begreper i oppgaven: INF1010 2016 Innleveringsoppgave 8 SUDOKU Versjon 29. mars. Denne versjonen gjelder oppgave 8. Resten er tatt med bare for å gi en pekepinn om arbeidet videre. Det kommer andre krav til del 10 og 11 når

Detaljer

EKSAMEN I EMNE TDT4230 VISUALISERING LØRDAG 10. DESEMBER 2005 KL

EKSAMEN I EMNE TDT4230 VISUALISERING LØRDAG 10. DESEMBER 2005 KL NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for fysikk, informatikk og matematikk Institutt for datateknikk og informasjonsvitenskap EKSAMEN I EMNE TDT4230 VISUALISERING LØRDAG 10. DESEMBER

Detaljer

INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 INF1010

INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 GUI (Graphical User Interface)- programmering Hvordan lage et vindu på skjermen Hvordan legge ulike komponenter i vinduet (trykknapper, tekseelter, tekst,

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister Dagens tema Lister og generiske klasser, del I Array-er og ArrayList (Big Java 6.1 & 6.8) Ulike lagringsformer (Collection) i Java (Big Java 15.1) Klasser med typeparametre («generiske klasser») (Big Java

Detaljer

Bildebehandling med Python og EzGraphics

Bildebehandling med Python og EzGraphics Bildebehandling med Python og EzGraphics I denne oppgaven skal dere jobbe med bildebehandling. På samme måte som vi jobbet med lyd tidligere, skal vi nå se på bilder. Vi kan bruke EzGraphics til alt vi

Detaljer

Institutt for informatikk Universitetet i Oslo

Institutt for informatikk Universitetet i Oslo Informasjon fra IT-driftsgruppen Lokalguidetilfargeri L A TEX Dag Langmyhr 18. november 2010 Institutt for informatikk Universitetet i Oslo Innhold 1 Angivelse av farger 1 2 Brukavfarger 2 2.1 Fargettekst...

Detaljer

TDT4195 Bildeteknikk

TDT4195 Bildeteknikk TDT495 Bildeteknikk Grafikk Vår 29 Forelesning 5 Jo Skjermo Jo.skjermo@idi.ntnu.no Department of Computer And Information Science Jo Skjermo, TDT423 Visualisering 2 TDT495 Forrige gang Attributter til

Detaljer

Oversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp

Oversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp INF1000: Grunnkurs i objektorientert programmering Uke 0, høst 2014 Oversikt Informatikk - hva & hvorfor? Datasystemer, maskinvare, programmer Objektorientert programmering i INF1000 Programmeringsspråket

Detaljer

RF5100 Lineær algebra Leksjon 1

RF5100 Lineær algebra Leksjon 1 RF5100 Lineær algebra Leksjon 1 Lars Sydnes, NITH 20.august 2013 I. INFORMASJON FAGLÆRER Kontakt: Lars Sydnes lars.sydnes@nith.no 93035685 Bakgrunn: Doktorgrad i Matematikk fra NTNU (2012), Siv.ing. Industriell

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 8/5-2012, Stein Krogdahl Byte-koden for Java og.nett (C#) http://en.wikipedia.org/wiki/java_bytecode_instruction_listings

Detaljer

PhotoShop Grunnleggende ferdigheter

PhotoShop Grunnleggende ferdigheter PhotoShop Grunnleggende ferdigheter Kurs for ansatte DMMH februar/mars 2009 Versjon 2 Svein Sando Åpne og lagre Åpne: to varianter File Open Ctrl+O Lagre: to varianter File Save Ctrl+S Lagre som: to varianter

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1010 Objektorientert programmering Dato: 4. juni 2015 Tid for eksamen: 09.00 15.00 (6 timer) Oppgavesettet er på 6 sider. Vedlegg:

Detaljer

2D Transformasjoner (s. 51 i VTK boken) Translasjon. Del 2 Grafisk databehandling forts. Rotasjon. Skalering. y x = x + d x, y = y + d y.

2D Transformasjoner (s. 51 i VTK boken) Translasjon. Del 2 Grafisk databehandling forts. Rotasjon. Skalering. y x = x + d x, y = y + d y. 2D Transformasjoner (s. i VTK boken) Translasjon Del 2 Grafisk databehandling forts. (, ) = + d, = + d På matriseform: d d (, ) P =, P =, T = d d P = P + T 24/2-3 IN229 / V3 / Dag 6 2 Skalering Rotasjon

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF5110 - Kompilatorteknikk Eksamensdag : Onsdag 5. juni 2013 Tid for eksamen : 14.30-18.30 Oppgavesettet er på : Vedlegg :

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO 1 UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 115 Eksamensdag : Lørdag 20 mai, 2000 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg : Intet. Tillatte

Detaljer

a. Hva er de inverse transformasjonene avfølgende tre transformasjoner T, R og S: θ θ sin( ) cos( ) Fasit: 1 s x cos( θ) sin( θ) 0 0 y y z

a. Hva er de inverse transformasjonene avfølgende tre transformasjoner T, R og S: θ θ sin( ) cos( ) Fasit: 1 s x cos( θ) sin( θ) 0 0 y y z Kommentar: Svar kort og konsist. Husk at eksamen har tre oppgaver. Poengene for hver (del-) oppgave bør gi en indikasjon på hvor me tid som bør benttes per oppgave. Oppgave 1: Forskjellige emner (40 poeng)

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

Nadine Pedersen GRIT Datamaskinen- kjenn din Mac

Nadine Pedersen GRIT Datamaskinen- kjenn din Mac Kjenn din Mac MacBook Pro 13,3 Retina MF840 Oppgave 1. Beskriv hvilke enheter som er koblet til datamaskinen, og det du kan finne ut om egenskapene deres. Bluetooth: Dette er en trådløs protokoll for å

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

Datatyper og typesjekking

Datatyper og typesjekking Datatyper og typesjekking Om typer generelt Hva er typer? Statisk og dynamisk typing Hvordan beskrive typer syntaktisk? Hvordan lagre dem i kompilatoren? Gjennomgang av noen typer Grunntyper Type-konstruktører

Detaljer

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse Dessverre litt få figurer INF 5110, 10/5-2011, Stein Krogdahl Oversikt over Javas class-filer og byte-kode Disse formatene ble planlagt fra start

Detaljer

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen Innhold uke 10 Hva bruker vi klasser til? Objektorientert programmering i Python IN1000 Høst 2018 uke 10 Siri Moe Jensen Noen sentrale datastrukturer for programmering lenkede lister trær grafer Eksempler:

Detaljer

INF1010 MVC i tekstbaserte programmer

INF1010 MVC i tekstbaserte programmer INF1010 MVC i tekstbaserte programmer Marit Nybakken marnybak@ifi.uio.no 9. februar 2004 Marit har ingen utdanning innen systemutvikling og vet antageligvis ikke hva hun prater om. Hun har dog skumlest

Detaljer

Excited. Hvordan komme i gang med tekstbasert programmering? Centre for Excellent IT Education. Guttorm Sindre

Excited. Hvordan komme i gang med tekstbasert programmering? Centre for Excellent IT Education. Guttorm Sindre Excited Centre for Excellent IT Education Hvordan komme i gang med tekstbasert programmering? Guttorm Sindre Disposisjon Utfordringer med tekstbasert programmering Ideer til løsning Små kodeeksempler med

Detaljer

Bruk fargemenyen til å justere utskriftskvaliteten og tilpasse fargeutskrifter. Velg et menyelement hvis du vil ha mer informasjon:

Bruk fargemenyen til å justere utskriftskvaliteten og tilpasse fargeutskrifter. Velg et menyelement hvis du vil ha mer informasjon: Bruk fargemenyen til å justere utskriftskvaliteten og tilpasse fargeutskrifter. Velg et menyelement hvis du vil ha mer informasjon: Fargejustering Utskriftsoppløsning 1 Manuell farge Utskriftsmodus Mørkhet

Detaljer

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering Etter uke 6 skal du Kjenne til motivasjonen for objektorientert programmering Introduksjon til objektorientert programmering INF1001 Høst 2016 Forstå hva en klasse er, og forskjellen på klasse og objekt

Detaljer

Litt om Javas class-filer og byte-kode

Litt om Javas class-filer og byte-kode Litt om Javas class-filer og byte-kode INF 5110, 11/5-2010, Stein Krogdahl (Dessverre litt få figurer) Disse formatene ble planlagt fra start som en del av hele Java-ideen Bt Byte-koden gir portabilitet

Detaljer

INF100 Institutt for informatikk Universitetet i Bergen Øving 5

INF100 Institutt for informatikk Universitetet i Bergen Øving 5 INF100 Institutt for informatikk Universitetet i Bergen Øving 5 Høst 2013 Mål: Bruk av objekter. Innlevering: Adventure.java, Spiller.java og Rom.jav pakket i en zip fil. Innleveringsfrist: Torsdag 10.

Detaljer

Forelesning inf Java 1

Forelesning inf Java 1 Forelesning inf1000 - Java 1 Tema: Javas historie Bestanddelene i et Java-program Programvariabler Ole Christian Lingjærde, 22. august 2012 Litt Java-historikk The Green Team I 1991 opprettet Sun Microsystems

Detaljer

EKSAMENSOPPGAVE. INF-1100 Innføring i programmering og datamaskiners virkemåte. Ingen. Elektronisk (WiseFlow) Robert Pettersen

EKSAMENSOPPGAVE. INF-1100 Innføring i programmering og datamaskiners virkemåte. Ingen. Elektronisk (WiseFlow) Robert Pettersen Fakultet for naturvitenskap og teknologi EKSAMENSOPPGAVE Eksamen i: Dato: 20.02.2017 Klokkeslett: 09:00 13:00 INF-1100 Innføring i programmering og datamaskiners virkemåte Sted: Teorifagbygget, Hus 3,

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Prøveksamen i INF1010 Objektorientert programmering Dato: 26. mai 2016 Tid for eksamen: 09.00 15.00 (6 timer) Oppgavesettet er på 6 sider.

Detaljer

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK INF1000: Forelesning 6 Klasser og objekter del 1 OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK Motivasjon Anta at vi ønsker å lage et studentregister hvor vi for hver student lagrer, bruker og telefonnummer Med

Detaljer

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode) Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode) Disse foilene er pensum INF 5110, 30/4-2013, Stein Krogdahl Byte-koden for Java og.nett (C#) kan leses her: http://en.wikipedia.org/wiki/java_bytecode_instruction_listings

Detaljer

Grafisk Brukergrensesnitt

Grafisk Brukergrensesnitt Grafisk Brukergrensesnitt Repetisjonskurs Hva må kunnes? JFrame JPanel JComponents Layouts Listeners jframe Representerer et vindu JComponents legges på vinduet Har en tittel og størrelse Komponenter struktureres

Detaljer