Ben Bahrenburg: Augmented Reality Using Titanium

18
Augmented Reality Using Titanium Ben Bahrenburg

Transcript of Ben Bahrenburg: Augmented Reality Using Titanium

Page 1: Ben Bahrenburg: Augmented Reality Using Titanium

Augmented  Reality  Using  Titanium  

Ben  Bahrenburg  

Page 2: Ben Bahrenburg: Augmented Reality Using Titanium

Agenda

•  Why Augmented Reality?

•  Provider Approach to Location Services

•  AR App User Interface Composition

•  How Web Services + Camera = Awesome

•  Where to get the code

Page 3: Ben Bahrenburg: Augmented Reality Using Titanium

Who the heck are you?

•  Titanium Titan

•  Focused on Geolocation

problems

•  Specialize in Enterprise

to customer delivery

•  Using Ti since 0.4

Twitter: @benCoding Email: [email protected]

Slides on github: placeholder

Page 4: Ben Bahrenburg: Augmented Reality Using Titanium

Why Augmented Reality?

Augmented Reality provides a context to your content. The

user now interacts to the content instead of simply

consuming it.

Page 5: Ben Bahrenburg: Augmented Reality Using Titanium

Location Provider Approach  

Location Provider Libraries offer:

1.  High availability – Not dependent on a single provider

2.  Flexibility – Use different providers for different situations

3.  Global Focus – Use providers that specialize where your user is

Page 6: Ben Bahrenburg: Augmented Reality Using Titanium

Introducing  myTiLoca:on  

•  CommonJS module

•  Plug-in model

•  Handles fallback scenarios

•  Standard Input / Output Format

•  Reverse Geo & Forward Look-up

•  Distance, Bearing, & other helper functions

Page 7: Ben Bahrenburg: Augmented Reality Using Titanium

Setup  Easy  as  1-­‐2-­‐3  

Step #1 – Create the provider Factory var myGeo = require(‘myTiLocation');

Step #2 – Give it a list of providers

var myProviders =['native','geonames'];

Order specifies their fallback priority

Step #3 – Register your providers myGeo.registerProviders(myProviders);

Page 8: Ben Bahrenburg: Augmented Reality Using Titanium

GeCng  Results  Reverse Geolocation

myGeo.reverseGeo(lat,lon,callback);

Forward Geolocation myGeo.forwardGeo(address,callback);

myGeo.calculate – myGeo.calculate.distance(lat1,lon1,lat2,lon2); – myGeo.calculate.bearing(lat1,lon1,lat2,lon2); – myGeo.calculate.midpoint(lat1,lon1,lat2,lon2);

Page 9: Ben Bahrenburg: Augmented Reality Using Titanium

bit.ly/my*loca*on  *all  lower  case  

myTiLoca*on  on  github  

@  

Page 10: Ben Bahrenburg: Augmented Reality Using Titanium

UX Time

Page 11: Ben Bahrenburg: Augmented Reality Using Titanium

Common  IU  Components  

•  Search Box

•  List of Attractions

(Tableview)

•  Attractions on a map

(mapview)

•  AR View ( Camera overlay)

Page 12: Ben Bahrenburg: Augmented Reality Using Titanium

Some  Examples  

•  Layar

•  AroundMe

•  Wikitude

•  NY Nearest Subway

•  Cheap Gas

•  Peaks

Page 13: Ben Bahrenburg: Augmented Reality Using Titanium

Introducing  myTiAR

•  Cross Platform ( thanks Titanium )

•  Plug-in model, with built in examples

– Yahoo Local

– Groupon

•  On Github

Page 14: Ben Bahrenburg: Augmented Reality Using Titanium

How  it  works

•  Place-holder

Page 15: Ben Bahrenburg: Augmented Reality Using Titanium

Camera  Overlay  Tricks

•  Place-holder

Page 16: Ben Bahrenburg: Augmented Reality Using Titanium

bit.ly/my*ar  *all  lower  case  

myTiAR  on  github  

@  

Page 17: Ben Bahrenburg: Augmented Reality Using Titanium

The  demo  

Page 18: Ben Bahrenburg: Augmented Reality Using Titanium

Ques*ons?