Der Begriff Windpark bezieht sich auf eine Gruppe von Windenergieanlagen an einem Standort, die zur Stromerzeugung genutzt wird. Verglichen mit den Umwelteinflüssen herkömmlicher Energiequellen sind die Windkraftverhältnisse relativ gering. Windenergie verbraucht im Gegensatz zu fossilen Energieträgern keinen Kraftstoff und verursacht keine Luftverschmutzung.
In diesem Lernprogramm erfahren Sie, wie Sie mit ActionScript 3.0 einen virtuellen Windpark erstellen.
Dieser Beitrag ist Teil des Blog Action Day 2009, einer weltweiten Initiative der Envato-Gründer Collis und Cyan Ta'eed, die jetzt von Change.org betrieben wird. Blog Aktionstag existiert zu Ändern Sie die Konversation für einen Tag im Internet Tausende Blogger wurden zu einem wichtigen Thema zusammengefasst - in diesem Jahr, dem Klimawandel. Es ist nicht zu spät, um Ihren Blog zu registrieren und daran teilzunehmen.
Wir holen uns den zurückgegebenen Wert der activityLevel -Eigenschaft der Microphone-Klasse und übergeben ihn an die Rotationseigenschaft eines zuvor erstellten Turbine MovieClip.
Dies führt dazu, dass sich unsere Windenergieanlagen relativ zu den vom Mikrofon aufgenommenen Geräuschen drehen. Benutzer können buchstäblich auf ihre Bildschirme blasen und die Turbinen beim Drehen beobachten!
Öffnen Sie Flash und erstellen Sie eine neue Flash-Datei (ActionScript 3)..
Stellen Sie die Bühnengröße auf 600 x 300 und die Bildrate auf 24 Bilder / s ein.
Wir erstellen eine einfache Vektorillustration für unseren Windpark.
Wählen Sie das Rechteckwerkzeug (R) und erstellen Sie ein blaues lineares Farbverlaufsrechteck (# 81CCFE, # D0EAFB) der Bühnengröße.
Verwenden Sie das Verlaufstransformations-Werkzeug (F), um den Verlauf zu drehen, sodass der Hintergrund so aussieht:
Das wird unser Himmel sein.
Nun fügen wir etwas Gras hinzu, auf das wir unsere Windkraftanlagen stellen können.
Wählen Sie erneut das Rechteckwerkzeug aus und erstellen Sie ein Rechteck mit linearem Verlauf (600 x 30 px, grüner linearer Verlauf (# 9AB937, # AFC232, # 9AB937) und richten Sie es am unteren Rand der Bühne aus.
Verwenden Sie das Auswahlwerkzeug (V), um den oberen Rand des Rechtecks zu fassen (Sie werden feststellen, dass sich der Cursor zu einem Pfeil mit einer kleinen Kurve im unteren Bereich ändert) und ziehen Sie ihn, um eine leichte Kurve nach links zu bilden. Schauen Sie sich das folgende Bild als Referenz an.
Verwenden Sie das Rechteckwerkzeug, um ein # F7F7F7, 10x153 px-Rechteck zu zeichnen, und ziehen Sie mit dem Auswahlwerkzeug die oberen Ränder nach außen, um sie dünner zu gestalten. Dies wird die Basis der Turbine sein.
Um die Klingen zu erstellen, zeichnen Sie ein 1x90 px-Rechteck und ziehen Sie dann die Seiten mit dem Auswahl-Werkzeug und erstellen Sie ein Halboval. Sie können dies in der folgenden Abbildung besser sehen.
Duplizieren Sie die Klinge (Cmd + D) und drehen Sie sie mit dem Transformationswerkzeug. Wiederholen Sie diesen Schritt, um insgesamt 3 Klingen herzustellen.
Wählen Sie das Oval-Werkzeug aus, erstellen Sie einen 20x20 px-Kreis und platzieren Sie ihn in der Mitte der Turbinen.
Fügen Sie Schatten hinzu, indem Sie die Windkraftanlage duplizieren und ihre Farbe in # D0D0D0 ändern. Gehen Sie dann zu Modifizieren> Anordnen> Nach hinten senden und verschieben Sie die Auswahl um 1 Pixel nach rechts.
Konvertieren Sie die Blades in einen MovieClip und setzen Sie den Instanznamen auf "Turbine". Verwenden Sie erneut das Menü Anordnen, um den mittleren Kreis nach vorne zu bringen.
Duplizieren Sie die Windkraftanlage so oft, wie Sie möchten. Denken Sie daran, den Instanznamen entsprechend der Anzahl der Turbinen zu ändern.
Wir werden Informationen über die Windkraftanlagen sowie den Titel des Blog-Aktionstages hinzufügen.
Wähle das Textwerkzeug (T) aus und erstelle ein neues statisches Textfeld. Fügen Sie den Titel und die Informationen hinzu und verwenden Sie den folgenden Filter.
OK, das ist der grafische Teil. Es sollte so aussehen:
Erstellen Sie eine neue ActionScript-Datei (Cmd + N) und speichern Sie sie als "Main.as"..
Dies ist die Klasse, die die Anwendung behandelt.
Dies sind die Klassen, die wir brauchen. Eine detaillierte Beschreibung der einzelnen Klassen finden Sie in der Flash-Hilfe (F1)..
package import flash.display.Sprite; importiere flash.media.Microphone; import fl.transitions.Tween; import fl.transitions.easing.Strong; import fl.transitions.TweenEvent; import flash.events.Event; import flash.events.ActivityEvent; import flash.system.Security;
Das erweitert Schlüsselwort definiert eine Klasse, die eine Unterklasse einer anderen Klasse ist. Die Unterklasse erbt alle Methoden, Eigenschaften und Funktionen, sodass wir sie in unserer Klasse verwenden können.
öffentliche Klasse WindFarm erweitert Sprite
In dieser Klasse werden nur drei Variablen verwendet, zwei im nächsten Codeblock und eine weitere für das in der Rotationsfunktion deklarierte Tween.
private var gestartet: Boolean; // True, wenn sich die Turbinen privat drehen: Microphone = Microphone.getMicrophone (); // Eine Instanz der Mikrofonklasse
Der Konstruktor ist eine Funktion, die ausgeführt wird, wenn ein Objekt aus einer Klasse erstellt wird. Dieser Code wird zuerst ausgeführt, wenn Sie eine Instanz eines Objekts erstellen oder die Dokumentklasse verwenden.
public function WindFarm (): void Security.showSettings ("2"); // Zeigt ein Sicherheitsdialogfeld an, in dem der Benutzer aufgefordert wird, das Mikrofon zu aktivieren. Mic.setLoopBack (true); // Gibt den Eingangston an die Lautsprecher zurück, wenn (mic! = Null) // Wenn das Mikrofon aktiviert wurde… mic.setUseEchoSuppression (true); // Reduziert das Echo mic.addEventListener (ActivityEvent.ACTIVITY, ActivityHandler); // Ruft die ActivityHandler-Funktion jedes Mal auf, wenn das Mikrofon einen Ton erkennt.
Dieser Code fügt einen Listener hinzu, um die Rotationsfunktion auszuführen, die die Bewegung der Turbinen steuert.
private Funktion activityHandler (Ereignis: ActivityEvent): void stage.addEventListener (Event.ENTER_FRAME, rotateTurbines);
Diese Funktion übernimmt die Rotation der Turbinen.
private function rotateTurbines (e: Event): void / * Wenn das vom Mikrofon empfangene Aktivitätsniveau zwischen 11 und 19 liegt und sich die Turbinen bereits drehen, wird ein "langsamer" Tween ausgeführt * / if (mic.activityLevel < 20 && mic.activityLevel > 10 && gestartet) var tween; Tween = neues Tween (Turbine, "Rotation", Strong.easeOut, Turbinenrotation, Turbinenrotation + 720,3, true); Tween = neues Tween (Turbine2, "Rotation", Strong.easeOut, Turbinenrotation, Turbinenrotation + 720,3, true); Tween = neues Tween (Turbine3, "Rotation", Strong.easeOut, Turbinenrotation, Turbinenrotation + 720,3, true); Tween = neues Tween (Turbine4, "Rotation", Strong.easeOut, Turbinenrotation, Turbinenrotation + 720,3, true); tween.addEventListener (TweenEvent.MOTION_FINISH, onMotionFinish); // Ruft eine Funktion auf, wenn die Turbinen anhalten else if (mic.activityLevel> 20) // Wenn die Aktivitätsstufe höher als 20 ist, reicht das Geräusch aus, um die Turbinen zu bewegen. gestartet = wahr; // Turbinen bewegen sich Turbinenrotation + = mic.activityLevel; turbine2.rotation + = mic.activityLevel; turbine3.rotation + = mic.activityLevel; turbine4.rotation + = mic.activityLevel;
Dieser Code wird ausgeführt, wenn das langsame Tween abgeschlossen ist.
private Funktion onMotionFinish (e: TweenEvent): void started = false; // Turbinen bewegen sich nicht
Gehen Sie zurück zur .Fla-Datei, und fügen Sie im Eigenschaftenbereich im Feld Klasse "Main" hinzu, um diese zur Dokumentenklasse zu machen.
Jetzt wissen Sie, wie Sie die Mikrofonaktivität abrufen, messen und implementieren können. Außerdem haben Sie ein wenig über Windparks gelernt und wissen, wie sie dazu beitragen, den Planeten zu schonen.
Sei grün und danke fürs Lesen!