ภาพวางซ้อนพื้นดินคือภาพที่ยึดติดกับแผนที่ การวางซ้อนพื้นมีสิ่งต่อไปนี้ พร็อพเพอร์ตี้:
- อันดับ
- การระบุตำแหน่งของการวางซ้อนพื้นมี 2 วิธีดังนี้
- การใช้ตำแหน่ง: คุณต้องใส่ภาพของการวางซ้อนพื้น
LatLng
ที่จุดยึดจะถูกยึดและความกว้างของภาพซ้อนทับ (เป็นเมตร) โดยค่าเริ่มต้น จุดยึดคือ 50% จากด้านบนของรูปภาพ และ 50% จากด้านซ้ายของ รูปภาพ ซึ่งเปลี่ยนแปลงได้ คุณสามารถระบุความสูงของการวางซ้อน (ใน เมตร) ถ้าคุณไม่ระบุความสูงของภาพซ้อนทับ ภาพจะ คำนวณเพื่อรักษาสัดส่วนของรูปภาพ - การใช้ขอบเขต: คุณต้องระบุ
LatLngBounds
ซึ่งจะประกอบด้วยรูปภาพ
IllegalArgumentException
เมื่อการวางซ้อนพื้น เพิ่มลงในแผนที่แล้ว นอกจากนี้ คุณต้องระบุตำแหน่งโดยใช้หนึ่งในรายการเหล่านี้เท่านั้น ในออบเจ็กต์GroundOverlayOptions
ไม่เช่นนั้น จะมีการทิ้งIllegalStateException
เมื่อระบุโดยใช้วิธีที่ 2 - การใช้ตำแหน่ง: คุณต้องใส่ภาพของการวางซ้อนพื้น
- รูปภาพ
- รูปภาพ (เป็น
BitmapDescriptor
) ที่จะใช้สำหรับการวางซ้อนนี้ รูปภาพจะ ปรับขนาดให้พอดีกับตำแหน่งที่ระบุ คุณต้องระบุภาพก่อนเพิ่มพื้นดิน ซ้อนทับบนแผนที่ หากไม่ใช่IllegalArgumentException
จะส่งไปเมื่อ เพิ่มลงในแผนที่แล้ว - แบริ่ง
- ระดับที่ควรหมุนรูปภาพในทิศทางตามเข็มนาฬิกา ศูนย์กลางของ การหมุนจะเป็นจุดยึดของภาพ ค่านี้ไม่บังคับ และตัวเลขเริ่มต้นคือ 0 รูปภาพจะได้รับการปรับแนวให้อยู่ทางทิศเหนือ
- zIndex
- ลำดับการวาดการวางซ้อนพื้นนี้เทียบกับการวางซ้อนอื่นๆ (รวมถึง
Polyline
และTileOverlay
แต่ไม่ใช่Marker
) การวางซ้อนที่มี zIndex ที่ใหญ่กว่าถูกวาดทับการวางซ้อนที่มี zIndex ที่เล็กกว่า ลำดับของการวางซ้อนที่มี ค่า zIndex จะกำหนดเองได้ ค่านี้ไม่บังคับและ zIndex เริ่มต้นคือ 0 - ความโปร่งใส
- ความโปร่งใสของการวางซ้อนพื้นในช่วง
[0..1]
โดยที่0
หมายถึง โฆษณาซ้อนทับเป็นสีทึบและ1
หมายความว่าโฆษณาซ้อนทับมีความโปร่งใส 100% หากระบุ บิตแมปมีความโปร่งใสบางส่วนอยู่แล้ว ความโปร่งใสของแต่ละพิกเซลจะมีการปรับขนาด (ตัวอย่างเช่น หากพิกเซลในบิตแมปมีค่าอัลฟ่าเป็น 200 และคุณ ระบุความโปร่งใสของการวางซ้อนพื้นเป็น 0.25 จากนั้นพิกเซลจะแสดงใน หน้าจอที่มีค่าอัลฟ่าเท่ากับ 150) ข้อกำหนดของพร็อพเพอร์ตี้นี้เป็นตัวเลือกที่ไม่บังคับและพร็อพเพอร์ตี้ ความโปร่งใสตามค่าเริ่มต้นคือ 0 (ทึบ) - ระดับการแชร์
- ระบุว่าการวางซ้อนพื้นปรากฏหรือมองไม่เห็น เช่น มีการวาดบน
แผนที่ ไม่มีการวาดการวางซ้อนพื้นที่ไม่แสดง แต่ยังคงคุณสมบัติอื่นๆ ทั้งหมดของพื้นที่ดังกล่าว
ตัวเลือกนี้เป็นตัวเลือกและระดับการเข้าถึงเริ่มต้นคือ
true
ซึ่งก็คือมองเห็นได้ - ความสามารถในการคลิกได้
- หากคุณต้องการจัดการเหตุการณ์ที่เริ่มทำงานเมื่อผู้ใช้คลิกการวางซ้อนพื้น ให้ตั้งค่าสิ่งนี้
พร็อพเพอร์ตี้ไปยัง
true
คุณสามารถเปลี่ยนแปลงค่านี้ได้ตลอดเวลา โดยมีค่าเริ่มต้นเป็นfalse
หากตั้งค่าพร็อพเพอร์ตี้นี้เป็นtrue
แอปจะได้รับการแจ้งเตือนไปยังGoogleMap.OnGroundOverlayClickListener
ลงทะเบียนผ่านsetOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
- แท็ก
Object
ที่เชื่อมโยงกับการวางซ้อนพื้น ตัวอย่างเช่นObject
สามารถ มีข้อมูลเกี่ยวกับสิ่งที่การวางซ้อนพื้นดิน ซึ่งง่ายกว่าการจัดเก็บ แยกMap<GroundOverlay, Object>
อีกตัวอย่างหนึ่งคือคุณสามารถเชื่อมโยงรหัสString
ที่เกี่ยวข้องกับรหัสนั้นจากชุดข้อมูล Google Maps SDK สำหรับ Android ก็ไม่ได้เช่นกัน จะอ่านและเขียนคุณสมบัตินี้
ต้องเรียกใช้เมธอดในคลาสนี้บนเทรด Android UI หากไม่เป็นเช่นนั้น IllegalStateException
จะแสดงขณะรันไทม์
ตัวอย่าง
GoogleMap map = ...; // get a map.
BitmapDescriptor imageDescriptor = ...; // get an image.
LatLngBounds bounds = ...; // get a bounds
// Adds a ground overlay with 50% transparency.
GroundOverlay groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
.image(imageDescriptor)
.positionFromBounds(bounds)
.transparency(0.5));
ข้อมูลสรุปของเมธอดสาธารณะ
boolean |
เท่ากับ(ออบเจ็กต์อื่นๆ)
ทดสอบว่า
GroundOverlay นี้เท่ากับอีกรายการหนึ่งหรือไม่ |
จำนวนลอยตัว |
getBearing()
รับทิศทางของพื้นดินซ้อนทับเป็นองศาตามเข็มนาฬิกาจากทิศเหนือ
|
LatLngBounds |
getBounds()
รับขอบเขตสำหรับการวางซ้อนพื้น
|
จำนวนลอยตัว |
getHeight()
รับข้อมูลความสูงของการวางซ้อนพื้น
|
สตริง |
getId()
รับรหัสของการวางซ้อนพื้นนี้
|
LatLng |
getPosition()
รับตำแหน่งของจุดยึด
|
ออบเจ็กต์ |
getTag()
รับแท็กสำหรับแวดวง
|
จำนวนลอยตัว |
getTransparency()
ได้รับความโปร่งใสของการวางซ้อนพื้นนี้
|
จำนวนลอยตัว |
getWidth()
รับความกว้างของการวางซ้อนพื้น
|
จำนวนลอยตัว |
getZIndex()
รับค่า zIndex ของการวางซ้อนพื้นนี้
|
int |
hashCode()
|
boolean |
isClickable()
รับความสามารถในการคลิกได้ของการวางซ้อนพื้น
|
boolean |
isVisible()
รับการแสดงผลของการวางซ้อนพื้นนี้
|
เป็นโมฆะ |
remove()
ลบการวางซ้อนพื้นนี้ออกจากแผนที่
|
เป็นโมฆะ |
setBearing(ทิศทางลอย)
ตั้งทิศทางของพื้นดิน (ทิศทางที่แกนแนวตั้งของพื้นดิน
จุดซ้อนทับ) เป็นองศาตามเข็มนาฬิกาจากทิศเหนือ
|
เป็นโมฆะ |
setClickable(คลิกบูลีนได้)
ตั้งค่าความสามารถในการคลิกได้ของการวางซ้อนพื้น
|
เป็นโมฆะ |
setDimensions(ความกว้างแบบลอย ความสูงแบบลอย)
กำหนดขนาดของการวางซ้อนพื้น
|
เป็นโมฆะ |
setDimensions(ความกว้างแบบลอย)
กำหนดความกว้างของการวางซ้อนพื้น
|
เป็นโมฆะ | |
เป็นโมฆะ | |
เป็นโมฆะ |
setPositionFromBounds(ขอบเขต LatLngBounds)
กำหนดตำแหน่งของการวางซ้อนพื้นโดยพอดีกับ
LatLngBounds ที่ระบุ |
เป็นโมฆะ |
setTag(แท็กออบเจ็กต์)
ตั้งค่าแท็กสำหรับการวางซ้อนพื้น
|
เป็นโมฆะ |
setTransparency(ความโปร่งใสแบบลอย)
ตั้งค่าความโปร่งใสของการวางซ้อนพื้นนี้
|
เป็นโมฆะ |
setVisible(boolean visible)
ตั้งค่าการเปิดเผยของการวางซ้อนพื้นนี้
|
เป็นโมฆะ |
setZIndex(จำนวนลอยตัว zIndex)
ตั้งค่า zIndex ของการวางซ้อนพื้นนี้
|
สรุปวิธีการที่รับมา
วิธีการสาธารณะ
สาธารณะ บูลีน เท่ากับ (ออบเจ็กต์อื่นๆ)
ทดสอบว่า GroundOverlay
นี้เท่ากับอีกรายการหนึ่งหรือไม่
พารามิเตอร์
อื่นๆ | Object |
---|
การคืนสินค้า
- เป็นจริงหากวัตถุทั้งสองเป็นวัตถุเดียวกัน ซึ่งก็คือ == อื่นๆ
สาธารณะ จำนวนลอยตัว getBearing ()
รับทิศทางของพื้นดินซ้อนทับเป็นองศาตามเข็มนาฬิกาจากทิศเหนือ
การคืนสินค้า
- ทิศทางของพื้นดิน
สาธารณะ LatLngBounds getBounds ()
รับขอบเขตสำหรับการวางซ้อนพื้น โดยไม่คำนึงถึงการหมุนของการวางซ้อนพื้น
การคืนสินค้า
LatLngBounds
ที่มีการวางซ้อนพื้นโดยไม่คำนึงถึงการหมุน
สาธารณะ จำนวนลอยตัว getHeight ()
รับข้อมูลความสูงของการวางซ้อนพื้น
การคืนสินค้า
- ความสูงของการวางซ้อนพื้นในหน่วยเมตร
สาธารณะ สตริง getId ()
รับรหัสของการวางซ้อนพื้นนี้ รหัสจะไม่ซ้ำกับ GroundOverlays ทั้งหมดบนแผนที่
การคืนสินค้า
- รหัสของการวางซ้อนพื้นนี้
สาธารณะ วัตถุ getTag ()
รับแท็กสำหรับแวดวง
การคืนสินค้า
- หากตั้งค่าแท็กด้วย
setTag
null
หากไม่มีการตั้งค่าแท็ก
สาธารณะ จำนวนลอยตัว getTransparency ()
ได้รับความโปร่งใสของการวางซ้อนพื้นนี้
การคืนสินค้า
- ความโปร่งใสของการวางซ้อนพื้นนี้
สาธารณะ จำนวนลอยตัว getWidth ()
รับความกว้างของการวางซ้อนพื้น
การคืนสินค้า
- ความกว้างของพื้นที่ซ้อนทับในหน่วยเมตร
สาธารณะ จำนวนลอยตัว getZIndex ()
รับค่า zIndex ของการวางซ้อนพื้นนี้
การคืนสินค้า
- zIndex ของการวางซ้อนพื้น
สาธารณะ Int hashCode ()
สาธารณะ บูลีน isClickable ()
รับความสามารถในการคลิกได้ของการวางซ้อนพื้น หากการซ้อนทับพื้นสามารถคลิกได้ แอปของคุณจะ
รับการแจ้งเตือนไปยัง GoogleMap.OnGroundOverlayClickListener
เมื่อผู้ใช้
คลิกการวางซ้อนพื้น Listener เหตุการณ์ได้รับการลงทะเบียนผ่าน setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
การคืนสินค้า
true
หากการวางซ้อนพื้นคลิกได้ ไม่เช่นนั้น ระบบจะแสดงผลfalse
สาธารณะ บูลีน isVisible ()
รับการแสดงผลของการวางซ้อนพื้นนี้ โปรดทราบว่าสิ่งนี้ไม่ได้แสดงผลว่า ที่วางซ้อนอยู่บนหน้าจอ แต่จะวาดขึ้นไหมหากมีภาพซ้อนอยู่ในภาพ วิวพอร์ต
การคืนสินค้า
- การเปิดเผยของภาพซ้อนทับระดับพื้นดินนี้
สาธารณะ เป็นโมฆะ นำออก ()
ลบการวางซ้อนพื้นนี้ออกจากแผนที่ หลังจากนำการวางซ้อนพื้นออก การทำงาน ของวิธีการทั้งหมดเป็นไม่ระบุ
สาธารณะ เป็นโมฆะ setBearing (ทิศทางลอย)
ตั้งทิศทางของพื้นดิน (ทิศทางที่แกนแนวตั้งของพื้นดิน จุดซ้อนทับ) เป็นองศาตามเข็มนาฬิกาจากทิศเหนือ การหมุนจะเกี่ยวกับแท็ก Anchor คะแนน
พารามิเตอร์
การแบก | หันองศาตามเข็มนาฬิกาจากทิศเหนือ |
---|
สาธารณะ เป็นโมฆะ setClickable (คลิกบูลีนได้)
ตั้งค่าความสามารถในการคลิกได้ของการวางซ้อนพื้น หากการซ้อนทับพื้นสามารถคลิกได้ แอปของคุณจะ
รับการแจ้งเตือนไปยัง GoogleMap.OnGroundOverlayClickListener
เมื่อผู้ใช้
คลิกการวางซ้อนพื้น Listener เหตุการณ์ได้รับการลงทะเบียนผ่าน setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
พารามิเตอร์
คลิกได้ | การตั้งค่าความสามารถในการคลิกได้ใหม่สำหรับการวางซ้อนพื้น |
---|
สาธารณะ เป็นโมฆะ setDimensions (ความกว้างแบบลอย ความสูงแบบลอย)
กำหนดขนาดของการวางซ้อนพื้น รูปภาพจะถูกยืดออกเพื่อให้พอดีกับขนาด
พารามิเตอร์
ความกว้าง | ความกว้างเป็นเมตร |
---|---|
ส่วนสูง | ความสูงเป็นเมตร |
สาธารณะ เป็นโมฆะ setDimensions (ความกว้างแบบลอย)
กำหนดความกว้างของการวางซ้อนพื้น ระบบจะปรับความสูงของการวางซ้อนพื้น ตามนั้นเพื่อรักษาอัตราส่วนไว้
พารามิเตอร์
ความกว้าง | ความกว้างเป็นเมตร |
---|
สาธารณะ เป็นโมฆะ setImage (BitmapDescriptor imageDescriptor)
ตั้งค่าภาพสำหรับการวางซ้อนภาคพื้นดิน รูปภาพใหม่จะมีขอบเขตเท่ากับภาพเก่า รูปภาพ
พารามิเตอร์
imageDescriptor | BitmapDescriptor ที่ใช้สำหรับการวางซ้อนพื้นนี้
|
---|
สาธารณะ เป็นโมฆะ setPosition (LatLng latLng)
กำหนดตำแหน่งของการวางซ้อนพื้นโดยเปลี่ยนตำแหน่งของจุดยึด แยมพรีเสิร์ฟ คุณสมบัติอื่นๆ ทั้งหมดของรูปภาพ
พารามิเตอร์
latLng | LatLng ที่เป็นตำแหน่งใหม่เพื่อวางจุดยึด
|
---|
สาธารณะ เป็นโมฆะ setPositionFromBounds (ขอบเขต LatLngBounds)
กำหนดตำแหน่งของการวางซ้อนพื้นโดยพอดีกับ LatLngBounds
ที่ระบุ ช่วงเวลานี้
จะไม่สนใจการหมุน (ทิศทาง) ของพื้นดินเมื่อวางตำแหน่ง แต่
การวาดรูปจะยังถูกใช้เมื่อวาด
พารามิเตอร์
ขอบเขต | LatLngBounds ที่จะวางการวางซ้อนพื้น
|
---|
สาธารณะ เป็นโมฆะ setTag (แท็กออบเจ็กต์)
ตั้งค่าแท็กสำหรับการวางซ้อนพื้น
คุณสามารถใช้พร็อพเพอร์ตี้นี้เพื่อเชื่อมโยง Object
ที่กำหนดเองกับการวางซ้อนพื้นนี้
ตัวอย่างเช่น Object
อาจมีข้อมูลเกี่ยวกับสิ่งที่การวางซ้อนพื้นแทน ช่วงเวลานี้
จะง่ายกว่าการจัดเก็บ Map<GroundOverlay, Object>
แยกต่างหาก อีกตัวอย่างหนึ่งคือ
สามารถเชื่อมโยงรหัส String
ที่เกี่ยวข้องกับรหัสจากชุดข้อมูล Google Maps SDK สำหรับ
Android ไม่ได้อ่านและเขียนพร็อพเพอร์ตี้นี้ คุณมีหน้าที่ต้องเรียกใช้ setTag(null)
เพื่อล้างแท็กเมื่อไม่จำเป็นต้องใช้แล้ว เพื่อป้องกันไม่ให้หน่วยความจำรั่วไหลในแอป
พารามิเตอร์
แท็ก | หากเป็นค่าว่าง ระบบจะล้างแท็ก |
---|
สาธารณะ เป็นโมฆะ setTransparency (ความโปร่งใสแบบลอย)
ตั้งค่าความโปร่งใสของการวางซ้อนพื้นนี้ ดูเอกสารประกอบที่ด้านบนของชั้นเรียนนี้ เพื่อดูข้อมูลเพิ่มเติม
พารามิเตอร์
ความโปร่งใส | จำนวนลอยตัวในช่วง [0..1] โดยที่ 0 หมายความว่าพื้น
ภาพซ้อนทับ เป็นแบบทึบ และ 1 หมายความว่า การวางซ้อนพื้นมีความโปร่งใส
|
---|
สาธารณะ เป็นโมฆะ setVisible (แสดงบูลีน)
ตั้งค่าการเปิดเผยของการวางซ้อนพื้นนี้ เมื่อมองไม่เห็น จะไม่มีการวาดการวางซ้อนพื้น แต่จะยังเก็บคุณสมบัติอื่นๆ ทั้งหมดของไฟล์
พารามิเตอร์
มองเห็นได้ | หาก true จะมีการวางซ้อนพื้นเกิดขึ้น หากเป็น false ก็ไม่ใช่
|
---|
สาธารณะ เป็นโมฆะ setZIndex (ดัชนี z แบบลอย)
ตั้งค่า zIndex ของการวางซ้อนพื้นนี้ สำหรับข้อมูลเพิ่มเติม โปรดดูเอกสารประกอบที่ด้านบนของชั้นเรียนนี้
พารามิเตอร์
zIndex | zIndex ของการวางซ้อนพื้นนี้ |
---|