91 Uint32
GetNumChildren()
const {
return static_cast<Uint32
>(m_children.size()); }
97 inline const std::string &
GetName()
const {
return m_name; }
113 return m_radius.
ToDouble() * EARTH_RADIUS;
120 return m_radius.
ToDouble() * SOL_RADIUS;
122 return m_radius.
ToDouble() * EARTH_RADIUS;
130 return m_mass.
ToDouble() * SOL_MASS;
132 return m_mass.
ToDouble() * EARTH_MASS;
137 return m_mass * 332998;
147 return m_rotationPeriod.
ToDouble() * 60 * 60 * 24;
206 return Color(200, 200, 200, 255);
211 *outColor = m_atmosColor;
212 *outDensity = m_atmosDensity;
219 void Dump(FILE *file,
const char *indent =
"")
const;
233 void ClearParentAndChildPointers();
236 std::vector<SystemBody *> m_children;
245 fixed m_orbMin, m_orbMax;
246 fixed m_rotationPeriod;
247 fixed m_rotationalPhaseAtStart;
248 fixed m_humanActivity;
249 fixed m_semiMajorAxis;
250 fixed m_eccentricity;
251 fixed m_orbitalOffset;
252 fixed m_orbitalPhaseAtStart;
262 fixed m_volatileLiquid;
263 fixed m_volatileIces;
265 fixed m_atmosOxidizing;
272 fixed m_agricultural;
274 std::string m_heightMapFilename;
275 unsigned int m_heightMapFractal;
278 double m_atmosDensity;
282 std::string m_space_station_type;
Color4ub Color
Definition Color.h:212
IterationProxy< Container > MakeIterationProxy(Container &container)
Definition IterationProxy.h:51
Definition IterationProxy.h:13
Definition ObjectViewerView.h:14
void SetPlane(const matrix3x3d &orient)
Definition Orbit.h:31
Definition StarSystemGenerator.h:54
Definition RefCounted.h:11
Definition StarSystemGenerator.h:30
Definition StarSystemGenerator.h:15
Definition StarSystemGenerator.h:38
Definition StarSystem.h:27
Definition SystemBody.h:19
double GetEccentricity() const
Definition SystemBody.h:155
const std::vector< SystemBody * > CollectAllChildren()
Definition SystemBody.cpp:554
double GetAtmosOxidizing() const
Definition SystemBody.h:182
const IterationProxy< const std::vector< SystemBody * > > GetChildren() const
Definition SystemBody.h:93
bool IsJumpable() const
Definition SystemBody.h:87
const Orbit & GetOrbit() const
Definition SystemBody.h:154
double GetEquatorialRadius() const
Definition SystemBody.h:117
fixed GetMassInEarths() const
Definition SystemBody.h:134
fixed GetOrbMinAsFixed() const
Definition SystemBody.h:159
double GetVolcanicity() const
Definition SystemBody.h:181
double GetMetallicity() const
Definition SystemBody.h:173
fixed GetVolcanicityAsFixed() const
Definition SystemBody.h:180
Uint32 GetSeed() const
Definition SystemBody.h:170
fixed GetMetallicityAsFixed() const
Definition SystemBody.h:172
bool HasAtmosphere() const
Definition SystemBody.cpp:36
void SetOrbitPlane(const matrix3x3d &orient)
Definition SystemBody.h:164
BodyType GetType() const
Definition SystemBody.h:100
double GetVolatileLiquid() const
Definition SystemBody.h:177
fixed GetInclinationAsFixed() const
Definition SystemBody.h:163
fixed GetAxialTiltAsFixed() const
Definition SystemBody.h:152
bool IsCoOrbital() const
Definition SystemBody.cpp:586
BodyType
Definition SystemBody.h:23
@ TYPE_STAR_O_GIANT
Definition SystemBody.h:40
@ TYPE_STAR_B_SUPER_GIANT
Definition SystemBody.h:46
@ TYPE_STAR_O_WF
Definition SystemBody.h:57
@ TYPE_STAR_F_HYPER_GIANT
Definition SystemBody.h:51
@ TYPE_STAR_IM_BH
Definition SystemBody.h:59
@ TYPE_STAR_B_HYPER_GIANT
Definition SystemBody.h:53
@ TYPE_GRAVPOINT
Definition SystemBody.h:24
@ TYPE_STAR_F
Definition SystemBody.h:30
@ TYPE_STAR_A_SUPER_GIANT
Definition SystemBody.h:45
@ TYPE_STAR_SM_BH
Definition SystemBody.h:60
@ TYPE_STAR_F_GIANT
Definition SystemBody.h:37
@ TYPE_STAR_M_SUPER_GIANT
Definition SystemBody.h:41
@ TYPE_STAR_M_GIANT
Definition SystemBody.h:34
@ TYPE_STAR_MIN
Definition SystemBody.h:68
@ TYPE_STAR_K_GIANT
Definition SystemBody.h:35
@ TYPE_BROWN_DWARF
Definition SystemBody.h:25
@ TYPE_STAR_B_WF
Definition SystemBody.h:56
@ TYPE_STAR_O_HYPER_GIANT
Definition SystemBody.h:54
@ TYPE_STAR_A_GIANT
Definition SystemBody.h:38
@ TYPE_STAR_K_SUPER_GIANT
Definition SystemBody.h:42
@ TYPE_STAR_G_GIANT
Definition SystemBody.h:36
@ TYPE_STAR_G_SUPER_GIANT
Definition SystemBody.h:43
@ TYPE_STARPORT_ORBITAL
Definition SystemBody.h:64
@ TYPE_STAR_F_SUPER_GIANT
Definition SystemBody.h:44
@ TYPE_PLANET_TERRESTRIAL
Definition SystemBody.h:63
@ TYPE_STAR_O_SUPER_GIANT
Definition SystemBody.h:47
@ TYPE_MAX
Definition SystemBody.h:67
@ TYPE_STAR_B_GIANT
Definition SystemBody.h:39
@ TYPE_WHITE_DWARF
Definition SystemBody.h:26
@ TYPE_STAR_K_HYPER_GIANT
Definition SystemBody.h:49
@ TYPE_STARPORT_SURFACE
Definition SystemBody.h:65
@ TYPE_STAR_M
Definition SystemBody.h:27
@ TYPE_PLANET_GAS_GIANT
Definition SystemBody.h:61
@ TYPE_STAR_B
Definition SystemBody.h:32
@ TYPE_MIN
Definition SystemBody.h:66
@ TYPE_STAR_A
Definition SystemBody.h:31
@ TYPE_STAR_M_HYPER_GIANT
Definition SystemBody.h:48
@ TYPE_STAR_A_HYPER_GIANT
Definition SystemBody.h:52
@ TYPE_STAR_G_HYPER_GIANT
Definition SystemBody.h:50
@ TYPE_STAR_G
Definition SystemBody.h:29
@ TYPE_STAR_MAX
Definition SystemBody.h:69
@ TYPE_STAR_M_WF
Definition SystemBody.h:55
@ TYPE_PLANET_ASTEROID
Definition SystemBody.h:62
@ TYPE_STAR_S_BH
Definition SystemBody.h:58
@ TYPE_STAR_O
Definition SystemBody.h:33
@ TYPE_STAR_K
Definition SystemBody.h:28
AtmosphereParameters CalcAtmosphereParams() const
Definition SystemBody.cpp:54
bool IsCoOrbitalWith(const SystemBody *other) const
Definition SystemBody.cpp:579
const RingStyle & GetRings() const
Definition SystemBody.h:196
bool IsMoon() const
Definition SystemBody.h:85
BodySuperType
Definition SystemBody.h:73
@ SUPERTYPE_ROCKY_PLANET
Definition SystemBody.h:76
@ SUPERTYPE_STAR
Definition SystemBody.h:75
@ SUPERTYPE_NONE
Definition SystemBody.h:74
@ SUPERTYPE_GAS_GIANT
Definition SystemBody.h:77
@ SUPERTYPE_STARPORT
Definition SystemBody.h:78
const SystemPath & GetPath() const
Definition SystemBody.h:81
double GetRotationPeriodInDays() const
Definition SystemBody.h:143
fixed GetMassAsFixed() const
Definition SystemBody.h:126
fixed GetSemiMajorAxisAsFixed() const
Definition SystemBody.h:162
double GetAspectRatio() const
Definition SystemBody.h:125
double GetLife() const
Definition SystemBody.h:184
double GetSemiMajorAxis() const
Definition SystemBody.h:161
fixed GetVolatileGasAsFixed() const
Definition SystemBody.h:174
void GetAtmosphereFlavor(Color *outColor, double *outDensity) const
Definition SystemBody.h:209
BodySuperType GetSuperType() const
Definition SystemBody.cpp:114
fixed GetPopulationAsFixed() const
Definition SystemBody.h:188
double CalcSurfaceGravity() const
Definition SystemBody.cpp:593
double GetOrbMin() const
Definition SystemBody.h:157
fixed GetVolatileIcesAsFixed() const
Definition SystemBody.h:178
fixed GetEccentricityAsFixed() const
Definition SystemBody.h:156
double GetAxialTilt() const
Definition SystemBody.h:151
Color GetAlbedo() const
Definition SystemBody.h:201
bool IsScoopable() const
Definition SystemBody.cpp:41
double GetVolatileGas() const
Definition SystemBody.h:175
fixed GetLifeAsFixed() const
Definition SystemBody.h:183
SystemBody * GetParent() const
Definition SystemBody.h:82
SystemBody * GetNearestJumpable()
Definition SystemBody.cpp:654
bool IsRotating() const
Definition SystemBody.h:141
const std::string & GetName() const
Definition SystemBody.h:97
double GetRotationPeriod() const
Definition SystemBody.h:145
double GetRotationPhaseAtStart() const
Definition SystemBody.h:150
bool HasChildren() const
Definition SystemBody.h:90
unsigned int GetHeightMapFractal() const
Definition SystemBody.h:168
fixed GetRadiusAsFixed() const
Definition SystemBody.h:105
IterationProxy< std::vector< SystemBody * > > GetChildren()
Definition SystemBody.h:92
double GetMaxChildOrbitalDistance() const
Definition SystemBody.cpp:567
const char * GetIcon() const
Definition SystemBody.cpp:389
fixed GetRotationPeriodAsFixed() const
Definition SystemBody.h:144
std::string GetAstroDescription() const
Definition SystemBody.cpp:170
bool IsPlanet() const
Definition SystemBody.cpp:533
double GetPopulation() const
Definition SystemBody.h:189
Uint32 GetNumChildren() const
Definition SystemBody.h:91
bool HasRings() const
Definition SystemBody.h:195
fixed GetOrbMaxAsFixed() const
Definition SystemBody.h:160
double GetMass() const
Definition SystemBody.h:127
void Dump(FILE *file, const char *indent="") const
Definition SystemBody.cpp:603
bool IsCustomBody() const
Definition SystemBody.h:102
const std::string & GetSpaceStationType() const
Definition SystemBody.h:223
const std::string & GetHeightMapFilename() const
Definition SystemBody.h:167
StarSystem * GetStarSystem() const
Definition SystemBody.h:221
double GetVolatileIces() const
Definition SystemBody.h:179
double GetOrbMax() const
Definition SystemBody.h:158
int GetAverageTemp() const
Definition SystemBody.h:166
bool HasRotationPhase() const
Definition SystemBody.h:149
fixed GetVolatileLiquidAsFixed() const
Definition SystemBody.h:176
fixed GetAgriculturalAsFixed() const
Definition SystemBody.h:186
double GetRadius() const
Definition SystemBody.h:108
double GetAgricultural() const
Definition SystemBody.h:187
Definition SystemPath.h:13
Sint64 v
Definition fixed.h:239
double ToDouble() const
Definition fixed.h:192
fixedf< 32 > fixed
Definition fixed.h:242
Definition AtmosphereParameters.h:7
fixed maxRadius
Definition RingStyle.h:11