Kstars

hipsfinder.h
1 /*
2  SPDX-FileCopyrightText: 2021 Jasem Mutlaq
3 
4  Static version of the HIPS Renderer for a single point in the sky.
5 
6  SPDX-License-Identifier: GPL-2.0-or-later
7 */
8 
9 #pragma once
10 
11 #include "healpix.h"
12 #include "hipsmanager.h"
13 #include "scanrender.h"
14 
15 #include <memory>
16 
17 class Projector;
18 
19 class HIPSFinder
20 {
21  public:
22  static HIPSFinder *Instance();
23 
24  /**
25  * @brief render Renders an image at the specified center with the specific level and zoom.
26  * @param center Sky point of image center.
27  * @param level HiPS level. Minimum 2 and Maximum 20
28  * @param zoom Projector zoom factor
29  * @param destinationImage Pointer to an already initialized QImage
30  * @param fov_w output image horizontal field of view in arcminutes.
31  * @param fov_h output image vertical field of view in arcminutes.
32  * @param projector projection system to be used to map image --> screen projection transformation.
33  * @return True if successful, false otherwise.
34  */
35  bool render(SkyPoint *center, uint8_t level, double zoom, QImage *destinationImage, double &fov_w, double &fov_h);
36  void renderRec(uint8_t level, int pix, QImage *destinationImage);
37  bool renderPix(int level, int pix, QImage *destinationImage);
38 
39  private:
40  explicit HIPSFinder();
41  static HIPSFinder *m_Instance;
42 
43  QSet<int> m_RenderedMap;
44  QScopedPointer<HEALPix> m_HEALpix;
45  QScopedPointer<ScanRender> m_ScanRender;
46  QScopedPointer<Projector> m_Projector;
47 };
Stores dms coordinates for a point in the sky. for converting between coordinate systems.
Definition: skypoint.h:44
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Fri Aug 12 2022 04:00:54 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.