Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Promień/najbliższe wyniki – Google Maps API

Oto JSFiddle Demo:

Przypuszczam, że to jeden ze sposobów na zrobienie tego. Możesz użyć kręgu interfejsu API Map Google V3 aby utworzyć granice od punktu środkowego lub bieżącej lokalizacji. Możesz określić promień okręgu w metrach za pomocą setRadius(radius:number) . Dzięki utworzonemu kręgowi możesz przechodzić przez swoje znaczniki i sprawdzać, czy znajdują się one w granicach kręgu, używając Obiekt getBounds okręgu, który jest LatLngBounds i sprawdź, czy znacznik znajduje się w granicach, czy nie.

Poszedłem dalej i stworzyłem małe demo, które ma pięć punktów na mapie, a kiedy klikniesz przycisk tworzenia okręgu, pierwszy znacznik stanie się punktem środkowym i narysuje okrąg o promieniu 5000 i odfiltruje znaczniki, które nie są powiązane przy użyciu metody opisanej powyżej:

function createRadius(dist) {
    var myCircle = new google.maps.Circle({
        center: markerArray[markerArray.length - 1].getPosition(),
        map: map,
        radius: dist,
        strokeColor: "#FF0000",
        strokeOpacity: 0.8,
        strokeWeight: 2,
        fillColor: "#FF0000",
        fillOpacity: 0.35
    });
    var myBounds = myCircle.getBounds();

    //filters markers
    for(var i=markerArray.length;i--;){
         if(!myBounds.contains(markerArray[i].getPosition()))
             markerArray[i].setMap(null);
    }
    map.setCenter(markerArray[markerArray.length - 1].getPosition());
    map.setZoom(map.getZoom()+1);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie można zainstalować mysql-connector-python w virtualenv

  2. PHP nie wyświetla wyniku zapytania MYSQL

  3. Jak mogę zrzucić bazę danych MySQL bez użycia mysqldump w Pythonie?

  4. pt-query-digest Alternatywy - Zarządzanie zapytaniami MySQL i monitorowanie za pomocą ClusterControl

  5. Ranking użytkowników w mysql według ich punktów