Skip to content

Latest commit

 

History

History
56 lines (39 loc) · 1.5 KB

Kreativ.md

File metadata and controls

56 lines (39 loc) · 1.5 KB

Zurück


Siebte Aufgabe

Verändere folgendes Programm (Kreativ.elm):

list =
  [ (circle 10, 0)
  , (square 15, pi/2)
  , (circle 10, pi)
  , (square 15, 1.5*pi)
  ]

scene (x,y) t =
  let
    fun i (pic, alpha) =
      let
        (a,b) = (120 * cos(alpha + t/1.5), 120 * sin(alpha + t/1.5))
        image = group [pic, text (toString i)]
      in
        image |> move (a,b)
  in
    group (List.indexedMap (fun << toFloat) list)

main = display (-200,-150) (200,150) scene (Just AnimationFrame)

so dass interessantes, von sowohl der Mausbewegung als auch der Zeit abhängiges Verhalten entsteht. Zum Beispiel so etwas.

Der Kreativität freien Lauf!

Zusätzliche Ausdrucksmöglichkeiten ergeben sich durch Font Awesome Icons. Dafür muss zu Beginn noch ein import FontAwesome hinzu, dann zum Beispiel Verwendung von icon 20 FontAwesome.space_shuttle oder icon' red 30 FontAwesome.ambulance. (Die passenden Namen findet man hier.)


Beispielausdrücke zur Erinnerung:

  • rectangle (30,20)
  • path [ (0,0), (15,15), (30,-15), (40,5) ]
  • circle' (dashed red) r |> move (x,y)
  • if ... then ... else ...

Weiter


(Datei, @share-elm)