mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-04-20 17:51:19 -05:00
Add pointer to ScreenSpaceBrowser in SkyBrowserModule and add function to pause time in WWT
This commit is contained in:
@@ -73,7 +73,7 @@ SkybrowserModule::SkybrowserModule()
|
||||
: OpenSpaceModule(Name)
|
||||
, _testProperty(TestInfo)
|
||||
, _zoomFactor(ZoomInfo, 50.f ,0.1f ,70.f)
|
||||
//, _skyBrowser(nullptr)
|
||||
, _skyBrowser(nullptr)
|
||||
{
|
||||
addProperty(_testProperty);
|
||||
addProperty(_zoomFactor);
|
||||
@@ -163,7 +163,14 @@ std::string SkybrowserModule::createMessageForMovingWWTCamera(glm::dvec2 celestC
|
||||
|
||||
return script;
|
||||
}
|
||||
/*
|
||||
|
||||
std::string SkybrowserModule::createMessageForPausingWWTTime() const {
|
||||
std::string script = "{ event: 'pause_time'}";
|
||||
|
||||
return script;
|
||||
}
|
||||
|
||||
|
||||
void SkybrowserModule::initializeBrowser(ScreenSpaceBrowser* skyBrowser) {
|
||||
_skyBrowser = skyBrowser;
|
||||
}
|
||||
@@ -171,7 +178,7 @@ void SkybrowserModule::initializeBrowser(ScreenSpaceBrowser* skyBrowser) {
|
||||
ScreenSpaceBrowser* SkybrowserModule::skyBrowser() {
|
||||
return _skyBrowser;
|
||||
}
|
||||
*/
|
||||
|
||||
glm::dvec2 SkybrowserModule::convertGalacticToCelestial(glm::dvec3 rGal) const {
|
||||
|
||||
// Used the math from this website: https://gea.esac.esa.int/archive/documentation/GD -->
|
||||
|
||||
@@ -35,6 +35,8 @@
|
||||
|
||||
namespace openspace {
|
||||
|
||||
class ScreenSpaceBrowser;
|
||||
|
||||
class SkybrowserModule : public OpenSpaceModule {
|
||||
public:
|
||||
constexpr static const char* Name = "Skybrowser";
|
||||
@@ -47,11 +49,12 @@ public:
|
||||
void WWTfollowCamera();
|
||||
|
||||
std::string createMessageForMovingWWTCamera(glm::dvec2 celestCoords, float fov, bool moveInstantly = true) const;
|
||||
std::string createMessageForPausingWWTTime() const;
|
||||
|
||||
bool sendMessageToWWT(const std::string& msg);
|
||||
|
||||
//void initializeBrowser(ScreenSpaceBrowser* skyBrowser_);
|
||||
//ScreenSpaceBrowser* skyBrowser();
|
||||
void initializeBrowser(ScreenSpaceBrowser* skyBrowser_);
|
||||
ScreenSpaceBrowser* skyBrowser();
|
||||
scripting::LuaLibrary luaLibrary() const override;
|
||||
//std::vector<documentation::Documentation> documentations() const override;
|
||||
|
||||
@@ -60,7 +63,7 @@ protected:
|
||||
|
||||
properties::StringProperty _testProperty;
|
||||
properties::FloatProperty _zoomFactor;
|
||||
//ScreenSpaceBrowser* _skyBrowser;
|
||||
ScreenSpaceBrowser* _skyBrowser;
|
||||
};
|
||||
|
||||
} // namespace openspace
|
||||
|
||||
@@ -33,6 +33,8 @@ namespace openspace::skybrowser::luascriptfunctions {
|
||||
ghoul::lua::checkArgumentsAndThrow(L, 0, "lua::followCamera");
|
||||
|
||||
SkybrowserModule* module = global::moduleEngine->module<SkybrowserModule>();
|
||||
std::string message = module->createMessageForPausingWWTTime();
|
||||
module->sendMessageToWWT(message);
|
||||
std::thread thread(&SkybrowserModule::WWTfollowCamera, module);
|
||||
thread.detach();
|
||||
|
||||
@@ -42,16 +44,15 @@ namespace openspace::skybrowser::luascriptfunctions {
|
||||
int moveBrowser(lua_State* L) {
|
||||
ghoul::lua::checkArgumentsAndThrow(L, 0, "lua::moveBrowser");
|
||||
|
||||
// SkybrowserModule* module = global::moduleEngine->module<SkybrowserModule>();
|
||||
// std::string test = module->createMessageForMovingWWTCamera(glm::dvec2(18, -32), 50);
|
||||
// module->sendMessageToWWT(test);
|
||||
|
||||
//SkybrowserModule* module = global::moduleEngine->module<SkybrowserModule>();
|
||||
// module->skyBrowser()->translate(glm::vec3(-0.8, -0.4, 0.0));
|
||||
SkybrowserModule* module = global::moduleEngine->module<SkybrowserModule>();
|
||||
ScreenSpaceBrowser* browser = dynamic_cast<ScreenSpaceBrowser*>(global::renderEngine->screenSpaceRenderable("ScreenSpaceBowser"));
|
||||
module->initializeBrowser(browser);
|
||||
//ScreenSpaceBrowser* browser = dynamic_cast<ScreenSpaceBrowser*>(global::renderEngine->screenSpaceRenderable("ScreenSpaceBowser"));
|
||||
|
||||
browser->setFaceCameraPropertyToFalse();
|
||||
browser->translate(glm::vec3(-0.8, -0.4, 0.0));
|
||||
module->skyBrowser()->setFaceCameraPropertyToFalse();
|
||||
module->skyBrowser()->translate(glm::vec3(-0.8, -0.4, 0.0));
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -78,10 +79,8 @@ namespace openspace::skybrowser::luascriptfunctions {
|
||||
openspace::global::scriptEngine->queueScript(
|
||||
"openspace.addScreenSpaceRenderable(" + ghoul::formatLua(node) + ")",
|
||||
scripting::ScriptEngine::RemoteScripting::Yes
|
||||
);
|
||||
ScreenSpaceBrowser* browser = dynamic_cast<ScreenSpaceBrowser*>(global::renderEngine->screenSpaceRenderable("ScreenSpaceBowser"));
|
||||
// module->initializeBrowser(browser);
|
||||
|
||||
);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user