افزودن پویانمایی‌های مسیر دوربین

انتخاب پلاتفرم: Android iOS JavaScript

می‌توانید پویانمایی مسیر دوربین را به نقشه سه‌بعدی‌تان اضافه کنید تا تجربه فراگیرتری برای کاربران فراهم کنید. پویانمایی‌های مسیر دوربین می‌توانند به نقطه‌ای در نقشه پرواز کنند، دور آن بچرخند، یا باهم ترکیب شوند تا Camera را به نقطه‌ای در نقشه پویانمایی کنند، ازجمله با مشخص کردن ارتفاع و altitudeMode آن.

هنگام پیکربندی Camera برای پویانمایی، می‌توانید ویژگی altitudeMode را تنظیم کنید (یا setAltitudeMode را فراخوانی کنید) تا نحوه تفسیر ارتفاع دوربین را مشخص کنید:

  • AltitudeMode.ABSOLUTE: ارتفاع را به‌عنوان متر بالاتر از سطح متوسط دریا تفسیر می‌کند (مقدار پیش‌فرض درصورت عدم تعیین).
  • AltitudeMode.RELATIVE_TO_GROUND: ارتفاع را به‌صورت متر بالاتر از سطح زمین در نقطه مرکزی دوربین تفسیر می‌کند.
  • AltitudeMode.RELATIVE_TO_MESH: ارتفاع را به‌عنوان متر بالاتر از بالاترین سطح توری سه‌بعدی (مثل ساختمان‌ها یا درختان) در نقطه مرکزی دوربین تفسیر می‌کند.

پرواز کردن به

نمونه کد زیر نشان می‌دهد که چگونه با فراخوانی روش flyCameraTo در GoogleMap3D با پیکربندی FlyToOptions ، Camera را پویانمایی کنید تا به نقطه خاصی در نقشه سه‌بعدی پرواز کند.

// Add imports and define constants
import com.google.android.gms.maps3d.model.AltitudeMode
import com.google.android.gms.maps3d.model.FlyToOptions
import com.google.android.gms.maps3d.model.FlyAroundOptions
import com.google.android.gms.maps3d.model.Camera
import com.google.android.gms.maps3d.model.Map3DMode
import com.google.android.gms.maps3d.model.latLngAltitude
const val EMPIRE_STATE_BUILDING_LATITUDE = 40.748233
const val EMPIRE_STATE_BUILDING_LONGITUDE = -73.985663

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setMapMode(Map3DMode.HYBRID)
googleMap3D.flyCameraTo(
    flyToOptions {
        endCamera = camera {
            center = latLngAltitude {
                latitude = EMPIRE_STATE_BUILDING_LATITUDE
                longitude = EMPIRE_STATE_BUILDING_LONGITUDE
                altitude = 212.0 // in meters
            }
            heading = 34.0 // bearing in degrees
            tilt = 67.0 // relative to vertical
            range = 750.0 // distance away from the focal point in meters
            roll = 0.0 // roll relative to horizontal
            altitudeMode = AltitudeMode.RELATIVE_TO_GROUND
        }
        durationInMillis = 2000
    }
)

پرواز کردن در اطراف

نمونه کد زیر نشان می‌دهد که چگونه می‌توان با فراخوانی روش flyCameraAround در GoogleMap3D با پیکربندی FlyAroundOptions ، Camera را برای پرواز در اطراف نقطه‌ای خاص در نقشه سه‌بعدی پویانمایی کرد.

// Add imports and define constants
import com.google.android.gms.maps3d.model.AltitudeMode
import com.google.android.gms.maps3d.model.Map3DMode
import com.google.android.gms.maps3d.model.latLngAltitude
const val EMPIRE_STATE_BUILDING_LATITUDE = 40.748233
const val EMPIRE_STATE_BUILDING_LONGITUDE = -73.985663

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setMapMode(Map3DMode.HYBRID)
googleMap3D.flyCameraAround(
    flyAroundOptions {
        center = camera {
            center = latLngAltitude {
                latitude = EMPIRE_STATE_BUILDING_LATITUDE
                longitude = EMPIRE_STATE_BUILDING_LONGITUDE
                altitude = 212.0
            }
            heading = 34.0
            tilt = 67.0
            range = 750.0
            roll = 0.0
            altitudeMode = AltitudeMode.RELATIVE_TO_GROUND
        }
        durationInMillis = 5000
        rounds = 1.0 // Number of rotations - can be fractional
    }
)