Você pode adicionar animações de caminho da câmera ao mapa 3D para oferecer uma experiência mais imersiva aos usuários. As animações de caminho da câmera podem voar para um ponto no mapa, voar ao redor dele ou ser
combinadas para animar a
Camera
incluindo a especificação da
altitude
e
altitudeMode.
Ao configurar um
Camera
para uma animação, defina a propriedade
altitudeMode
para especificar como a altitude da câmera é interpretada:
AltitudeMode.absolute: interpreta a altitude como metros acima do nível médio do mar (o valor padrão, se não for especificado).AltitudeMode.relativeToGround: interpreta a altitude como metros acima da superfície do solo no ponto central da câmera.AltitudeMode.relativeToMesh: interpreta a altitude como metros acima da superfície de malha 3D mais alta (como edifícios ou terrenos) no ponto central da câmera.
Voar para
O exemplo de código a seguir demonstra como usar o
flyCameraTo
modificador para animar a
Camera
para voar para um ponto específico em um mapa 3D.
Map(mode: .hybrid)
.flyCameraTo(
.init(
center: .init(
latitude: 47.6210296,
longitude: -122.3496903,
altitude: 585
),
heading: 149.0,
tilt: 77.0,
roll: 0.0,
range: 4000,
altitudeMode: .relativeToGround
),
duration: 5,
trigger: animate,
completion: {}
)
Voar ao redor
O exemplo de código a seguir demonstra como usar o
flyCameraAround
modificador para animar a
Camera
e voar ao redor de um ponto específico em um mapa 3D.
Map(mode: .hybrid)
.flyCameraAround(
.init(
center: .init(
latitude: 47.6210296,
longitude: -122.3496903,
altitude: 585
),
heading: 149.0,
tilt: 77.0,
roll: 0.0,
range: 3000,
altitudeMode: .relativeToGround
),
duration: 90,
repeatCount: 3,
trigger: flyAround,
completion: {}
)