Thêm ảnh động theo đường dẫn của máy ảnh

Chọn nền tảng: Android iOS

Bạn có thể thêm ảnh động đường dẫn camera vào bản đồ 3D để mang lại trải nghiệm sống động hơn cho người dùng. Ảnh động đường dẫn camera có thể bay đến hoặc bay xung quanh một điểm trên bản đồ.

Chuyển đến

Mẫu mã sau đây minh hoạ cách tạo hiệu ứng cho camera bay đến một điểm cụ thể trên bản đồ 3D bằng cách gọi phương thức flyCameraTo. Để sử dụng mã mẫu này, hãy làm theo hướng dẫn trong phần Thiết lậpThêm bản đồ 3D vào ứng dụng để thiết lập dự án Android Studio bằng một bản đồ 3D cơ bản. Sau đó, hãy thêm đoạn mã sau vào tệp MainActivity.kt:

// Add imports and define constants
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.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
        }
        durationInMillis = 2_000
    }
)

Bay xung quanh

Mã mẫu sau đây minh hoạ cách tạo hiệu ứng cho camera bay xung quanh một điểm cụ thể trên bản đồ 3D bằng cách gọi phương thức flyCameraAround. Để sử dụng mẫu mã này, hãy làm theo hướng dẫn trong phần Thiết lậpThêm bản đồ 3D vào ứng dụng để thiết lập dự án Android Studio bằng một bản đồ 3D cơ bản. Sau đó, hãy thêm đoạn mã sau vào tệp MainActivity.kt:

// Add imports and define constants
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.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
        }
        durationInMillis = 5_000
        rounds = 1.0 // Number of rotations - can be fractional
    }
)