Commit Graph

85 Commits (d7b896c013e222f96d29baa399cd3eda24fd91fb)

Author SHA1 Message Date
Andrew Tribick d7b896c013 Remove pre-C++17 Eigen alignment code 2021-12-28 21:14:29 +01:00
Levin Li 1613542c5d Fix duplicate in Body as well 2021-10-19 17:42:49 +08:00
Levin Li d6270ecac2 i18n for star and dsos in code 2021-05-22 09:34:34 +08:00
Hleb Valoshka f16c355d11 Add a new body parameter "reflectivity" complementing albedos 2021-03-10 17:51:10 +03:00
Hleb Valoshka 96feeceae4 Add RingRenderData to hide implementation specific data 2020-04-05 13:21:50 +03:00
Hleb Valoshka bd7f9ebc9b Use libepoxy instead of GLEW
Unlike GLEW libepoxy supports OpenGL ES and better handles cases with
functions provided by different extensions, e.g. the same functions
provided by vendor/EXT/ARB/core.
2020-03-26 11:24:56 +03:00
pirogronian 1ebc427f41 Transform CatEntry into AstroObject with minimal common indexing rountines. 2020-03-06 18:11:53 +01:00
Hleb Valoshka 0af14d4ca8 Add LOD for planet rings 2019-11-01 12:12:04 +03:00
pirogronian c3567d820c Replace refcounted objects with std::shared_ptr 2019-08-16 12:45:57 +03:00
Hleb Valoshka c95fe7ee0f Fix bool usage in Body 2019-06-17 18:19:56 +03:00
Hleb Valoshka a426916e2a Get rid of immediate mode in ring rendering
nSections was hardcoded to 100 so I removed it from renderRingSystem
2019-04-22 21:21:05 +03:00
Luke McCrone a363fc772b Issue #216: Allow changing colors for comet tails 2019-03-11 21:24:21 +03:00
Hleb Valoshka c710412ba7 New planet parameters, core 2018-12-22 23:22:49 +03:00
Hleb Valoshka 7931114b9f Fix new warnings
- warning: deleting object of polymorphic class type ‘Star’ which has
   non-virtual destructor might cause undefined behavior
   [-Wdelete-non-virtual-dtor]
 - enumeration value ‘Type_Generic’ not handled in switch [-Wswitch]
2018-12-08 02:06:16 +03:00
pirogronian e6e84d1ce3 User-defined categories. Core + Lua. 2018-12-07 10:17:11 +01:00
Hleb Valoshka dcf7f4aa55 Return string ref in Body::getInfoURL 2018-11-19 23:29:19 +03:00
Hleb Valoshka ea273e0c6c Cleanups, no functional changes 2018-10-18 21:52:04 +03:00
Hleb Valoshka 73638c116d Remove basictypes.h and use standard c++11 types 2018-09-22 23:42:03 +03:00
Hleb Valoshka b082d5f47f Automatically convert to c++11 using clan-tidy
+ manual cleanups
2018-09-22 23:42:02 +03:00
Hleb Valoshka 882e4ecf28 fix whitespaces and indents
trailing spaces are removed
tabs are replaced with 4 spaces

# Conflicts:
#	src/celengine/cmdparser.cpp
#	src/celengine/command.cpp
#	src/celestia/celestiacore.cpp
#	src/celestia/celestiacore.h
#	src/celestia/qt/qtappwin.cpp
#	src/celestia/qt/qtglwidget.cpp
#	src/celestia/win32/winmain.cpp
2018-09-22 23:41:57 +03:00
Chris Laurel 4a03b52617 Moved ephemeris files (subclasses of Orbit and RotationModel) into new celephem folder. 2009-11-02 20:30:18 +00:00
Chris Laurel db1ce7d79a Eigenized atmosphere code. 2009-07-23 03:11:40 +00:00
Chris Laurel a5511ac191 Added missing EIGEN_MAKE_ALIGNED_OPERATOR_NEW to Body; now that it contains an Eigen fixed-size structure, it needs to be 16-byte aligned. 2009-07-17 00:54:49 +00:00
Chris Laurel 86d1808519 Eigenized Body and Selection classes; adapted dependent code. Removed some
miscellaneous compile warnings in other modules.
2009-07-16 23:37:48 +00:00
Chris Laurel 1f7a51d0ff Changed behavior of Visible flag slightly. Visible false now means that an object's orbit will not be shown. 2008-10-01 22:50:38 +00:00
Chris Laurel 9d236c3b8e - Added geometryScale property to Body class.
- Removed old bitfield based render marks code from Body class.
2008-09-22 20:59:04 +00:00
Chris Laurel 41efec9e08 - Added abstract class Geometry; this will permit geometry other than
static models to be used for objects.
- Replace body, star, and DSO instances of Model with Geometry
- Renamed ModelManager to GeometryManager
- Fixed a GeometryManager bug that was triggered by multiple uses of a mesh
  file with different MeshCenters.
2008-07-23 21:54:53 +00:00
Chris Laurel 019b7e649e Fixed const-ness mismatch in new name code. 2008-07-20 00:26:50 +00:00
Chris Laurel e7645a774f Introduced support for multiple names for solar system objects. As with
stars and DSOs, names are separated by colons.
2008-07-19 21:41:30 +00:00
Chris Laurel 7e117ee0fd Added diffuse and minormoon classes. 2008-04-14 18:48:13 +00:00
Chris Laurel d216a98755 Implemented secondary illumination (e.g. planetshine.) Rewrote much of the code that contructs render lists to make it possible to do compute secondary illumination efficiently. This patch fixes two other bugs. The orbit of barycenters is shown when they have children that are planets, moons, or asteroids. And, an incorrect frame release was fixed in solarsys.cpp. 2008-04-03 17:46:45 +00:00
Da Woon Jung e59f4b4b54 HDR bloom, adaptive exposure, calibrated nightlights - disabled by default, enable with USE_HDR and HDR_COMPRESS. 4 new vertex programs added. 2008-03-25 00:23:16 +00:00
Chris Laurel e4a28ef68a Implemented more flexible system for reference marks. Reference mark objects lists are maintained instead of simple bitfields, allowing customization of reference mark parameters (e.g. arrow size, planet grid style, etc.) There are three new reference mark types: planetographic grid, spin vector, and body-to-body vector. The Qt4 and Win32 front ends have been updated; Gtk, KDE, and Mac interfaces need to be updated to use the new code for toggling reference marks.
This change also includes a fix for two problems with Replace:
- objects were being reordered so that selection with the 1-9 keys no longer worked as expected.
- children of Replaced bodies were being deleted
2008-03-20 21:36:17 +00:00
Chris Laurel ed2b1319d8 Improved ssc file parser to allow a reference frame to reference the body that owns it. This eliminates the need to use Modify for body frames that depend on the position of the body itself (such as LVLH frames.) 2008-02-28 09:34:29 +00:00
Chris Laurel eba1b9940c - Implemented framework for Orbit and RotationModel subclasses to implement their own velocity and angular velocity methods to use instead of numerical differentation. Actual implementation of velocity methods will wait until further discussion on the developers list.
- Implemented Timelines for solar system bodies. A timeline allows a body to have different reference frames, orbits, and rotation models over time.
2008-02-21 02:25:48 +00:00
Chris Laurel 0cda718f63 Added new ssc object flags for visibility, orbit color, and orbit visibility. Added ssc properties for visibility and orbit color, celx methods for all new flags. 2008-02-04 00:17:35 +00:00
Chris Laurel b1982a520d Updated Body class to allow all three ellipsoid axes to be specified independently via SemiAxes property. 2008-02-01 01:37:49 +00:00
Chris Laurel 4a5b66a62c Added a Clickable property for ssc objects, similar to request in feature
tracker item 1704255.
2008-01-31 20:04:01 +00:00
Christophe Teyssier 085898fe0d Fixed body lookups by localized name. 2007-12-14 22:35:12 +00:00
Chris Laurel 23c66a059f Fixed frame related bug that caused a body to be positioned incorrectly
when the star of its orbit frame didn't match the namespace root star.
2007-12-11 21:25:35 +00:00
Chris Laurel 1e2003f733 Ignore phase when culling satellites based on the magnitude of their primary body; this prevents a planet's satellites from disappearing when it approaches a solar transit. 2006-12-20 19:34:47 +00:00
Chris Laurel 37b1cc1226 Improved precision of LongLat positions. 2006-12-07 06:44:31 +00:00
Chris Laurel 2832499ad3 Added object classification for stars (for orbit display) 2006-12-03 08:31:24 +00:00
Chris Laurel 74fcc1bb73 Accelerate the loading of large catalog files by using an O(log N) instead of O(N) search. 2006-11-27 10:01:46 +00:00
Chris Laurel 664a4ddc38 Code cleanup:
- Removed remaining references to OrbitReferencePlane
- Replaced instances of constant for J2000 obliquity with astro::J2000Obliquity
2006-11-06 06:18:09 +00:00
Chris Laurel a8ef020fd7 - Fixed orbit paths so that they work for objects with an orbit frame
- Eliminated OrbitReferencePlanel it's superceded by reference frames
2006-10-31 08:23:04 +00:00
Chris Laurel e1d926725e More work on reference frames:
- Changed *geographic* function names to more appropriate *BodyFixed*
- Implemented parsing of BodyFixed and MeanEquator frames
- Added freeze epoch for MeanEquator frame
- Added a correction so that x-axis of body-fixed frames goes through prime meridian
2006-10-27 17:13:45 +00:00
Christophe Teyssier 973b94221e Fixed compilation with gcc 4.1.2 and warnings. 2006-10-25 23:03:19 +00:00
Chris Laurel 3fcfa10c20 Added orbit and body reference frames to Body class. 2006-10-25 08:09:14 +00:00
Chris Laurel d5e28eb0e5 Implemented RotationModel class hierarchy to replace RotationElements. The new scheme allows more sophisticated ways of specifying the orientation of a body, including builtin functions and orientation data files. 2006-10-18 08:34:27 +00:00