DOM elements

OverlayView class

google.maps.OverlayView ชั้นเรียน

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

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

คุณต้องใช้วิธีการ 3 อย่าง ได้แก่ onAdd(), draw() และ onRemove()

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

ชั้นเรียนนี้ขยายเวลา MVCObject

เข้าถึงได้โดยโทรไปที่ const {OverlayView} = await google.maps.importLibrary("maps") หรือ const {OverlayView} = await google.maps.importLibrary("streetView")
ดูไลบรารีใน Maps JavaScript API

OverlayView
OverlayView()
พารามิเตอร์: ไม่มี
สร้าง OverlayView
preventMapHitsAndGesturesFrom
preventMapHitsAndGesturesFrom(element)
พารามิเตอร์: 
ค่าที่ส่งคืน: ไม่มี
หยุดเหตุการณ์การคลิก แตะ ลาก และล้อบนองค์ประกอบไม่ให้ส่งต่อขึ้นไปยังแผนที่ ใช้เพื่อป้องกันการลากและซูมแผนที่ รวมถึงเหตุการณ์ "คลิก" แผนที่
preventMapHitsFrom
preventMapHitsFrom(element)
พารามิเตอร์: 
ค่าที่ส่งคืน: ไม่มี
หยุดการคลิกหรือแตะองค์ประกอบจากการส่งต่อขึ้นไปยังแผนที่ ใช้เพื่อป้องกันไม่ให้แผนที่ทริกเกอร์เหตุการณ์ "คลิก"
draw
draw()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน: ไม่มี
ใช้วิธีนี้เพื่อวาดหรืออัปเดตภาพซ้อนทับ ใช้ตำแหน่งจาก projection.fromLatLngToDivPixel() เพื่อจัดตำแหน่งการวางซ้อนอย่างถูกต้องเทียบกับ MapPanes เมธอดนี้จะเรียกใช้หลังจาก onAdd() และจะเรียกใช้เมื่อมีการเปลี่ยนแปลงระดับการซูมหรือจุดกึ่งกลาง ไม่แนะนำให้ทำงานที่ต้องใช้การคำนวณสูงด้วยวิธีนี้
getMap
getMap()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  Map|StreetViewPanorama
getPanes
getPanes()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  MapPanes|null
แสดงผลแผงที่สามารถแสดงผล OverlayView นี้ได้ ระบบจะไม่เริ่มต้นแผงจนกว่า API จะเรียกใช้ onAdd
getProjection
getProjection()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  MapCanvasProjection
แสดงผลออบเจ็กต์ MapCanvasProjection ที่เชื่อมโยงกับ OverlayView นี้ ระบบจะไม่เริ่มต้นการฉายจนกว่า API จะเรียกใช้ onAdd
onAdd
onAdd()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน: ไม่มี
ใช้วิธีนี้เพื่อเริ่มต้นองค์ประกอบ DOM ของภาพซ้อนทับ เมธอดนี้จะเรียกใช้ 1 ครั้งหลังจากเรียกใช้ setMap() ด้วยแผนที่ที่ถูกต้อง ในขั้นตอนนี้ ระบบจะเริ่มต้นบานหน้าต่างและการฉายภาพ
onRemove
onRemove()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน: ไม่มี
ใช้เมธอดนี้เพื่อนำองค์ประกอบออกจาก DOM เมธอดนี้จะเรียกใช้ 1 ครั้งหลังจากเรียกใช้ setMap(null)
setMap
setMap(map)
พารามิเตอร์: 
  • mapMap|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 แต่ไม่รับประกันว่าจะเริ่มต้นจนกว่าจะมีการเรียกใช้ draw

fromContainerPixelToLatLng
fromContainerPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์: 
  • pixelPoint optional
  • noClampNoWrapboolean optional
ค่าที่ส่งคืน:  LatLng|null
คำนวณพิกัดทางภูมิศาสตร์จากพิกัดพิกเซลในคอนเทนเนอร์ของแผนที่
fromDivPixelToLatLng
fromDivPixelToLatLng(pixel[, noClampNoWrap])
พารามิเตอร์: 
  • pixelPoint optional
  • noClampNoWrapboolean 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