Mønstergenerering: Matematiske mønstre

Matematiske mønstre / Rendering af matematisk formel

En matematisk formel kan også generere mønstre, f.eks. er en sinus kurve et mønster. En computer kan ikke altid vise en eksakt repræsentation af en matematisk formel, da den kan indeholde en uendelig mængde data.
F.eks. y = sin(x), så kan x have alle værdier mellem minus uendelig og plus uendelig: ]-∞ ; ∞ [. Dermed ville det tage computeren uendelig lang tid at tegne denne matematiske kurve hvis alle x-værdier skulle med.
Dette kan løses ved at begrænse definitionsmængden (start og slut), samt afrunde x-værdierne.

Sinus kurve, hvor x er et helt tal mellem [-4*pi; 4*pi] Sinus kurve, hvor x er et decimal tal mellem [-4*pi; 4*pi]
3_2.jpg 3_3.jpg

Rendering af matematisk formel er en iterativ algoritme, hvor reglerne for mønsteret bliver beskrevet med matematikens sprog i stedet for datalogiens sprog.

avanceret sinuskurve avanceret sinuskurve Mandelbrotmængden
3_4.jpg 3_5.jpg Demm_2000_Mandelbrot_set.jpg

Renderingsalgoritmen

Selve renderingsalgoritmen er itterativ, hvor de matematiske regler for mønsteret kan være itterative eller rekursive. De itterative regler for renderingen er følgende:

  • grundniveauet: tegn enten en hvid eller sort prik (hvid eller sort bestemmes af den matematiske formel).
  • 1. niveau: tegn enten en hvid eller sort prik n-antal gange til højere for den prik, du lige har tegnet, således at du får en streg.
  • 2. niveau: tegn stregen under den streg, du lige har tegnet, således at du får en flade.

Medmindre andet er angivet, er indholdet af denne side licenseret under Creative Commons Attribution-NonCommercial 3.0 License