區域疊加層

選取平台: Android iOS JavaScript
  1. 說明
  2. 新增區域疊加層
  3. 移除區域疊加層

引言

「疊加層」是固定在地圖上某個經緯度座標的物件,因此當您拖曳或縮放地圖時,疊加層會隨之移動。如要在地圖上放置圖片,您可以使用 GroundOverlay 物件。

如要進一步瞭解其他類型的疊加層,請參閱在地圖上繪圖

新增區域疊加層

GroundOverlay 的建構函式會指定圖片網址,以及圖片的 LatLngBounds 做為參數。圖片會顯示在地圖上、限制於指定的邊界,並使用地圖的投影來算繪。

TypeScript

// This example uses a GroundOverlay to place an image on the map
// showing an antique map of Newark, NJ.

let historicalOverlay;

function initMap(): void {
  const map = new google.maps.Map(
    document.getElementById("map") as HTMLElement,
    {
      zoom: 13,
      center: { lat: 40.74, lng: -74.18 },
    }
  );

  const imageBounds = {
    north: 40.773941,
    south: 40.712216,
    east: -74.12544,
    west: -74.22655,
  };

  historicalOverlay = new google.maps.GroundOverlay(
    "https://storage.googleapis.com/geo-devrel-public-buckets/newark_nj_1922-661x516.jpeg",
    imageBounds
  );
  historicalOverlay.setMap(map);
}

declare global {
  interface Window {
    initMap: () => void;
  }
}
window.initMap = initMap;

JavaScript

// This example uses a GroundOverlay to place an image on the map
// showing an antique map of Newark, NJ.
let historicalOverlay;

function initMap() {
  const map = new google.maps.Map(document.getElementById("map"), {
    zoom: 13,
    center: { lat: 40.74, lng: -74.18 },
  });
  const imageBounds = {
    north: 40.773941,
    south: 40.712216,
    east: -74.12544,
    west: -74.22655,
  };

  historicalOverlay = new google.maps.GroundOverlay(
    "https://storage.googleapis.com/geo-devrel-public-buckets/newark_nj_1922-661x516.jpeg",
    imageBounds
  );
  historicalOverlay.setMap(map);
}

window.initMap = initMap;
查看範例

查看範例

移除區域疊加層

如要從地圖上移除疊加層,請呼叫疊加層的 #setMap() 方法,並傳遞 null。請注意,呼叫此方法不會刪除疊加層。這會移除地圖上的疊加層。如要刪除疊加層,請從地圖上移除疊加層,然後將疊加層本身設為 null

function removeOverlay() {
  historicalOverlay.setMap(null);
}

查看範例