Contoh kode berikut menunjukkan cara menambahkan model 3D dan memosisikannya
dalam ruang 3D dengan memanggil metode
addModel. 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 and define constants
import com.google.android.gms.maps3d.model.latLngAltitude
val PLANE_URL = "https://storage.googleapis.com/gmp-maps-demos/p3d-map/assets/Airplane.glb"
val PLANE_SCALE = 0.05
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
camera {
center = latLngAltitude {
latitude = 47.133971
longitude = 11.333161
altitude = 2200.0
}
heading = 221.0
tilt = 65.0
range = 1_200.0
}
)
googleMap3D.addModel(
modelOptions {
id = "plane_model"
position = latLngAltitude {
latitude = 47.133971
longitude = 11.333161
altitude = 2200.0
}
altitudeMode = AltitudeMode.ABSOLUTE
orientation = orientation {
heading = 41.5
tilt = -90.0
roll = 0.0
}
url = PLANE_URL
scale = vector3D {
x = PLANE_SCALE
y = PLANE_SCALE
z = PLANE_SCALE
}
}
)
Memproses peristiwa klik model 3D
Untuk memproses peristiwa klik pada model 3D, panggil
setClickListener pada objek model. Contoh berikut menunjukkan
cara menyetel pemroses klik pada model 3D:
model.setClickListener {
lifecycleScope.launch(Dispatchers.Main) {
Toast.makeText(this@ModelsActivity, "Model clicked", Toast.LENGTH_SHORT).show()
}
}
Perhatikan bahwa pengendali klik tidak berjalan di thread Utama (atau UI). Jika Anda
ingin melakukan perubahan pada UI (seperti menampilkan pesan Toast), Anda harus
beralih ke thread Utama. Untuk Kotlin, Anda dapat melakukannya menggunakan
lifecycleScope.launch(Dispatchers.Main).