1 /* 2 SPDX-FileCopyrightText: 2016 Artem Fedoskin <afedoskin3@gmail.com> 3 SPDX-License-Identifier: GPL-2.0-or-later 4 */ 5 6 #pragma once 7 8 #include "equator.h" 9 #include "../skyitem.h" 10 11 class KSAsteroid; 12 class LineListIndex; 13 14 /** 15 * @class EquatorItem 16 * 17 * @short Represents Equator in SkyMapLite 18 * 19 * @author Artem Fedoskin 20 * @version 1.0 21 */ 22 class EquatorItem : public SkyItem 23 { 24 public: 25 /** 26 * @short Constructor. Creates TrixelNodes for lines and LabelNodes for compass labels 27 * @param equatorComp Equator that needs to be represented in SkyMapLite 28 * @param rootNode parent RootNode that instantiated this object 29 */ 30 31 EquatorItem(Equator *equatorComp, RootNode *rootNode); 32 33 /** 34 * @short updates positions of lines and compass labels 35 */ 36 virtual void update(); 37 38 private: 39 Equator *m_equatorComp { nullptr }; 40 //Holds compass labels each associated with SkyPoint that is coordinate of this label 41 QMap<SkyPoint *, LabelNode *> m_compassLabels; 42 }; 43