Tomáš REIMERS: Cool. Do hi, ĉiuj. Mia nomo Tomas. Mi estas TF kaj tiu estas ARMAGHAN BEHLUM: Armi. Nice por vidi vi uloj. Tomáš REIMERS: Cool. Do ni iras por paroli pri Leap Motion hodiaŭ. Do Leap Motion estas vere malvarmeta produkto kiu lasas vin interagi kun komputilo alimaniere. Do la tuta ideo malantaŭ salto moviĝo estas ke vi povas uzi viajn manojn por interagi kun la komputilo. Do ĉi tie mi devas ion starigis. Mi parolos pri tio en iom. Sed la baza versio estas vi povas vidi ke mi havas miajn manojn antaŭ de mia komputilo kaj kiam mi volas movi ilin, vi havos la analoga sur la komputilo kaj vi povas analizi ĉi. Vi povas fari gestojn. Vi povas uzi viajn manojn por interagi kun la komputilo en nova kaj interesa maniero. Nu, mi fakte unue volas pasi ekstere al Armi montri al vi iom malvarmeta donas de kio kelkaj homoj faris kun tiu. Kaj tiam ni parolos pri kiel vi fakte kodo kun tiu. ARMAGHAN BEHLUM: Yeah. Saluton. Do kiel ni vidis, iom Datumoj ĉi tie, sed ni vidu kion iuj personoj agis kun cxi tiu. Do lasu min simple malfermi tiun ekzemplon. Kaj tiam, tiel, ekzemple, vi povas vidi mia mano analoga tie, sed nun tiu tempo iuj homoj uzantaj Unueco havas decidis meti iomete pli haŭto kaj aĵoj ĉirkaŭ la mano. Do mi povas, ni iru kun ĉi tiu, certa, ke miaj manoj interagantaj. Kaj vi versxajne povas imagi kelkaj aliaj malvarmeta utilaj aferoj ke vi povas fari kun ĉi tiu. Do tiu estas almenaŭ unu ekzemplo. Kaj tiam ni salti el tiu. Kaj tiam alia malvarmeta unu estas, ni iru kun ĉi tiu. Plasmo pilko. Denove, ni ne nepre atendi ĉi nivelo de komplekseco el fina projekto por CS50. Tiu estas nur por montri al vi iuj de la, donu vi uloj iom inspiro por kio vi uloj povas vidi kun Leap Motion. Do ekzemple ĉi tie estas malvarmeta fiziko ekzemplo, kiun tie ni iru. Havas ambaŭ de miaj manoj ĝis nun vi havas ĉi tiu malgranda plasmo pilko. Kaj la pilko reagante al la fiziko mi movas mian manon ĉirkaŭ la pilko. Nun tiu estas ĉiuj kvankam uzante Unueco, uzante specon de iloj kaj kadroj ke ni ne instruis vi uloj en klaso, sed kiel vi povas vidi kelkajn belajn malvarmeta kuri throughs kun tiu. Sed unu afero ke vi uloj povas fari dividante nun kun Leap Motion estas verko en JavaScript. Leap Motion havas JavaScript API kiu vi uloj povas uzi kaj ni tre, tre rekomendas ke vi uloj konstrui viaj projektoj uzante tiu. Do kun tio, lasu min pasi ĝin reen for al Tomas paroli Leap Moviĝo kaj JavaScript. Tomáš REIMERS: Cool. Aux cxu vi volas montri ilin la visualizador unuan? ARMAGHAN BEHLUM: Ho jes. Jes. Ni parolu pli pri tiu visualizador. Tomáš REIMERS: Do en plej bazaj nivelo, kiam vi unue akiri al Leap Motion vi tuj havos ĉi skatolon. Tie, volas min preni kontrolon? ARMAGHAN BEHLUM: Yeah, iru por ĝi. Tomáš REIMERS: Do kiam vi unue atingi Leap Motion vi tuj havos ĉi skatolon. Ĝi havas mekanismon kiu aspektas io tiamaniere. Oni konektas ĝin en vian komputilon, instali la necesajn pelilojn, kaj tiam estos esence esti starigita. Do la plej facila maniero por ordigi de interkonsento kun Leap Motion estas malfermi ĉi programo instalas nomata Leap Motion visualizador. Kaj la visualizador estas laŭvorte kion mi montras tie. Ĝi permesas al vi rigardi la skeletaj strekon de viaj manoj. Kaj kion la Leap Motion interpretas ilin kiel. Do la Leap Motion uzas la fotilo ordigi de rigardi vian manojn kaj tiam provas diveni la bazaj skeletaj komponado kiu vi vidi sur la ekrano estas. Kaj tiu estas kion montras vi. ARMAGHAN BEHLUM: CXiun unu malgranda punkto kaj kion vi vidas tie estas datumo kiu estas havebla al vi uloj tiel uzi. Do vi vidas, ke ĝi estas kapti tiun Tomas havas kvin fingrojn, ĉiu el tiuj malsamaj fingroj estas ankaŭ disponebla por vi kiel datumoj punktoj por uzi en ajn aplikaĵo ke vi eble volas. Se vi volas vidi se iu'S faras dikfingroj supren Vi povas vidi se la fingroj estas kurbita kaj ĉu ili estas dikfingro fingro notas supren, aŭ kie ilia pojno aŭ palmo estas kaj kiu tipo de aĵoj. Tomáš REIMERS: Cool. Do vi povas vidi iujn gestojn ĝi Komprenas pli bona ol aliaj. Memoru, ke ĝi rigardas via manon en ĉambro de la fundo, do kiam vi havas viajn manojn kiel tiu komprenas ilin plene, sed unufoje vi komencas provi kaj fari dikfingrojn supren, kelkfoje legas tion, kelkfoje povas diveni, sed honeste la ĉambro nur ne povas vidi la dikfingro. Tuj kiam ne estas vere certe kio pasas. Nur iuj limigoj teni en menso kiam vi disvolvi kun ĉi. Ĉiuokaze, do reiros al tiu. La visualizador reale havas multajn utilajn ilojn. Do la Leap Motion estas planita tiel ke ili ne atendas ke vi interagi kun tiu bildo datumoj. Ili faras ne vere atendi vin kompreni kio okazas malantaŭ la scenoj. Kion ili faras estas elmontri faskon de APIs por vi tia ke vi povas interagi kun ĉi datumoj rekte sen kompreno kio okazas sub la kapuĉo. Do se ni batis H tie en la visualizador vi vidos multajn eblojn. La grava tie kvankam estas se vi batis O kaj tiam batis H, vi vidos ke ĝi permesas desegni gestoj. Do gesto, vi vidos ĝi desegnas sago trans. Gesto estas unu el la manieroj kiuj Leap Moviĝo ia ebligas atingi la datumojn sen devi procesi ĝin. Do anstataŭ mi precizigante ekkompreni el, oh, la mano movis, eĉ se mi havas punkton de aliro, la API estos ia simple diri al mi, bona, ili faris de ĉi tiu gesto. Do vi povas fari bazajn sago gestoj. Vi povas fari rondon gestoj. Vi povas fari frapeton gestoj. Kaj vi povas fari ŝlosilo gazetaro gestoj. Yeah. Kaj tiu klaso de aĵoj. Do nun ke ni ia vidis, kion Leap Motion povas fari, Vi povas vidi ĝin povas legi tutajn faskon da gestoj. Mi kredas ke mi tuj pasi ĝin reen al Armi kaj li tuj paroli pri kiel vi ricevas ĉe tiuj kun JavaScript, kiom vi eĉ komenci projekton kun tiu. Kaj tiam ni parolos pri iuj malvarmeta lokoj vi povas iri kun tio. ARMAGHAN BEHLUM: Yeah. Sonas bone. Do jes, la tre unua afero ni Mi volas ke vi faru kompreneble estas post vi akiris la Leap Motion estas iri al leapmotion.com, starigis, instali la ŝoforoj kaj vazojn. Post fari ke vi povas iri certiĝu ke ĝi estas konektita. Se vi vidas en via eta pleto la Leap Motion ikono kaj ĝi estas verda, tiam vi scias ke vi ĉiuj aro. Kaj kompreneble kontroli, kian Tomas ĵus montris al vi kun la gestoj kaj fari la ekrano coladas, kaj ŝlosilo coladas, kaj kiu tipo de aĵoj. Post ke ecx ni, fojo pli, kiel mi diris, ni havas aliron al ĉiuj tiuj aferojn en JavaScript tiel. La ideala starigis ke Ni rekomendus vin infanoj estas iri en vian vhost dosierujo, lokaj gastiganto, publiko en via CS50 aparaton. Kaj kiam vi iros tie kion vi vidi estas indekso dot HTML dosiero. Nun ke indeksa punkto HTML dosiero aŭ indeksa punkto PHP dosiero, kiom estas fajna, kion vi povas tiam fari estas iri al via ĉefa mastruma sistemo. Kaj se vi iras al la IP-adreso ke estas listigita en la malsupre-dekstra angulo de via aparato ĝuste ĉi tie, kiel vi povas vidi, tiam kio okazas Estas vi iru al la paĝo kiu estas referenciado por ke indekso dot HTML dosiero. Tial cxiuj kodo ke vi povus meti en tie ricevas senditaj kaj estas uzebla tie. Tomáš REIMERS: Do estas ankaŭ grava nur por referenco ke se vi uloj efektive scias kiel krei la servilon mem, aŭ vi volas meti tion en la tutmonda retejo, vi plene rajtas fari kion. Memoru, ke tiuj estas nur JavaScript dosierojn kaj ĉiuj Leap prilaborado estas farita sur la kliento. Do ne vere gravas kie via servilo vivoj tiom longe kiom la komputilo vi pririgardis la retejo sur kiu Leap Motion instalita. ARMAGHAN BEHLUM: Absolute. Ŝati Tomas diris, yeah, ajn laboras por vi uloj. Tiu estas nur unu el niaj rekomendoj. Nun ekuzi Leap Moviĝo kion vi farus Estas vi devus importi la JavaScript dosiero de Leap Motion. Kaj tiam el tie kio vi povas fari estas, ĝuste nun Mi ĵus havas tiu alineo etikedo starigis kun ID de teksto. Aĵoj kiujn ni rekomendas instalas controlador ebloj por Leap Motion kun la ebligi gestoj esti vera. Do implicite tiuj gestoj kiujn ni montris vin infanoj, la cirklo, kaj la ŝlosilo krano, kaj la golpetazos, Tiuj ne estas montrita vi uloj defaŭlte. Sed ni forte rekomendas uzi tiujn tial vi ne reinventar la rado. Enŝalti tiujn al vera, pasante tiuj controlador ebloj por salti dot maŝo kaj vi ĉiuj aro por iri. Ĉar tiam vi simple devos difinis anonima funkcio kiu prenos en kadro de Leap Motion kaj tiu kadro havas ĉiujn informo ke vi tuj bezonos. Tomáš REIMERS: Do apenaŭ al recap, vi havas unu celon. Vi havas tiun funkcion nomita salto dot buklo. Kaj vi nomas ĝin per du argumentoj. Vi nomas ĝin per unu, la controlador ebloj. Kaj ekzistas multaj opciojn vi povas meti en tie. La unu ni tuj elstari estas ebligi gestoj. Kaj se vi starigis ĝin egala al vera tiam vi povas akiri aliron al ĉi gestoj ke ni montris vin la visualizador. Kaj tiam la dua argumento estas funkcio, ĝi estas speco de kiel alvoko reen kiu nomos ĉiun tempo ĉiun kadron de Leap, Tiel cxiu tempo salto registras ke via mano movigxas ĝi havas novan kadron. Kaj li nomas tiun funkcion kun unu argumento, kiu estas la kadro objekto. Kaj tiu kadro objekto priskribas konstruajxoj kiel Leap vidas. ARMAGHAN BEHLUM: Ekzakte. Do ĉi enhavas ĉiujn utila fragmentojn de informo ke ni parolis pri antaŭe. Chequear kadro dot gestoj estas tabelo de gestoj ke la salto moviĝo kaptis vian manoj faranta en la lasta kadro. Do ekzemple, kion ni estas faras ĉi tie estas ni traserĉas, hey, Leap, en tiu lasta kadro agadis vi kaptas ajnan gestoj kiujn mi faris? Kaj se jes, kion ni decidas fari estas persisti tra tiuj gestoj kaj provi kaj akiri kelkajn utilajn de ili informojn. Ĉiu gesto havas unika IRU asociita kun ĝi. Ili havas tipojn. Vi povas rigardi kiujn fingroj estis implikitaj en la gestoj per marki tiun pointable ajxoj. Do se kiam vi iros tra la Leap Motion JavaScript API stuff, kiam oni mencias pointables, ili parolas pri tiuj fingroj. Kaj tiam manoj estas, kompreneble, la tutan manon objekto. Kion alian? Vi povas kontroli kiel longe la movado daŭrigis por kaj, jes, ĉiuj tiuj utilaj aĵoj. Do kion mi faras nun tie mi ensalutantojn la kadro, kaj tiam mi ĝisdatigos mian HTML por montri ĉiuj tiuj informerojn el la kuliso. Do ni kontrolu tion diveni. Do jen ĝi estas. Jen la indekso dot HTML dosiero. Kaj kiel vi ĵus vidis, kiam mi simple kopiis mia mano Leap kaptis rondon moviĝo. Do vi povas vidi min fari rondon super tie, ĝi ĝisdatigas kun rondo informo. Farante golpetazos, kaptas golpetazos. Ni provu ekranon langeto. Tie ni marŝos. Ekrano krano kaj ŝlosilan krano. Do ŝlosilo coladas ankaŭ, por la vojo, estas kiam vi batis malsupren. Do vi povas imagi eble ludi pianon. Kaj tiam ekrano frapetoj estas kiam vi batis la ekrano. Do vi povas imagi eble vi reale havi ekranon táctil antaŭ vi kaj vi bati la takto ekrano antaŭ vi. Kaj tiam ni povas ekpreni unu de tiuj objektoj en ĉi tie. Do memoru mi diris ke mi estis pasante la kadro en konzolo ŝtipo. Kaj tiel ni povas kontroli ĉiujn fragmentojn de informo ke estas haveblaj en ke kadron tiel uzi. Kiel mi diris antaŭe, pointables estas la fingroj. Tiumomente ni ne havas nian manojn antaŭ la Leap Motion do ĝi registris nulo, sed jen kiel vi komencus eltrovi eble kiom da fingroj estas la ekrano. Kaj tiu tipo de informo. Tomáš REIMERS: kaj memorante tiu estas nur objekto. Do ĉio povas esti alirita ia kiel struct en C. Vi havas la celon enoficigos dot la proprieto nomo. Kaj tiam ene ke vi havas arrays kaj vi havas aliajn celojn, sed memoru ke estas nur objekto. Nenio speciala ĉar ni uzas Leap. ARMAGHAN BEHLUM: Yeah. Cool. Ĉu ni kontrolu paro de Ĝavoskripto ekzemplojn? Tomáš REIMERS: Do rapide memori ke ni diris ke Leap povas reale kuri sur ajna retejo. LeapJS estas nur servis al kliento. Kaj tiel kune kiel la kliento havas Leap Motion alfiksis ĝi funkcios. Do Leap Motion havas retejo kie homoj povas dividi liaj ekzemploj de aferoj oni jam faris. Do ni simple tuj iros tra paro de ili por vidi kio estas ebla antaŭ plonĝado en pli specifaj detaloj pri kiel ĝi estas ebla. Do ARMAGHAN BEHLUM: Vidu. Tomáš REIMERS: Nun estu laborante. ARMAGHAN BEHLUM: Do nun antaŭ ni vidis ekzemplon uzante Unueco kiu pruntis nian manon kun bela impresa grafika felon sed nun vi povas vidi vi povas fari la samon ene de retumilo. Jen ĉiuj ene Chrome nur uzante JavaScript. Kaj tiam la alia belan afero estas se vi volas scii kiel faris tion, la ekzemploj en JavaScript ankaŭ inkludas kodon ebloj kiuj vi povas kontroli kaj tiam vidi kiel tiu persono estis grabbing manoj kaj kodoj kaj tiaj. Do jen ĉio vi povas trovi ĉe developer.leapmotion.com. Vi povas iri kaj kontroli Ĝavoskripto ekzemploj ke ili havas tie. Do jes. Jen tiuj, oops bedaŭras. Ni provu tion denove. Oh. Mi havas du dekstraj manoj. Do jes. Tomáš REIMERS: Tiel kaj pli, memoru kelkfoje Leap salatojn supren. Nur doni ĝi dua. Ne perfekta, sed ĝi estas sufiĉe bona. ARMAGHAN BEHLUM: Unu alia rekomendo ankaŭ estas ne fari ĝin en rekta sunlumo. Do la vojo Leap Motion verkoj estas, reale se mi montras la ĉambro ĉi tiel, transruĝa lumo. Do ĝi sendas tiujn ekster kaj tiam legas ilin kiam ili revenis. Do se vi provas faru ĝin direkti sunlumon, ekzemple, estas probable ne tuj laboros, aŭ ĝi estas tuj postulos iuj calibración fari tion. Ankaŭ alia rekomendo estas liberigi la spacon malantaŭ la Leap kaj antaŭ Leap. Pensu pri ĝi kiel funkcias ene de kupolo kiu estas ĉirkaŭas ĉi Leap Motion objekto. Se okazas stuff dekstra malantaŭ ĝi tiel, ke estas ankaŭ tuj interferir kun kiel la Leap Motion prov rekoni vian manon kaj kiu tipo de aĵoj. Do, ekzemple, mi pensas en ĉi kaze temas pri mia tekkomputilo reale tio estas speco de farante la Leap Motion. Yeah, tie ni iru. Do se mi klarigi mian tekkomputilon de malantaŭ ĝi la mano aperas sufiĉe bone. Do jes. Jen tiu. Do kio alia faris ni montros ilin. Tomáš REIMERS: Furaĝo nun estus la tempo ordigi de plonĝi en kaj ni nur fari demo plene de nulo. Ĝi tuj estos vere simpla. Esence kion ni iras provi fari estas fari ĝin por ke kiam vi swipe via mano, La fono tuj komencu marsxi kiel ruĝa, kaj kiam vi swipe via mano, La fono tuj fariĝos verda. OK? Vere simpla. Kaj estas esence nur tuj iros tra multe de la konceptoj malantaŭ Leap tiel ke ni povas Eniru tiun ideologion de kiel Leap laboras kaj kiel ni povas konstrui stuff kun tiu. Kaj tiam el tie ni probable nur montri al vi la API Dokumentoj kaj kie vi povas legi pli pri tio. Kaj tiam ni nomas ĝin tago. Do ĉu vi volas kodi aŭ Ĉu vi deziras min al kodo? ARMAGHAN BEHLUM: Yeah. Nu, mi supozas ke ni povas labori kune en ĉi tio kaj provi Tomáš REIMERS: ni do fari iun paro kodigo. ARMAGHAN BEHLUM: Tie ni marŝos. Tio estas ekzakte kion mi volis ekiri. Cool. Do ekzemple en tie, ni vidos. Dum ni ripetanta tra la gestoj jam, Tomáš REIMERS: Volas fari nur tute nova dosiero? ARMAGHAN BEHLUM: Tute nova dosiero? Yeah, certa. Tomáš REIMERS: Yeah. ARMAGHAN BEHLUM: Do ni faros tion. Tomáš REIMERS: Do ni iras fari tute dosiero. Ni nomas tion transdonu dot HTML. Tio estas malvarmeta kun mi. Do memoru vi faras HTML tag, tiam ene ke vi havas kapon. Ke kapo havas titolon ene ĝi. Do langeto inverse. Tie vi iru. Titolo, ni nomas ĝin Leap Ekzemplo. Yep. ARMAGHAN BEHLUM: Oops. Titolo. Tomáš REIMERS: Yep. ARMAGHAN BEHLUM: Tie ni estas. Tomáš REIMERS: Kaj tiam ni akiru al korpo. ARMAGHAN BEHLUM: Atendu, ni Ankaŭ certigi por importi. Tomáš REIMERS: Ho, kompreneble. Mia malbona. Do ĉiam fari certe vin havas la Leap skripto por ke estas skripto donita al vi per Leap Motion kiu esence permesas la retumilon konekti al la mekanismo en la uzanto komputilo. Kaj tiam en tiu ni ankaŭ bezonas korpon kaj ni nur fari la korpon saluti tiel ke ni povas montri studentoj kiel konekti al ĉi tiu nova retpaĝo ke ili faris. ARMAGHAN BEHLUM: Sure. Do ni nur metis another-- Tomáš REIMERS: Saluton, saluton mondo. Do tre bazan ekzemplon. Vere nur demo. ARMAGHAN BEHLUM: Kaj tiam en ĉi tie ni povas iri al, ni nomis ĝin mane dot HTML, dekstra? Kaj ho! Do mi scivolas kio estas malĝusta kun ĉi tiuj momentoj. Ni aldonu legitaj permesojn transdoni dot HTML. Tomáš REIMERS: Ĉu vi volas fari ĝin en la grandan stacion tiel ke ni povas simple montri ĝin sur the-- ARMAGHAN BEHLUM: Yeah, tio havas sencon. Bone. Do mi simple aldonis la permesoj, sed se ni estis por kontroli la permesojn antaŭ ni estus vidintaj ke reale mano dot HTML ne legis permesojn kaj tial ni ne povis repagi ĝin. Sed nun se ni agos tiel, ni vidas nian iom saluton mondo pravas. Tomáš REIMERS: Do ni efektive, dum li estis skribanta, saluton mondo, Mi pensis pri maniero ni povis ŝanĝi ĉi. Ni faru ĝin diri saluton mondo, kaj tiam kiam vi skuu, ĝi diras adiaŭ. Dekstra? Do saluton, adiaŭ. ARMAGHAN BEHLUM: Sure. Tomáš REIMERS: Tio sonas sufiĉe bone. ARMAGHAN BEHLUM: Tio sonas bone al mi ankaŭ. Tomáš REIMERS: Do se ni estos tuj fari tion ni nur pensi tra la retpaĝo iomete. Ni tuj bezonos iun skripton kiu esence registras ke vi flirtis kaj al Leap, ondo kaj swipe, samo. Do ni tuj bezonas skripton kiu esence registras por tiu swipe. Kaj alia afero ni estas tuj bezonas estas ni tuj bezonas ian fakta enhavo ŝanĝos. Do kiel vi memoras, jQuery Permesas al vi ŝanĝi enhavon. Do unu afero ni eble volas inkludi en tiu estas la jQuery biblioteko. Kaj tiam por povi elekti kion ni fakte tuj ŝanĝos enhavo, ke tuj bezonos ID aŭ klaso, aŭ iu ke ni povas uzi por elekti ĝin. Do ni simple doni rapida ID de ŝanĝo tekston. Kaj tiam vi volas ekpreni jQuery? ARMAGHAN BEHLUM: Do kio estas la unua aferon sur nian fari lerta tiam nun? Tomáš REIMERS: Ni kaptu jQuery? ARMAGHAN BEHLUM: Ni ekpreni jQuery, OK, malvarmeta. En tiu kazo, mi iros devos actually-- kie estus la bona loko por fari tion? Tomáš REIMERS: jQuery, do se vi Google jQuery, batis jQuery, la unua ARMAGHAN BEHLUM: Tre unua unu. Tomáš REIMERS: Aŭ deŝuto. Ĝi estas bone. Hit download v1 kaj v2 maldekstre. Do ni priskribanta jQuery de Enreta kiel vi probable faris. Rulumu malsupren. Supren, supren. ARMAGHAN BEHLUM: Ho, ĉi tie nun? Tomáš REIMERS: Aŭ tio. Yep. Do jQuery havas gastigita versio kio signifas, ke vi ne efektive bezonas elŝuti ĝin, sed vi estas pli ol bonvenigi elŝuti ĝin kaj gastigi ĝin mem. ARMAGHAN BEHLUM: Cool. Do nun ni havas jQuery. Nun kio estas la sekva sur nia fari lerta. Tomáš REIMERS: Awesome. Tiel proksimaj kion ni bezonas fari estas ni vere bezonas doni p saluton mondo IRU tiel ni povas ŝanĝi ĝin, ĉu ne? Do ni doni ideon de, Mi ne scias, ŝanĝi tekston? ARMAGHAN BEHLUM: Ni simple faru ĝin tiamaniere, mi supozas. Tomáš REIMERS: changeText, malvarmeta. Kaj nun ni nur refreŝigi la paĝon. Certiĝu ĉiu funkcias. Do reen en la retumilo. Cool. Ĉiam bona rememorigilo ke kiam vi konstruas retejon, probable refreŝigi ĉiufoje kiam vi faras ajna iom signifa ŝanĝo simple ĉar kelkfoje vi hazarde faligis etikedo, aŭ vi hazarde forviŝi ion, kaj tiam vi rompi iu malgranda, sed tiam, kiam vi faros pli grandan ŝanĝon vi estas kiel, kial faris tiu granda ŝanĝo kvazaŭe rompi la nerilata afero. Do estas ĉiam bona por ordigi de iri kaj faras prudento ĉekoj. Ĉiuokaze tiel nun ni faru unu lasta prudento ĉeko, kio estas ni provu ŝanĝi teksto sen Leap Motion, sen nenio, nur sur la paĝo ŝarĝo ĝi malebligos ŝanĝi saluton mondo al adiaŭ uzante jQuery. Do se vi memoras jQuery elmontras ĉi dolaro signo funkcio, kion ni povas pasi CSS selector por, nome hashtag ŝanĝo teksto, kiu Selektas la elemento kun IRU de ŝanĝo tekston. Kaj tiam ni iras nomi la metodo HTML sur la objekto revenas kun la argumento de kordo adiaŭ, kiun ŝanĝos la erojn HTML por adiaŭi. Imponega. Tio ŝajnas bela malvarmeta. Kaj nun kiam ni refreŝigi la paĝo ni tuj vidos ĝi momente ŝanĝas al adiaŭ, ĉu ne? Ĉar ĝi ne atendas nenion. Ordigi de apenaŭ ke skripto kuras ŝanĝas ĝin al adiaŭo. Cool. Do nun ni envolver ke en funkcio. Rajto. Do ni tuj volas fari funkcion. Ni nomas ĝin adiaŭ. Do funkcio adiaŭ estas tuj prenos sen argumentoj kaj ne estas vere tuj revenos ion. Kaj estas ĝuste tuj fari tion en JavaScript. Bonega. Do nia funkcio adiaŭ nun ŝanĝu la tekston al adiaŭ, ĉu ne? Do ĉi donas al ni metodon al esence ŝanĝo ke teksto por adiaŭ kiam ajn Ni nomas tiun funkcion. Dekstra? Do tiu estas sufiĉe freŝa. ARMAGHAN BEHLUM: Nu, ni povas ankaŭ ĵus certiĝu kiuj nun ekde ni ne nomante la funkcio, se ni refreŝigi la paĝon, rimarki ŝin ne tuj ŝanĝi la tekston. Tomáš REIMERS: Bonega. Do nun ni tuj komencos eniri en tiu Leap stuff ke ni parolas. Do Armi, ĉu vi volas preni ĝin el tie aŭ? ARMAGHAN BEHLUM: Yeah. Certe. Mi verŝajne tuj bezonos al duobla ĉeko aferojn, sed ekzemple memoras ni diris ke ni volis certigi en Opcioj ni aro ebligi gestoj Tomáš REIMERS: Bonan kaptisto. ARMAGHAN BEHLUM: Por esti vera. Kaj poste ni estis rekomendante ke vi uloj volus kuri salto dot buklo, kiu kiel ni diris antaŭe, havas du eblojn, oni JSON objekto Estas la eblojn por kiom vi volas konfiguri la Leap Motion al laboro, kaj tiam funkcio tio tuj kaptos kadron kiel callback funkcion kiel Tomas diras. Kaj tiam redakti kion vi volas havu kun tiu funkcio. Do ni pasas en la eblon kaj nun ni difinas funkcio kiu prenos en kadro. Kaj nun ni devas difini kion tiu funkcio faras. Estas ankaŭ pro la estonteco, faru tion certigi. Tomáš REIMERS: Bonega. Do nun ni havas ĉi salto dot buklo funkcio voki kiu esence diras spekti Leap kun tiuj ebloj kaj ĉiufoje ion ŝanĝas, nomas tiun funkcio kadro kun ĉiuj de la datumoj ke vi estas konscia de en kadro. Sonoj sufiĉe bona. Do nun rapidan prudento ĉeko, kiun mi ĉiam rekomendas, estas en tiu ĝuste meti konzolo dot log kadro. Kaj tiam en Chrome malfermi ĝin supren kaj rigardi vian konzolon kaj ludi ĉirkaŭ kun Leap vidi la kadroj esti ensalutinta ĉar tiu volo frue vi ideon de kio datumo vi havas aliron al. Kaj kiel ĉiam, se vi get konfuzita, serĉi la API referenco. Kaj ni inkludas la ligon por ke je la fino de ĉi tiu. ARMAGHAN BEHLUM: Do ni refreŝigi la paĝon kaj poste ni iru kaj malfermu la konzolon denove. Kaj nun ni rimarkas ke ni estas havante kadroj pasis en, tiuj malgranduloj celoj ni vidis antaŭe. Do jes. Jen niaj kadroj montrante supren en la konzolo. Cool. Do nun ke ni kaptis la kadrojn, kiel vi eble memoras pli frue el la ekzemplo kiun ni havis, se ni kontrolu kadro dot gestoj ni preni la listo de gestoj kiujn la kadro laste kaptis. Ni povas kontroli la longon de tiu tabelo vidi se Leap kaptis ajnan gestoj. Do se tiu tabelo estas pli granda ol nulo tiam ni scias ke ni havas iujn aĵojn por fari. Do ni envolver ke supren en se kondiĉo kaj nun ĉi tie, kion ni scias estas ni vidis gesto, ni agas sur ĝin. Do nun ke ni estas ĉi tie ni havi geston ekiri. Tomáš REIMERS: Nu, la unua afero estas ne nur unu gesto, ĝi povus esti kiel multaj gestoj. ARMAGHAN BEHLUM: Tre vera. Tomáš REIMERS: Do po klasika C stilo tie ni probable volas uzi por buklo. ARMAGHAN BEHLUM: Jen ni estas tiam. Ni decidis persisti tra la gestoj. Kaj ne nur vi. i plus, plus. Kaj nun se ni eble faris nur var gesto egalas framo dot gestoj krampo i, ni nun devas gesto mem, kiuj estas nur unu sola petskribo de gesto objekto por ni labori kun ene de tiu por buklo. Bone. Tomáš REIMERS: Ni prudento kontrolu ĉi tie denove kaj nur konsoli dot ensaluti geston por vidi kion ni preni. ARMAGHAN BEHLUM: Konzolo dot log gesto. Okie dokie. Kaj refresxigu pli tempo. Tomáš REIMERS: Kaj ni provu farante geston. Vi vidos ke faskon de, kiam li golpetazos, Vi ricevos multajn gestojn en la konzolo kaj se li provas fari rondon, ĝi estas just-- ARMAGHAN BEHLUM: Rondoj estas nur vere bela. Tomáš REIMERS: Nun tie estas bizara afero tie, kiu li estas faranta unu cirklo, sed tiu estas ensalutadon 80 gestoj, dekstra? Tio estas multo de gestoj. Do la unuaj tiaj aferoj al realigi, kaj ĉi tiu povas esti konfuzanta, estas ke gesto ne nur ensalutinta fojon. Sur ĉiu kadro, dekstra, do se mi faras rondon Leap detektos ĉi Estas ŝanĝo, de tiu Estas ŝanĝo, de tiu estas ŝanĝo. Kaj estos log ĉiu el tiuj. Sed en ĉiu el tiuj, ĝi tuj diros, ho, ekzistas gesto nuntempe en progreso. Do lasu min nur diri, hey, ekzistas geston kaj estas nuntempe en progreso. Do kion ni ne volas nur diri, ho, sur cxiu de tiuj gestoj vin volas ŝanĝi tekston. Kion ni volas fari estas kiam tiu gesto detenas, kaj ni povas kontroli ke, tiam ni volas ŝanĝi tekston. ARMAGHAN BEHLUM: Mhmm. Do kiel Tomas estas klarigante tiujn gestojn montrigxu tra multnombraj kadroj, sed ekzemple, kiam ni devi ke cirklo, ni povas vidi ke la IRU por tiu sola rondo ke ni povintus provi kompletigi Estis la sama ID tra. Kaj fakte, oni povas ankaŭ Kontroli la staton. ĝisdatigita. Kaj tiam ĉi tiu estas probable la lasta rondo kiu, ho, bone, en ordo. Do kelkfoje montras vin statuson de haltante gesto kaj ĝi ankaŭ montras al vi statuso de startanta nova gesto kiam ĝi rekonas por certigi ke vi jam komencis novan geston. Ekzemple en tiu kazo. Tomáš REIMERS: Cool. ARMAGHAN BEHLUM: Tiel yeah. Kaj tiam, vidu. Vi povas rimarki ankaŭ kvankam ni faris rondon kaj gesto havas kampon nomita tipo kiu nin diras kia de gesto kiu estas. Tiel ke povus esti utila por ni Vi provu kaj fari kion ni faras. Tomáš REIMERS: Do transiro reen al JS, la unua afero kiu okazas al mi Ankaŭ, nur legante tra tiu kodo Estas tie estas malgranda optimumigo, kio estas ni reale ne bezonas ĉi se kondiĉo, dekstra? Ĉar se framo dot gestoj ŝprucas longeco estas nulo, ke por buklo La ne tuj kuros ĉiuokaze. Do ni plej bone simple iri antaŭeniras kaj akiri liverita de tiu. Denove, dum vi skribas kodo gravas iri reen kaj varo de refactor kiel vi konscias ke vi povus esti farita iu pli bona, aŭ ke estas alia maniero por fari tion. Do nun ni simple intencas purigi ĉi subite kaj ankaŭ purigi vian kodon. Tio estas granda negoco. ARMAGHAN BEHLUM: Bona stilo estas tre estimita. Tomáš REIMERS: Vi povas ĉiam diri kiam iu havas kodon kie kutimis esti se kondiĉo kaj tiam ili eltiris ĝin, sed ili ne uncomment ĝin. Ĝi estas tre evidenta kaj Ĉio aspektas malbele. ARMAGHAN BEHLUM: Do kio estas proksima en nia fari lerta? Tomáš REIMERS: Do nun ni estis dirante Mi supozas ke la unua aĵo kiun ni volas fari estas certigi ke tiu gesto de reale swipe, dekstra? ARMAGHAN BEHLUM: Yeah. Tomáš REIMERS: Do se ni diras ke nia adiaŭ estas speco de kiel swipe, ni iros kun ĝi estas swipe, La ni unue bezonas diri estas, bona, estas la gesto tajpi swipe, dekstra? Ne cirklo aŭ supro, sed cxu estas swipe? Do kiel ni povas fari tion Estas ni povas diri gesto dot tipo egala egala swipe kiel linio. ARMAGHAN BEHLUM: [inaudible] gesto dot tipo egalas egalas swipe. Tie ni estas. Tomáš REIMERS: Kaj tiam la lasta demando ni volas vidi estas gesto dot ŝtata egala egala haltejo, dekstra? Do estas tie kiam la gesto'S haltigita. Mi vere pensas por swipe, mi sciu tion super la supro de mia kapo, sed vi plene rajtas rigardi ĝin, kiam vi swipe ĉiufoje ĝi registras ŝin ĝis vi halti estas eksalto gesto. Kaj tiam la lasta onia nur halta gesto. Do ekzistas nur unu halto gesto, kiu estas granda por ni. Do kion ni povas fari estas diri se gesto dot tajpu egala egala swipe kaj gesto dot statuso egala egalaj halti, tiam ni prudento kontrolu ĉi tie konsoli dot log gesto. Do ni reiros tien. Ni refreŝigi la paĝon. Kaj nun la nura tempo iu devus esti konzolo dot ensalutinta estas kiam ni swipe. Kaj ni provos swipe kaj vidas nenion. Dekstra? Do tiu estas fakte granda problemo. Ni ne vidas, kion ni atendas. Kaj depuración povas esti granda parto de tiu. Do la unua afero ni iras diri estas, bone, ni konsolas dot log se gesto ŝprucas tajpu egala egala swipe. ARMAGHAN BEHLUM: Yeah, ni faru tion. Tomáš REIMERS: Do ni estas tuj reiri al tiu. Ni fortigu. Ni swipe. Kaj ni tuj vidos faskon da ili. Akcepti. Do klare la problemo estis kun nia gesto dot statuso. Do se ni malfermas unu el tiuj ni rigardi en la celoj kaj ni vidos, Nu, estas alta, sed, ho, ĝi nomiĝas ŝtato, ne statuso. Do se ni direktas denove al nia kodo povas diri se gesto dot tipo egala egala swipe kaj gesto dot stato egala egala haltejo, tiam ni konsoli dot ensaluti ĝin. Kaj tiel fortigu. Ni swipe. Kaj ni vidos ke sur ĉiu swipe, ni estas nur atingi unu, kiu estas la Fine, kio estas granda, ĉu ne? Tio estas kion ni volas. ARMAGHAN BEHLUM: Yep. Kaj ni povas rimarki ankaŭ ke la IDs por ĉiu de ĉi tiuj gestoj estas apartaj. Do kiel Tomas diris ĉar ni estas kapti ĉi unu halto stato kiu ekzistas fine de swipe, ni estas ricevas individuajn apartajn gestojn el Leap Motion. Granda. Tomáš REIMERS: Ni iru antaŭen kaj nur faru la fina afero, kiu estas, ARMAGHAN BEHLUM: Adiaŭ. Tomáš REIMERS: Awesome. Kaj nun ni vidu nia retejo. Unu ARMAGHAN BEHLUM: Dua. Ni, jes, ni nomas ĝin Adiaŭ. Granda. Tomáš REIMERS: Ne, Adiaŭ estas reela funkcio. ARMAGHAN BEHLUM: Yeah. Ni faru tion. Tomáš REIMERS: Kiam ni skuu adiaŭ, ĝi diras adiaŭ. ARMAGHAN BEHLUM: Ni havas venkon. Tomáš REIMERS: Do bela ekscita ajxoj. Espereble vi povas konstrui ion alie, sed vi akiras la ideon de, dekstra? Vi povas detekti gestojn. Vi povas nomi funkcioj. Kaj de tiu, kiu vere donas iuj tre fundamentaj konstruelementoj diri, ho, eble kiam ili swipe supren, ĉar vi ankaŭ povas detekti aĵojn kiel direkto. Mi volas ke ili faru ion. Aŭ kiam ili swipe pravas, mi volas ilin fari ion. Kaj ni povas komenci akiri creativas kun kiel ekzakte ni iras al plibonigi nian retejon uzante tiujn swipe gestoj aŭ rondo gestoj, aŭ krano gestoj, ĉu ŝlosilo coladas aŭ ekrano frapetoj. Kaj tiam alia ol tio ke vi estas pli ol bonvena por ludi per la efektivaj datumoj, sed se vi volas fari ke ni sugestus vin iri al la dokumentojn ĉar ili estas vere vere bonan. Do estrita por la dokumentojn jam. Aŭ ĉu vi volas paroli pri tio? ARMAGHAN BEHLUM: Yeah. Ni faru tion. Ankaŭ aliaj sojfabo konsilon, Klopodu kaj pensu pri tio en 3D. Do efektive ni elsxiros tiujn gestojn fojo pli konzolo dot log gesto kaj ni faru tion. Revenu en kaj nun ni provu paro de tiuj, paro de tiuj. Se ni venu kaj kontrolu tiujn gestojn tiel kiel vi povas vidi, ke ili estas dimensinombro estas en tri direktoj, fakte. Do ne nur limigi vin al 2D ekrano kvankam vi eble se iu estos en 2D retejo. Vi povas provi kaj pensi kiel uzanto povus interagi kun la paĝo en 3D. Tomáš REIMERS: En 3D spacon. ARMAGHAN BEHLUM: Ekzakte. Kaj yeah. Do vi demandu, rapidoj, ĉiuj tiuj malvarmeta informerojn. Tomáš REIMERS: Se vi ne familiara kun tiu, ĝi iras x, y, kaj tiam z estas tiu lasta dimensio. Nur io kion vi probable estas konanta se vi pritraktis 3D kunordigi ebenoj antaŭe. Se vi ne havas, estas la samaj kiel 2D unu krom tie estas tria dimensio. Ni nomas ĝin z. Kaj ĉiu, speco de kiel direkto, kiu estas kie ĝi okazas, position-- mi kredas ke eble eĉ elmontri akcelo, mi ne certas. ARMAGHAN BEHLUM: Yeah, mi kredas. Ĝi definitive havas rapidon. Mi fakte ne estas 100% certa pri akcelo. Tomáš REIMERS: Eble eblo vi povas pasi sur al io. Do pozicio kaj rapido estas elmontritaj en tiuj ia tri koordinatoj. Do x, y, z aŭ delto x, delta Y, delto z. Do nun estris la informaĵon ĝi estas developer.leapmotion.com kaj tiam vi povas klaki Dokumentado. Denove, Leap Motion havas ĉiujn tiujn mirinda APIs, ĝi haltas Javascript, unu por C Sharp kaj Unueco, unu por C ++, unu por Java, unu por Python, kaj unu por Objective C. Persone pelus vin al Ĝavoskripto aŭ se vi volas lerni nova lingvo, provu Python. Ambaŭ el tiuj lingvoj kiujn mi laboris kun antaŭe kaj ili estas vere facile lernebla kaj vi jam scias JavaScript, kiu igas vere bona konkuranto. Unu vorto de singardemo kiam oni eniras la dokumentojn. Certiĝu vi moviĝas Dokumentoj v2.0. Ĉar se vi estas sur Versio unu, tio ne funkcios. Ankaŭ por la ekzemplo galerio. Ni elspezis bonan 30 minutoj perante la elpurigi nian Leap antaŭ ni konstatis ke V1 ne funkcias kun V2. Do simple certigi ke vi estas en versio du. Kaj poste mi permesos al li montri vian la dokumentojn. ARMAGHAN BEHLUM: Yeah. Do jen la API superrigardon kaj tiam iuj bitoj kaj pecoj de la informo ke ni jam rakontis al vi. Nice iom Floating manojn super Leap Motion. Kaj recordatorio pensi pri spaco en 3D. Unu el la unuaj celoj pensi kun Leap Motion estas manoj, kompreneble. Ni vidis la rekonitaj per la visualizador. Kaj poste vi povus havi vidis ke ĝi rekonis parto de la pojno kaj la brakon asociita kun ĝi. Tomáš REIMERS: Se vi deziras tiri supren la visualizador. ARMAGHAN BEHLUM: Yeah, ni faru tion denove. Tomáš REIMERS: Vi povas vidi, ĉiam nur bona recordatorio al ia vidi, la visualizador provas montri ĉiuj datumoj kiujn Leap vidas. Do, vi vidos, ke ni havas tiujn speco de kvar punktoj je manartiko kaj tiam la reala pojno. Kaj vi ankaŭ havas ĉi pilko ĉe la palmo. Ĉiuj de ĉi tiuj estas punktoj rekoni rekonita de la salto. ARMAGHAN BEHLUM: Ekzakte. Kaj tiel kun tiu mano objekto ĉiu kadro havas manon tabelo tiel kie vi povas ankaŭ ricevi la maldekstra kaj la dekstra mano. Vi povas akiri kio direkto la manoj estas alfrontas kun la normala direkto de la palmo, aŭ kiel ili lin nomas la palmo normala. Kion alian ni havas? Ni ankaŭ, oops. Ni provu kaj rulu suben tiamaniere. La brakoj, la fingroj estas reprezentita de la fingro klaso, kio estas pointable objekto. Do kiel ni priparolis, ni vidis, ke tabelo de pointables por ĉiu mano. Tiuj estas la iom fingroj pensi. Do ĉi tiu estas bona superrigardon iri tra provi kaj kompreni. Tomáš REIMERS: [inaudible] mano anatomio tie supre. ARMAGHAN BEHLUM: Yeah, precize. Do jes. Tie estas multa kruda datenaro la Leap Motion prenas en interpretas bone por vi, tuj kiam estas granda ideo iri tra ĉi tie kaj provi elkompreni kiel Leap havas jam kalkulis tion por vi kaj do kion informo vi havas disponebla de tie. Kaj tiam el tie Mi rekomendus iranta en tiu maldekstra sekcio super tie, kiu iras, bone fakte ne, tiuj estas fakte ĝuste pli API stuff about-- Tomáš REIMERS: La API referenco je la malsupro estas kutime bona loko por iri. Vi ĉiuj probable vidis tion kiam ni faris la Google Maps PSET. Sed la referenco vere nur iras tra ĉiuj de la funkcioj kaj parametroj disponebla en la objekton al vi. ARMAGHAN BEHLUM: Yeah. Ekzemple, jen kion Mi serĉis antaŭ. Kiam ni havos mane ni povas iri kaj elkompreni kiel Leap rekomendas al ni trovi mano. Kiel mi diris antaŭe, ni havas manojn tabelo. Eltrovu se ni havas manojn kaj provu kaj kroĉi sola mano interagi kun tiel rigide. Do, tio estas kion ni rekomendar vi uloj. La gestoj kaj aĵoj tiel. Tiu API dokumentaro tuj esti fantástica ilo por vi uloj. Ĉu vi havas aliajn rekomendojn? Tomáš REIMERS: Mi ne. Mi kredas ke tio estas bona por nun. ARMAGHAN BEHLUM: Yeah, Mi pensas tiel ankaŭ. Bonvolu retposxtu nin kaj akiri kontakti pri Leap Motion se vi havas eble ajnaj aferoj aŭ bezonas neniun rekomendoj. Kaj ni povas provi diveni stuff evi vi uloj ankaŭ. Dankon. Tomáš REIMERS: Granda.