点击地图显示简单圆形并删除之前的圆形范围

点击其他点位:

代码:

const initMap = () => {
		const center = new TMap.LatLng(latitude.value, longitude.value);
		map = new TMap.Map("container", {
			rotation: 20,
			pitch: 30,
			zoom: zoomLevel.value, // Use zoomLevel from ref()
			center: center,
		});


		marker = new TMap.MultiMarker({
			map: map,
			styles: {
				// 点标记样式
				marker: new TMap.MarkerStyle({
					width: 20, // 样式宽
					height: 30, // 样式高
					anchor: {
						x: 10,
						y: 30
					}, // 描点位置
				}),
			},
			geometries: [],
		});
		
		  circle = new TMap.MultiCircle({ 
		      map,
		      styles: { // 设置圆形样式
		        'circle': new TMap.CircleStyle({
		          'color': 'rgba(41,91,255,0.16)',
		          'showBorder': true,
		          'borderColor': 'rgba(41,91,255,1)',
		          'borderWidth': 2,
		        }),
		      },
		      geometries: [{
		        styleId: 'circle',
		        center: center,
		        radius: 10000,
		      }],
		    });
			

		// 点击地图事件处理函数
		map.addListener('click', function(event) {
		    // 获取点击事件的经纬度坐标
			
		    const clickedLat = event['latLng'].lat;
		    const clickedLng = event['latLng'].lng;
			
			latlngValue.value = clickedLat + ',' + clickedLng;
		
		    // 清除之前的圆圈(如果有的话)
		    if (circle) {
		        circle.setMap(null);
		    }
		
		    // 创建新的圆圈
		    circle = new TMap.MultiCircle({
		        map,
		        styles: {
		            'circle': new TMap.CircleStyle({
		                'color': 'rgba(41,91,255,0.16)',
		                'showBorder': true,
		                'borderColor': 'rgba(41,91,255,1)',
		                'borderWidth': 2,
		            }),
		        },
		        geometries: [{
		            styleId: 'circle',
		            center: new TMap.LatLng(clickedLat, clickedLng), // 使用点击的经纬度作为圆心
		            radius: 10000,
		        }],
		    });
		});

	};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值