Not your typical Mapping App - xcode

I'm in the concept development stage of an iOS app that is essentially a game. One of the things I want to do is to get information about the current location. I've not used the map kit so far, and after a quick read through various documentation, it looks like it is designed mainly as a display kit. What I'd like to do in addition to displaying a map is to query data that might be at the location. For example, if I provide latitude and longitude, I want to know whether that location represents land or water. If it's on land, how close is it to the nearest street? If it's not near a street, what other information might there be about the spot?
I realize there are vast amounts of data available that are geocoded, but is there any information that can be queried directly from the map kit? I would have thought things like elevation would be easily available, but I haven't seen anything like that yet. Am I just looking in the wrong place?

As far as I am aware there is no data that you can query directly from MapKit - i.e. you cannot ask MapKit if a location is on land or water.
You could use reverse geo-coding with the current longitude/latitude to find out details about the location, for example nearest street/town, or which country the location is in.
Check out the built in Apple Geocoding framework, or the Google Geocoding API
Hope this helps.

Related

Get all postcodes on a given location using any Google API

Is it possible to get all postal codes in a given location inside the given radius?
What Google API should I use?
Example: I have a lat. and a long. and my radius is 15kms. How do I get the post codes of the areas inside the radius?
I'm kinda new to using API's and Google API's.
Thanks!
This is a process called "Reverse Geocoding" Google offers it here - https://developers.google.com/maps/documentation/javascript/examples/geocoding-reverse
However pretty sure that Google's API will try to give you one closest result rather than many.
You can do this with APIs (often paid for) however, be warned that you have to be quite careful with the radius element, setting it too small in rural areas will bring back 0 results and setting it too big in urban areas will bring back potentially thousands.

How to add time to directions in Bing Maps v7 API?

I am trying to work through this example in Bing Maps v7 API:
Create Driving Route Example
What I would like to do is to add a starting time to the example and have each direction have the time you should reach the point. For example 08:00 Start at Airport, 08:15, 32 miles Turn Right, 08:30 64 miles Finish at Hotel.
I have searched through the documentation but cannot find anything like this.
I have noticed that some distances in the directions get assigned times as well as the distance. How is this controlled?
If this isn't possible, can you tell me where I can find the documentation as to how to format each direction and control what is shown?
The Directions module in the Bing Maps V7 control does not have a method to take in a future date time for driving routes. However the Bing Maps REST routing service does support this for driving routes. The REST services are documented here: https://msdn.microsoft.com/en-us/library/ff701713.aspx You will want to use the dateTime parameter. The documentation says that this is require for transit, but doesn't highlight that this is also an option for driving. When set predictive traffic data is used to approximate the travel time. It won't tell you what time you will arrive somewhere, but will tell you how long it would take which you could easily add to your start time. If you want to use this with the JavaScript map control, information on how to use the REST routing service with Bing Maps V7 can be found here: https://msdn.microsoft.com/en-us/library/gg427607.aspx
The Bing Maps V8 map control was just released as a public preview a couple weeks ago. The directions module in there will support the ability to provide future date/times.

What does an Area Description File (ADF) looks like?

I'm starting to work with the Google Tango Tablet, hopefully to create (basic) 2D / 3D maps from scanned areas. But first I would like to read as much about the Tango (sensors / API) as I can, in order to create a plan to be as time efficient as possible.
I instantly noticed the ability to learn areas, which is a very interesting concept, nevertheless I couldn't find anything about these so called Area Description Files (ADF).
I know the ADF files can be geographically referenced, that they contain metadata and an unique UUID. Furthermore I know their basic functionalities, but that's about it.
In some parts of the modules ADF files are referred to as 'maps', in other parts they are just called 'descriptions'.
So what do these files look like? Are they already basic (GRID) (2D) maps, or are they just descriptions?
I know there are people who already extracted the ADF files, so any help would be greatly appreciated!
From Tango ADF Doco
Important: Saved area descriptions do not directly record images or
video of the location, but rather contain descriptions of images of
the environment in a very compressed form. While those descriptions
can’t be directly viewed as images, it is in principle possible to
write an algorithm that can reconstruct a viewable image. Therefore,
you must ask the user for permission before saving any of their
learned areas to the cloud or sharing areas between users to protect
the user's privacy, just as you would treat images and video.
Other than that there doesn't seem to be much info about the file internals - I use a lot of them, but I've never been compelled to look inside - curious yes, but not compelled
Without any direct info from the project Tango folks anything we provide would be merely speculation. I'm with Mark, not much compelling reason to get details. My speculation: probably contains a set of image descriptors, like SIFT, and whatever other known device settings are available, like GPS location, orientation (gravity), time(?), etc.
I got the ADF file, basically coded binaries and seems difficult to decode.
I will be happy to share the file if anyone is still interested.

Determine census tract of US address

I have a list of about 20k addresses in the US, and I would like to determine each one's census tract. I found a tool online that does this here, but making 20,000 requests and screenscraping the output seems like the wrong way to do.
One idea I had was to use some open source library like this to search the shapefiles provided here. However, it seems like someone should have written a utility to do something like
Geocoder.census_tract_of_address("200 N State Chicago IL 60601")
Does anyone know of such a thing? How best should I attack this problem?
You can geocode your address to get latitude and longitude from one of the many geocoding services out there (try Google, Yahoo, or OpenStreetMap).
Then you can look up the census tract using:
http://askgeo.com
(Full disclosure: I run that site.)
It is a commercial solution where you can purchase access to the Web API, or purchase the Java Library to do your queries on your own system.
Alternately, if you geocode your address you can use the Data.gov service to retrieve the census geography ID by coordinates: this will return the ID that is used by all the other Data.gov webservices.
Take a look at https://www.temboo.com/library/Library/DataGov/GetCensusIDByCoordinates/

Using flickr to get photos of a specific location and put together a model

I've read about systems which use the Flickr database of photos to fill in gaps in photos (http://blogs.zdnet.com/emergingtech/?p=629).
How feasible is a system like this? I was toying with the idea (not just a way of killing time but as a good addition to something I am coding) of using Flickr to get photos of a certain entity (in this case, race tracks) and reconstruct a model. My biggest concern is that there aren't enough photos of a particular track and even then, it would be difficult to tell if two photos are of the same part of the racetrack, in which case one of them may be irrelevant.
How feasible is something like this? Is it worth attempting by a sole developer?
Sounds like you're wanting to build a Photosynth style system - check out Blaise Aguera y Arcas' demo at TED back in 2007. There's a section about 4 minutes in where he builds a model of the Sagrada Família from photographs.
I say +1 for photosynth answer, its a great tool. Not sure how well you could incorporate it into your own app though.
Its definately feasable. Anything is possible. And yes, doable for a single developer, just depends how much free time you have. It would be great to see something like this integrated into Virtual Earth or Google Maps Street View. Someone who could nail some software like this could help 3D model the entire world based purely on photographs. That would be a great product and make any single developer rich and famous.
So get coding. :)
I have plenty of free time, as I am in between jobs.
One way to do it is to get an overhead view of the track layout, make a blueprint based on this model, and then get one photo of the track and mimic the track's road colour. That would be a start.
LINQ to Flickr on codeplex has a great API and would be helpful for your task.

Resources