PolygonLayer中sector click事件在动画运行时无法触发
当animate动画开启时,使用PolygonLayer时点击sector区域,点击事件无法触发;使用VectorLayer则可以正常触发点击事件。 版本:[email protected]
测试代码如下:
var map = new maptalks.Map('map', { center: [-0.113049, 51.498568], zoom: 14, baseLayer: new maptalks.TileLayer('base', { urlTemplate: 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png', subdomains: ["a", "b", "c", "d"], attribution: '© OpenStreetMap contributors, © CARTO ' }) });
const polygonLayer = new maptalks.PolygonLayer('polygonLayer', { zIndex: 30, picking: true, geometryEvents: true, hitDetect: false }).addTo(map)
var center = map.getCenter(); var sector = new maptalks.Sector(center.add(-0.013, -0.001), 900, 240, 300, { symbol: { lineColor: '#34495e', lineWidth: 2, polygonFill: 'rgb(135,196,240)', polygonOpacity: 0.4 } }); sector.on('click', () => { console.log('sector click') })
sector.addTo(polygonLayer)
const sectorPlayer = sector.animate( {}, { duration: 2000, easing: 'out', repeat: true }, function (frame) { if (frame.state.playState !== 'running') return const currentLength = 500 + 500 * frame.state.delta sector.setRadius(currentLength) } )