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
17class Projector;
18
19class 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
37 /**
38 * @brief render Renders an image at the specified center with the specific FOV and rotation. It is an improved version of render() above.
39 * @param center Sky point of image center.
40 * @param fov_radius Field of View radius in degrees.
41 * @param rotation orientation in the sky map
42 * @param destinationImage Pointer to an already initialized QImage
43 * @return True if successful, false otherwise.
44 */
45 bool renderFOV(SkyPoint *center, double fov_radius, double rotation, QImage *destinationImage);
46 void renderRec(uint8_t level, int pix, QImage *destinationImage);
47 bool renderPix(int level, int pix, QImage *destinationImage);
48
49 private:
50 explicit HIPSFinder();
51 static HIPSFinder *m_Instance;
52
53 QSet<int> m_RenderedMap;
55 QScopedPointer<ScanRender> m_ScanRender;
56 QScopedPointer<Projector> m_Projector;
57};
The Projector class is the primary class that serves as an interface to handle projections.
Definition projector.h:58
The sky coordinates of a point in the sky.
Definition skypoint.h:45
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.