Sie können Ihrer 3D-Karte Kamerapfad-Animationen hinzufügen, um die Nutzerumgebung noch ansprechender zu gestalten. Mit Kamerapfad-Animationen kann die Camera zu einem Punkt auf der Karte fliegen, diesen umfliegen oder be
ides kombiniert werden, um die
Camera
zu animieren. Dabei können Sie auch die
Höhe
und den
altitudeModeangeben.
Wenn Sie eine
Camera
für eine Animation konfigurieren, können Sie mit der Property
altitudeMode
festlegen, wie die Höhe der Kamera interpretiert wird:
AltitudeMode.absolute: Die Höhe wird als Meter über dem mittleren Meeresspiegel interpretiert (Standardwert, wenn nicht angegeben).AltitudeMode.relativeToGround: Die Höhe wird als Meter über der Erdoberfläche am Mittelpunkt der Kamera interpretiert.AltitudeMode.relativeToMesh: Die Höhe wird als Meter über der höchsten 3D-Mesh-Oberfläche (z. B. Gebäude oder Gelände) am Mittelpunkt der Kamera interpretiert.
Anfliegen
Das folgende Codebeispiel zeigt, wie Sie mit dem
flyCameraTo
Modifikator die
Camera
animieren, um zu einem bestimmten Punkt auf einer 3D-Karte zu fliegen.
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: {}
)
Umfliegen
Das folgende Codebeispiel zeigt, wie Sie mit dem
flyCameraAround
Modifikator die
Camera
animieren, um einen bestimmten Punkt auf einer 3D-Karte zu umfliegen.
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: {}
)