Как найти близлежащие больницы с помощью Google map api и javascript
var MapApiApplication = {
myCurrentPosition : "",
mapOptions : "",
marker : "",
initialize : function(){
MapApiApplication.myCurrentPosition = new google.maps.LatLng(10.112293000000000000, 76.352684500000010000);
MapApiApplication.mapOptions = {
zoom: 13,
center: MapApiApplication.myCurrentPosition,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
MapApiApplication.map = new google.maps.Map(document.getElementById('map-canvas'), MapApiApplication.mapOptions);
MapApiApplication.marker = new google.maps.Marker({
position: MapApiApplication.myCurrentPosition,
map: MapApiApplication.map,
title: 'Here You are'
});
},
};
У меня есть широта и долгота текущего положения. Как я могу найти близлежащие больницы, используя только javascript и Google maps api.
2 ответов:
Вам нужно использовать библиотеку Places Library. В запросе место поиска Вы можете указать
type- который классифицирует, какой "тип" места вы ищете. В соответствии с поддерживаемые типы мест Google Places API , естьhospitalиhealthтипы - которые, вероятно, будут вашим лучшим выбором, чтобы получить больницы в вашем ответе поиска.
Мне довелось в последнее время работать на нем.
Вот рабочий фрагмент кода:
// comments inline
var map; var infowindow; function initialize() { var pyrmont = new google.maps.LatLng(19.107567, 72.8335); // sample location to start with: Mumbai, India map = new google.maps.Map(document.getElementById('map-canvas'), { center: pyrmont, zoom: 15 }); var request = { location: pyrmont, radius: 200, types: ['hospital', 'health'] // this is where you set the map to get the hospitals and health related places }; infowindow = new google.maps.InfoWindow(); var service = new google.maps.places.PlacesService(map); service.nearbySearch(request, callback); } function callback(results, status) { if (status == google.maps.places.PlacesServiceStatus.OK) { for (var i = 0; i < results.length; i++) { createMarker(results[i]); } } } function createMarker(place) { var placeLoc = place.geometry.location; var marker = new google.maps.Marker({ map: map, position: place.geometry.location }); google.maps.event.addListener(marker, 'click', function() { infowindow.setContent(place.name); infowindow.open(map, this); }); } google.maps.event.addDomListener(window, 'load', initialize);html, body, #map-canvas { height: 100%; margin: 0px; padding: 0px }<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=places"></script> <div id="map-canvas"></div>Важно отметить, что места не будут отмечены на карте, если вы загрузите библиотеку и Javascript в конце тега
<body>.
Comments