Mysql/PHP opdracht [Moeilijk]

    • Mysql/PHP opdracht [Moeilijk]

      Beste,

      Ik ben bezig met een project, waar Google Maps, Javascript, PHP en MySQL bij komt kijken.

      De opdracht die voltooid moet worden gaat om het volgende.

      De Google map wordt geladen, en in de database zitten allemaal markers die opgeroepen moet worden, maar niet ALLE, enkel de markers die zich in het zichtbare veld bevindt moet worden opgehaald uit de database. wordt de map verplaats wordt er opnieuw info opgehaald die zich weer binnen het scherm bevindt(oude data mag blijven staan).

      Er wordt per uur betaald, 8 euro.
      Met vriendelijke groet,

      A.Bijlsma
      PlaySlim
    • Het is mij in iedergeval niet gelukt.
      In de database zijn rijen met de lat/longs. en op de map heb je dus een beeld met de map de 4 hoeken hebben een lat/long en alles wat binen die 4 punten valt moet dus zichtbaar worden, wordt de map bewogen zal de database opnieuw data ophalen en laat dat zien(oude data blijft gewoon).
      Met vriendelijke groet,

      A.Bijlsma
      PlaySlim
    • JavaScript Source Code

      1. map.addListener('center_changed', function() {});
      Geplakt vanaf mn telefoon maar dit zou voldoende moeten zijn

      Edit: even verder gezocht; voor je berekeningen kan je deze paper mogelijk gebruiken. janmatuschek.de/LatitudeLongitudeBoundingCoordinates
      Dit was mijn spreekbeurt, zijn er nog vragen?

      Post werd 1x aangepast, het laatst door M.Beers ().

    • Nieuw

      @M.Beers maar dat gaat over een straal (radius, afstand tot een middelpunt). Dat is een nogal zware berekening. Zoals @A.Bijlsma aangeeft heb je gewoon een rechthoek.

      De coordinaten hiervan worden bepaald door het middelpunt van de map, het zoomniveau en de afmeting van de Google map.

      Hoogstwaarschijnlijk heeft de Google Maps API wel een functie waarmee je deze coordinaten op kunt halen. Vervolgens zou je de markers in kunnen laden met AJAX zodat deze in deze rechthoek vallen.

      En zelfs als je werkt met een hele moeilijke functie waarmee je hemelsbrede afstanden kunt berekenen die binnen een bepaalde straal vallen loont het de moeite om deze te combineren met een vierkant die precies om deze cirkel past. Zo selecteer je eerst alle markers die binnen dit vierkant vallen en vervolgens gooi je alleen deze moeilijke / dure berekening over deze subset van markers, en niet over alle markers in je database want dan wordt je query takketraag :p.

      En inderdaad, als het middelpunt, de afmetingen of het zoomniveau van de Google Map veranderen verandert deze "bounding box" ook uiteraard.