Anda dapat menentukan perilaku penanda saat tumpang-tindih dengan penanda atau label peta lain dengan menyetel properti
collisionBehavior
ke salah satu nilai berikut:
REQUIRED: Penanda harus selalu ditampilkan terlepas dari konflik yang terjadi.REQUIRED_AND_HIDES_OPTIONAL: Penanda harus selalu ditampilkan terlepas dari tumpang-tindih yang terjadi. Penanda dengan perilaku tumpang-tindihOPTIONAL_AND_HIDES_LOWER_PRIORITYatau label peta default yang tumpang-tindih dengan penanda ini akan disembunyikan.OPTIONAL_AND_HIDES_LOWER_PRIORITY: Penanda hanya boleh ditampilkan jika tidak tumpang-tindih dengan penanda lain. Jika dua penanda dengan jenis ini akan tumpang-tindih, penanda dengan urutan gambar yang lebih tinggi akan ditampilkan. Jika memiliki urutan gambar yang sama, penanda dengan posisi layar vertikal bawah akan ditampilkan.
Contoh kode berikut menunjukkan setiap nilai perilaku tabrakan. Untuk
menggunakan contoh kode ini, ikuti petunjuk di
Penyiapan dan Menambahkan peta 3D ke aplikasi
Anda untuk menyiapkan project
Android Studio dengan peta 3D dasar. Kemudian, tambahkan kode berikut ke file
MainActivity.kt:
// Add imports
import com.google.android.gms.maps3d.model.latLngAltitude
...
// Marker 1: REQUIRED
googleMap3D.addMarker(markerOptions {
position = latLngAltitude {
latitude = 52.52027645136134
longitude = 13.408271658592406
altitude = 0.0
}
label = "Collision Behavior: REQUIRED"
altitudeMode = AltitudeMode.CLAMP_TO_GROUND
isExtruded = true
isDrawnWhenOccluded = true
collisionBehavior = CollisionBehavior.REQUIRED
})
// Marker 2: REQUIRED_AND_HIDES_OPTIONAL
googleMap3D.addMarker(markerOptions {
position = latLngAltitude {
latitude = 52.519605780912585
longitude = 13.406867190588198
altitude = 150.0
}
label = "Colliding Behavior: REQUIRED_AND_HIDES_OPTIONAL"
altitudeMode = AltitudeMode.ABSOLUTE
isExtruded = true
isDrawnWhenOccluded = true
collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL
})
// Marker 3: OPTIONAL_AND_HIDES_LOWER_PRIORITY
googleMap3D.addMarker(markerOptions {
position = latLngAltitude {
latitude = 52.519882191069016
longitude = 13.407410777254293
altitude = 50.0
}
label = "Colliding Behavior: OPTIONAL_AND_HIDES_LOWER_PRIORITY"
altitudeMode = AltitudeMode.RELATIVE_TO_GROUND
isExtruded = true
isDrawnWhenOccluded = true
collisionBehavior = CollisionBehavior.OPTIONAL_AND_HIDES_LOWER_PRIORITY
})