2010-03-19 7 views
7

Sto lavorando sulla vista mappa. Voglio mettere l'elemento di sovrapposizione sulla visualizzazione mappa. gli oggetti sovrapposti dipendono attualmente dalla visualizzazione della mappa e dal livello di zoom. come ottenere la vista corrente della mappa, la longitudine e la latitudine di quel quadratino e come analizzare il numero di oggetti sovrapposti al suo interno. anche noi dobbiamo controllare il tuo livello di zoom. Qualche idea? come farlo?come ottenere il valore long & lat di quattro angoli nella mapview in Android?

risposta

11

io penso che si debba usare

mapview.getProjection().frompixel(intx, int y) 

Per i 4 angoli dello schermo (è possibile ottenere le loro coordinate di getWidth e getHeight sul MapView, e partendo da (0,0), (getWidth (), 0), (0, getHeight()) e (getWidth(), getHeight())

Questo vi darà 4 geopoints da cui è possibile estrarre la latitudine e la longitudine

+0

grazie Sephy per ur risposta rapida. – Praveen

+1

Prego, in realtà non avevo idea della risposta della risposta quando ho visto la tua domanda, ma ha suscitato il mio interesse e l'ho cercata – Sephy

6

siete alla ricerca di qualcosa di simile questo?

Projection proj = mapView.getProjection(); 
GeoPoint topLeft = proj.fromPixels(0, 0); 

GeoPoint bottomRight = proj.fromPixels(mapView.getWidth()-1, mapView.getHeight()-1); 

double topLat = topLeft.getLatitudeE6()/1E6; 
double topLon = topLeft.getLongitudeE6()/1E6; 
double bottomLat = bottomRight.getLatitudeE6()/1E6; 
double bottomLon = bottomRight.getLongitudeE6()/1E6; 

Spero che sia d'aiuto!

6

Se si utilizza la libreria google-play-services e in particolare lo SupportMapFragment.

this.getMap() vi darà l'istanza di GoogleMap (che avvolge MapView)

Poi basta:

map.getProjection().getVisibleRegion();

Problemi correlati