pracuję nad widokiem mapy. Chcę umieścić element nakładki na widoku mapy. te nakładki zależą od aktualnie wyświetlanego widoku mapy i poziomu powiększenia. jak uzyskać aktualną długość i szerokość geograficzną tego czterokrotnego widoku mapy oraz jak analizować, ile w nim elementu nakładki. również musimy sprawdzić twój poziom powiększenia. Każdy pomysł? jak to zrobić?jak uzyskać długą i lat wartość czterech rogach w widoku mapy w systemie Android?
7
A
Odpowiedz
11
myślę, trzeba użyć
mapview.getProjection().frompixel(intx, int y)
na 4 rogach ekranu (można dostać ich współrzędne autorem getwidth i getheight na MapView, a wychodząc z (0,0), (getwidth (), 0), (0, getheight()) oraz (getwidth(), getheight())
To daje 4 geopoints z których można wyodrębnić szerokość i długość geograficzną
6
szukasz czegoś podobnego to?
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;
Mam nadzieję, że pomoże!
6
Jeśli korzystasz w szczególności z biblioteki google-play-services
i .
this.getMap()
daje wystąpienie GoogleMap
(który owija MapView
)
Następnie wystarczy:
map.getProjection().getVisibleRegion();
dzięki Sephy ur szybką odpowiedź. – Praveen
Nie ma za co, właściwie nie miałem pojęcia o odpowiedzi na pytanie, kiedy zobaczyłem twoje pytanie, ale to wywołało moje zainteresowanie i szukałem tego – Sephy