diff --git a/.gitignore b/.gitignore index b6b3900ce1..cf0949236b 100644 --- a/.gitignore +++ b/.gitignore @@ -155,3 +155,7 @@ data/scene/juno/juno/spice data/scene/juno/juno/Juno.mtl data/scene/juno/juno/Juno.obj KeyboardMapping.txt +saturn_rings.png +data/scene/debugglobe/textures/earth_clouds.jpg +data/scene/debugglobe/textures/earth_reflectance.png +data/scene/rosetta/rosetta/obj/Rosetta.obj diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e963165a2..eee822a3f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,8 +27,6 @@ cmake_minimum_required (VERSION 3.4 FATAL_ERROR) project (OpenSpace) message(STATUS "Generating OpenSpace project") -set(BOOST_ROOT "G:/deps/bin/boost_1_60_0") - set(OPENSPACE_BASE_DIR "${PROJECT_SOURCE_DIR}") set(OPENSPACE_APPS_DIR "${OPENSPACE_BASE_DIR}/apps") set(OPENSPACE_EXT_DIR "${OPENSPACE_BASE_DIR}/ext") diff --git a/apps/Launcher/mainwindow.cpp b/apps/Launcher/mainwindow.cpp index d0c8a5fab0..ffe01f2cd7 100644 --- a/apps/Launcher/mainwindow.cpp +++ b/apps/Launcher/mainwindow.cpp @@ -49,7 +49,7 @@ namespace { const QSize WindowSize = QSize(640, 480); - const QString NewsURL = "http://openspace.itn.liu.se/news.txt"; + const QString NewsURL = "http://openspaceproject.com/news.txt"; const std::string _configurationFile = "openspace.cfg"; diff --git a/apps/Launcher/syncwidget.cpp b/apps/Launcher/syncwidget.cpp index 226392f9ae..7cdc9e2d96 100644 --- a/apps/Launcher/syncwidget.cpp +++ b/apps/Launcher/syncwidget.cpp @@ -131,7 +131,7 @@ SyncWidget::SyncWidget(QWidget* parent, Qt::WindowFlags f) ghoul::initialize(); _downloadManager = std::make_unique( - "http://openspace.itn.liu.se/data/request", DownloadApplicationVersion); + "http://data.openspaceproject.com/request", DownloadApplicationVersion); libtorrent::error_code ec; _session->listen_on(std::make_pair(20280, 20290), ec); diff --git a/data/scene/iswa/tfs/autumn.tf b/data/scene/iswa/tfs/autumn.tf new file mode 100644 index 0000000000..e27f48eb87 --- /dev/null +++ b/data/scene/iswa/tfs/autumn.tf @@ -0,0 +1 @@ +${SCENE}/iswa/tfs/colormap_autumn.png \ No newline at end of file diff --git a/data/scene/saturn/saturn.data b/data/scene/saturn/saturn.data index 89c07de0d0..49ba7a71da 100644 --- a/data/scene/saturn/saturn.data +++ b/data/scene/saturn/saturn.data @@ -1,5 +1,5 @@ return { FileRequest = { - { Identifier = "saturn_textures", Destination = "textures", Version = 1 } + { Identifier = "saturn_textures", Destination = "textures", Version = 2 } }, } \ No newline at end of file diff --git a/data/scene/saturn/saturn.mod b/data/scene/saturn/saturn.mod index 2629741b5b..54e79e56d7 100644 --- a/data/scene/saturn/saturn.mod +++ b/data/scene/saturn/saturn.mod @@ -42,6 +42,21 @@ return { }, GuiName = "/Solar/Planets/Saturn" }, + -- The rings of Saturn + -- Using the 'Saturn's rings dark side mosaic' as a basis + { + Name = "SaturnRings", + Parent = "Saturn", + Renderable = { + Type = "RenderableRings", + Body = "SATURN BARYCENTER", + Frame = "IAU_SATURN", + Texture = "textures/saturn_rings.png", + Size = { 0.140445100671159, 9.0 }, -- 140445.100671159km + Offset = { 74500 / 140445.100671159, 1.0 } -- min / max extend + }, + + }, -- SaturnTrail module { Name = "SaturnTrail", diff --git a/ext/ghoul b/ext/ghoul index c0d55b213e..3f984822e7 160000 --- a/ext/ghoul +++ b/ext/ghoul @@ -1 +1 @@ -Subproject commit c0d55b213ec7d284ad1a5e6c54491bbb5ee93667 +Subproject commit 3f984822e718b0e5cc00e17636e6087288022b69 diff --git a/include/openspace/engine/settingsengine.h b/include/openspace/engine/settingsengine.h index 583abba854..f1faa111e7 100644 --- a/include/openspace/engine/settingsengine.h +++ b/include/openspace/engine/settingsengine.h @@ -27,18 +27,30 @@ #include #include +#include + +#include namespace openspace { + +class OpenSpaceModule; class SettingsEngine : public properties::PropertyOwner { public: - SettingsEngine(); + SettingsEngine(); + + void initialize(); + + void setModules(std::vector modules); private: - properties::FloatProperty _eyeSeparation; + void initEyeSeparation(); + void initSceneFiles(); + + properties::FloatProperty _eyeSeparation; + properties::OptionProperty _scenes; }; } // namespace openspace - #endif //#ifndef __SETTINGSENGINE_H__ diff --git a/include/openspace/properties/optionproperty.h b/include/openspace/properties/optionproperty.h index cd248fe336..50fea9aaeb 100644 --- a/include/openspace/properties/optionproperty.h +++ b/include/openspace/properties/optionproperty.h @@ -50,13 +50,20 @@ public: std::string description; }; + enum class DisplayType { + RADIO, + DROPDOWN + }; + /** * The constructor delegating the identifier and the guiName * to its super class. * \param identifier A unique identifier for this property * \param guiName The GUI name that should be used to represent this property + * \param displayType Optional DisplayType for GUI (default RADIO) */ OptionProperty(std::string identifier, std::string guiName); + OptionProperty(std::string identifier, std::string guiName, DisplayType displayType); /** * Returns the name of the class for reflection purposes. @@ -65,6 +72,12 @@ public: std::string className() const override; using IntProperty::operator=; + /** + * Returns the type for GUI display. + * \return OptionType for display purposes + */ + DisplayType displayType() const; + /** * Adds the passed option to the list of available options. The value of * the option must not have been registered previously, or a warning will @@ -74,9 +87,16 @@ public: */ void addOption(int value, std::string desc); + /** + * Appends options with vectors of values and descriptions + * \param values A std::vector of values for the options + * \param descs A std::vector of descriptions for each value + */ + void addOptions(std::vector values, std::vector descs); + /** * Returns the list of available options. - * /return The list of available options + * \return The list of available options */ const std::vector