修改手机Stellarium

修改前提:

必须用Linux版本Qt:qt-opensource-linux-x64-5.12.3.run

指南:https://doc.qt.io/qt-5/android-getting-started.html

studio:https://developer.android.com/studio/#downloads

android-studio-ide-193.6514223-linux.tar.gz

然后非root:bin/stdio.sh,安装的都在/home/silas/Android

NDK:https://developer.android.com/ndk/downloads/older_releases

sdk地址:/home/silas/Android/Sdk

NDK:android-ndk-r19c-linux-x86_64.zip解压的地址。

jdk:jdk-8u251-linux-x64.tar.gz

copy src/config.h as moc_predefs.h

#org.gradle.java.home=/usr/lib/jvm/java-8-openjdk in gradle.properties


修改Stellarium

java -jar apktool.jar -r d test1.apk -o test1

java -jar E:\PORTABLE\cmder\apktool.jar -r d test1.apk -o test1

java -jar apktool.jar b test1

java -jar signapk.jar testkey.x509.pem testkey.pk8 test1.apk test1_signed.apk

adb uninstall

类型

0 Gxy

1 OCL

2 GCL

3 Nb

4 PN

5 DN

7 C+N

8 未知 NF

6

9

星表修正

ID RA #N/A #N/A DEC #N/A #N/A MAG #N/A #N/A
NGC281 0.230383 0.230805 0.000422 0.988147 0.988293 0.000146 7 7 0
NGC1770 1.29591 1.297216 0.001306 -1.1941 -1.19407 3.3E-05 9 9 0
NGC1829 1.3295 1.330624 0.001124 -1.1877 -1.18779 -9.4E-05 8 8 0
NGC2175 1.61356 1.612873 -0.00069 0.354593 0.357589 0.002996 6.8 6.8 0
NGC2467 2.06211 2.061379 -0.00073 -0.46048 -0.46141 -0.00093 7 7.1 0.1
NGC3324 2.78075 2.78084 9.04E-05 -1.02334 -1.02336 -1.9E-05 6.7 6.7 0
NGC4230 3.21708 3.216933 -0.00015 -0.96226 -0.96144 0.000814 9 9.4 0.4
IC1396 5.66839 5.66752 -0.00087 1.00356 1.00337 -0.00019 3.5 3.5 0
IC5146 5.73079 5.730789 -1.4E-06 0.824959 0.824959 -4E-08 7.2 7.2 0

Cr修正

NGC3632 = NGC3626

NGC6259
NGC6383
NGC6885
NGC7234
NGC 6222 4.41001 -0.78104 10 0 1
NGC 6374 4.59153 -0.56898 9 0.05 1
NGC 6882 5.28704 0.463385 8.1 0.3 1
NGC 7235 5.81456 0.999783 7.7 0.066667 1

总共12624,10051

手机版Stellarium:修复了所有DSO的时角+赤纬+星等+尺寸+类型,新增了2574个NGC/IC,关联了Mel/Cr(可直接搜索),去除了重复编号的DSO

工具:

https://pan.baidu.com/s/1o8CyGdG?fid=1062265756117136

“C:\Qt\Qt5.8.0\5.8\mingw53_32\bin\windeployqt.exe” NGCIC.exe

//! @enum NebulaType Nebula types
enum NebulaType
{
    NebGx=0,     //!< Galaxy*
    NebOc=1,     //!< Open star cluster*
    NebGc=2,     //!< Globular star cluster, usually in the Milky Way Galaxy*
    NebN=3,      //!< Bright emission or reflection nebula*
    NebPn=4,     //!< Planetary nebula*
    NebDn=5,     //!< ??? Dark Nebula?      Does not exist in current catalog*
    NebIg=6,     //!< ??? Irregular Galaxy? Does not exist in current catalog
    NebCn=7,     //!< Cluster associated with nebulosity*
    NebUnknown=8 //!< Unknown type, catalog errors, "Unidentified Southern Objects" etc.*
};

    switch(nType)
    {
        case NebGx:
            wsType = q_("Galaxy");
            break;
        case NebOc:
            wsType = q_("Open cluster");
            break;
        case NebGc:
            wsType = q_("Globular cluster");
            break;
        case NebN:
            wsType = q_("Nebula");
            break;
        case NebPn:
            wsType = q_("Planetary nebula");
            break;
        case NebDn:
            wsType = q_("Dark Nebula");
            break;
        case NebCn:
            wsType = q_("Cluster associated with nebulosity");
            break;
        case NebUnknown:
            wsType = q_("Unknown");
            break;
        default:
            wsType = q_("Undocumented type");
            break;
    }

实战

Qt 5.12.8 armv7

jdk-8u251-windows-x64.exe

sdk最新 https://www.androiddevtools.cn/

ndk版本:android-ndk-r21-windows-x86_64 (说明:https://doc.qt.io/qt-5/android-getting-started.html

https://github.com/chengxinlun/Stellarium-android 复制config.h到build目录moc_predefs.h

https://blog.csdn.net/zxc514257857/article/details/73500775/

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/81479587

编译要用avd版本,release


原来手机Stellarium和电脑Stellarium一伙儿的。

行星进入视场导致旁边的恒星和DSO消光,是因为开启了 dynamic eye adaptation

在github的库里面搜索,发现绑定的是这个控件。

1
2
3
src/gui/viewDialog.ui

<widget class="QCheckBox" name="adaptationCheckbox">

这个控件的名称叫adaptationCheckbox,继续搜索发现跟两个变量有关bool flagAdaptationMain; StelSkyDrawer.flagLuminanceAdaptation;

使用全局搜索,发现

1
2
skyd->setFlagLuminanceAdaptation(false); //fixed
bool flagLuminanceAdaptation = false; //fixed

改了之后编译依然没用。

一不做二不休,干脆把和FlagLuminanceAdaptation有关的set get都改了,运行完成功了。

1
2
void setFlagLuminanceAdaptation(bool b) {flagLuminanceAdaptation=false;} //silas =b
bool getFlagLuminanceAdaptation() const {return false;} //silas fixed flagLuminanceAdaptation

修改中文星名

mobileData\skycultures\chinese\star_names.fab


追加SAC数据库/版本同步更新:

增加功能:输入数字弹出NGC

没有”sh\r”

别再把项目先git clone到windows下再复制到Linux下了! 直接git clone到Linux下 LF和CRLF够你喝一壶的

更新pro文件:参照raymas

下载 Downloading https://services.gradle.org/distributions/gradle-5.6.4-bin.zip

注释 minSdkVersion = qtMinSdkVersion、targetSdkVersion = qtTargetSdkVersion

补全功能:(//silas)

NebulaMgr.cpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
	Nebula::texCircle = StelTextureSP();
Nebula::texCircleLarge = StelTextureSP();
Nebula::texRegion = StelTextureSP();
Nebula::texGalaxy = StelTextureSP();
Nebula::texGalaxyLarge = StelTextureSP();
Nebula::texOpenCluster = StelTextureSP();
Nebula::texOpenClusterLarge = StelTextureSP();
Nebula::texOpenClusterXLarge = StelTextureSP();
Nebula::texGlobularCluster = StelTextureSP();
Nebula::texGlobularClusterLarge = StelTextureSP();
Nebula::texPlanetaryNebula = StelTextureSP();
Nebula::texDiffuseNebula = StelTextureSP();
Nebula::texDiffuseNebulaLarge = StelTextureSP();
Nebula::texDiffuseNebulaXLarge = StelTextureSP();
Nebula::texDarkNebula = StelTextureSP();
Nebula::texDarkNebulaLarge = StelTextureSP();
Nebula::texOpenClusterWithNebulosity = StelTextureSP();
Nebula::texOpenClusterWithNebulosityLarge = StelTextureSP();

---

Nebula::texCircle = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb.png");
// Load circle texture for large DSO
Nebula::texCircleLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_lrg.png");
// Load dashed shape texture
Nebula::texRegion = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_reg.png");
// Load ellipse texture
Nebula::texGalaxy = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_gal.png");
// Load ellipse texture for large galaxies
Nebula::texGalaxyLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_gal_lrg.png");
// Load open cluster marker texture
Nebula::texOpenCluster = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_ocl.png");
// Load open cluster marker texture for large objects
Nebula::texOpenClusterLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_ocl_lrg.png");
// Load open cluster marker texture for extra large objects
Nebula::texOpenClusterXLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_ocl_xlrg.png");
// Load globular cluster marker texture
Nebula::texGlobularCluster = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_gcl.png");
// Load globular cluster marker texture for large GCls
Nebula::texGlobularClusterLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_gcl_lrg.png");
// Load planetary nebula marker texture
Nebula::texPlanetaryNebula = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_pnb.png");
// Load diffuse nebula marker texture
Nebula::texDiffuseNebula = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_dif.png");
// Load diffuse nebula marker texture for large DSO
Nebula::texDiffuseNebulaLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_dif_lrg.png");
// Load diffuse nebula marker texture for extra large DSO
Nebula::texDiffuseNebulaXLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_dif_xlrg.png");
// Load dark nebula marker texture
Nebula::texDarkNebula = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_drk.png");
// Load dark nebula marker texture for large DSO
Nebula::texDarkNebulaLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_drk_lrg.png");
// Load Ocl/Nebula marker texture
Nebula::texOpenClusterWithNebulosity = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_ocln.png");
// Load Ocl/Nebula marker texture for large objects
Nebula::texOpenClusterWithNebulosityLarge = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/neb_ocln_lrg.png");
// Load pointer texture
texPointer = StelApp::getInstance().getTextureManager().createTexture(StelFileMgr::getInstallationDir()+"/textures/pointeur5.png");





----



nb = record.mid(38,6).toInt();


---

if (n->IC_nb==0 || n->IC_nb>5386) continue;

StelFileMgr.cpp findFile寻找外置ngc2000.dat
main.cpp -
Nebula.cpp +++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204

StelTextureSP Nebula::texCircle;
StelTextureSP Nebula::texCircleLarge;
StelTextureSP Nebula::texRegion;
StelTextureSP Nebula::texGalaxy;
StelTextureSP Nebula::texGalaxyLarge;
StelTextureSP Nebula::texOpenCluster;
StelTextureSP Nebula::texOpenClusterLarge;
StelTextureSP Nebula::texOpenClusterXLarge;
StelTextureSP Nebula::texGlobularCluster;
StelTextureSP Nebula::texGlobularClusterLarge;
StelTextureSP Nebula::texPlanetaryNebula;
StelTextureSP Nebula::texDiffuseNebula;
StelTextureSP Nebula::texDiffuseNebulaLarge;
StelTextureSP Nebula::texDiffuseNebulaXLarge;
StelTextureSP Nebula::texDarkNebula;
StelTextureSP Nebula::texDarkNebulaLarge;
StelTextureSP Nebula::texOpenClusterWithNebulosity;
StelTextureSP Nebula::texOpenClusterWithNebulosityLarge;





switch (nType)
{
case NebGx:
case NebIGx:
case NebAGx:
case NebQSO:
case NebPossQSO:
case NebBLL:
case NebBLA:
case NebRGx:
case NebGxCl:
Nebula::texGalaxy->bind();
break;
case NebOc:
case NebSA:
case NebSC:
case NebCl:
Nebula::texOpenCluster->bind();
break;
case NebGc:
Nebula::texGlobularCluster->bind();
break;
case NebN:
case NebHII:
case NebMolCld:
case NebYSO:
case NebRn:
case NebSNR:
case NebBn:
case NebEn:
case NebSNC:
case NebSNRC:
Nebula::texDiffuseNebula->bind();
break;
case NebPn:
case NebPossPN:
case NebPPN:
Nebula::texPlanetaryNebula->bind();
break;
case NebDn:
Nebula::texDarkNebula->bind();
break;
case NebCn:
Nebula::texOpenClusterWithNebulosity->bind();
break;
case NebRegion:
Nebula::texRegion->bind();
break;
//case NebEMO:
//case NebStar:
//case NebSymbioticStar:
//case NebEmissionLineStar:
default:
Nebula::texCircle->bind();
}

---



case NebGx :
wsType = q_("Galaxy");
break;
case NebAGx :
wsType = q_("active galaxy");
break;
case NebRGx :
wsType = q_("radio galaxy");
break;
case NebIGx :
wsType = q_("interacting galaxy");
break;
case NebQSO :
wsType = q_("quasar");
break;
case NebCl :
wsType = q_("star cluster");
break;
case NebOc :
wsType = q_("Open cluster");
break;
case NebGc :
wsType = q_("Globular cluster");
break;
case NebSA :
wsType = q_("stellar association");
break;
case NebSC :
wsType = q_("star cloud");
break;
case NebN :
wsType = q_("Nebula");
break;
case NebPn :
wsType = q_("Planetary nebula");
break;
case NebDn :
wsType = q_("Dark Nebula");
break;
case NebRn :
wsType = q_("reflection nebula");
break;
case NebBn :
wsType = q_("bipolar nebula");
break;
case NebEn :
wsType = q_("emission nebula");
break;
case NebCn :
wsType = q_("Cluster associated with nebulosity");
break;
case NebHII :
wsType = q_("HII region");
break;
case NebSNR :
wsType = q_("supernova remnant");
break;
case NebISM :
wsType = q_("interstellar matter");
break;
case NebEMO :
wsType = q_("emission object");
break;
case NebBLL :
wsType = q_("BL Lac object");
break;
case NebBLA :
wsType = q_("blazar");
break;
case NebMolCld:
wsType = q_("molecular cloud");
break;
case NebYSO :
wsType = q_("young stellar object");
break;
case NebPossQSO:
wsType = q_("possible quasar");
break;
case NebPossPN:
wsType = q_("possible planetary nebula");
break;
case NebPPN :
wsType = q_("protoplanetary nebula");
break;
case NebStar :
wsType = q_("star");
break;
case NebSymbioticStar :
wsType = q_("symbiotic star");
break;
case NebEmissionLineStar:
wsType = q_("emission-line star");
break;
case NebSNC :
wsType = q_("supernova candidate");
break;
case NebSNRC :
wsType = q_("supernova remnant candidate");
break;
case NebGxCl :
wsType = q_("cluster of galaxies");
break;
case NebPartOfGx :
wsType = q_("part of a galaxy");
break;
case NebRegion :
wsType = q_("region of the sky");
break;
case NebUnknown:
wsType = q_("Unknown");
break;
default:
wsType = q_("");
break;


---


catIds << QString("NGC %1").arg(NGC_nb);

StelQuickStelItem.cpp getSelectedObjectInfo增加其他信息 Extra是class

StelApp.cpp -

NebulaMgr.hpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
static StelTextureSP texCircle;				// The symbolic circle texture
static StelTextureSP texCircleLarge; // The symbolic circle texture for large objects
static StelTextureSP texRegion; // The symbolic dashed shape texture
static StelTextureSP texGalaxy; // Type 0
static StelTextureSP texGalaxyLarge; // Type 0_large
static StelTextureSP texOpenCluster; // Type 1
static StelTextureSP texOpenClusterLarge; // Type 1_large
static StelTextureSP texOpenClusterXLarge; // Type 1_extralarge
static StelTextureSP texGlobularCluster; // Type 2
static StelTextureSP texGlobularClusterLarge; // Type 2_large
static StelTextureSP texPlanetaryNebula; // Type 3
static StelTextureSP texDiffuseNebula; // Type 4
static StelTextureSP texDiffuseNebulaLarge; // Type 4_large
static StelTextureSP texDiffuseNebulaXLarge; // Type 4_extralarge
static StelTextureSP texDarkNebula; // Type 5
static StelTextureSP texDarkNebulaLarge; // Type 5_large
static StelTextureSP texOpenClusterWithNebulosity; // Type 6
static StelTextureSP texOpenClusterWithNebulosityLarge; // Type 6_large

StelObject.hpp

Nebula.hpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
  static StelTextureSP texCircle;				// The symbolic circle texture
static StelTextureSP texCircleLarge; // The symbolic circle texture for large objects
static StelTextureSP texRegion; // The symbolic dashed shape texture
static StelTextureSP texGalaxy; // Type 0
static StelTextureSP texGalaxyLarge; // Type 0_large
static StelTextureSP texOpenCluster; // Type 1
static StelTextureSP texOpenClusterLarge; // Type 1_large
static StelTextureSP texOpenClusterXLarge; // Type 1_extralarge
static StelTextureSP texGlobularCluster; // Type 2
static StelTextureSP texGlobularClusterLarge; // Type 2_large
static StelTextureSP texPlanetaryNebula; // Type 3
static StelTextureSP texDiffuseNebula; // Type 4
static StelTextureSP texDiffuseNebulaLarge; // Type 4_large
static StelTextureSP texDiffuseNebulaXLarge; // Type 4_extralarge
static StelTextureSP texDarkNebula; // Type 5
static StelTextureSP texDarkNebulaLarge; // Type 5_large
static StelTextureSP texOpenClusterWithNebulosity; // Type 6
static StelTextureSP texOpenClusterWithNebulosityLarge; // Type 6_large

---


NebGx = 0, //!< m Galaxy
NebAGx = 1, //!< Active galaxy
NebRGx = 2, //!< m Radio galaxy
NebIGx = 3, //!< Interacting galaxy
NebQSO = 4, //!< Quasar
NebCl = 5, //!< Star cluster
NebOc = 6, //!< Open star cluster
NebGc = 7, //!< Globular star cluster, usually in the Milky Way Galaxy
NebSA = 8, //!< Stellar association
NebSC = 9, //!< Star cloud
NebN = 10, //!< A nebula
NebPn = 11, //!< Planetary nebula
NebDn = 12, //!< Dark Nebula
NebRn = 13, //!< Reflection nebula
NebBn = 14, //!< Bipolar nebula
NebEn = 15, //!< Emission nebula
NebCn = 16, //!< Cluster associated with nebulosity
NebHII = 17, //!< HII Region
NebSNR = 18, //!< Supernova remnant
NebISM = 19, //!< Interstellar matter
NebEMO = 20, //!< Emission object
NebBLL = 21, //!< BL Lac object
NebBLA = 22, //!< Blazar
NebMolCld = 23, //!< Molecular Cloud
NebYSO = 24, //!< Young Stellar Object
NebPossQSO = 25, //!< Possible Quasar
NebPossPN = 26, //!< Possible Planetary Nebula
NebPPN = 27, //!< Protoplanetary Nebula
NebStar = 28, //!< Star
NebSymbioticStar = 29, //!< Symbiotic Star
NebEmissionLineStar = 30, //!< Emission-line Star
NebSNC = 31, //!< Supernova Candidate
NebSNRC = 32, //!< Supernova Remnant Candidate
NebGxCl = 33, //!< Cluster of Galaxies
NebPartOfGx = 34, //!< Part of a Galaxy
NebRegion = 35, //!< Region of the sky
NebUnknown = 36 //!< m Unknown type, catalog errors, "Unidentified Southern Objects" etc.

listMatchingObjectsI18n

汉化中文星表

init里,registerStelObjectMgr增加objectsModule

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
StelObjectP StelObjectMgr::searchByNameI18n(const QString &name) const
{
StelObjectP rval;
foreach (const StelObjectModule* m, objectsModule)
{
rval = m->searchByNameI18n(name);
if (rval)
return rval;
}
return rval;
}

//! Find any kind of object by its standard program name
StelObjectP StelObjectMgr::searchByName(const QString &name) const
{
StelObjectP rval;
foreach (const StelObjectModule* m, objectsModule)
{
rval = m->searchByName(name);
if (rval)
return rval;
}
return rval;
}

在卫星Satellites、StarMgr里面两个搜索函数里只返回一个目标 return result;

ssystem_major.ini:行星

ssystem_minor.ini:小行星和彗星

其他搜索函数:SolarSystem

ConstellationMgr

maxNbItem是寻找标识

Nebula.hpp增加信息项;信息项输入;信息项输出;搜索信息

englishName 英文名(单个著名的名字/自定义星表编号:首个名字)

nameI18 中文(翻译自englishName)===updateI18n 更新名字展示标签{nameI18 = trans.qtranslate(englishName);}

nickName:不被承认的一般名字

Other_nb:交叉认证

NumStars

BrstStarMag

AmatuerIndex

SilasNote

切换到ngc2000.dat加载:M_nb C_nb

englishName用文本加载

1
2
3
4
5
6
if (nebula_data_format=="short"){
in >> isIc >> nb >> ra >> dec >> mag >> SizeMaxDegree >> type;
}
else{
in >> englishName >> M_nb >> C_nb >> NGC_nb >> IC_nb >> Other_nb >> ra >> dec >> type >> typeClass >> mag >>bmag>>bV>> SizeMaxDegree >>SizeMinDegree>>surfBright>> posAngle >>dsp ;
}

NGC_desp 55

note 86

StelObject:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
enum InfoStringGroupFlags
{
Name = 0x00000001, //!< An object's name
CatalogNumber = 0x00000002, //!< Catalog numbers
Magnitude = 0x00000004, //!< Magnitude related data
RaDecJ2000 = 0x00000008, //!< The equatorial position (J2000 ref)
RaDecOfDate = 0x00000010, //!< The equatorial position (of date)
AltAzi = 0x00000020, //!< The position (Altitude/Azimuth)
Distance = 0x00000040, //!< Info about an object's distance
Size = 0x00000080, //!< Info about an object's size
Extra = 0x00000100, //!< Derived class-specific extra fields
PlainText = 0x00000200, //!< Strip HTML tags from output
HourAngle = 0x00000400, //!< The hour angle + DE (of date)
AbsoluteMagnitude = 0x00000800, //!< The absolute magnitude
GalacticCoord = 0x00001000, //!< The galactic position
Type = 0x00002000, //!< The type of the object (star, planet, etc.)

SizeMin = 0x00004000,
bmag1 = 0x00008000, //!< The type of the object (star, planet, etc.)
bV1 = 0x00010000, //!< The type of the object (star, planet, etc.)
surfBright1 = 0x00020000, //!< The type of the object (star, planet, etc.)
posAngle1 = 0x00040000, //!< The type of the object (star, planet, etc.)
nickName1 = 0x00080000, //!< The type of the object (star, planet, etc.)
otherID1 = 0x00100000,
dsp1 = 0x00200000 //!< The type of the object (star, planet, etc.)
};

1.expand catalog(显示信息)

2.修改type

3.完成data

中文星:skyculture

Nebula::drawLabel

星座连线