Home Papers Reports Projects Code Fragments Dissertations Presentations Posters Proposals Lectures given Course notes
<< 7. Texture Mapping

8. Examination Questions 1998-1999

Werner Van Belle1 - werner@yellowcouch.org, werner.van.belle@gmail.com

1- Programming Technology Lab (PROG) Department of Computer Science (DINF) Vrije Universiteit Brussel (VUB); Pleinlaan 2; 1050 Brussel; Belgium

Abstract :  5 intruiging questions to tickle the mind :-)

Reference:  Werner Van Belle; Examination Questions 1998-1999;


1. Beschrijf een algoritme om aan affiene texture mapping te doen. De vlakken kunnen in alle mogelijke posities liggen.
  • A: Schrijf neer in pseudocode.
  • B: Kies 1 loop uit uw algoritme en maak deze expliciet.
  • C: Herschrijf deze loop door gebruik te maken van een DDA.

  • 2A: Schrijf een algoritme dat aan een gegeven snelheid doorheen een lijn loopt.
    Drawline(x1,y1,x2,y2,v).
    (Als v==1 is tekenen we elke pixel die we moeten tekenen. Als v 5 is tekenen we 5 maal minder pixels dan nodig.)

    B: We willen nu een algoritme dat aan wisselende snelheid doorheen de lijn loopt. (vmin is de minimumsnelheid, vmax is de maximumsnelheid, dv is de snelheid waarmee de snelheid verhoogt bij elke stap).

    C: Zet uw algoritme om naar een DDA

    D: Zet om naar fixed point.
    3. Een geluidssample is een reeks van data. Elk woord in een sample beschrijft de amplitude op een gegeven positie in de tijd. Om een sample van toonhoogte te veranderen kunnen we de speelsnelheid van de sample verhogen (bijvoorbeeld: om de toonhoogte van een sample met een octaaf te verhogen, verdubbelen we de snelheid. Om een octaaf te zakken halveren we de snelheid.)

    Het probleem dat we nu hebben is dat we niet zomaar een sample zijn ‘speelsnelheid’ kunnen verhogen. Een sample wordt steeds gespeeld aan bijvoorbeeld 44.1 KHz. Dit wil zeggen dat we softwarematig een sample zullen moeten versnellen of vertragen.

    Schrijf een algoritme dat gegeven een sample en een factor, een nieuwe sample creeert die de gegeven factor langer is (zonder interpolatietechnieken te gebruiken). Bijvoorbeeld:
    stretchsample(char* sample, long size, float factor)
  • A: Schrijf uw algoritme door gebruik te maken van floating point aritmetic
  • B: Converteer uw algoritme naar een DDA.
  • C: Zet om in fixed point
    4. We willen een algoritme dat gegeven een bitmap, deze bitmap transparant over een andere bitmap plaatst. Het algoritme heeft nood aan routine die gegeven 2 pixels een nieuwe gemengde pixel weergeeft. A: Schrijf deze functie, maak gebruik van een geindexeerd kleurenpalet. B: Waarschijnlijk bevoordeelt uw kleurenschakering bepaalde kleuren. Is het mogelijk dit nadeel weg te werken ?
    5. We willen een parabool tekenen. Y=a.X^2+b. Schrijf hiervoor een algoritme dat gebruikt maakt van een DDA. Schrijf neer in fixed point.
    http://werner.yellowcouch.org/
    werner@yellowcouch.org