Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to build inhouse map navigation for iOS application?

I have a requirement mentioned below:

  • Already have a floor plan map image
  • First detect current location on floor
  • Then select the destination location using floor plan map image
  • Now application should provide direction & distance for that source to destination path
  • This is like how google direction works, but its in-house map require.

For example, - Current position of user is: At his desk - Where is Meeting Room #11 - So application should provide direction and distance updates on the map/floor plan image.

Any kind of suggestions/help would be great.

Thanks in advance

like image 548
Mrunal Avatar asked Apr 18 '13 06:04

Mrunal


2 Answers

Couple of points...

You could create various audio files and play them as way points based on routing. Same principal as 'turn right at the next light'.

Definitely want to set your accuracy to: kCLLocationAccuracyBest. But this will still probably only get you accuracy of around +/- 10 meters at best.

Do a floor plan overlay using MapOverlayView.

If you are indoor, iPhone uses cell towers or WIFI for a location fix. This might be a problem for you because if you are looking to map multiple floors, only GPS can give you altitude readings - ground floor, second floor, etc...

I don't want to pour cold water on your idea but I have not heard of anyone successfully doing an indoor navigation app on an iPhone using standard stuff. If you really wanted to move forward on this project, your best accuracy might be using indoor bluetooth transmitters as navigational beacons...?

like image 160
sangony Avatar answered Nov 03 '22 16:11

sangony


What you want is path-planing in the map, is that? If so, there is lot of algoritms you can use. You can choose a block size based on your map and resolution needs, divide de map into this, amd mark each block as navegable or not. Then getting from the first block trying in the direction of the destionation block, check if the neighboor block is blocked or not, and get going, until you reach (or not, if its not reacheable) the destination block.

Thats a pseudo-implementation, you have some option to do it, if I understand your needs.

(I dont know your hardware as said by others, with simple GPS and indoor navigation, assuming a 15m resolution is a good balance between optimistic/pesimistc signal, If its for robot-navigation, its not a goos approach in the GPS terms, but the algorimt is).

like image 3
Diego C Nascimento Avatar answered Nov 03 '22 15:11

Diego C Nascimento