Creating custom maps over Google Maps is possible nowadays? - android

A few years ago we wanted to add a custom map over Google Maps (like the World looks like Midearth), but back then it was not possible. Now, I can see multiple apps that have their own overlay over Google Maps.
I tried creating my own map via Google Maps using their suggestions, but this was only for pins and routes.
What I need is to have the real cities on the map (like Rome, London, Paris), but with my own custom graphics for everything (map tiles, pins, etc.).
What document shall I read for this? I am sure I missed something on Google Maps.

Yes! It is possible with Google Map V2. You should consider using TileOverlay.
Essentially, every time GoogleMap wants to draw tile for specific coordinate - it asks you to provide this tile. You can use either static tile (see TileProvider) or you can provide URL, so GoogleMap goes to your web server and downloads this tile automatically (see UrlTileProvider)

I think what you want is GroundOverlay which can be any bitmap image that will be displayed on top of the basemap. You can even control the translucency of your map.
You most likely want to have your map image oriented north up and be scaled according to Mercator projection if the scale of your map is large enough to include Rome, London, and Paris. But if your map covers a smaller area, you don't need to worry about Mercator projection.

Related

Make android google maps polyline appear above street names?

How to add a polyline to google map in android above street/area name?
I think this is not possible in an easy way due to how google maps API handles the "background".
If you set the background to normal or hybrid, the map is drawn as a background either in road view like your screenshot or in satellite view if hybrid is selected.
Then all the users features are drawn (and eventually overlays, lines, poligons, then points and lastly, street names. You can't really change this, but you could do a trick:
- Use just the satellite view (so no roads will be added).
- Remove the google background and add an alternative one (there are different services like Open Street Map, Mapnik ecc that allows it).
Following the second choice could also allow to add googlemaps background from web api, but I really don't advice to do it, since you are downloading tiles in a non standard way for google.

How to add custom layer to Google Maps

I am developing an android app in which I am capturing location using Google Maps API v2. I have a large satellite image ( greater than 500 mb ), this image is geo-coded. We need to display this as one of the layers in the Google Maps like Google map has a choice for satellite imagery. How can it be done. As for using tile overlay we need tiles but I have a single image and that to it is very big in size so I cannot use ground overlay also. I am kind of stuck right now.
Try this instead of custom layer overlay we add
https://developers.google.com/maps/documentation/android-api/tileoverlay
This is doable but you're going to have to do more. You will use Tile Overlays method, but since your file is too big, you'll be needing to cut it in equal dimensions, 256dp for example.
To cut your big map file in tiles you'll be using MapTiler. The software will do the cutting for you and will generate the map files. Kudos for this thread for the additional info.

Indoor Maps for IOS/android

I want to create indoor map for a mall. I am using Beacons for getting positions and navigating for shortest paths. I dont need gps or any other wifi. What i need is:
I need to know how to create maps which can zoom in and zoom out like google maps.
I want to draw paths dyanamically when the user searches for it, so i need to keep in mind this functionality while creating maps.
Any body helps, Thanks in advance.
[Note: I studied google maps , but i cant use google map indoor functionality for some reasons. I also dont want to use any API which needs to be subscribed]
I want to create indoor map for a mall.
For creating an indoor map for any specific place (your example: mall store), you can draw your map and include it as a background image. Then using beacons you have to calculate your distance from them and draw your path based on x and y coordinates.
I need to know how to create maps which can zoom in and zoom out like google maps.
You can implement zoom on pinch on your image (map image)
I want to draw paths dyanamically when the user searches for it, so i need to keep in mind this functionality while creating maps.
As i mentioned above, you have to draw your path based on x and y coordinates. You can suppose that image's top-left corner is the intial coordinate(0,0) and assign that to x=0, y=0. While you are moving, you make a calculation based on those coordinates and update UI
One alternative to Google's tools for drawing and rendering maps (indoor or otherwise) would be Mapbox, who just recently updated their mobile SDK offering. https://www.mapbox.com/developers/

Create and display indoor map on Android

I'm developing an Android application and I would like to display an internal (indoor) map of some buildings, but I don't know where to begin: I want to create a custom kml file (how it's possible to create it? with which tool?) and display it in a fragment.
I already have it working with external maps (simple GoogleMap in MapFragment), so it would be super to have the kml file placed 'over' the GoogleMap, like real indoor maps.
Thanks
My project is also about indoor maps. I want to share my experience:
First, I tried to use google map but google does not support all countries and my country is not supported. Therefore, I was not able to use google maps although it could be an easy way.
Second, I tried to use open street map which does not render indoor elements. It would be crazy because you have to use lost of other gis tools in order to do it.
the last, I thought why do I need geographical data. All of them - google, osm - are geographical maps which has geographical data. So I do not need this. I rendered my map and I used x,y coordinates of my map's jpg file. I added all of important place's x,y coordinate so I can search them. And it is most easy. And you can use tileview library which is so easy.

Is it possible to rotate Google Maps into specific bearing?

I am developing a simple app that has a generalized, drawed, map image, but I want to add the ability to switch between this map and the sattelite image of Google Maps. However I do want the Google Maps oriented in a specific bearing. Is this in any way possible?
Any other idea of solution?
Regards, Jonas
Jonas,
I don't think the Google Maps JavaScript API supports arbitrary bearings. Google has a cache of rendered map tiles for the "normal" bearing, and I think rendering and caching tiles for other bearing points would be prohibitively expensive. Also, the mathematical algorithms would need to be updated to support that scenario.
However, Google Earth might do the trick. It's also possible you could render your own map tiles with something like MapServer.
Good luck!

Categories

Resources