Is it possible to extract elements from google maps? - android

I want to make my final year project and for my idea I'd need the 3d buildings from google maps extracted somehow. Does google maps support this? Is it achievable ? I couldn't find anything really relevant on the internet.

I think the reason why you didn't find anything related to Google Maps is that the 3D information belongs to Google Earth. Google Maps/Earth API doesn't support this directly as far as I know.
The link below describes a process to get the information, I didn't test it and it's too complex and not mine to repeat here but basically "the only way to obtain this geometry is to capture it from the systems graphics engines (directX or opengl)." :
http://zachsoflin.com/blog/2012/03/01/extract-geometry-from-google-earth-to-mesh/
If you google "Extracting 3d models from google Earth" you'll get more results.

I'm not sure if this will work, but have you tried 3D information from OpenStreetMap? I think some like http://www.osm-3d.org/map.htm have building height layers available, if that's what you're looking for.

Here you can find a tutorial for extracting the 3D models from Google Earth.

Related

Interactive Map without Google maps

I have a huge plan of a site (the plan is just a picture), the problem is that Google Maps, can't have access to it, so I need to add markers in this picture (Plan), My question how to that ? how to make a picture interactive ? how to add markers ?
Really I have no idea, I saw indoor of Google Maps, but it's not what my custmer need.
Thank's !
this is a small example
you may give this library a try or see its demo here: https://leafletjs.com
it's a pure javascript library that may be used with any web platforms
wish it to be helpful.

Use OSM Routing on a Google map

Is it possible to use OpenStreetMap data (for routing) on a Google map layer ?
I'm asking this because the Google Directions API is quite expensive, but at the same time I find OSM maps very ugly.
So is it possible to "mix" both the Google map and the OSM data ?? Or if someone knows an OSM map that looks like the Google one, please tell me, I would really appreciate it.
Thank you
PS : I am developping on Android
The OSM license doesn't forbid it: You can do it, as long as you don't mix two datasource for one type of data, so you're good.
You might try e.g. Mapbox, which have some rather nicely looking OpenStreetMap tiles and are also providing directions. They also have an SDK for Android: https://www.mapbox.com/android-sdk/

How do I add markers to streets only - Android Development

After plenty of searching, I haven't yet found a solution that works for me and I'm really hoping someone here could help me. First I'll explain my problem, and then I'll mention some of the approaches I've attempted/considered so far.
Basically, I'm developing an Android app where markers randomly appear around the user's location. The catch is, the markers need to be placed on streets only.
I've been working with Google Maps Android API V2 but I'm trying to work around using anything with "limitations" such as 'geocoding'.
I've considered using different map API's such as Nutiteq but I've had some trouble implementing them. It would be nice to stick to Google since I've become familiar with it but I'm willing to try any suggestions you may have.
I have even considered loading up Google Maps API V3 in an html file so that I can use GDirections to load a path from one point to itself and then parse this data to Google Maps Android API V2 using JS but turns out GDirections has a limit as well.
Anyone have any idea how I can go about doing this? Even if the solution is hacky, it's still something.
I'm fairly new to Android Development.
Funny what you want to achieve. You don't need to load API V3 html. You can use directions api directly: http://maps.googleapis.com/maps/api/directions/json?origin=51,19&destination=51,19&sensor=false
It still has limitations, but is was like 2000 or something a day a device. And you don't want to put more than 2000 markers on single user's screen, do you?
This is easy to parse, for example with Gson.

Totally confused attempting to integrate a map...Best way forwards?

I have been looking to implement a map in my website, and have really hit a brick wall - Have read so much, but am very confused. I just wonder if someone could offer a little help?
I have developed an Android App which generates a list of lat/long pairs and stores them in a remote MySQL DB. All I want to do is mark these points on a map, with a little pop up when clicked, indicating some other information about the user.
I have so far looked at Google Maps API and OpenStreetMap, although I really don't know where to begin! I don't know whether I should use Google Maps, as I'm concerned about the API query limit? Should I be?
Would really appreciate it if someone could point me in the right direction!
Thank you
Showing some markers and popups isn't really complicated with OpenStreetMap and OpenLayers:
simple OpenLayers marker example
dynamic markers from a database (example result)
Use google maps javascript v3 and make the required changes
Please refer
https://developers.google.com/maps/documentation/javascript/
The Google Maps API limit is something like 25k (or was it 250k?) per day - so unless the app you're making proves to be really popular, you won't have to worry about it

Alternative(To Google Maps) Open Source Map API that provides a database of nodes and Arcs on roads

I need a Map API for Android that can provide me with indexed nodes and indices that make up the road network. The main idea is to determine if two GPS devices are on the same road. Thank you in advance
A Map API by itself will not have that information. Anyway, you can get it from OpenStreetMap freely. You can download it from here.
I don't understand from your question if you intend on displaying the results on a map. If so, and you want a nice and free map API, I would suggest Leaflet. It's not as mature as the likes of OpenLayers but, as you've tagged this post with "android", Leaflet just kicks ass in the mobile department.
OpenStreetMap is definitely a good source of data for this kind of project. Unlike google maps, it gives developers access to the underlying vector data of a map (fully open). This allows interesting new use cases which simply are not possible with google maps, and something involving geometric calculations like this would definitely fit into that category. You either need OpenStreetMap or some other source of "vector" map data, and beyond OpenStreetMap this can be expensive.
Unfortunately that's not the full answer to your question. You still have a lot of work to do to use the data in the way you intend. You need to calculate the proximity of two points (GPS readings from two devices?) to nearby roads, and figure out which road the point lies closest to. It's the kind of powerful geo calculation you might do using a GIS package such as QGIS or a functions of a geo-aware database system PostGIS.
But that's not the answer to your question, because you need to do these calculations on device. I'm not aware of an off-the-shelf library to do this on android. I think you would have to roll your own.
But another challenge is to get the vector data onto the device in a suitable format in the first place, and this is the first thing to solve. You'd want the vector data either as a large download for a whole country, or perhaps a smaller area, perhaps with an on-the-fly download feature within this app. Whole countries are not infeasible when working with maps in vector form (ever tried the awesome MayDroyd app?), but require some compact formatting. Happily some of these problems are starting to be solved in open source off-the-shelf libraries. You could try to build on top of MapsForge for example.
So then you're back to the challenge of writing on-device code to poke around in this data and do the calculations you want to do. I suppose it could be rather good if projects like MapsForge included generic PostGIS style geo-functions to make this easier. Something to ask the mapsforge developers about perhaps.

Categories

Resources