DOM elements

คลาส OverlayView

google.maps.OverlayView class
extends MVCObject
library "maps", "streetView"

คุณสามารถใช้คลาสนี้ได้หากต้องการแสดงออบเจ็กต์การวางซ้อนประเภทที่กำหนดเองบนแผนที่

รับค่าจากคลาสนี้โดยตั้งค่าต้นแบบของภาพซ้อนทับ: MyOverlay.prototype = new google.maps.OverlayView(); ตัวสร้าง OverlayView จะเป็นฟังก์ชันว่างเปล่าเสมอ

คุณต้องใช้ 3 เมธอด ได้แก่ onAdd(), draw() และ onRemove()

  • ในเมธอด onAdd() คุณควรสร้างออบเจ็กต์ DOM และเพิ่มเป็นองค์ประกอบย่อยของแผง
  • ในเมธอด draw() คุณควรจัดตำแหน่งองค์ประกอบเหล่านี้
  • ในเมธอด onRemove() คุณควรนำออบเจ็กต์ออกจาก DOM
คุณต้องเรียกใช้ setMap() ด้วยออบเจ็กต์ Map ที่ถูกต้องเพื่อทริกเกอร์การเรียกใช้เมธอด onAdd() และ setMap(null) เพื่อทริกเกอร์เมธอด onRemove() คุณสามารถเรียกใช้เมธอด setMap() ได้ในขณะที่สร้างหรือเมื่อใดก็ได้หลังจากนั้นเมื่อควรแสดงการวางซ้อนอีกครั้งหลังจากนำออก จากนั้นระบบจะเรียกใช้เมธอด draw() เมื่อใดก็ตามที่พร็อพเพอร์ตี้แผนที่มีการเปลี่ยนแปลงซึ่งอาจเปลี่ยนตำแหน่งขององค์ประกอบ เช่น การซูม ศูนย์กลาง หรือประเภทแผนที่

const {OverlayView} = await google.maps.importLibrary("maps");
หรือ
const {OverlayView} = await google.maps.importLibrary("streetView");
OverlayView
OverlayView()
พารามิเตอร์: ไม่มี
สร้าง OverlayView
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
พารามิเตอร์
ผลลัพธ์: ไม่มี
หยุดเหตุการณ์การคลิก การแตะ การลาก และการหมุนบนองค์ประกอบไม่ให้แสดงขึ้นบนแผนที่ ใช้ตัวเลือกนี้เพื่อป้องกันการลากและซูมแผนที่ รวมถึงเหตุการณ์ "คลิก" แผนที่
preventMapHitsFrom
preventMapHitsFrom(element)
พารามิเตอร์
ผลลัพธ์: ไม่มี
หยุดการคลิกหรือแตะองค์ประกอบจากการแสดงขึ้นมาบนแผนที่ ใช้ตัวเลือกนี้เพื่อป้องกันไม่ให้แผนที่ทริกเกอร์เหตุการณ์ "คลิก"
draw
draw()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: void
ใช้วิธีนี้เพื่อวาดหรืออัปเดตการวางซ้อน ใช้ตำแหน่งจาก projection.fromLatLngToDivPixel() เพื่อวางตำแหน่งการวางซ้อนให้สัมพันธ์กับ MapPanes อย่างถูกต้อง ระบบจะเรียกใช้เมธอดนี้หลังจาก onAdd() และจะเรียกใช้เมื่อมีการเปลี่ยนแปลงการซูมหรือจุดศูนย์กลาง เราไม่แนะนำให้ทำงานที่ต้องใช้การประมวลผลสูงในเมธอดนี้
getMap
getMap()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: Map|StreetViewPanorama
getPanes
getPanes()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: MapPanes|null
แสดงผลแผงที่แสดงผล OverlayView นี้ได้ ระบบจะไม่เริ่มต้นแผงจนกว่า API จะเรียกใช้ onAdd
getProjection
getProjection()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: MapCanvasProjection
แสดงผลออบเจ็กต์ MapCanvasProjection ที่เชื่อมโยงกับ OverlayView นี้ ระบบจะไม่เริ่มต้นการฉายภาพจนกว่า API จะเรียกใช้ onAdd
onAdd
onAdd()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: void
ใช้เมธอดนี้เพื่อเริ่มต้นองค์ประกอบ DOM ของการวางซ้อน ระบบจะเรียกใช้เมธอดนี้ 1 ครั้งหลังจากเรียกใช้ setMap() ด้วยแผนที่ที่ถูกต้อง เมื่อถึงจุดนี้ ระบบจะเริ่มต้นแผงและการฉายภาพแล้ว
onRemove
onRemove()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: void
ใช้เมธอดนี้เพื่อนำองค์ประกอบออกจาก DOM ระบบจะเรียกใช้เมธอดนี้ 1 ครั้งหลังจากเรียกใช้ setMap(null)
setMap
setMap(map)
พารามิเตอร์
  • map: Map|StreetViewPanorama optional แผนที่หรือภาพพาโนรามา หาก null ระบบจะนำเลเยอร์ออก
ผลลัพธ์: ไม่มี
เพิ่มการวางซ้อนลงในแผนที่หรือภาพพาโนรามา
สืบทอด: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

อินเทอร์เฟซ MapPanes

google.maps.MapPanes อินเทอร์เฟซ

floatPane
ประเภท: Element
แผงนี้มีหน้าต่างข้อมูล โดยจะอยู่เหนือการแสดงข้อมูลบนแผนที่ทั้งหมด (แผง 4)
mapPane
ประเภท: Element
แผงนี้เป็นแผงที่อยู่ต่ำสุดและอยู่เหนือการ์ด และจะไม่ได้รับเหตุการณ์ DOM (แผง 0)
markerLayer
ประเภท: Element
แผงนี้มีเครื่องหมาย และจะไม่ได้รับเหตุการณ์ DOM (แผง 2)
overlayLayer
ประเภท: Element
แผงนี้ประกอบด้วยเส้นประกอบ รูปหลายเหลี่ยม ภาพซ้อนทับพื้น และภาพซ้อนทับเลเยอร์ชิ้นส่วน และจะไม่ได้รับเหตุการณ์ DOM (แผง 1)
overlayMouseTarget
ประเภท: Element
แผงนี้มีองค์ประกอบที่รับเหตุการณ์ DOM (แผง 3)

อินเทอร์เฟซ MapCanvasProjection

google.maps.MapCanvasProjection อินเทอร์เฟซ

ออบเจ็กต์นี้จะพร้อมใช้งานสำหรับ OverlayView จากภายในเมธอด draw ระบบไม่รับประกันว่าจะมีการเริ่มต้นจนกว่าจะมีการเรียกใช้การวาด

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์
  • pixel: Point optional
  • noClampNoWrap: boolean optional
ค่าที่แสดงผล: LatLng|null
คำนวณพิกัดทางภูมิศาสตร์จากพิกัดพิกเซลในคอนเทนเนอร์ของแผนที่
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์
  • pixel: Point optional
  • noClampNoWrap: boolean optional
ค่าที่แสดงผล: LatLng|null
คำนวณพิกัดทางภูมิศาสตร์จากพิกัดพิกเซลใน div ที่มีแผนที่ที่ลากได้
fromLatLngToContainerPixel
fromLatLngToContainerPixel(latLng)
พารามิเตอร์
ค่าที่แสดงผล: Point|null
คำนวณพิกัดพิกเซลของสถานที่ตั้งทางภูมิศาสตร์ที่ระบุในองค์ประกอบคอนเทนเนอร์ของแผนที่
fromLatLngToDivPixel
fromLatLngToDivPixel(latLng)
พารามิเตอร์
ค่าที่แสดงผล: Point|null
คำนวณพิกัดพิกเซลของสถานที่ตั้งทางภูมิศาสตร์ที่ระบุในองค์ประกอบ DOM ที่มีแผนที่ที่ลากได้
getVisibleRegion
getVisibleRegion()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: VisibleRegion|null
ขอบเขตที่มองเห็นได้ของแผนที่ แสดงผล null หากแมปไม่มีขนาด แสดงผล null หาก OverlayView อยู่ใน StreetViewPanorama
getWorldWidth
getWorldWidth()
พารามิเตอร์: ไม่มี
ค่าที่แสดงผล: number
ความกว้างของโลกในหน่วยพิกเซลที่ระดับการซูมปัจจุบัน สำหรับการฉายภาพที่มีมุมส่วนหัว 90 หรือ 270 องศา ค่านี้จะสอดคล้องกับช่วงพิกเซลในแกน Y