Oppgave a) Geometrise (eller grafise) primitiver er de grunnleggende bestandelene av en tegning som an tegnes direte ved enel (uten bru av ombinasjoner) bru av de tegnefunsjonene som en API tilbyr. (Forsjellige API-er tilbyr vanligvis forsjellige sett av primitiver.) Esempler på primitiver er punt, linjesegment og polygoner. Attributtene bestemmer hvordan primitivene sal se ut. Esempler er farge, linjetyelse og stretype. b) Logise innenheter er abstrasjoner av fysise innenheter der enhetenes funsjoner blir silt fra de fysise enhetenes spesielle fysise egensaper. Fordeler: Gir grensesnitt mot enhetenes funsjonelle egensaper ulig å programmere uten å ta hensyn til de fysise særegenhetene ved innenheter av forsjellig fabriat. ulig å sifte ut en fysis enhet med en av et annet fabriat (må ansje bytte en driver) Kan realisere flere logise innenheter med en og samme fysise enhet Logise innenheter (i GKS og PHIGS) reves ie i besvarelsen: String Locator Pic Choice Valuator Stroe c) I det tredimensjonale rommet legger vi en fjerde oordinat til de tre artesise oordinatene og får homogene oordinater. (I det todimensjonale planet legger vi en tredje oordinat til de to artesise.) I grafis databehandling gjør bru av homogene oordinater at vi onsevent an behandle ombinasjoner av (de affine) basistransformasjonene translasjon, rotasjon og salering ved multipliasjon av 44-matriser. Det gjør også at projesjoner (både parallelle og perspetivise) an utføres ved hjelp av multipliasjon med 44-matriser. Et vetorrom av dimensjon n spennes ut av en basis bestående av n lineært uavhengige vetorer. I det affine rommet legges et referansepunt til i basisen. Det gjør representasjon av både vetorer og punt mulig. Vetorer og punt i det affine rommet representeres ved homogene oordinater. For vetorer i det tredimensjonale rommet er den fjerde oordinaten 0. Dette refleterer at vetoren ie er stedfestet men uteluende har retning og lengde. For punt er den fjerde oordinaten. Dette refleterer at puntets oordinater er gitt i forhold til et referansepunt i rommet (for esempel origo). (Dette sillet mellom punt og vetorer er ofte vitig.)
d) En perspetivprojesjon er en avbildning der projesjonsstrålene går mot et projesjonssenter. Bildet dannes der strålene sjærer projesjonsplanet. En perspetivprojesjon er samme type avbildning som vi har i øyet og i et amera. bildet blir derfor realistis (dersom vi velger ritig brennvidde (her: avstand projesjonssenterprojesjonsplan) i forhold til bildestørrelsen). Perspetivprojesjonen spesifiseres ved å fastlegge projesjonssenter og projesjonsplan. Innbyrdes parallelle linjer som ie er parallelle med projesjonsplanet vil ved perspetivprojesjonen samles i ett punt som representerer uendelig langt borte. Dette puntet alles forsvinningspunt. e) Både Gouraud-syggelegging og Phong-syggelegging er metoder for tilnærmet realistis syggelegging av de flatelappene som en modell under avbildning ofte er tilnærmet med. Begge metodene tar utgangspunt i hjørnepuntsnormaler som er beregnet som en midlere normal for de flatelappene som har hjørnet felles. Gourauds metode beregner fargen i hvert av flatelappens hjørner ved hjelp av normalene. Fargen langs flatelappens anter bestemmes ved interpolasjon mellom fargene i antens endepunter. Fargen i flatelappens indre bestemmes ved interpolasjon langs scanlinjen mellom fargene i hver av scanlinjens sjæringer med lappens anter. Phongs metode interpolerer normalene i stedet for fargene. Fargene beregnes i hver punt (pisel) ved hjelp av den loal normalen. Den spesielle fordelen med Phongs metode i forhold til Gourauds er at den er i stand til å gjengi loale høylys (reflesjoner). Ulempen er at den er vesentlig mer beregningstung.
Oppgave 3 Ser på en enhetsvetor i saleringsretningen. Enhetsvetoren har omponentene (cos, cos, cos ) α β γ. z γ β α cosβ v cosγ cosα y Følgende elementære relasjon gjelder: () cos α + cos β + cos γ = En mulig plan (av flere mulige) for saleringen:. Rotere vinelen v om z-asen sli at saleringsretningen faller i planet =0 (vinelen med z-asen, som er γ, påvires ie): R z ( v ). Rotere vinelen γ om -asen sli at saleringsretningen faller langs z-asen: R ( γ ) 3. Salere med fatoren S langs z-asen: S(,, S ) 4. Utføre den inverse transformasjonen av : R - ( γ ) 5. Utføre den inverse transformasjonen av : R - z ( v ) Den søte transformasjonsmatrisen blir da: - - () ( S) = R ( v) R ( γ )S(,, S) R ( γ ) R ( v) z z
Den eneste parameteren som trenger nærmere bestemmelse, er vinelen v. y cosα v cosβ Denne figuren gir oss: (3) (4) sinv = cosv = cos cos cosα α + cos cosβ α + cos β β Lining () an srives litt om: cos α + cos β + sin γ = som gir : (5) sin γ = ± cos α + cos β Når vi bruer +-verdien i liningene (3) og (4), får vi: (6) (7) cosα sinv = sinγ cosβ cosv = sinγ Sensurbemering: En besvarelse som inneholder ovenstående, er verdt nesten full uttelling (la oss si 8 av 0 poeng). Om en besvarelse foretar translasjon av et referansepunt til origo før (rotasjoner og) salering, er dette i orden.
Uttryt med vinlene u og γ og med vinlene α, β og γ blir elementene i den søte transformasjonsmatrisen (S): 3 4 = cos β + cos α( S sin γ + cos γ ) = cos u + sin u( S sin γ + cos γ ) = sin γ cosα cosβ = sinu cos u( S sin γ + cos γ ) = ( S sin γ + cos γ ) sin γ = sinusinγ cos γ ( S ) = cosα cos γ ( S ) = 0 cos α + cos β( S sin γ + cos = sin u + cos u( S sin γ + cos γ ) = sin γ = cosu sinγ cos γ ( S ) = cosβ cos γ ( S ) = 0 = = = sin γ + S cos = 0 = = = 0 3 4 3 3 3 3 33 34 4 4 43 44 = γ ernader (ie forventet del av besvarelsen):. Siden vinlene α, β og γ ie er uavhengige av hverandre, vil det være mulig å uttrye matriseelementene på andre måter enn vist her. Spesielt an det hende at andre transformasjonsserier enn den vi har brut her, vil gjøre det naturlig med endring i uttryene for matriseelementene.. er at løsningen ie fungerer for vinelen γ = 0. Dette har sammenheng med at vi har valgt å foreta selve saleringen i z-retningen. Dersom γ = 0, har da rotasjonsvinelen v ingen mening og prosedyren bryter sammen. Dette er et iboende problem med retningsvinler (også alt Eulervinler) som også gir seg utslag ved rotasjon om en vilårlig ase. En av de gode tingene en oppnår ved bru av vaternioner, er at dette problemet elimineres. γ )
Oppgave 4 Bresenhams algoritme for tegning av rett linje: Vi begrenser oss til å betrate linjer med stigningsforhold m [0,]. Linjer med andre stigningsforhold an scanonverteres på tilsvarende måte. (,y ) ( +,y + ) ( +,y ) Vi har som oppgave å scanonvertere en rett linje fra puntet (,y ) til puntet (,y ). Pislet (,y ) er det siste pislet som ble slått på. Det er to andidatpisler for det neste å slå på : ( +,y ) og ( +,y +) Vi definerer desisjonsvariabelen: d = a b ( +,y ) a (,y ) b ( +,y + )
Vi velger det pislet som ligger nærmest den matematise linjen: d > 0: nedre pisel velges d <= 0 øvre pisel velges Den nøyatige y-verdien på nettlinjen + får vi ved innsetting i linjeliningen: y = m( + ) + h a og b an uttryes: a = ( y b = y y + ) y = = m( y + m( + ) + h y + ) h Dette gir for d: d = y m( + ) h + Vi ordner oss sli med linjens endepunter at >. Vi an da danne oss en ny desisjonsvariabel d ved å multiplisere d med fatoren : d' = ( = y ( ) d = y ( ) ( y ) ( y y ) + c y ) ( y y ) (h )( ) = Siden både, y,, y, og y an forutsettes å være heltall, er også de to første leddene i uttryet for d ' heltall. Siden h inngår i onstanten c og h ie nødvendigvis er et heltall, er c i alminnelighet heller ie et heltall. Sensurbemerning: En besvarelse som inneholder ovenstående, er verdt nesten full uttelling (la oss si 35 av 40 poeng). Videre piselvalg er avhengig av hvilet valg som blir gjort på nettlinjen +: ( +,y +) ( +,y +) (,y )
Dersom d ' > 0 blir +, y ) valgt, og de nye andidatene er: ( ( +, y ) og (, y + ) + ( +,y ) Ny desisjonsverdi for valg på nettlinje + blir da: d' + = y ( ) ( + )( y y ) + c = d' ( y y) ( +,y ) Dersom d ' <= 0 blir (, y + ) valgt, og de nye andidatene er: + (, y + ) og (, y + ) + + Ny desisjonsverdi for valg på nettlinje + blir da: d' + = ( y + )( ) ( + )( y y) + c = d' + ( ) ( y y ) Ny desisjonsverdi an altså finnes ved heltallsinrementasjon av den forrige. Vi trenger en startverdi for desisjonsvariabelen og setter inn i det opprinnelige uttryet for d: d = y m( + ) h + For = får vi: d = y m( + ) h + = ( y m h) m + = m + Den modifiserte verdien blir: d' = d( ) = ( ) ( y y )
Oppgave 5. apping og metaforer a) Forlar begrepene "Natural mapping" og "metafor" sli de brues av Don Norman og i læreboa. Hva er lihetene, hva er forsjellene. En natural mapping er en avbildning fra noe til noe annet som er naturlig/intuitiv for brueren. Begrepet brues primært om avbildninger i forhold til romlig organisering av layout-elementer på sjerm/papir/produt. Et esempel er plasseringen av pil-napper i et bruergrensesnitt der pilene sal brues til volumontroll. De to naturlige avbildningene I vår ultur er Ned-Opp og Venstre-Høyre for indre-er: En metafor er også en avbildning, men en avbildning fra et større domene/område til et grensesnitt. Vi snaer ie da lenger un om den romlige organiseringen av layout-elementer, men om den struturerende ideen for hele grensesnittet. Det lassise esempelet er srivebordsmetaforen som er en avbildning fra en ontorverden med srivebord, mapper og doumenter over på et hieraris filsystem. Liheten er som nevnt at begge er avbildninger. Forsjellen er at natural mapping un handler om relasjonen mellom eneltelementer, ofte visuelt, mens metaforer er mer dyptgripende og handler om å gi ting ny betydning. b) Finn esempler på "Natural mapping" og "metafor" i grensesnittet under. Begrunn svaret. Gi din personlige vurdering av bruen av "natural mapping" og "metafor" i esempelet. Ser du noe du ville ha gjort annerledes (ting du tror bruere ville ha problemer med o.l.). Begrunn. Programmet under er ment for ungdommer som sal lære seg å leve alene. Ved å lee med forsjellige innteter og utgifter sal de lære seg å styre sin personlige øonomi. (Dette er en sisse der urven ie stemmer med tallene). Ideen ba programmet er å illustrere pengestømmer som vann (brønn etc).
Natural mapping: Det finnes 3 slider-par i grensesnittet for å styre pengestrøm og tid. De går alle 3 enten Ned-Opp eller Venstre-Høyre for indre-er. Dette er i utgangspuntet en naturlig mapping, men brut sli det er her ville det vært å foretree å holde seg til en av de to mappingene for å sape onsistens i grenssesnittet. For de to nederste slider-parene er de også forvirrende at ran + slider-par an oppfattes som en enhet, og at disse da er speilet visuelt men ie i forhold til betydning indre-er. Til venstre er 0 nærmest ranen, mens til høyre er 0 lengst fra ranen. Jeg vil derfor anbefale å stille alle slider-par vertialt. Vannstanden i beholderen På onto følger Ned-Opp for indre-er. I dette esempelt er dette en naturlig mapping som også understøttes av vann-metaforen. I urven finnes to mappinger som begge er vanlige/naturlige: Ned-Opp for indre-er (penger/vann), og Venstre-Høyre for Før-Etter (tid). etafor etaforen i grensesnittet er å betrate penger som vann. Dette er en vanlig implisitt metafor i vår ultur der vi snaer om pengestrøm, pengeflyt. Det er vitig å mere seg at det un er en del av vannets egensaper som har mening i forhold til penger. Esempler på vannegensaper som ie mapper over til penger: Saltvann/Fersvann, Temperatur, Sma,,,. F.es. er hvitvasing av penger et uttry som omhandler vann og penger, men ie favnes av denne metaforen. Vannmetaforen passer bra på å forstå at alle penger ommer fra et sted, og at de ie blir borte. Også at de flyter gjennom øonomien gjennom tid. etaforen ommer til ort i
forhold til f.es. renter på en banonto. Jeg an ie omme på noe sted der vann øer i volum når det står urørt. Grensesnittet bærer preg av å være en sisse, symboler som raner og brønnen må forbedres. Oppgave 6 Gestaltpsyologi Hvorfor er det nyttig å ha jennsap til gestaltprinsippene når man sal omponere et sjermbilde? Gestaltprinsippene har sitt utgangspunt i forsning påbegynt tidlig i det 0de århundre om måten vi saper orden av visuelle inntry. De vitigste prinsippene går på nærhet (gruppering), linje, lihet i form, og lihet i farge. Det er vitig å jenne til disse prinsippene når man sal gjøre layout fordi bruere alltid vil tillegge den romlige organiseringen av layout elementer mening, hva enten vi ønser det eller ie. an må derfor ogranisere layout sli at den indre struturen i innholdet forsteres og ie motsies. F.es. er grensnittet under allerede full av indre strutur un v.h.a. gestaltprinsippene.
Hvile implisitte sammenhenger mellom elementene an leses ut av layoutet under. Relater dette til gestaltprinsippene. Dette er firmaet Honda sin japanse hjemmeside:
Esempler: Gruppering: Under hver av oversriftene Hot News, Topics.., Automitives,,, Info finnes linjer av test formatert sli at de naturlig hører sammen og tilhører oversriften. Linje: Nederst er testene Home, Hot News, FAQ,,, langt på en linje for å indiree at de hører sammen. For å forstere dette er det lagt på en linje over testene. Lihet i farge/gråtone: Testområdet over den buede linjen er satt I en annen farge/gråtone og antyder at dette er noe annet enn testen fra toppen. Lihet i form: Oversriftene Automobiles,,, Info er lagt på samme type linje, noe som antyder at de er oversriter om samme type ting. Oversriftene Hot news og Honda øverst til høyre er formmessig annerledes, og antyder annet innhold.