[英]Google Maps API, how to get lat long from airport code?
I wonder how to get the LAT
and LONG
from an airport. 我想知道如何从机场获得
LAT
和LONG
。 For example I have the airport code "CPH" (Copenhagen)
and I need to draw a line from my marker to that point. 例如,我有机场代码
"CPH" (Copenhagen)
并且需要从标记到该点画一条线。 Right now my code for the line is this: 现在,我的代码行是这样的:
var flightPlanCoordinates = [
new google.maps.LatLng(event.latLng.lat(), event.latLng.lng()),
new google.maps.LatLng(21.291982, -157.821856)
];
flightPath = new google.maps.Polyline({
path: flightPlanCoordinates,
geodesic: true,
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 1
});
flightPath.setMap(map);
But I need the line to go the the airport. 但是我需要线去机场。 I've looked at the geocoding but I don't understand on how to use it with an airport.
我看过地理编码,但不了解如何在机场使用它。 Can someone do a example for me?
有人可以为我做榜样吗? Thank you!
谢谢! :)
:)
Use the geocoder, it supports the "CPH" abbreviation (you might want to make it "CPH airport" to be safe). 使用地址解析器,它支持“ CPH”的缩写(为了安全起见,您可能希望将其设置为“ CPH机场”)。
geocoder.geocode( { 'address': "CPH airport"}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
CPH = results[0].geometry.location;
bounds.extend(CPH);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
code snippet: 代码段:
var geocoder = new google.maps.Geocoder(); var map; var CPH; var bounds = new google.maps.LatLngBounds(); function initialize() { map = new google.maps.Map( document.getElementById("map_canvas"), { center: new google.maps.LatLng(37.4419, -122.1419), zoom: 13, mapTypeId: google.maps.MapTypeId.ROADMAP }); geocoder.geocode({ 'address': "CPH airport" }, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { CPH = results[0].geometry.location; bounds.extend(CPH); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); google.maps.event.addListener(map, 'click', function(event) { var flightPlanCoordinates = [ event.latLng, CPH ]; bounds.extend(event.latLng); flightPath = new google.maps.Polyline({ path: flightPlanCoordinates, geodesic: true, strokeColor: '#FF0000', strokeOpacity: 1.0, strokeWeight: 1 }); map.fitBounds(bounds); flightPath.setMap(map); }); } google.maps.event.addDomListener(window, "load", initialize);
html, body, #map_canvas { height: 500px; width: 500px; margin: 0px; padding: 0px }
<script src="https://maps.googleapis.com/maps/api/js"></script> <div id="map_canvas" style="width:750px; height:450px; border: 2px solid #3872ac;"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.