• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Stellarium / stellarium / 15291801018

28 May 2025 04:52AM UTC coverage: 11.931% (-0.02%) from 11.951%
15291801018

push

github

alex-w
Added new set of navigational stars (XIX century)

0 of 6 new or added lines in 2 files covered. (0.0%)

14124 existing lines in 74 files now uncovered.

14635 of 122664 relevant lines covered (11.93%)

18291.42 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/core/modules/Nebula.hpp
1
/*
2
 * Stellarium
3
 * Copyright (C) 2002 Fabien Chereau
4
 * Copyright (C) 2011 Alexander Wolf
5
 * Copyright (C) 2015 Georg Zotti
6
 *
7
 * This program is free software; you can redistribute it and/or
8
 * modify it under the terms of the GNU General Public License
9
 * as published by the Free Software Foundation; either version 2
10
 * of the License, or (at your option) any later version.
11
 *
12
 * This program is distributed in the hope that it will be useful,
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 * GNU General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU General Public License
18
 * along with this program; if not, write to the Free Software
19
 * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335, USA.
20
 */
21

22
#ifndef NEBULA_HPP
23
#define NEBULA_HPP
24

25
#include "StelObject.hpp"
26
#include "StelTranslator.hpp"
27
#include "StelTextureTypes.hpp"
28

29
#include <QString>
30

31
class StelPainter;
32
class QDataStream;
33

34
// This only draws nebula icons. For the DSO images, see StelSkylayerMgr and StelSkyImageTile.
35
class Nebula : public StelObject
36
{
37
friend class NebulaMgr;
38

39
        //Required for the correct working of the Q_FLAG macro (which requires a MOC pass)
40
        Q_GADGET
41
public:
42
        static const QString NEBULA_TYPE;
43

44
        enum CatalogGroupFlags
45
        {
46
                CatNone         = 0x00000000, //!< Nothing selected
47
                CatNGC          = 0x00000001, //!< New General Catalogue (NGC)
48
                CatIC           = 0x00000002, //!< Index Catalogue (IC)
49
                CatM            = 0x00000004, //!< Messier Catalog (M)
50
                CatC            = 0x00000008, //!< Caldwell Catalogue (C)
51
                CatB            = 0x00000010, //!< Barnard Catalogue (B)
52
                CatSh2          = 0x00000020, //!< Sharpless Catalogue (Sh 2)
53
                CatLBN          = 0x00000040, //!< Lynds' Catalogue of Bright Nebulae (LBN)
54
                CatLDN          = 0x00000080, //!< Lynds' Catalogue of Dark Nebulae (LDN)
55
                CatRCW          = 0x00000100, //!< A catalogue of Hα-emission regions in the southern Milky Way (RCW)
56
                CatVdB          = 0x00000200, //!< van den Bergh Catalogue of reflection nebulae (vdB)
57
                CatCr           = 0x00000400, //!< Collinder Catalogue (Cr or Col)
58
                CatMel          = 0x00000800, //!< Melotte Catalogue of Deep Sky Objects (Mel)
59
                CatPGC          = 0x00001000, //!< HYPERLEDA. I. Catalog of galaxies (PGC)
60
                CatUGC          = 0x00002000, //!< The Uppsala General Catalogue of Galaxies
61
                CatCed          = 0x00004000, //!< Cederblad Catalog of bright diffuse Galactic nebulae (Ced)
62
                CatArp          = 0x00008000, //!< Atlas of Peculiar Galaxies (Arp)
63
                CatVV           = 0x00010000, //!< Interacting galaxies catalogue by Vorontsov-Velyaminov (VV)
64
                CatPK           = 0x00020000, //!< Catalogue of Galactic Planetary Nebulae (PK)
65
                CatPNG          = 0x00040000, //!< Strasbourg-ESO Catalogue of Galactic Planetary Nebulae (Acker+, 1992) (PN G)
66
                CatSNRG         = 0x00080000, //!< A catalogue of Galactic supernova remnants (Green, 2014) (SNR G)
67
                CatACO          = 0x00100000, //!< A Catalog of Rich Clusters of Galaxies (Abell+, 1989) (ACO)
68
                CatHCG          = 0x00200000, //!< Hickson, Compact Group (Hickson+ 1982) (HCG)
69
                CatESO          = 0x00400000, //!< ESO/Uppsala Survey of the ESO(B) Atlas (Lauberts, 1982) (ESO)
70
                CatVdBH         = 0x00800000, //!< Catalogue of southern stars embedded in nebulosity (van den Bergh+, 1975) (vdBH)
71
                CatDWB          = 0x01000000, //!< Catalogue and distances of optically visible H II regions (Dickel+, 1969) (DWB)
72
                CatTr           = 0x02000000, //!< Trumpler Catalogue (Tr)
73
                CatSt           = 0x04000000, //!< Stock Catalogue (St)
74
                CatRu           = 0x08000000, //!< Ruprecht Catalogue (Ru)
75
                CatVdBHa        = 0x10000000, //!< van den Bergh-Hagen Catalogue (vdB-Ha)
76
                CatOther        = 0x20000000, //!< without ID
77
                CatAll          = 0xFFFFFFFF  //!< All catalogs selected
78
        };
79
        Q_DECLARE_FLAGS(CatalogGroup, CatalogGroupFlags)
80
        Q_FLAG(CatalogGroup)
81

82
        enum TypeGroupFlags
83
        {
84
                TypeNone                 = 0x00000000, //!< Nothing selected
85
                TypeGalaxies             = 0x00000001, //!< Galaxies
86
                TypeActiveGalaxies       = 0x00000002, //!< Different Active Galaxies
87
                TypeInteractingGalaxies         = 0x00000004, //!< Interacting Galaxies
88
                TypeOpenStarClusters     = 0x00000008, //!< Open Star Clusters
89
                TypeGlobularStarClusters = 0x00000010, //!< Globular Star Clusters
90
                TypeHydrogenRegions      = 0x00000020, //!< Hydrogen Regions
91
                TypeBrightNebulae        = 0x00000040, //!< Bright Nebulae
92
                TypeDarkNebulae                 = 0x00000080, //!< Dark Nebulae
93
                TypePlanetaryNebulae     = 0x00000100, //!< Planetary Nebulae
94
                TypeSupernovaRemnants    = 0x00000200, //!< Supernova Remnants
95
                TypeGalaxyClusters       = 0x00000400, //!< Galaxy Clusters
96
                TypeOther                = 0x00000800, //!< Other types
97
                TypeAll                  = 0xFFFFFFFF  //!< All types
98
        };
99
        Q_DECLARE_FLAGS(TypeGroup, TypeGroupFlags)
100
        Q_FLAG(TypeGroup)
101

102
        //! @enum NebulaType Nebula types
103
        enum NebulaType
104
        {
105
                NebGx                        = 0,   //!< m Galaxy
106
                NebAGx                        = 1,   //!< Active galaxy
107
                NebRGx                        = 2,   //!< m Radio galaxy
108
                NebIGx                        = 3,   //!< Interacting galaxy
109
                NebQSO                        = 4,   //!< Quasar
110
                NebCl                        = 5,   //!< Star cluster
111
                NebOc                        = 6,   //!< Open star cluster
112
                NebGc                        = 7,   //!< Globular star cluster, usually in the Milky Way Galaxy
113
                NebSA                        = 8,   //!< Stellar association
114
                NebSC                        = 9,   //!< Star cloud
115
                NebN                        = 10,  //!< A nebula
116
                NebPn                        = 11,  //!< Planetary nebula
117
                NebDn                        = 12,  //!< Dark Nebula
118
                NebRn                        = 13,  //!< Reflection nebula
119
                NebBn                        = 14,  //!< Bipolar nebula
120
                NebEn                        = 15,  //!< Emission nebula
121
                NebCn                        = 16,  //!< Cluster associated with nebulosity
122
                NebHII                        = 17,  //!< HII Region
123
                NebSNR                        = 18,  //!< Supernova remnant
124
                NebISM                        = 19,  //!< Interstellar matter
125
                NebEMO                        = 20,  //!< Emission object
126
                NebBLL                        = 21,  //!< BL Lac object
127
                NebBLA                        = 22,  //!< Blazar
128
                NebMolCld                = 23,  //!< Molecular Cloud
129
                NebYSO                        = 24,  //!< Young Stellar Object
130
                NebPossQSO                = 25,  //!< Possible Quasar
131
                NebPossPN                = 26,  //!< Possible Planetary Nebula
132
                NebPPN                        = 27,  //!< Protoplanetary Nebula
133
                NebStar                        = 28,  //!< Star
134
                NebSymbioticStar        = 29,  //!< Symbiotic Star
135
                NebEmissionLineStar        = 30,  //!< Emission-line Star
136
                NebSNC                        = 31,  //!< Supernova Candidate
137
                NebSNRC                        = 32,  //!< Supernova Remnant Candidate
138
                NebGxCl                        = 33,  //!< Cluster of Galaxies
139
                NebPartOfGx                = 34,  //!< Part of a Galaxy
140
                NebRegion                = 35,  //!< Region of the sky
141
                NebUnknown                = 36   //!< m Unknown type, catalog errors, "Unidentified Southern Objects" etc.
142
        };
143
        Q_ENUM(NebulaType)
144

145
        Nebula();
146
        ~Nebula() override;
147

148
        //! Nebula support the following InfoStringGroup flags:
149
        //! - Name
150
        //! - CatalogNumber
151
        //! - Magnitude
152
        //! - RaDec
153
        //! - AltAzi
154
        //! - Distance
155
        //! - Size
156
        //! - Extra (contains the Nebula type, which might be "Galaxy", "Cluster" or similar)
157
        //! - PlainText
158
        //! @param core the StelCore object
159
        //! @param flags a set of InfoStringGroup items to include in the return value.
160
        //! @return a QString containing an HTML encoded description of the Nebula.
161
        QString getInfoString(const StelCore *core, const InfoStringGroup& flags) const override;
162
        //! In addition to the entries from StelObject::getInfoMap(), Nebula objects provide
163
        //! - bmag (photometric B magnitude. 99 if unknown)
164
        //! - morpho (longish description; translated!)
165
        //! - surface-brightness
166
        //! - designations (all designations of DSO)
167
        //! - axis-major (major axis in radians)
168
        //! - axis-major-dd (major axis in decimal degrees)
169
        //! - axis-major-deg (major axis in decimal degrees (formatted string))
170
        //! - axis-major-dms (major axis in DMS format)
171
        //! - axis-minor (minor axis in radians)
172
        //! - axis-minor-dd (minor axis in decimal degrees)
173
        //! - axis-minor-deg (minor axis in decimal degrees (formatted string))
174
        //! - axis-minor-dms (minor axis in DMS format)
175
        //! - orientation-angle (in degrees)
176
        //! A few entries are optional
177
        //! - bV (B-V index)
178
        //! - redshift
179
        QVariantMap getInfoMap(const StelCore *core) const override;
180
        QString getType() const override {return NEBULA_TYPE;}
×
181
        QString getObjectType() const override
×
182
        {
183
                return typeEnglishStringMap.value(nType, "undocumented type");
×
184
        }
185
        QString getObjectTypeI18n() const override
×
186
        {
187
                return q_(typeEnglishStringMap.value(nType, q_("undocumented type")));
×
188
        }
189
        QString getID() const override {return getDSODesignation(); } //this depends on the currently shown catalog flags, should this be changed?
×
190
        Vec3d getJ2000EquatorialPos(const StelCore* core) const override;
191
        double getCloseViewFov(const StelCore* core = Q_NULLPTR) const override;
192
        float getVMagnitude(const StelCore* core) const override;
193
        float getSelectPriority(const StelCore* core) const override;
194
        Vec3f getInfoColor() const override;
195
        QString getNameI18n() const override {return nameI18;}
×
196
        QString getEnglishName() const override {return englishName;}
×
197
        QString getEnglishAliases() const;
198
        QString getI18nAliases() const;
199

200
        //! retrieve pronunciation from the first of the cultural names
UNCOV
201
        QString getNamePronounce() const override {return (culturalNames.empty() ? "" : culturalNames.constFirst().pronounceI18n);}
×
202
        //! Combine screen label from various components, depending on settings in SkyCultureMgr
203
        QString getScreenLabel() const override;
204
        //! Combine InfoString label from various components, depending on settings in SkyCultureMgr
205
        QString getInfoLabel() const override;
206
        //! Underlying worker that processes the culturalNames
207
        QStringList getCultureLabels(StelObject::CulturalDisplayStyle style) const;
208

209
        //! Return the angular radius of a circle containing the object as seen from the observer
210
        //! with the circle center assumed to be at getJ2000EquatorialPos().
211
        //! @return radius in degree. This value is the apparent angular size of the object, and is independent of the current FOV.
212
        double getAngularRadius(const StelCore*) const override;
UNCOV
213
        SphericalRegionP getRegion() const override {return pointRegion;}
×
214

215
        // Methods specific to Nebula
216
        void setLabelColor(const Vec3f& v) {labelColor = v;}
217
        // void setCircleColor(const Vec3f& v) {hintColorMap.insert(NebUnknown, v);}
218

219
        //! Get the printable localized nebula Type for @arg nType.
220
        //! @return the localized nebula type code.
221
        //! @note for actual objects, use getObjectTypeI18n()
222
        static QString getTypeStringI18n(Nebula::NebulaType nType);
223

UNCOV
224
        NebulaType getDSOType() const {return nType;}
×
225

226
        //! Get the printable morphological nebula Type.
227
        //! @return the nebula morphological type string.
228
        QString getMorphologicalTypeString() const;
229

230
        float getSurfaceBrightness(const StelCore* core, bool arcsec=false) const;
231
        float getSurfaceBrightnessWithExtinction(const StelCore* core, bool arcsec=false) const;
232
        //! Compute an extended object's contrast index
233
        float getContrastIndex(const StelCore* core) const;
234

235
        //! Return object's B magnitude as seen from observer, without including extinction.
236
        virtual float getBMagnitude(const StelCore* core) const;
237

238
        //! Return object's B magnitude as seen from observer including extinction.
239
        //! Extinction obviously only if atmosphere=on.
240
        float getBMagnitudeWithExtinction(const StelCore* core) const;
241

242
        //! Get the surface area.
243
        //! @return surface area in square degrees.
244
        float getSurfaceArea(void) const;
245

246
        //! Sets englishName
UNCOV
247
        void setEnglishName(const QString &name) { englishName = name; }
×
248
        //! adds a name to the list of common alias names
UNCOV
249
        void addNameAlias(const QString &name) { if (!englishAliases.contains(name)) englishAliases.append(name);}
×
250
        //! Removes englishName, any aliases and cultural names
UNCOV
251
        void removeAllNames() { englishName.clear(); englishAliases.clear(); culturalNames.clear();}
×
252
        //! Add a name for the currently set skyculture
UNCOV
253
        void addCulturalName(const StelObject::CulturalName &culturalName){culturalNames.append(culturalName);}
×
254

255
        //! Set additional information pieces
256
        void setDiscoveryData(const QString &discovererName, const QString &year) { discoverer = discovererName; discoveryYear = year; }
×
257

258
        //! Get designation for DSO (with priority: M, C, NGC, IC, B, Sh2, vdB, RCW, LDN, LBN, Cr, Mel, PGC, UGC, Ced, Arp, VV, PK, PN G, SNR G, ACO, HCG, ESO, vdBH, DWB, Tr, St, Ru, vdB-Ha)
259
        //! from the first catalog that is activated.
260
        //! @return a designation for DSO
261
        QString getDSODesignation() const;
262
        //! Get designation for DSO (with priority: M, C, NGC, IC, B, Sh2, vdB, RCW, LDN, LBN, Cr, Mel, PGC, UGC, Ced, Arp, VV, PK, PN G, SNR G, ACO, HCG, ESO, vdBH, DWB, Tr, St, Ru, vdB-Ha)
263
        //! without accounting for activation of catalogs. This should be preferred to retrieve the most common designation regardless of settings.
264
        //! @return a designation for DSO
265
        QString getDSODesignationWIC() const;        
266

267
        bool objectInDisplayedCatalog() const;
268

269
        bool objectInAllowedSizeRangeLimits() const;
270

271
protected:
272
        //! Format the magnitude info string for the object
UNCOV
273
        QString getMagnitudeInfoString(const StelCore *core, const InfoStringGroup& flags, const int decimals=1, const float& magOffset=0.f) const override;
×
274

275
private:
276
        friend struct DrawNebulaFuncObject;
277

278
        //! Translate nebula name using the passed translator
UNCOV
279
        void translateName(const StelTranslator& trans)
×
280
        {
UNCOV
281
                nameI18 = trans.qtranslate(englishName);
×
UNCOV
282
                nameI18Aliases.clear();
×
UNCOV
283
                for (auto &alias : englishAliases)
×
UNCOV
284
                        nameI18Aliases.append(trans.qtranslate(alias));
×
285

UNCOV
286
                for (StelObject::CulturalName cName : std::as_const(culturalNames))
×
287
                {
UNCOV
288
                        cName.pronounceI18n = trans.qtranslate(cName.pronounce);
×
UNCOV
289
                        cName.translatedI18n = trans.qtranslate(cName.translated);
×
UNCOV
290
                }
×
UNCOV
291
        }        
×
292

293
        void readDSO(QDataStream& in);
294

295
        void drawLabel(StelPainter& sPainter, float maxMagLabel) const;
296
        void drawHints(StelPainter& sPainter, float maxMagHints, StelCore *core) const;
297
        void drawOutlines(StelPainter& sPainter, float maxMagHints) const;
298
        void renderDarkNebulaMarker(StelPainter& sPainter, float x, float y, float size, Vec3f color) const;
299
        void renderRoundMarker(StelPainter& sPainter, float x, float y, float size, Vec3f color, bool crossed) const;
300
        void renderEllipticMarker(StelPainter& sPainter, float x, float y, float size, float aspectRatio, float angle, Vec3f color) const;
301
        void renderMarkerRoundedRect(StelPainter& sPainter, float x, float y, float size, Vec3f color) const;
302
        void renderMarkerPointedCircle(StelPainter& sPainter, float x, float y, float size, Vec3f color, bool insideRect) const;
303

304
        bool objectInDisplayedType() const;
305

306
        static Vec3f getHintColor(Nebula::NebulaType nType);
307
        float getVisibilityLevelByMagnitude() const;
308
        float getHintSize(StelPainter& sPainter) const;
309

310
        //! Get the printable description of morphological nebula type.
311
        //! @return the nebula morphological type string.
312
        QString getMorphologicalTypeDescription() const;
313

314
        //! Get the description of concentration class of globular clusters
315
        QString getConcentrationClass(QString cc) const;
316

317
        unsigned int DSO_nb;
318
        unsigned int M_nb;          //!< Messier Catalog number
319
        unsigned int NGC_nb;        //!< New General Catalog number
320
        unsigned int IC_nb;         //!< Index Catalog number
321
        unsigned int C_nb;          //!< Caldwell Catalog number
322
        unsigned int B_nb;          //!< Barnard Catalog number (Dark Nebulae)
323
        unsigned int Sh2_nb;        //!< Sharpless Catalog number (Catalogue of HII Regions (Sharpless, 1959))
324
        unsigned int VdB_nb;        //!< van den Bergh Catalog number (Catalogue of Reflection Nebulae (van den Bergh, 1966))
325
        unsigned int RCW_nb;        //!< RCW Catalog number (H-α emission regions in Southern Milky Way (Rodgers+, 1960))
326
        unsigned int LDN_nb;        //!< LDN Catalog number (Lynds' Catalogue of Dark Nebulae (Lynds, 1962))
327
        unsigned int LBN_nb;        //!< LBN Catalog number (Lynds' Catalogue of Bright Nebulae (Lynds, 1965))
328
        unsigned int Cr_nb;         //!< Collinder Catalog number
329
        unsigned int Mel_nb;        //!< Melotte Catalog number
330
        unsigned int PGC_nb;        //!< PGC number (Catalog of galaxies)
331
        unsigned int UGC_nb;        //!< UGC number (The Uppsala General Catalogue of Galaxies)
332
        unsigned int Arp_nb;        //!< Arp number (Atlas of Peculiar Galaxies (Arp, 1966))
333
        unsigned int VV_nb;         //!< VV number (The Catalogue of Interacting Galaxies (Vorontsov-Velyaminov+, 2001))
334
        unsigned int DWB_nb;        //!< DWB number (Catalogue and distances of optically visible H II regions (Dickel+, 1969))
335
        unsigned int Tr_nb;         //!< Tr number (Trumpler Catalogue)
336
        unsigned int St_nb;         //!< St number (Stock Catalogue)
337
        unsigned int Ru_nb;         //!< Ru number (Ruprecht Catalogue)
338
        unsigned int VdBHa_nb;      //!< vdB-Ha number (van den Bergh-Hagen Catalogue)
339
        QString Ced_nb;             //!< Ced number (Cederblad Catalog of bright diffuse Galactic nebulae)
340
        QString PK_nb;              //!< PK number (Catalogue of Galactic Planetary Nebulae)
341
        QString PNG_nb;             //!< PN G number (Strasbourg-ESO Catalogue of Galactic Planetary Nebulae (Acker+, 1992))
342
        QString SNRG_nb;            //!< SNR G number (A catalogue of Galactic supernova remnants (Green, 2014))
343
        QString ACO_nb;             //!< ACO number (Rich Clusters of Galaxies (Abell+, 1989))
344
        QString HCG_nb;             //!< HCG number (Hickson Compact Group (Hickson, 1989))
345
        QString ESO_nb;             //!< ESO number (ESO/Uppsala Survey of the ESO(B) Atlas (Lauberts, 1982))
346
        QString VdBH_nb;            //!< VdBH number (Southern Stars embedded in nebulosity (van den Bergh+, 1975))
347
        bool withoutID;
348
        QString englishName;        //!< English (preferred) name
349
        QStringList englishAliases; //!< English aliases
350
        QString nameI18;            //!< Nebula (preferred) name in user language
351
        QStringList nameI18Aliases; //!< Nebula aliases in user language
352
        QList<StelObject::CulturalName> culturalNames; //!< describes native names used in non-modern Skycultures. Usually just one, but there may be more!
353
        QString discoverer;         //!< The name of discoverer
354
        QString discoveryYear;      //!< Year(s) of discovery
355
        QString mTypeString;        //!< Morphological type of object (as string)
356
        float bMag;                 //!< B magnitude
357
        float vMag;                 //!< V magnitude. For Dark Nebulae, opacity is stored here.
358
        float majorAxisSize;        //!< Major axis size in degrees
359
        float minorAxisSize;        //!< Minor axis size in degrees
360
        int orientationAngle;       //!< Orientation angle in degrees
361
        float oDistance;            //!< distance (kpc)
362
        float oDistanceErr;         //!< Error of distance (kpc)
363
        float redshift;
364
        float redshiftErr;
365
        float parallax;
366
        float parallaxErr;
367
        Vec3d XYZ;                  //!< Cartesian equatorial position (J2000.0)
368
        Vec3d XY;                   //!< to store temporary 2D screen position
369
        NebulaType nType;
370

371
        SphericalRegionP pointRegion;
372
        QStringList designations;       // List of Catalog number entries
373

374
        static StelTextureSP texRegion;                                // The symbolic dashed shape texture
375
        static StelTextureSP texPointElement;
376
        static StelTextureSP texPlanetaryNebula;                // Type 3
377
        static float hintsBrightness;
378
        static float labelsBrightness;
379

380
        static Vec3f labelColor;                                // The color of labels
381
        static QMap<Nebula::NebulaType, Vec3f>hintColorMap;        // map for rapid lookup. Updated by NebulaMgr whenever a color changes.
382
        static const QMap<Nebula::NebulaType, QString> typeEnglishStringMap; // map that keeps type strings for NebulaType                        // (Re-)Fills typeStringMap. Called by NebulaMgr when required.
383

384
        static bool drawHintProportional;     // scale hint with nebula size?
385
        static bool surfaceBrightnessUsage;
386
        static bool designationUsage;
387

388
        static bool flagUseTypeFilters;
389
        static CatalogGroup catalogFilters;
390
        static TypeGroup typeFilters;
391

392
        static bool flagUseArcsecSurfaceBrightness;
393
        static bool flagUseShortNotationSurfaceBrightness;
394
        static bool flagUseOutlines;
395
        static bool flagShowAdditionalNames;
396
        static bool flagShowOnlyNamedDSO;
397

398
        static bool flagUseSizeLimits;
399
        static double minSizeLimit;
400
        static double maxSizeLimit;
401

402
        std::vector<std::vector<Vec3d> *> outlineSegments;
403
};
404

405
Q_DECLARE_OPERATORS_FOR_FLAGS(Nebula::CatalogGroup)
406
Q_DECLARE_OPERATORS_FOR_FLAGS(Nebula::TypeGroup)
407

408
#endif // NEBULA_HPP
409

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc