WebGL

WebGLOverlayView คลาส

google.maps.WebGLOverlayView คลาส

มุมมองการวางซ้อนของ WebGL มอบการเข้าถึงโดยตรงไปยังบริบทการแสดงผล WebGL ที่ Google Maps Platform ใช้ในการแสดงผลแผนที่ฐานเวกเตอร์ การใช้บริบทการแสดงผลร่วมกันจะให้ประโยชน์ต่างๆ เช่น การบดบังความลึกด้วยเรขาคณิตของสิ่งปลูกสร้าง 3 มิติ และความสามารถในการซิงค์เนื้อหาแบบ 2 มิติ/3 มิติด้วยการแสดงแผนที่ฐาน

ในมุมมองการวางซ้อนของ WebGL คุณสามารถเพิ่มเนื้อหาลงในแผนที่ได้โดยใช้ WebGL โดยตรง หรือไลบรารี Graphics ยอดนิยม เช่น Three.js หรือ สไลด์.gl หากต้องการใช้การวางซ้อน คุณสามารถขยาย google.maps.WebGLOverlayView และแสดงการใช้งานสําหรับ Hook วงจรแต่ละรายการต่อไปนี้: WebGLOverlayView.onAdd, WebGLOverlayView.onContextRestored, WebGLOverlayView.onDraw, WebGLOverlayView.onContextLost และ WebGLOverlayView.onRemove

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

คลาสนี้จะขยาย MVCObject

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

WebGLOverlayView
WebGLOverlayView()
พารามิเตอร์: ไม่มี
สร้าง WebGLOverlayView
getMap
getMap()
พารามิเตอร์: ไม่มี
แสดงผลค่า:  Map|null|undefined
onAdd
onAdd()
พารามิเตอร์: ไม่มี
ค่าการแสดงผล: ไม่มี
ใช้วิธีการนี้เพื่อดึงข้อมูลหรือสร้างโครงสร้างข้อมูลระดับกลางก่อนที่ระบบจะวาดการวางซ้อนที่ไม่จําเป็นต้องเข้าถึงบริบทการแสดงภาพของ WebGL ทันที ต้องติดตั้งวิธีนี้เพื่อแสดงผล
onContextLost
onContextLost()
พารามิเตอร์: ไม่มี
ค่าการแสดงผล: ไม่มี
ระบบจะเรียกใช้เมธอดนี้เมื่อบริบทการแสดงภาพหายไปไม่ว่าด้วยเหตุผลใดก็ตาม และคุณควรล้าง GL สถานะที่มีอยู่ก่อนหน้า เนื่องจากไม่จําเป็นอีกต่อไป
onContextRestored
onContextRestored(options)
พารามิเตอร์: 
  • optionsWebGLStateOptions ที่ช่วยให้นักพัฒนาแอปกู้คืนบริบท GL ได้
ค่าการแสดงผล: ไม่มี
ระบบจะเรียกใช้เมธอดนี้เมื่อบริบทการแสดงผลพร้อมใช้งาน ใช้ส่วนนี้เพื่อเริ่มหรือเชื่อมโยงสถานะ WebGL เช่น ตัวปรับแสงเงาหรือวัตถุกันชน
onDraw
onDraw(options)
พารามิเตอร์: 
  • optionsWebGLDrawOptions ที่อนุญาตให้นักพัฒนาซอฟต์แวร์แสดงผลเนื้อหาไปยังแผนที่ฐานของ Google ที่เกี่ยวข้อง
ค่าการแสดงผล: ไม่มี
ใช้วิธีการนี้วาดภาพเนื้อหา WebGL ลงในแผนที่โดยตรง โปรดทราบว่าหากโฆษณาซ้อนทับต้องวาดเฟรมใหม่ ให้เรียกใช้ WebGLOverlayView.requestRedraw
onRemove
onRemove()
พารามิเตอร์: ไม่มี
ค่าการแสดงผล: ไม่มี
วิธีการนี้เรียกเมื่อมีการนําการวางซ้อนออกจากแผนที่ด้วย WebGLOverlayView.setMap(null) และคุณควรนําวัตถุระดับกลางทั้งหมดออก ต้องติดตั้งวิธีนี้เพื่อแสดงผล
onStateUpdate
onStateUpdate(options)
พารามิเตอร์: 
  • optionsWebGLStateOptions ที่ช่วยให้นักพัฒนาแอปกู้คืนบริบท GL ได้
ค่าการแสดงผล: ไม่มี
ใช้วิธีการนี้เพื่อจัดการการอัปเดตสถานะ GL นอกเฟรมภาพเคลื่อนไหว
requestRedraw
requestRedraw()
พารามิเตอร์: ไม่มี
ค่าการแสดงผล: ไม่มี
เรียกให้แผนที่วาดเฟรมใหม่
requestStateUpdate
requestStateUpdate()
พารามิเตอร์: ไม่มี
ค่าการแสดงผล: ไม่มี
เรียกให้แผนที่อัปเดตสถานะ GL
setMap
setMap([map])
พารามิเตอร์: 
  • mapMap optional แผนที่เพื่อเข้าถึง div, โมเดล และสถานะมุมมอง
ค่าการแสดงผล: ไม่มี
เพิ่มการวางซ้อนลงในแผนที่
รับค่า: addListener, bindTo, get, notify, set, setValues, unbind, unbindAll

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

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

ตัวเลือกภาพวาด

gl
ประเภท:  WebGLRenderingContext
WebGLRenderingContext ที่ใช้แสดงผล WebGLOverlayView
transformer
ประเภท:  CoordinateTransformer
การเปลี่ยนเมทริกซ์จากพื้นที่ของกล้องเป็นพิกัดละติจูด/ลองจิจูด

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

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

ตัวเลือกสถานะ GL

gl
ประเภท:  WebGLRenderingContext
WebGLRenderingContext ที่ใช้แสดงผล WebGLOverlayView

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

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

อินเทอร์เฟซนี้เป็นวิธีที่สะดวกในการสร้างเมทริกซ์เพื่อใช้แสดงผลฉาก WebGL ที่ด้านบนของแผนที่ฐานของ Google

หมายเหตุ: ไม่ควรอ้างอิงออบเจ็กต์นี้นอกขอบเขตการเรียก WebGLOverlayView.onDraw ที่สรุปข้อมูล

fromLatLngAltitude
fromLatLngAltitude(latLngAltitude[, rotations, scale])
พารามิเตอร์: 
  • latLngAltitudeLatLngAltitude|LatLngAltitudeLiteral ละติจูด ลองจิจูด และระดับความสูง
  • rotationsFloat32Array optionalอาร์เรย์ที่มีมุมการหมุนแบบออยเลอร์ในหน่วยองศาใน XYZ
  • scaleFloat32Array optional อาร์เรย์ที่มีอาร์เรย์สเกลาร์ XYZ เพื่อใช้กับแกนจํานวนสมาชิกในเซ็ต
ค่าการแสดงผล: เมทริกซ์ MVP ของ Float64Array เพื่อใช้กับ WebGL
getCameraParams
getCameraParams()
พารามิเตอร์: ไม่มี
ค่าที่ส่งคืน:  CameraParams พารามิเตอร์ของกล้อง

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

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

ใช้สําหรับดึงพารามิเตอร์ของกล้อง เช่น พารามิเตอร์ของกล้อง GL ที่ใช้สําหรับ WebGLOverlayView

อินเทอร์เฟซนี้จะขยาย CameraOptions

center
ประเภท:  LatLng
heading
ประเภท:  number
tilt
ประเภท:  number
zoom
ประเภท:  number