নিচের কোড স্যাম্পেল থেকে জানা যাবে যে কীভাবে পলিলাইন যোগ করতে হয় এবং
addPolyline
মেথড কল করে 3D স্পেসে পজিশন করতে হয়। এই কোড স্যাম্পেল ব্যবহার করতে,
সেট-আপ এবং আপনার অ্যাপে 3D ম্যাপ যোগ করুন
বিকল্পে দেওয়া নির্দেশাবলী অনুসরণ করে
বেসিক 3D ম্যাপ সহ আপনার Android Studio প্রোজেক্ট সেট-আপ করুন। তারপর, MainActivity.kt ফাইলে
নিম্নলিখিত কোড যোগ করুন:
// Add imports
import com.google.android.gms.maps3d.model.Map3DMode
import com.google.android.gms.maps3d.model.latLngAltitude
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setMapMode(Map3DMode.HYBRID)
googleMap3D.setCamera(
camera {
center = latLngAltitude {
latitude = 40.029349
longitude = -105.300354
altitude = 1833.9
}
heading = 326.0
tilt = 75.0
range = 3757.0
}
)
internal val trailLocations = """
40.0201040, -105.2976640
40.0201080, -105.2976450
40.0201640, -105.2975120
40.0202200, -105.2973740
40.0202500, -105.2972760
40.0202960, -105.2971410
40.0203080, -105.2970990
40.0203320, -105.2970070
40.0203640, -105.2969400
40.0203710, -105.2969250
40.0203770, -105.2969220
40.0203910, -105.2969130
40.0203940, -105.2969120
40.0204200, -105.2969130
40.0204630, -105.2968910
40.0205270, -105.2968280
40.0206030, -105.2967570
40.0206590, -105.2966100
40.0206990, -105.2964870
""".trimIndent().split("\n").map {
val (lat, lng) = it.split(",")
latLngAltitude {
latitude = lat.toDouble()
longitude = lng.toDouble()
altitude = 0.0 // The trail will be clamped to the ground
}
}
val trailPolylineOptions = polylineOptions {
coordinates = trailLocations
strokeColor = Color.RED
strokeWidth = 7.0
altitudeMode = AltitudeMode.CLAMP_TO_GROUND
zIndex = 5
drawsOccludedSegments = true
}
googleMap3D.addPolyline(trailPolylineOptions)
পলিলাইন ক্লিক ইভেন্ট শুনুন
পলিলাইনে ক্লিক ইভেন্ট শুনতে, পলিলাইন অবজেক্টে setClickListener কল করুন। নিচের উদাহরণে দেখানো হয়েছে যে কীভাবে পলিলাইনে ক্লিক লিসনার সেট করতে হয়:
polyline.setClickListener {
lifecycleScope.launch(Dispatchers.Main) {
Toast.makeText(this@PolylinesActivity, "Hiking time!", Toast.LENGTH_SHORT).show()
}
}
মনে রাখবেন যে ক্লিক হ্যান্ডলার Main (বা UI) থ্রেডে রান করে না। আপনি যদি
UI-তে পরিবর্তন করতে চান (যেমন, টোস্ট মেসেজ দেখানো), তাহলে আপনাকে অবশ্যই
Main থ্রেডে সুইচ করতে হবে। Kotlin-এর জন্য, আপনি
lifecycleScope.launch(Dispatchers.Main) ব্যবহার করে এটি করতে পারেন।