Marble

TileScalingTextureMapper.h
1// SPDX-License-Identifier: LGPL-2.1-or-later
2//
3// SPDX-FileCopyrightText: 2010-2012 Bernhard Beschow <bbeschow@cs.tu-berlin.de>
4//
5
6#ifndef MARBLE_TILESCALINGTEXTUREMAPPER_H
7#define MARBLE_TILESCALINGTEXTUREMAPPER_H
8
9#include "TextureMapperInterface.h"
10#include <QObject>
11
12#include "TileId.h"
13
14#include <QCache>
15#include <QImage>
16#include <QPixmap>
17
18namespace Marble
19{
20
21class StackedTileLoader;
22
23class TileScalingTextureMapper : public QObject, public TextureMapperInterface
24{
26
27public:
28 explicit TileScalingTextureMapper(StackedTileLoader *tileLoader, QObject *parent = nullptr);
29
30 void mapTexture(GeoPainter *painter, const ViewportParams *viewport, int tileZoomLevel, const QRect &dirtyRect, TextureColorizer *texColorizer) override;
31
32private Q_SLOTS:
33 void removePixmap(const TileId &tileId);
34 void clearPixmaps();
35
36private:
37 void mapTexture(GeoPainter *painter, const ViewportParams *viewport, int tileZoomLevel, TextureColorizer *texColorizer);
38
39private:
40 StackedTileLoader *const m_tileLoader;
42 QImage m_canvasImage;
43 int m_radius;
44};
45
46}
47
48#endif
Binds a QML item to a specific geodetic location in screen coordinates.
Q_OBJECTQ_OBJECT
Q_SLOTSQ_SLOTS
QObject * parent() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 17:04:14 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.