代码之家  ›  专栏  ›  技术社区  ›  quma

带角度6的街景地图-显示标签并从地图中删除标记

  •  0
  • quma  · 技术社区  · 5 年前

    有人能告诉我怎么做吗?我试了很多,但没有成功。

    ngOnInit() {
    this.map = new ol.Map({
      target: 'map',
      controls: ol.control.defaults({
        attributionOptions: {
          collapsible: false
        }
      }),
      layers: [
        new ol.layer.Tile({
          source: new ol.source.OSM()
        })
      ],
      view: new ol.View({
        center: ol.proj.fromLonLat([this.latitude, this.longitude]),
        zoom: 10
      })
    });
    
    var that = this;
    this.map.on('dblclick', function (args) {
      var lonlat = ol.proj.transform(args.coordinate, 'EPSG:3857', 'EPSG:4326');
      var lon = lonlat[0];
      var lat = lonlat[1]; 
    
      const feature1 = new ol.Feature({
        geometry: new ol.geom.Point(ol.proj.fromLonLat([lon, lat])),
        labelPoint: new ol.geom.Point(ol.proj.fromLonLat([lon, lat])),
        sname: 'My Marker 1'
      });
      const feature2 = new ol.Feature({
        geometry: new ol.geom.Point(ol.proj.fromLonLat([lon+1, lat+1])),
        labelPoint: new ol.geom.Point(ol.proj.fromLonLat([lon+1, lat+1])),
        sname: 'My Marker 2'
      });
      let features = [];
      features.push(feature1);
      features.push(feature2); 
    
      var layer = new ol.layer.Vector({
          source: new ol.source.Vector({
              features: features
            }),
          style: new ol.style.Style({
              image: new ol.style.Icon({
                anchor: [0.5, 0.5],
                anchorXUnits: "fraction",
                anchorYUnits: "fraction",
                src: "assets/img/marker.png"
              })
            })
        });
      that.map.addLayer(layer);
    });
    }
    
    0 回复  |  直到 5 年前
        1
  •  0
  •   cabesuon    5 年前

    你需要一些功能来实现你的目标,