Kstars

staritem.h
1 /*
2  SPDX-FileCopyrightText: 2016 Artem Fedoskin <[email protected]>
3  SPDX-License-Identifier: GPL-2.0-or-later
4 */
5 
6 #pragma once
7 
8 #include "skyitem.h"
9 
10 class SkyMesh;
11 class SkyOpacityNode;
12 class StarBlockFactory;
13 class StarComponent;
14 
15 /**
16  * @class StarItem
17  *
18  * @short Class that handles Stars
19  * @author Artem Fedoskin
20  * @version 1.0
21  */
22 class StarItem : public SkyItem
23 {
24  public:
25  /**
26  * @short Constructor.
27  * @param starComp star component
28  * @param rootNode parent RootNode that instantiated this object
29  */
31 
32  /**
33  * @short Update positions of nodes that represent stars
34  * In this function we perform almost the same thing as in DeepSkyItem::updateDeepSkyNode() to reduce
35  * memory consumption.
36  * @see DeepSkyItem::updateDeepSkyNode()
37  */
38  virtual void update();
39 
40  private:
41  StarComponent *m_starComp { nullptr };
42  SkyMesh *m_skyMesh { nullptr };
43  StarBlockFactory *m_StarBlockFactory { nullptr };
44 
45  SkyOpacityNode *m_stars { nullptr };
46  SkyOpacityNode *m_deepStars { nullptr };
47  SkyOpacityNode *m_starLabels { nullptr };
48 };
Represents the stars on the sky map. For optimization reasons the stars are not separate objects and ...
Definition: starcomponent.h:47
A base class that is used for displaying SkyComponents on SkyMapLite.
Definition: skyitem.h:29
A container for nodes that holds collection of textures for stars and provides clipping.
Definition: rootnode.h:59
Class that handles Stars.
Definition: staritem.h:22
virtual void update()
Update positions of nodes that represent stars In this function we perform almost the same thing as i...
Definition: staritem.cpp:68
A wrapper for QSGOpacityNode that provides hide() and show() functions. If node is invisible (opacity...
RootNode * rootNode()
Definition: skyitem.h:57
StarItem(StarComponent *starComp, RootNode *rootNode)
Constructor.
Definition: staritem.cpp:23
A factory that creates StarBlocks and recycles them in an LRU Cache.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Dec 11 2023 04:03:23 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.