Canvas: Rodelhang - JirkaDellOro/EIA2 GitHub Wiki

Aufgabe

Zeichnen Sie das Bild eines noch unbelebten Rodelhangs. Im Hintergrund sollen sich der Himmel mit Wolken und Sonne, sowie der Rodelhang selbst flankiert von Wald befinden, im Vordergrund natürlich auf dem Hang Kinder, die mit Ihren Schlitten gerade den Hang hinab fahren oder die Schlitten aufwärts ziehen. Als letztes sollen noch ein paar Schneeflocken darüber gestreut werden. Die einzelnen Motive sollen mit Hilfe von selbst implementierten Funktionen gezeichnet werden. Für jedes Motiv soll es eine Funktion geben, welche eine Position und gegebenenfalls weitere Parameter entgegen nimmt und das entsprechende Motiv an der richtigen Stelle unter Berücksichtigung der anderen Parameter zeichnet.

Konzeption

Das Konzept besteht diesmal vordringlich aus Zeichnungen, und zwar eine für das gesamte Bild und mehrere weitere für die einzelnen Motive. Die Darstellung jedes Motivs entspricht einer Aktivität und letztlich einer Funktion. Legen Sie zudem fest, welche Parameter jeweils erforderlich sind und welche Bedeutung diese haben bzw. wie sie verarbeitet werden. Die Maße in Pixel müssen den Zeichnungen zu entnehmen sein, zeichnen Sie in passende Koordinatensysteme. Wählen Sie eine Canvasgröße, die sich gut auf ihrem eigenen Smartphone darstellt!

Platzieren Sie die Kinder, die Schlitten und derlei durch einzelne Aktivitätsaufrufe im Bild. Planen Sie aber auch Bereiche im Bild, innerhalb derer z.B. eine ganze Menge von Bäumen mit Hilfe von Schleifen und Zufall platziert werden. Somit sieht der Rodelhang bei jedem Aufruf ein wenig anders aus. Erstellen Sie für derlei komplexere Logik jeweils Aktivitätsdiagramme. Planen Sie schließlich auch Funktionen für solche Motivgruppen.

Die Konzeption muss zu Beginn des Praktikums am 20.12.2018 vorliegen!

Produktion

Setzen Sie schließlich ihr Konzept syntaktisch korrekt und unter strikter Einhaltung des vorgegebenen Coding-Styles mit TypeScript um. Diese Aufgabe ist bis zum 6.1.2018 vorzulegen.

Recherche

Experimentieren Sie mit den grundlegenden Anweisungen des CanvasRenderingContext2D, beachten Sie die MindMap und die Referenzen darin.

Viel Spaß mit dem Rodelhang!