所以我遇到了这个问题,谷歌地图Javascript API无法解释位置数据(纬度,经度和半径(圆圈标记))。我已成功从Firebase检索数据(警报测试),但谷歌地图似乎存在问题。我的朋友说,由于存储在Firebase中的数据是在字符串中,但不是因为我已经通过减去/乘以及其他数学的东西来测试它。
google.maps.LatLng
答案 0 :(得分:0)
如果您的地图上只有一个圆圈,则可以移除citymap
变量,您的代码可以简化:
// retrieve the data necessary for a single circle
function retrieve() {
var messagesRef = new Firebase("https://glaring-torch-4299.firebaseio.com/");
messagesRef.once('child_added', function (snapshot) {
var data = snapshot.val();
var lat = data.latitude;
var lng = data.longitude;
var rad = data.radius;
initMap(lat, lng, rad);
});
}
function initMap(lat, lng, radius) {
// Create the map.
var latLng = new google.maps.LatLng(lat, lng);
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 8,
center: latLng
});
// create the circle
var circle = new google.maps.Circle({
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.35,
map: map,
center: {
lat: lat,
lng: lng
},
radius: parseFloat(radius)
});
}