Marble

Tile.h
1  /*
2  SPDX-FileCopyrightText: 2010 Jens-Michael Hoffmann <[email protected]>
3 
4  SPDX-FileCopyrightText: 2012 Ander Pijoan <[email protected]>
5 
6  SPDX-License-Identifier: LGPL-2.1-or-later
7 */
8 
9 #ifndef MARBLE_TILE_H
10 #define MARBLE_TILE_H
11 
12 #include "TileId.h"
13 
14 namespace Marble
15 {
16 
17 /*!
18  \class Tile
19  \brief A class that resembles a tile (then it is extended to TextureTile or Vectortile).
20 
21  A tile provides a bitmap image or vector data for a certain (geographic) area and
22  for a given zoom level. Each Tile can be identified via a unique
23  TileId.
24 
25  A stack of Tiles that cover the same area and the same
26  zoom level can be stored (and painted) layer by layer in a StackedTile object.
27  For this purpose each Texture Tile specifies a blending type.
28 
29  Usually the tiles are organized in so called quad tiles: This means that
30  with increasing zoom level four other tiles cover the same area as a
31  single "parent" tile in the previous zoom level. These four tiles have
32  the same pixel size as the "parent" tile.
33 
34  The process of "filling the tile with data is done in stages: The
35  State describes the current progress of loading the data (Empty, Scaled,
36  Expired, StateUptodate).
37 
38  The life time cycle of a Tile can also be influenced by its
39  expiration time which will trigger a reload of the tile data.
40 */
41 
42 class Tile
43 {
44  public:
45  explicit Tile( TileId const & tileId );
46  virtual ~Tile();
47 
48 /*!
49  \brief Returns a unique ID for the tile.
50  \return A TileId object that encodes zoom level, position and map theme.
51 */
52  TileId const & id() const;
53 
54  private:
55  Q_DISABLE_COPY( Tile )
56 
57  TileId const m_id;
58 };
59 
60 
61 // inline definitions
62 
63 inline TileId const & Tile::id() const
64 {
65  return m_id;
66 }
67 
68 }
69 
70 #endif
A class that resembles a tile (then it is extended to TextureTile or Vectortile).
Definition: Tile.h:42
const TileId & id() const
Returns a unique ID for the tile.
Definition: Tile.h:63
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Oct 2 2023 03:52:10 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.