Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] dopasowanie google mapy
szczemp
post
Post #1





Grupa: Zarejestrowani
Postów: 149
Pomógł: 9
Dołączył: 9.12.2010

Ostrzeżenie: (0%)
-----


od razu mówię, że java script i google map api są dla mnie bardzo obce
w sieci znalazłem trochę kodu i jakoś z biedą go dopasowałem do swoich potrzeb
ale potrzeby się rozszerzyły
php pobiera mi z bazy punkty i generuje tako kod
  1. <script type = "text/javascript">
  2.  
  3. var mapa;
  4. var dymek = new google.maps.InfoWindow();
  5.  
  6. function dodajMarker(lat,lng,txt) {
  7. var opcjeMarkera = {
  8. position: new google.maps.LatLng(lat,lng),
  9. map: mapa
  10. }
  11. var marker = new google.maps.Marker(opcjeMarkera);
  12. marker.txt=txt;
  13.  
  14. google.maps.event.addListener(marker,"click",function() {
  15. dymek.setContent(marker.txt);
  16. dymek.open(mapa,marker);
  17. });
  18. return marker;
  19. }
  20.  
  21. function mapaStart() {
  22. var wspolrzedne = new google.maps.LatLng(11.19018, 11.18518);
  23. var opcjeMapy = {
  24. zoom: 14,
  25. center: wspolrzedne,
  26. mapTypeId: google.maps.MapTypeId.ROADMAP
  27. };
  28.  
  29. mapa = new google.maps.Map(document.getElementById("mapka"), opcjeMapy);
  30. var marker0 = dodajMarker(11.18518, 11.18518,'ogólne1<hr/><a href = "zadanie.php?id=8">Zobacz</a>');
  31. var marker1 = dodajMarker(-11.18518,-11.18518,'ogólne2<hr/><a href = "zadanie.php?id=9">Zobacz</a>');
  32. google.maps.event.trigger(marker,'click');
  33.  
  34. }

kod odpowiada za wyświetlenie mapy z pobranymi wcześniej punktami
kod pierwotnie miał pokazywać jeden punkt i centrować na niego mapę
jak widać zachciało mi się wyświetlać kilka punktów
a mapa centruje się na pierwszy pobrany punkt
jak go zmusić do tego aby pole widzenia dopasowało się tak żeby było widać wszystkie punkty?
doczytałem, że do tego są odpowiednie narzędzia
LatLngBounds i fitBounds
coś tam z tym próbowałem wykombinować ale mi się nie udało
może mi ktoś powiedzieć gdzie co dopisać abym miał to czego chcę?
z góry dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ogólnie interesuje Cię coś takiego jak obiekt Bounds. Pomiędzy v2 i v3 są różnice więc zależnie co masz, przejrzyj przykłady w dokumentacji google tyczące tego, bo są dość proste i nie powinny Ci sprawić problemu. Ogólnie zasada działa tak, że bierzesz tworzysz zakres i wrzucasz do niego punkty oraz aktualizujesz mapę zgodnie z tym zakresem. Przykłady sa naprawdę proste więc myślę, że sobie poradzisz.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
szczemp
post
Post #3





Grupa: Zarejestrowani
Postów: 149
Pomógł: 9
Dołączył: 9.12.2010

Ostrzeżenie: (0%)
-----


No niby nie było trudne ale przykłady były bardzo ogólne i zegranie tego tak jak ja chciałem zajęło trochę czasu:))
teraz pojawia się kolejny mały problem
dobrze jest jeśli punktów jest kilka
ale jeśli trzeba wyświetlić jeden to zoom dopasowuje się na max i trzeba ręczenie oddalić

właśnie przypomniałem sobie, że przez php sprawdzam czy mam wyświetlić jeden czy wiele punktów
i rozwiązanie jest proste

Ten post edytował szczemp 31.05.2012, 09:24:14
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 07:13