Kstars
deepskyitem.cpp
63 : SkyItem(LabelsItem::label_t::DEEP_SKY_LABEL, rootNode), m_dsoComp(dsoComp), m_skyMesh(SkyMesh::Instance())
66 m_other = new DSOIndexNode(&(m_dsoComp->m_OtherIndex), LabelsItem::label_t::DSO_OTHER_LABEL, "NGCColor");
130void DeepSkyItem::updateDeepSkyNode(DSOIndexNode *indexNode, bool drawObject, MeshIterator *region, bool drawImage)
160 maglim -= (Options::magLimitDrawDeepSky() - Options::magLimitDrawDeepSkyZoomOut()) * (0.75 * lgmax - lgz) /
164 labelMagLim += (Options::magLimitDrawDeepSky() - labelMagLim) * (lgz - lgmin) / (lgmax - lgmin);
177 /*Unlike DeepStarItem and StarItem where all trixels are set, in DeepSkyItem number of trixels is different
178 across the catalogs. We are comparing trixelID and regionID to hide trixels that are not visible and skip
195 /*Keep iterating over regionID if current trixel's trixelID is larger than regionID. If there are no more
QString schemeColor
schemeColor holds the color, with which nodes of this catalog should be drawn
Definition deepskyitem.h:39
LabelsItem::label_t m_labelType
m_labelType holds label type of this catalog
Definition deepskyitem.h:37
A SkyNode derived class used for Deep Sky symbols in SkyMapLite.
Definition dsosymbolnode.h:150
virtual void deleteAllChildNodes()
Delete all childNodes and remove nodes from pairs in m_nodes.
Definition deepskyitem.cpp:43
void updateDeepSkyNode(DSOIndexNode *node, bool drawObject, MeshIterator *region, bool drawImage=false)
update all nodes needed to represent DSO in the given DSOIndexNode In this function we perform some t...
Definition deepskyitem.cpp:130
virtual void hide() override
hides all child nodes (sets opacity of m_opacity to 0)
Definition deepskynode.cpp:142
void setColor(QColor color, TrixelNode *symbolTrixel)
sets color of DSO symbol and label To not increase the code for symbols we just recreate the symbol p...
Definition deepskynode.cpp:46
void update(bool drawImage, bool drawLabel, QPointF pos=QPointF(-1, -1))
Update position and visibility of this node.
Definition deepskynode.cpp:58
TrixelNode * addTrixel(label_t labelType, Trixel trixel)
adds trixel to the node corresponding to labelType
Definition labelsitem.cpp:152
MeshIterator is a very lightweight class used to iterate over the result set of an HTMesh intersectio...
Definition MeshIterator.h:21
void reset() const
sets the count back to zero so you can use this iterator to iterate again over the same result set.
Definition MeshIterator.h:40
The Projector class is the primary class that serves as an interface to handle projections.
Definition projector.h:58
QPointF toScreen(const SkyPoint *o, bool oRefract=true, bool *onVisibleHemisphere=nullptr) const
This is exactly the same as toScreenVec but it returns a QPointF.
Definition projector.cpp:93
bool onScreen(const QPointF &p) const
Check whether the projected point is on-screen.
Definition projector.cpp:98
bool checkVisibility(const SkyPoint *p) const
Determine if the skypoint p is likely to be visible in the display window.
Definition projector.cpp:183
A QSGClipNode derived class used as a container for holding pointers to nodes and for clipping.
Definition rootnode.h:60
This is an interface for implementing SkyItems that represent SkyComponent derived objects on the Sky...
Definition skyitem.h:30
static double deleteLimit()
return limit of hides for the node to delete it
Definition skymaplite.cpp:199
Provides an interface to the Hierarchical Triangular Mesh (HTM) library written by A.
Definition skymesh.h:74
Provides virtual functions for update of coordinates and nodes hiding.
Definition skynode.h:28
int hideCount()
m_hideCount is a counter of how much updates of SkyMapLite this trixel remained hidden.
Definition trixelnode.h:30
QLinkedList< QPair< SkyObject *, SkyNode * > > m_nodes
m_nodes - holds SkyNodes with corresponding SkyObjects
Definition trixelnode.h:41
static constexpr double PI
PI is a const static member; it's public so that it can be used anywhere, as long as dms....
Definition dms.h:385
bool hasNext() const const
const Key & key() const const
Item next()
const T & value() const const
const_iterator constBegin() const const
const_iterator constEnd() const const
iterator insert(const Key &key, const T &value)
QSGNode()
void appendChildNode(QSGNode *node)
QSGNode * firstChild() const const
QSGNode * nextSibling() const const
QSGNode * parent() const const
void removeChildNode(QSGNode *node)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:16:41 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:16:41 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.