Open het elm bestand myijskristal.elm. Deze code staat in het view model daarvan.
path =
[ koch startP1 startP2 model.passes []
, koch startP2 startP3 model.passes []
, koch startP3 startP1 model.passes []
]
In deze regel worden de punten voor de tekening in een lijst gezet. Dit gebeurt door 3 lijnen te bepalen en deze verder te bewerken zoals je hier ziet:
Daarvoor wordt de functie koch aangeroepen met als parameters:
In kock worden de drie nieuwe punten p1, p2 en p3 berekend om de lijn kunnen te tekenen.
Het begin en het eind punt heten binnen koch a en b. Het begin en eindpunt worden als parameters meegegeven.
Als het aantal stappen niet meer dan 1 is geeft de functie koch het volgende terug:
a :: p1 :: p2 :: p3 :: b :: points
Als het aantal stappen meer dan 1 is roept roep de functie koch zichzelf 4 keer aan met als te bewerken lijnen:
Bij deze aanroepen verlaagt koch het aantal stappen met 1. Alle resulterende lijsten van deze 4 aanroepen zet koch in een gezamenlijke lijst en geeft deze terug.