使用标记google maps javascript移动圆圈
我正在做一个项目,我在地图上画了一个圆圈。我想把圆圈和记号笔一起移动。每当我移动标记时,圆圈都会保持在最后一个位置。我想移动两者,当我移动标记时,圆圈也应该随之移动 请告诉我我哪里做错了 代码如下:使用标记google maps javascript移动圆圈,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我正在做一个项目,我在地图上画了一个圆圈。我想把圆圈和记号笔一起移动。每当我移动标记时,圆圈都会保持在最后一个位置。我想移动两者,当我移动标记时,圆圈也应该随之移动 请告诉我我哪里做错了 代码如下: <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Draw Circle on Marker Click on Google Map</title>
<style>
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 99%;
width: 99%
}
</style>
<script async defer
src="https://maps.googleapis.com/maps/api/js?signed_in=true&callback=initMap"></script>
<script>
var markers = [];
var map;
// First, create an object containing LatLng and population for each city.
var citymap = {lat:21.002471054356725, lng:79.12353515625};
function initMap() {
var lat_lng = {lat: 22.08672, lng: 79.42444};
map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: lat_lng,
mapTypeId: google.maps.MapTypeId.TERRAIN
});
var marker = new google.maps.Marker({
position: lat_lng,
draggable:true ,
map: map
});
var cityCircle = new google.maps.Circle({
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.35,
map: map,
center: lat_lng,
radius: 199999.45454,
draggable:true
});
}
</script>
</head>
<body>
<div id="map"></div>
</body>
</html>
在标记上画圆圈单击谷歌地图
html,正文{
身高:100%;
保证金:0;
填充:0;
}
#映射{
身高:99%;
宽度:99%
}
var标记=[];
var映射;
//首先,为每个城市创建一个包含LatLng和人口的对象。
var citymap={lat:21.002471054356725,lng:79.12353515625};
函数initMap(){
var lat_lng={lat:22.08672,lng:79.42444};
map=new google.maps.map(document.getElementById('map'),{
缩放:6,
中心:拉图液化天然气公司,
mapTypeId:google.maps.mapTypeId.TERRAIN
});
var marker=new google.maps.marker({
职位:拉图液化天然气公司,
真的,
地图:地图
});
var cityCircle=new google.maps.Circle({
strokeColor:“#FF0000”,
笔划不透明度:0.8,
冲程重量:2,
填充颜色:'#FF0000',
不透明度:0.35,
地图:地图,
中心:拉图液化天然气公司,
半径:199999.45454,
德拉格布尔:是的
});
}
您只需使用.addListener()
函数将拖动事件与圆圈绑定即可
像这样做
function initMap() {
var lat_lng = {lat: 22.08672, lng: 79.42444};
map = new google.maps.Map(document.getElementById('map'), {
zoom: 6,
center: lat_lng,
mapTypeId: google.maps.MapTypeId.TERRAIN
});
var marker = new google.maps.Marker({
position: lat_lng,
draggable:true ,
map: map
});
var cityCircle = new google.maps.Circle({
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.35,
map: map,
center: lat_lng,
radius: 199999.45454,
draggable:true
});
//add event listner on drag event of marker
marker.addListener('drag', function(event) {
cityCircle.setOptions({center:{lat:event.latLng.lat(),lng:event.latLng.lng()}});
});
}