
شما میتوانید ارتفاع یک نشانگر را با تنظیم ویژگی altitudeMode روی یکی از مقادیر زیر تنظیم کنید:
-
ABSOLUTE -
RELATIVE_TO_GROUND -
CLAMP_TO_GROUND -
RELATIVE_TO_MESH
نمونه کد زیر نحوه استفاده از هر یک از روشها را نشان میدهد. برای استفاده از این نمونه کد، دستورالعملهای موجود در بخش تنظیمات و افزودن نقشه سهبعدی به برنامه خود را دنبال کنید تا پروژه اندروید استودیو خود را با یک نقشه سهبعدی اولیه راهاندازی کنید. سپس، کد زیر را به فایل MainActivity.kt اضافه کنید:
// Add imports import com.google.android.gms.maps3d.model.latLngAltitude ... // Add to the onMap3DViewReady method, after the googleMap3D object has been initialized googleMap3D.setMapMode(Map3DMode.SATELLITE) googleMap3D.setCamera( camera { center = latLngAltitude { latitude = 52.51974795 longitude = 13.40715553 altitude = 150.0 } heading = 252.7 tilt = 79.0 range = 1500.0 } ) // Marker 1: Absolute googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519605780912585 longitude = 13.406867190588198 altitude = 150.0 } label = "Absolute (150m)" altitudeMode = AltitudeMode.ABSOLUTE isExtruded = true isDrawnWhenOccluded = true collisionBehavior = CollisionBehavior.REQUIRED_AND_HIDES_OPTIONAL }) // Marker 2: Relative to Ground googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.519882191069016 longitude = 13.407410777254293 altitude = 50.0 } label = "Relative to Ground (50m)" altitudeMode = AltitudeMode.RELATIVE_TO_GROUND isExtruded = true isDrawnWhenOccluded = true }) // Marker 3: Clamped to Ground googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.52027645136134 longitude = 13.408271658592406 altitude = 0.0 // altitude is effectively ignored by CLAMP_TO_GROUND for rendering, // but might be relevant if you read the marker's position later. // For CLAMP_TO_GROUND, it's often set to 0.0. } label = "Clamped to Ground" altitudeMode = AltitudeMode.CLAMP_TO_GROUND isExtruded = true isDrawnWhenOccluded = true }) // Marker 4: Relative to Mesh googleMap3D.addMarker(markerOptions { position = latLngAltitude { latitude = 52.520835071144226 longitude = 13.409426847943774 altitude = 10.0 // Altitude relative to 3D mesh (buildings, terrain features) } label = "Relative to Mesh (10m)" altitudeMode = AltitudeMode.RELATIVE_TO_MESH isExtruded = true isDrawnWhenOccluded = true })