Triple Eye Industrieel Ingenieur Informatica Algemeen Intranet Tweede jaar INWE Programmeren van GUI's GUI's VB.NET Labo's

Grafieken tekenen

Opgave 1: De Wiskundige slinger

De beweging van de wiskundige slinger verloopt volgens volgende formule:

θ=θ0cos(√(g/l)  t)

Hierbij staat l voor de lengte van de slinger en g voor de valversnelling (=9,81 m/s2).

Schrijf een programma dat aan volgende voorwaarden voldoet:

  • Bij het starten van het programma wordt een formulier van 200 bij 200 pixels getoond (clientsize).
  • Het punt (breedte/2,50) is het ophangpunt van de slinger.
  • Bij het vergroten (of verkleinen) van het venster wordt het formulier aangepast zodat het ophangpunt zich opnieuw halverwege de X-as bevindt.
  • Bij het klikken op de puntmassa wordt de animatie gestopt en kan de gebruiker de slinger verlengen, verkorten en/of verplaatsen. Bij het loslaten van de muisknop wordt de animatie hervat.

Een uitvoerbare versie van het programma kan je hier ophalen.

Opgave 2: Figuren van Lissajous

De figuren van Lissajous ontstaan wanneer je twee enkelvoudige harmonische bewegingen in het vlak combineert waarvan de frequenties zich als eenvoudige breuken tot elkaar verhouden. Wanneer t de tijd voorstelt, dan kan je de X- en Y-coördinaten van deze figuur als volgt berekenen:

   x = sin(A t)
   y = sin(B t + f)
Hierbij stellen A en B respectievelijk de vertikale en de horizontale frequentie voor en is f een (eventueel aanwezige) fase-verschuiving. (Zie fysica.)

Het programma dat we zullen schrijven, laat de gebruiker de keuze tussen enkele voorafgegeven waarden voor A, B en f en tekent de bijbehorende Lissajous-kromme. Hieronder vind je een momentopname:

Bij het klikken op de knop met opschrijft "start" wordt op de figuur een blauw bolletje zichtbaar dat aan de gerbuiker toont hoe de kromme wordt doorlopen.

Een uitvoerbare versie van het programma kan je hier ophalen.

Opmerkingen

  • De Lissajous-figuur wordt hertekend telkens wanneer één van de opties verandert.
  • Zorg dat de picturebox aan de rechterkant van het venster precies vierkant is. Stel ook achtergrondkleur in en zorg voor een omlijnde rand.
  • Gebruik een coördinatenstelsel dat de picturebox 2.4 hoog en 2.4 breed maakt, met de oorsprong precies in het midden, de X-as naar rechts en de Y-as naar boven gericht. Teken ook de coördinaat-assen in een andere kleur.
  • Zorg dat de kromme die je tekent uit 200 korte lijnstukjes bestaat. Dit doe je door telkens een lijnstuk te tekenen van het punt (xi,yi) naar (xi+1,yi+1) met
       xi = sin (i * A * 2 * pi/200)
       yi = sin (f + (i * B * 2 * pi/200))
    
    waarbij i = 0,1, ..., 199 en waarbij de fase f uitgedrukt wordt in radialen.
  • De animatie geschiedt a.d.h.v. een timer met een tijdsinterval van 100 milliseconden. Na iedere 100 milliseconden wordt de figuur hertekend en wordt de positie van het blauw bolletje herbepaald.
  • Bij het drukken op knop met opschrift "stop", stopt de animatie.

W. Van den Breen 9/03/2010

Welkom | Hogeschool Gent | INWE | Studentenserver | Docentenserver | Intranet