我有以下Lat Long坐标(在JS数组中),我们如何在这些坐标上绘制带有标记的Google地图。
请举一个简单的例子,因为API文档中的例子并不能给出一个确凿的答案,或者对我来说太复杂了。
43.82846160000000000000,-79.53560419999997000000
43.65162010000000000000,-79.73558579999997000000
43.75846240000000000000,-79.22252100000003000000
43.71773540000000000000,-79.74897190000002000000
提前谢谢。
发布于 2012-09-25 01:27:28
你可以试试这个
var map,
locations = [
[43.82846160000000000000, -79.53560419999997000000],
[43.65162010000000000000, -79.73558579999997000000],
[43.75846240000000000000, -79.22252100000003000000],
[43.71773540000000000000, -79.74897190000002000000]
];
var myOptions = {
zoom: 6,
center: new google.maps.LatLng(locations[0][0], locations[0][1]),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map($('#map')[0], myOptions);
var infowindow = new google.maps.InfoWindow(), marker, i;
for (i = 0; i < locations.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][0], locations[i][1]),
map: map
});
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infowindow.setContent('Current location is: '+ locations[i][0]+', '+locations[i][1]);
infowindow.open(map, marker);
}
})(marker, i));
}。
发布于 2012-09-25 01:03:15
我使用过谷歌地图,如果你只需要放置几个标记(确保你使用的是v3应用程序接口),v2就会贬值,在某个时候会掉下来。下一步,您的经度/经度余弦。它们需要减少到9或10个字符。当我使用超长纬度/长余弦值时,我是不走运的。
Google有一个很好的工具,可以让你用来构建地图。从这里开始:
https://developers.google.com/maps/documentation/javascript/
认识到您将需要在您的webhosts域上的密钥。你可以在这里得到你的钥匙:
https://developers.google.com/maps/signup
一个很长的演示列表,包含65个v3应用编程接口示例。
https://developers.google.com/maps/documentation/javascript/demogallery
在演示中,我发现了这个示例,它看起来很接近。重用您通过查看源代码找到的代码。您可以通过此链接查看经度/经度coord对以及它是如何调用它的。
http://gmaps-samples-v3.googlecode.com/svn/trunk/smartinfowindow/js/data.js
这是一个校园地图示例。
最后,这里是最简单的例子。一个标记地图。查看源代码并重用它。希望这足以让你入门。
https://google-developers.appspot.com/maps/documentation/javascript/examples/marker-simple
我希望所有这些都是有帮助的。
发布于 2012-09-25 01:10:46
首先,您将创建google地图对象,在head标记中的某个位置侦听ready事件,并在处理程序中包含:
var mapOptions =
{
zoom: 10,
center: new google.maps.LatLng( <%= @drawings.first.latitude %>, <%= @drawings.first.longitude %> ),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);这里假设您的html中有一个id为map_canvas的div。
然后,您应该准备好向页面添加标记,您应该将您的坐标存储在一个数组中,这样您就可以遍历它和那些标记。
for( var i=0; i < coords.length; i++ )
{
latlng = coords[i].latitude + ", " + coords[i].longitude;
var marker = new google.maps.Marker({
position: latlng,
map: map,
title: '',
icon: "http://maps.google.com/mapfiles/marker" + String.fromCharCode(coords.length + 65) + ".png"
});
}https://stackoverflow.com/questions/12569401
复制相似问题