| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -48,6 +48,7 @@ let dotLayer2; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					let countTextLayer; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					let countTextBgLayer; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					let searchMarker; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					let searchBgLayer; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					export default { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  name: "l7", | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -627,8 +628,82 @@ export default { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    drawSearchBg(lng, lat) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      function getPoints(lng, lat) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        // lng 经度;lat 纬度;dis 距离(千米) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        let r = 6371; //地球半径千米 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        let dis = 1.5; //3千米距离 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        let dlng = | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          2 * | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          Math.asin(Math.sin(dis / (2 * r)) / Math.cos((lat * Math.PI) / 180)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        dlng = (dlng * 180) / Math.PI; // 经度半径 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        let dlat = dis / r; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        dlat = (dlat * 180) / Math.PI; // 纬度半径 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        // 圆形每一度 都算出一个经纬度 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        for (let sides = 1; sides <= 360; sides++) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          var angle = Math.PI * (1 / sides - 1 / 2); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          var rotatedAngle, x, y; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          var points = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          for (var i = 0; i < sides; ++i) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            rotatedAngle = angle + (i * 2 * Math.PI) / sides; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            x = lng + dlng * Math.cos(rotatedAngle); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            y = lat + dlat * Math.sin(rotatedAngle); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            points.push([x, y]); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        console.log("points=======", points); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        return points; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      let sourceData; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      if (lng) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        sourceData = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          type: "FeatureCollection", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          features: [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              type: "Feature", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              properties: { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                center: [lng, lat], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              geometry: { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                type: "Polygon", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                coordinates: [getPoints(lng, lat)], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          ], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        sourceData = { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          type: "FeatureCollection", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          features: [], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      if (searchBgLayer) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        searchBgLayer.setData(sourceData); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        searchBgLayer = new PolygonLayer({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        //   autoFit: true, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        }) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          .source(sourceData) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          .color("#f0f") | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          .shape("fill") | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          .style({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            opacityLinear: { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              enable: true, // true - false | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              dir: "out", // in - out | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            opacity: 0.3, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            raisingHeight: 0, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					          }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        scene.addLayer(searchBgLayer); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    async setDotMarker(item, posArr) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.removeDotMarker(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.drawSearchBg(...posArr); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      const marker = new Marker({ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        offsets: [0, -20], | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      }).setLnglat(posArr); | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -652,7 +727,7 @@ export default { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      }); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      scene.addMarker(marker); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      scene.setZoomAndCenter(18, posArr); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      scene.setZoomAndCenter(14, posArr); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      marker.openPopup(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      searchMarker = marker; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }, | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -661,6 +736,7 @@ export default { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      if (searchMarker) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        searchMarker.remove(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					      this.drawSearchBg(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    }, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    // 把地图缩放等级在原来基础上大一点 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |