• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • lib
  • marble
StackedTile.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2007-2010 Torsten Rahn <tackat@kde.org>
9 // Copyright 2007 Inge Wallin <ingwa@kde.org>
10 // Copyright 2010 Jens-Michael Hoffmann <jensmh@gmx.de>
11 // Copyright 2010-2013 Bernhard Beschow <bbeschow@cs.tu-berlin.de>
12 //
13 
14 #ifndef MARBLE_STACKEDTILE_H
15 #define MARBLE_STACKEDTILE_H
16 
17 #include <QSharedPointer>
18 #include <QVector>
19 #include <QColor>
20 #include <QImage>
21 
22 #include "Tile.h"
23 
24 namespace Marble
25 {
26 
27 class TextureTile;
28 
56 class StackedTile : public Tile
57 {
58  public:
59  explicit StackedTile( TileId const &id, QImage const &resultImage, QVector<QSharedPointer<TextureTile> > const &tiles );
60  virtual ~StackedTile();
61 
62  void setUsed( bool used );
63  bool used() const;
64 
65  int depth() const;
66  int byteCount() const;
67 
72  QVector<QSharedPointer<TextureTile> > tiles() const;
73 
78  QImage const * resultImage() const;
79 
87  uint pixel( int x, int y ) const;
88 
98  uint pixelF( qreal x, qreal y ) const;
99  // This method passes the top left pixel (if known already) for better performance
100  uint pixelF( qreal x, qreal y, const QRgb& pixel ) const;
101 
102  private:
103  Q_DISABLE_COPY( StackedTile )
104 
105  const QImage m_resultImage;
106  const int m_depth;
107  const bool m_isGrayscale;
108  const QVector<QSharedPointer<TextureTile> > m_tiles;
109  const uchar **const jumpTable8;
110  const uint **const jumpTable32;
111  const int m_byteCount;
112  bool m_isUsed;
113 
114  static int calcByteCount( const QImage &resultImage, const QVector<QSharedPointer<TextureTile> > &tiles );
115 };
116 
117 }
118 
119 #endif
Marble::StackedTile::byteCount
int byteCount() const
Definition: StackedTile.cpp:252
Marble::StackedTile::StackedTile
StackedTile(TileId const &id, QImage const &resultImage, QVector< QSharedPointer< TextureTile > > const &tiles)
Definition: StackedTile.cpp:59
Marble::StackedTile::~StackedTile
virtual ~StackedTile()
Definition: StackedTile.cpp:77
Marble::StackedTile::pixelF
uint pixelF(qreal x, qreal y) const
Returns the color value of the result tile at a given floating point position.
Definition: StackedTile.cpp:237
Marble::StackedTile::depth
int depth() const
Definition: StackedTile.cpp:247
Marble::StackedTile
A single tile that consists of a stack of Tile layers.
Definition: StackedTile.h:56
Marble::StackedTile::used
bool used() const
Definition: StackedTile.cpp:232
Marble::StackedTile::setUsed
void setUsed(bool used)
Definition: StackedTile.cpp:227
Marble::StackedTile::resultImage
QImage const * resultImage() const
Returns the QImage that describes the merged stack of Tiles.
Definition: StackedTile.cpp:262
Tile.h
Marble::TileId
Definition: TileId.h:27
Marble::StackedTile::pixel
uint pixel(int x, int y) const
Returns the color value of the result tile at the given integer position.
Definition: StackedTile.cpp:83
Marble::StackedTile::tiles
QVector< QSharedPointer< TextureTile > > tiles() const
Returns the stack of Tiles.
Definition: StackedTile.cpp:257
Marble::Tile
A class that resembles a tile (then it is extended to TextureTile or Vectortile). ...
Definition: Tile.h:53
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:53 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal