Kstars

fovitem.h
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 "skyitem.h"
9
10/**
11 * @class FOVItem
12 * This class handles representation of FOV symbols in SkyMapLite
13 *
14 * @author Artem Fedoskin
15 * @version 1.0
16 */
17class FOVItem : public SkyItem
18{
19 public:
20 /** FOV symbol types */
21 enum Shape
22 {
23 SQUARE,
24 CIRCLE,
25 CROSSHAIRS,
26 BULLSEYE,
27 SOLIDCIRCLE,
28 UNKNOWN
29 };
30
31 /** Constructor. Initialize default FOV symbols */
32 explicit FOVItem(RootNode *rootNode);
33
34 /**
35 * @short Add information about new symbol to SkyMapLite and create FOVSymbolNode
36 * SkyMapLite acts here as a bridge between FOVItem and QML. Here we call SkyMapLite::addFOVSymbol to add
37 * information about new FOVSymbol to SkyMapLite and later in update() we check if user switched this
38 * FOVSymbol on
39 */
40 void addSymbol(const QString &name, float a, float b, float xoffset, float yoffset, float rot, FOVItem::Shape shape,
41 const QString &color);
42
43 /** Update FOVSymbol if user switched it on */
44 virtual void update() override;
45};
This class handles representation of FOV symbols in SkyMapLite.
Definition fovitem.h:18
Shape
FOV symbol types.
Definition fovitem.h:22
FOVItem(RootNode *rootNode)
Constructor.
Definition fovitem.cpp:11
void addSymbol(const QString &name, float a, float b, float xoffset, float yoffset, float rot, FOVItem::Shape shape, const QString &color)
Add information about new symbol to SkyMapLite and create FOVSymbolNode SkyMapLite acts here as a bri...
Definition fovitem.cpp:20
virtual void update() override
Update FOVSymbol if user switched it on.
Definition fovitem.cpp:27
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
RootNode * rootNode()
Definition skyitem.h:57
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 17:04:46 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.