ROB BOWDEN: Hallo. Ich bin Rob. Und ich hoffe, Sie sind bereit zu holen, was sind Ich Abwurf oder Absetzen, oder wollen wir mal loslegen. Also zuerst, was wir brauchen zu tun ist, abzuholen. Nun, nehmen Sie sein wird das Entfernen der Passagiere Icons aus dem Google Karte in der unteren rechten Ecke, und aus Google Earth in der Mitte des der Bildschirm. Also, um diejenigen zu entfernen Ikonen, müssen wir haben die Verweise auf sie irgendwo. Aber derzeit die Funktion ausfüllen nur wird sie los. So werden wir ändern müssen besiedeln, sie zu halten rund. Jetzt erste, was wir sehen, ist, dass wir haben eine globale Passagiere Array. Und so werden wir, dass globale verwenden Passagiere in Reihe zu füllen. In ausfüllen, sehen wir, dass wir Looping über alle unsere Passagiere. Und es ist diese Schleife, ist die Schaffung platzieren Marke für Google Earth und die Marker für die Google Map. Und nun unsere Modifikation zum Auffüllen ist es, hier zu sein. Also haben wir auf unseren Passagieren Zugabe "sind Array dieses Objekt, das halten wird um die Markierung und Kennzeichnung Ort wir gerade zusammen mit dem Haus angelegt und Name des Passagiers. So ist das also für Populate. Jetzt müssen wir an heben suchen. So in Pick Up, wir gehen wieder auf laufen alle unsere Passagiere. Aber jetzt ist es unsere globale Passagiere Array. Und hier sehen wir, dass gut haben wir bereits dieses Passagier abgeholt? Da haben wir, wenn diese abgeholt Passagier, am Ende sehen wir, dass wir gehen, um die Markierung gesetzt und die Ort Zeichen auf null, da sie keine mehr in der Google-Karte. Also, wenn wir bereits diese abgeholt Passagier dann sind wir gerade dabei, weiter zum nächsten Passagier. Else, überprüfen wir, ob diese Beifahrer Haus ist im Inneren des Haus Array. Dies ist das Kontroll wir müssen sicherstellen, dass dass wir nicht holen die als Neuling die Spezifikation sagt. Also, wenn der Passagier ist ein Neuling, wir gehen zu weiter zum nächsten Passagier. Sobald wir überprüft haben, dass dies ein Passagier wir sollten Kommissionierung, wir jetzt gehen, um den Breitengrad zu überprüfen und Länge des Passagiers und sehen wenn das ist, innerhalb von 15 Fuß des Shuttle. Wenn das der Fall ist, haben wir eigentlich wollen abholen dieser Passagier. So haben wir über die Integration alle Sitze in unseren Shuttle zu schauen, ob gibt es eine Stelle zur Verfügung für den Beifahrer. Wenn einer der Sitze null ist, das ist ein Ort zur Verfügung. Die Beifahrer So fügen wir der Sitzfläche. Wir erinnern uns, dass wir abgeholt das Passagier so dass am Ende, können wir bekannt zu geben, wenn wir tatsächlich nicht abholen jemand auf. Wir erinnern uns, dass wir diese sitz Passagier da, wenn wir es schaffen, zu erhalten durch das gesamte Shuttle ohne Sitz den Passagier, dann müssen wir verkünden, dass wir aus der Sitze sind. Dann entfernen wir ihren Platz markieren von Google Earth. Wir entfernen ihre Marker von Google Maps, innerhalb unserer Passagiere gesetzt ' Array Ort Zeichen und Markierung auf null wie gesagt. Und dann, das ist es. Der Passagier wurde sitzt. Sobald wir, dass für alle Passagiere getan innerhalb von 15 Fuß von der Shuttle, müssen wir rechart. So Chart ist, was los ist, um das Menü Passagiere in die Sitze hier. So, jetzt schauen wir uns Chart. Innerhalb von Tabelle, werden wir zu sein Aufbau der HTML-Code für das Diagramm. Also die Grafik wird sich eine geordnete Liste. Dann werden wir über laufen alle die Sitze in unserem Shuttle. Also, wenn diese besondere Sitz null ist, dass bedeutet, dass wir eine Liste item will, dass zeigt, dass es eine leere einfach. Else, wenn es nicht null ist, dann wollen wir eine Liste, die gehen Artikel angezeigt wird den Namen des Passagiers und das Haus des Passagier das ist in diesem Sitz. Sobald wir über all die iterierte Sitze dann unsere geordnete Liste schließen wir und mit jQuery, um das Diagramm wählen div und ersetzen Sie es mit unserem neuen HTML geordnete Liste. Und das ist es für Chart. Also letzte Sache ist, fallen ab. Jetzt Drop-off sein wird, ziemlich ähnlich zu holen. Statt der Schleife über alle der Passagiere, wir eine Schleife über gehen alle Shuttle-Sitze. So Schleife über den Shuttle-Sitze, wir sehen ist dies insbesondere Shuttle Sitz nicht null ist, in welchem ​​Fall es ein Passagier in diesem Sitz. Wenn das der Fall ist, wollen wir , um die Breite zu packen und Länge dieser Passagier. Also mit der haus Array, wir sind gehen, um das Haus des Greifers Passagier in diesem Sitz und dann greifen die Breitengrad des jeweiligen Hauses Ebenso wird für Grad. Jetzt verwenden wir wieder Abstand zu sehen, in diesem Haus ist nur 30 Meter von uns. Wenn das der Fall ist, setzen wollen sie dieser Sitz auf null, da der Passagier wurde fallengelassen, und die Schrittweite, die ein Passagier wurde fallengelassen. So daß am Ende, wenn niemand abgesetzt geben wir bekannt, dass niemand will weg hier, um fallengelassen werden. Schließlich müssen wir, so dass rechart Wir zeigen neue, leere Sitze. Nun brauchen Sie nur umsetzen einige zusätzliche Funktionen. Nun, es gibt viel könnten Sie ausgewählt sind. Aber in unserem Fall haben wir Teleport umgesetzt, fliegen, und Beschleunigung, und die Beschleunigung nach unten. Also schauen wir uns an diejenigen. Lassen Sie uns zunächst einen Blick auf die Beschleunigung Funktion. In unserem Fall, in dem Tasten Funktion, wo wir bereits Handhabung alle diese Tasten, wir auch gehen, um erkennen, X und Z. Die wir angeben dass diese Zeichen zu gehen führen der Shuttle-Geschwindigkeit auf steigen oder fallen. So stellen wir fest, dass, wie ein gebundenes hoch und wie ein niedriger die Geschwindigkeit kann tatsächlich gehen, da wir nicht wollen das Shuttle zu schnell zu sein. Und wir auch nicht wollen, dass die Shuttles Geschwindigkeit auf Null oder möglicherweise gehen sogar negativ, was zur Folge haben wird in einem seltsamen Verhalten. Und das ist es für zu schnelles Fahren und Verlangsamung. Lassen Sie uns nun einen Blick auf Fliegen. Also denken Sie daran, dass die Flug Funktion müssen Sie den Konami Code eingeben. Also an der Spitze sehen wir, wir haben einige globale Variablen, was Konami Code ein Array, das ist nur die Verfolgung der Schlüssel, die für die eingegeben werden müssen der Konami Code. Es gibt einen Bool, die nur zeigt, ob der Konami Code bereits eingegeben. Und dann gibt es den Index in der Konami Code Array, wir sind momentan bei. So dass, wenn der Benutzer bereits drei eingegebenen Zeichen des Konami-Code dann wird der Index wird zu verweisen die vierte Sache, in der Anordnung, die dritte Index. Mit, dass wieder einmal wir werden Blick auf Tastendruck. Und in Tastenhub wir hier sehen, dass, wenn der Konami Code nicht bereits eingegeben, so ist zu sehen, wollen wir die Schlüssel eingegeben wurde, dass das, was wir sind derzeit davon aus der Konami Code Array. Wenn das der Fall ist, dann wir erhöhen unsere Index. Wenn der Benutzer dann Up-Index wird zu einem zu gehen. Dann wird der Benutzer geben wieder, der Index geht auf zwei. Dann werden sie nach unten geben, es wird zu drei gehen. Wenn sie Q geben, werde es zurückgesetzt Null, da sie nicht passen der Erwartungswert. Nun, wenn sie es schaffen, die durchkommen gesamte Array dann eingegeben haben, die Konami Code. In diesem Fall jetzt, dass Konami eingegeben wahr ist, wir hier unten zu sehen, dass, wenn Konami eingegeben wurde, nehmen wir zwei neue Tasten, C und E. der alle, die tun eingestellt ist der fliegende unten und fliegen nach oben Staaten in den Shuttle. So existieren bereits für Sie. Sie brauchen nur zu nehmen nutzen sie. Und das ist es für das Fliegen. Zuletzt haben wir zu teleportieren. Also innerhalb des HTML, sehen wir, dass wir haben ein Eingabefeld und ein Mehr teleportieren Taste. Die Box hat ID-Adresse und die Taste hat eine ID-Teleport-Taste. Jetzt eine lästige kleine Detail ist, dass wenn wir nichts mit Event zu tun Handler dann, wenn wir versuchen zu geben so etwas wie ein in das Eingabefeld, anstatt wirklich binden A, unsere Google Erde wird sich auf den Umzug gelassen werden, da A bereits registriert ist Handhabung nach links bewegt. Also das lästige Detail dabei ist, dass Wenn wir eine Taste nach unten oder Taste nach oben haben Veranstaltung innerhalb des Eingabefeldes wollen wir Ausbreitung event.stop was gerade dabei zu verhindern, dass die Gleiten des Shuttle. Sobald das gehandhabt wird, wollen wir auch hinzufügen ein Handler zum Teleporter-Taste. Wenn wir Sie auf die Schaltfläche Teleport, wir ergreifen Sie die Adresse, die der Strom Wert in das Eingabefeld ein, und wir nennen das Teleport-Funktion. Also was macht der Teleport Funktion aus? Nun, erste, was wir sehen, ist, wir sind mit Geocoder. geocodiert. Also, was ist das? Nun, wenn wir uns an der Spitze, wir sehen, dass wir eine neue globale Variable Geocoder. Und dies ist eine globale Referenz auf eine Geocoding Service. Nun, was bedeutet das für uns? Nun, in das Eingabefeld ein, ich werde sein Eingabe etwas wie 33 Oxford Straße Cambridge, Massachusetts. Aber wir können nicht wirklich nichts mit dem. Wir wollen, dass zu konvertieren Breite und Länge. Und das ist, was die Geocoding Service wird sich für uns zu tun. An der Unterseite des initcb sehen wir, dass wir haben gleich neue Geocoder google.maps.geocoder die initialisiert diese Variable für uns. Also zurück zu teleportieren. Wir sehen, wir sind mit den Geocoder. Wir Geokodierung die Adresse, die war zum Teleporter-Funktion übergeben die wurde aus dem Eingabefeld packte. Und wir übergeben Sie einen Rückruf die Ergebnisse und den Status dauert. Also erste, was wir brauchen, um pro überprüfen die API-Dokument von google.maps. GeocodingService. Karten Also müssen wir den Status zu überprüfen um zu sehen, wenn sie zurückgegeben. google.maps.GeocoderStatus.OK die zeigt, dass wir ein gültiges Ergebnis. Wenn wir das nicht tun, dann bekommen wir, keine tun können. Dies könnte eine ungültige Adresse sein. Oder die API-Service Macht unten sein oder wer weiß? Angenommen, wir haben eine Erfolgs Ergebnis dann wir werden den Ort, von greifen die Folge. Und wir werden, um die Google Map gesetzt in der rechten unteren Ecke, um sein an dieser Stelle zentriert und aktualisiert die Bus auf die Karte, um diese Position. Und jetzt müssen wir aktualisieren die Google Earth-Plug-in. So aktualisieren wir die Breite und Längengrad des Shuttle. Und wir müssen auch aktualisieren shuttle.localAnchorCartesian da, wenn Sie shuttle.js anschauen, werden Sie sehen, dass Sie dass auch verfolgt Breite und Längengrad. Also, wenn wir nicht aktualisieren, dass, haben wir die ursprüngliche Breite und Länge gespeichert irgendwo versteckt. So aktualisieren, dass jetzt, nennen wir shuttle.updateCamera zu erfrischen die Bildschirm und zeigen uns, unseren neuen Standort. Und das ist es. Mein Name ist Rob. Und das war Shuttle.