Marble

MarblePhysics.h
1// SPDX-License-Identifier: LGPL-2.1-or-later
2//
3// SPDX-FileCopyrightText: 2008 Torsten Rahn <rahn@kde.org>
4//
5
6#ifndef MARBLE_MARBLEPHYSICS_H
7#define MARBLE_MARBLEPHYSICS_H
8
9#include <QObject>
10
11#include "MarbleGlobal.h"
12
13namespace Marble
14{
15
16class MarblePhysicsPrivate;
17class MarbleAbstractPresenter;
18class GeoDataLookAt;
19
20class MarblePhysics : public QObject
21{
23
24 public:
25 /**
26 * @brief Constructor
27 * @param presenter the MarbleWidget that is being animated
28 */
29 explicit MarblePhysics( MarbleAbstractPresenter *presenter );
30
31 /**
32 * @brief Destructor
33 */
34 ~MarblePhysics() override;
35
36 /**
37 * @brief Initiate an animation to the target according to the given mode.
38 * @param target camera position indicating the target of the animation
39 * @param mode animation mode; @code Instant @endcode means no animation
40 */
41 void flyTo( const GeoDataLookAt &target, FlyToMode mode = Instant );
42
43private Q_SLOTS:
44 void updateProgress(qreal progress);
45
46 /**
47 * @brief Switch to still mode when an animation is finished
48 */
49 void startStillMode();
50
51 private:
52 Q_DISABLE_COPY( MarblePhysics )
53
54 MarblePhysicsPrivate* d;
55};
56
57}
58
59#endif
Binds a QML item to a specific geodetic location in screen coordinates.
@ Instant
Change camera position immediately (no interpolation)
Q_OBJECTQ_OBJECT
Q_SLOTSQ_SLOTS
T qobject_cast(QObject *object)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:18:17 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.