1 00:00:00,000 --> 00:00:11,712 2 00:00:11,712 --> 00:00:12,850 >> ROB Bowden: Hi. 3 00:00:12,850 --> 00:00:13,780 Aku Rob. 4 00:00:13,780 --> 00:00:19,500 Dan saya berharap Anda siap untuk mengambil apa Aku mengantar atau meletakkan, 5 00:00:19,500 --> 00:00:22,230 atau mari kita mulai. 6 00:00:22,230 --> 00:00:25,040 Jadi hal pertama yang kita butuhkan lakukan adalah menjemput. 7 00:00:25,040 --> 00:00:29,370 Sekarang, mengambil ini akan menghapus ikon penumpang dari Google 8 00:00:29,370 --> 00:00:32,759 peta di sudut kanan bawah dan dari Google Earth di pusat 9 00:00:32,759 --> 00:00:33,970 layar. 10 00:00:33,970 --> 00:00:37,180 Jadi dalam rangka untuk menghapus orang-orang ikon, kita perlu memiliki 11 00:00:37,180 --> 00:00:39,040 referensi untuk mereka di suatu tempat. 12 00:00:39,040 --> 00:00:43,680 Tapi saat ini, fungsi mengisi hanya akan menyingkirkan mereka. 13 00:00:43,680 --> 00:00:48,140 Jadi kita akan harus memodifikasi mengisi untuk menjaga mereka di sekitar. 14 00:00:48,140 --> 00:00:53,440 >> Hal pertama Sekarang kita akan melihat adalah bahwa kita memiliki penumpang array yang global. 15 00:00:53,440 --> 00:00:57,710 Jadi kita akan menggunakan global penumpang array dalam mengisi. 16 00:00:57,710 --> 00:01:03,230 Dalam Mengisi, kita melihat bahwa kita perulangan atas semua penumpang kami. 17 00:01:03,230 --> 00:01:10,420 Dan lingkaran ini yang menciptakan menempatkan tanda untuk Google Earth dan 18 00:01:10,420 --> 00:01:12,540 penanda untuk Google Map. 19 00:01:12,540 --> 00:01:16,420 Dan sekarang kami modifikasi untuk mengisi adalah berada di sini. 20 00:01:16,420 --> 00:01:21,760 Jadi kita menambahkan pada penumpang kami ' Array objek ini yang menjaga 21 00:01:21,760 --> 00:01:26,480 sekitar penanda dan tempat mark kami hanya dibuat bersama dengan rumah dan 22 00:01:26,480 --> 00:01:28,460 nama penumpang. 23 00:01:28,460 --> 00:01:30,560 >> Jadi itu saja untuk mengisi. 24 00:01:30,560 --> 00:01:33,210 Sekarang kita perlu melihat kelas Pick Up. 25 00:01:33,210 --> 00:01:38,540 Jadi di kelas Pick Up, kita sekali lagi akan iterate atas semua penumpang kami. 26 00:01:38,540 --> 00:01:41,340 Tapi sekarang sudah global kami penumpang array. 27 00:01:41,340 --> 00:01:46,150 Dan di sini kita melihat bahwa baik, telah kita sudah mengambil penumpang ini? 28 00:01:46,150 --> 00:01:50,030 Karena jika kita telah mengambil ini penumpang, kita lihat pada akhirnya bahwa 29 00:01:50,030 --> 00:01:55,240 kita akan mengatur penanda dan Tempat mark null karena mereka tidak 30 00:01:55,240 --> 00:01:56,930 lagi di peta Google. 31 00:01:56,930 --> 00:02:00,920 >> Jadi jika kita telah mengambil ini penumpang maka kita hanya akan 32 00:02:00,920 --> 00:02:02,920 terus penumpang berikutnya. 33 00:02:02,920 --> 00:02:07,380 Lain, kita periksa untuk melihat apakah ini Rumah penumpang adalah bagian dalam 34 00:02:07,380 --> 00:02:08,590 Array rumah itu. 35 00:02:08,590 --> 00:02:11,900 Ini adalah cek yang kita perlu memastikan bahwa kita tidak mengambil mahasiswa sebagai 36 00:02:11,900 --> 00:02:13,180 spec mengatakan. 37 00:02:13,180 --> 00:02:15,920 Jadi, jika penumpang adalah mahasiswa baru, kita akan 38 00:02:15,920 --> 00:02:18,190 terus penumpang berikutnya. 39 00:02:18,190 --> 00:02:21,720 >> Setelah kami memverifikasi bahwa ini adalah penumpang kita harus mengambil, 40 00:02:21,720 --> 00:02:25,340 kita sekarang akan memeriksa lintang dan bujur penumpang dan melihat 41 00:02:25,340 --> 00:02:27,760 kalau itu dalam waktu 15 kaki pesawat ulang-alik. 42 00:02:27,760 --> 00:02:31,720 Jika itu yang terjadi, kita benar-benar ingin untuk mengambil penumpang ini. 43 00:02:31,720 --> 00:02:35,890 Jadi kita mengintegrasikan seluruh kursi di pesawat kami mencari untuk melihat apakah 44 00:02:35,890 --> 00:02:38,110 ada tempat yang tersedia untuk penumpang. 45 00:02:38,110 --> 00:02:41,540 Jika salah satu kursi adalah null, itu tempat yang tersedia. 46 00:02:41,540 --> 00:02:45,140 Jadi kita menambahkan penumpang ke kursi. 47 00:02:45,140 --> 00:02:48,760 Kita ingat bahwa kita mengambil penumpang sehingga pada akhirnya, kita bisa 48 00:02:48,760 --> 00:02:52,450 mengumumkan jika kita benar-benar tidak memilih siapa pun. 49 00:02:52,450 --> 00:02:56,140 Kita ingat bahwa kita duduk ini penumpang karena jika kita berhasil mendapatkan 50 00:02:56,140 --> 00:02:59,320 melalui seluruh shuttle tanpa tempat duduk penumpang, maka kita perlu 51 00:02:59,320 --> 00:03:00,885 mengumumkan bahwa kita keluar dari kursi. 52 00:03:00,885 --> 00:03:03,760 53 00:03:03,760 --> 00:03:06,885 >> Kemudian kita menghapus tempat mereka menandai dari Google Earth. 54 00:03:06,885 --> 00:03:11,310 Kami menghapus penanda mereka dari Google Maps, diatur di dalam penumpang kami ' 55 00:03:11,310 --> 00:03:14,830 Tempat Array tanda dan penanda null seperti yang kita katakan sebelumnya. 56 00:03:14,830 --> 00:03:16,035 Dan kemudian itu saja. 57 00:03:16,035 --> 00:03:17,050 Penumpang telah duduk. 58 00:03:17,050 --> 00:03:19,570 Setelah kami melakukan itu untuk semua penumpang dalam waktu 15 meter dari 59 00:03:19,570 --> 00:03:23,250 shuttle, kita perlu rechart. 60 00:03:23,250 --> 00:03:30,270 >> Jadi Chart adalah apa yang akan menampilkan penumpang di kursi di sini. 61 00:03:30,270 --> 00:03:32,760 Jadi sekarang, mari kita lihat Chart. 62 00:03:32,760 --> 00:03:37,960 Di dalam Chart, kita akan menjadi membangun HTML untuk grafik. 63 00:03:37,960 --> 00:03:41,160 Jadi grafik akan menjadi daftar memerintahkan. 64 00:03:41,160 --> 00:03:44,300 Kemudian kita akan iterate atas semua kursi di pesawat kami. 65 00:03:44,300 --> 00:03:48,450 Jadi, jika kursi khusus ini adalah null, yang berarti kita ingin item Daftar yang 66 00:03:48,450 --> 00:03:50,800 menunjukkan bahwa itu adalah mudah kosong. 67 00:03:50,800 --> 00:03:55,650 Lain, jika tidak null, maka kita ingin Daftar item yang akan menampilkan 68 00:03:55,650 --> 00:03:58,660 nama penumpang dan rumah penumpang 69 00:03:58,660 --> 00:04:00,420 itu di kursi ini. 70 00:04:00,420 --> 00:04:04,620 >> Setelah kami iterasi atas semua kursi maka kita menutup memerintahkan daftar kami 71 00:04:04,620 --> 00:04:09,410 dan menggunakan jQuery untuk memilih grafik div dan mengganti itu dengan HTML baru 72 00:04:09,410 --> 00:04:10,550 memerintahkan daftar. 73 00:04:10,550 --> 00:04:12,090 Dan itu saja untuk Bagan. 74 00:04:12,090 --> 00:04:15,170 >> Jadi hal terakhir adalah drop off. 75 00:04:15,170 --> 00:04:20,860 Sekarang drop off akan menjadi cukup mirip untuk mengambil. 76 00:04:20,860 --> 00:04:24,150 Alih-alih perulangan atas semua penumpang, kita akan loop atas 77 00:04:24,150 --> 00:04:25,780 semua kursi pesawat ulang-alik. 78 00:04:25,780 --> 00:04:29,720 Jadi perulangan atas kursi shuttle, kami lihat adalah kursi shuttle tertentu 79 00:04:29,720 --> 00:04:32,850 tidak nol, dalam hal ini ada seorang penumpang di kursi ini. 80 00:04:32,850 --> 00:04:35,380 Jika itu yang terjadi, kami ingin untuk mengambil lintang dan 81 00:04:35,380 --> 00:04:37,030 bujur penumpang ini. 82 00:04:37,030 --> 00:04:42,110 >> Jadi dengan menggunakan array rumah itu, kami akan ambil rumah 83 00:04:42,110 --> 00:04:46,990 penumpang di kursi ini dan kemudian ambil lintang rumah tertentu 84 00:04:46,990 --> 00:04:49,070 dan juga untuk bujur. 85 00:04:49,070 --> 00:04:54,270 Sekarang, kami sekali lagi menggunakan jarak untuk melihat di rumah itu adalah dalam waktu 30 meter dari kita. 86 00:04:54,270 --> 00:04:58,320 Jika itu yang terjadi, mereka ingin mengatur kursi ini untuk null, karena penumpang 87 00:04:58,320 --> 00:05:01,760 dijatuhkan off, dan kenaikan yang penumpang diturunkan. 88 00:05:01,760 --> 00:05:05,910 Sehingga pada akhirnya, jika tidak ada seorang pun turun, kami mengumumkan bahwa tidak ada 89 00:05:05,910 --> 00:05:07,600 ingin untuk turun di sini. 90 00:05:07,600 --> 00:05:12,510 >> Akhirnya, kita perlu rechart sehingga kami tampilkan, kursi kosong baru. 91 00:05:12,510 --> 00:05:15,770 Sekarang, Anda hanya perlu untuk mengimplementasikan beberapa fitur tambahan. 92 00:05:15,770 --> 00:05:17,680 Sekarang, ada banyak yang dapat Anda memilih dari. 93 00:05:17,680 --> 00:05:21,630 Tapi dalam kasus kami, kami menerapkan teleport, terbang, dan mempercepat, dan 94 00:05:21,630 --> 00:05:22,770 melaju. 95 00:05:22,770 --> 00:05:25,100 Jadi mari kita lihat mereka. 96 00:05:25,100 --> 00:05:27,830 Pertama, mari kita lihat yang mempercepat fitur. 97 00:05:27,830 --> 00:05:32,720 Jadi dalam kasus kami, dalam keystroke fungsi, di mana kami sudah menangani 98 00:05:32,720 --> 00:05:39,900 semua kunci ini, kita juga akan mengenali X dan Z. Yang kita tentukan 99 00:05:39,900 --> 00:05:43,720 bahwa karakter ini akan menyebabkan kecepatan pesawat ulang-alik untuk 100 00:05:43,720 --> 00:05:46,530 meningkat dan menurun. 101 00:05:46,530 --> 00:05:50,940 >> Jadi melihat bahwa kami menempatkan terikat pada bagaimana tinggi dan bagaimana rendah kecepatan dapat 102 00:05:50,940 --> 00:05:55,030 benar-benar pergi karena kita tidak ingin pesawat ulang-alik terlalu cepat. 103 00:05:55,030 --> 00:05:58,180 Dan kami juga tidak ingin pesawat itu kecepatan untuk pergi ke nol atau mungkin 104 00:05:58,180 --> 00:06:01,480 bahkan negatif yang akan menghasilkan dalam beberapa perilaku yang aneh. 105 00:06:01,480 --> 00:06:03,890 Dan itu karena ngebut dan memperlambat. 106 00:06:03,890 --> 00:06:05,980 >> Sekarang, mari kita lihat terbang. 107 00:06:05,980 --> 00:06:11,370 Jadi ingat bahwa fitur terbang mengharuskan Anda untuk memasukkan Kode Konami. 108 00:06:11,370 --> 00:06:18,070 Jadi di atas, kita melihat kita memiliki beberapa variabel global, Konami Kode yang 109 00:06:18,070 --> 00:06:20,975 array yang hanya melacak kunci yang perlu dimasukkan untuk 110 00:06:20,975 --> 00:06:22,600 Kode Konami. 111 00:06:22,600 --> 00:06:26,340 Ada Bool yang hanya menunjukkan apakah Kode Konami telah sudah 112 00:06:26,340 --> 00:06:27,660 dimasukkan. 113 00:06:27,660 --> 00:06:30,430 Dan kemudian ada indeks ke array Konami Code yang 114 00:06:30,430 --> 00:06:31,770 kita saat ini di. 115 00:06:31,770 --> 00:06:36,020 >> Jadi jika pengguna sudah memasuki tiga karakter dari Kode Konami 116 00:06:36,020 --> 00:06:40,530 maka indeks akan menunjuk ke hal keempat dalam array, 117 00:06:40,530 --> 00:06:42,150 Indeks ketiga. 118 00:06:42,150 --> 00:06:44,630 Menggunakan itu, sekali lagi kita akan melihat kunci stroke. 119 00:06:44,630 --> 00:06:48,040 120 00:06:48,040 --> 00:06:51,910 Dan pada stroke kunci yang kita lihat di sini bahwa jika Kode Konami belum sudah 121 00:06:51,910 --> 00:06:58,410 masuk, maka kita ingin melihat adalah kunci yang dimasukkan apa yang kita 122 00:06:58,410 --> 00:07:01,250 saat ini mengharapkan dari array Konami Code. 123 00:07:01,250 --> 00:07:04,350 Jika itu terjadi, maka kita kenaikan indeks kami. 124 00:07:04,350 --> 00:07:07,660 >> Jika jenis pengguna Up maka indeks akan pergi ke salah satu. 125 00:07:07,660 --> 00:07:10,280 Kemudian pengguna akan mengetik lagi, Indeks pergi ke dua. 126 00:07:10,280 --> 00:07:12,150 Kemudian mereka akan mengetik bawah, ia akan pergi ke tiga. 127 00:07:12,150 --> 00:07:17,320 Jika mereka mengetik Q, itu akan diatur ulang ke nol karena mereka tidak cocok 128 00:07:17,320 --> 00:07:20,140 nilai yang diharapkan. 129 00:07:20,140 --> 00:07:24,810 Sekarang, jika mereka berhasil melewati seluruh array maka mereka telah memasuki 130 00:07:24,810 --> 00:07:26,280 Kode Konami. 131 00:07:26,280 --> 00:07:33,960 Dalam hal ini, sekarang Konami memasuki benar, kita lihat di sini bahwa jika 132 00:07:33,960 --> 00:07:40,460 Konami dimasukkan, kita menerima dua baru kunci, C dan E. Yang semua orang akan melakukan 133 00:07:40,460 --> 00:07:45,800 diatur terbang ke bawah dan terbang negara atas dalam pesawat. 134 00:07:45,800 --> 00:07:48,530 Jadi sudah ada untuk Anda. 135 00:07:48,530 --> 00:07:51,190 Anda hanya perlu mengambil keuntungan dari mereka. 136 00:07:51,190 --> 00:07:52,890 Dan itu saja untuk terbang. 137 00:07:52,890 --> 00:07:54,680 >> Terakhir, kami telah teleport. 138 00:07:54,680 --> 00:08:00,710 Jadi dalam HTML, kita melihat bahwa kami telah menambahkan kotak input dan 139 00:08:00,710 --> 00:08:02,270 tombol teleport. 140 00:08:02,270 --> 00:08:08,300 Kotak itu memiliki alamat ID, dan tombol memiliki tombol teleport ID. 141 00:08:08,300 --> 00:08:13,970 Sekarang satu detail sedikit mengganggu adalah bahwa jika kita tidak melakukan apa-apa dengan acara 142 00:08:13,970 --> 00:08:19,210 penangan maka ketika kita mencoba untuk mengetik sesuatu seperti A ke dalam kotak input, 143 00:08:19,210 --> 00:08:25,250 bukan benar-benar mengikat A, Google kami Bumi akan pindah ke 144 00:08:25,250 --> 00:08:30,040 meninggalkan karena A sudah terdaftar untuk menangani bergerak ke kiri. 145 00:08:30,040 --> 00:08:35,100 >> Jadi detail mengganggu di sini adalah bahwa ketika kita memiliki kunci ke bawah atau tombol up 146 00:08:35,100 --> 00:08:40,789 acara dalam kotak input, kita ingin untuk Event.stop propagasi yang 147 00:08:40,789 --> 00:08:43,830 hanya akan mencegah geser pesawat. 148 00:08:43,830 --> 00:08:48,510 Setelah itu ditangani, kami juga ingin menambahkan penangan tombol teleport. 149 00:08:48,510 --> 00:08:52,880 Ketika kita klik tombol teleport, kita ambil alamat, yang saat ini 150 00:08:52,880 --> 00:08:57,580 nilai dalam kotak input, dan kemudian kita sebut fungsi teleport ini. 151 00:08:57,580 --> 00:09:00,910 >> Jadi, apa teleport fungsi terlihat seperti? 152 00:09:00,910 --> 00:09:04,840 Nah, hal pertama yang kita lihat adalah kita menggunakan geocoder. geocode. 153 00:09:04,840 --> 00:09:06,940 Jadi apa itu? 154 00:09:06,940 --> 00:09:10,330 Nah, jika kita melihat di bagian atas, kita melihat bahwa kita memiliki baru 155 00:09:10,330 --> 00:09:13,860 variabel global, geocoder. 156 00:09:13,860 --> 00:09:17,500 Dan ini adalah referensi global ke layanan geocoding. 157 00:09:17,500 --> 00:09:19,380 Sekarang apa yang lakukan untuk kita? 158 00:09:19,380 --> 00:09:23,810 Nah, di kotak masukan, aku akan menjadi memasuki sesuatu seperti 33 Oxford 159 00:09:23,810 --> 00:09:26,040 Street Cambridge, Massachusetts. 160 00:09:26,040 --> 00:09:28,580 Tapi kita tidak bisa benar-benar melakukan apa-apa dengan itu. 161 00:09:28,580 --> 00:09:31,760 Kami ingin mengkonversi bahwa untuk lintang dan bujur. 162 00:09:31,760 --> 00:09:34,940 Dan itulah yang layanan geocoding akan lakukan untuk kita. 163 00:09:34,940 --> 00:09:40,630 Di bagian bawah initcb, kita melihat bahwa kami memiliki geocoder sama baru 164 00:09:40,630 --> 00:09:45,830 google.maps.geocoder yang menginisialisasi variabel ini bagi kita. 165 00:09:45,830 --> 00:09:47,930 >> Jadi kembali ke teleport. 166 00:09:47,930 --> 00:09:51,240 Kita melihat kita sedang menggunakan geocoder tersebut. 167 00:09:51,240 --> 00:09:54,970 Kami geocoding alamat yang dilewatkan ke fungsi teleport yang 168 00:09:54,970 --> 00:09:57,450 menyambar dari kotak input. 169 00:09:57,450 --> 00:10:02,020 Dan kami lewat panggilan kembali yang mengambil hasil dan status. 170 00:10:02,020 --> 00:10:05,905 Sehingga hal pertama kita perlu memeriksa per dokumen API dari google.maps. 171 00:10:05,905 --> 00:10:06,130 GeocodingService. 172 00:10:06,130 --> 00:10:08,330 Peta 173 00:10:08,330 --> 00:10:11,550 >> Jadi kita harus memeriksa status untuk melihat apakah itu kembali. 174 00:10:11,550 --> 00:10:16,820 google.maps.GeocoderStatus.OK yang menunjukkan bahwa kita memiliki hasil yang valid. 175 00:10:16,820 --> 00:10:19,310 Jika kita tidak, maka kita dapatkan, tidak ada yang bisa dilakukan. 176 00:10:19,310 --> 00:10:20,990 Ini mungkin merupakan alamat yang tidak valid. 177 00:10:20,990 --> 00:10:24,630 Atau kekuatan layanan API akan turun atau siapa yang tahu? 178 00:10:24,630 --> 00:10:29,980 Dengan asumsi kita memiliki hasil keberhasilan kemudian kita akan mengambil lokasi dari 179 00:10:29,980 --> 00:10:30,790 hasil. 180 00:10:30,790 --> 00:10:34,220 Dan kita akan mengatur Google Map di sudut kanan bawah untuk 181 00:10:34,220 --> 00:10:38,870 berpusat di lokasi itu dan memperbarui bus di peta ke lokasi tersebut. 182 00:10:38,870 --> 00:10:41,620 >> Dan sekarang kita perlu memperbarui Google Earth plug-in. 183 00:10:41,620 --> 00:10:45,340 Jadi kami memperbarui lintang dan bujur pesawat ulang-alik. 184 00:10:45,340 --> 00:10:50,570 Dan kita juga perlu memperbarui shuttle.localAnchorCartesian karena jika 185 00:10:50,570 --> 00:10:55,250 Anda melihat shuttle.js, Anda akan melihat bahwa yang juga melacak lintang 186 00:10:55,250 --> 00:10:56,310 dan bujur. 187 00:10:56,310 --> 00:10:59,490 Jadi jika kita tidak memperbarui itu, kita memiliki lintang dan bujur asli 188 00:10:59,490 --> 00:11:01,330 disimpan tersembunyi di suatu tempat. 189 00:11:01,330 --> 00:11:06,490 Jadi memperbarui yang sekarang, kita sebut shuttle.updateCamera untuk me-refresh 190 00:11:06,490 --> 00:11:09,070 layar dan menunjukkan kepada kita lokasi baru kami. 191 00:11:09,070 --> 00:11:10,380 Dan itu saja. 192 00:11:10,380 --> 00:11:11,500 Nama saya Rob. 193 00:11:11,500 --> 00:11:12,750 Dan ini adalah Shuttle. 194 00:11:12,750 --> 00:11:18,080