mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-04-24 13:08:49 -05:00
Merged master.
This commit is contained in:
@@ -31,6 +31,7 @@ Thumbs.db
|
||||
/screenshots/
|
||||
/recordings/
|
||||
/sync/
|
||||
/temp/
|
||||
# Customization is not supposed to be committed
|
||||
customization.lua
|
||||
# The COMMIT info is generated everytime CMake is run
|
||||
|
||||
+2
-2
@@ -28,8 +28,8 @@ project(OpenSpace)
|
||||
|
||||
set(OPENSPACE_VERSION_MAJOR 0)
|
||||
set(OPENSPACE_VERSION_MINOR 15)
|
||||
set(OPENSPACE_VERSION_PATCH -1)
|
||||
set(OPENSPACE_VERSION_STRING "Beta-5 RC1")
|
||||
set(OPENSPACE_VERSION_PATCH 0)
|
||||
set(OPENSPACE_VERSION_STRING "Beta-5")
|
||||
|
||||
|
||||
set(OPENSPACE_BASE_DIR "${PROJECT_SOURCE_DIR}")
|
||||
|
||||
+12
-9
@@ -1,20 +1,22 @@
|
||||
# Core Team
|
||||
Alexander Bock
|
||||
Emil Axelsson
|
||||
Kalle Bladin
|
||||
Jonathas Costa
|
||||
Jonas Strandstedt
|
||||
Michal Marcinkowski
|
||||
Joakim Kilby
|
||||
Gene Payne
|
||||
Micah Acinapura
|
||||
Kalle Bladin
|
||||
Joakim Kilby
|
||||
Erik Sundén
|
||||
Eric Myers
|
||||
|
||||
Sebastian Piwell
|
||||
Erik Broberg
|
||||
Jonas Strandstedt
|
||||
Michal Marcinkowski
|
||||
Jonathan Bosson
|
||||
Michael Nilsson
|
||||
Elon Olsson
|
||||
Jonathan Franzen
|
||||
Hans-Christian Helltegen
|
||||
Anton Arbring
|
||||
Oskar Carlbaum
|
||||
@@ -30,10 +32,11 @@ Christoffer Särevall
|
||||
|
||||
|
||||
# Community Support
|
||||
mingenuity
|
||||
nealmcb
|
||||
nbartzokas
|
||||
mik3caprio
|
||||
arfon
|
||||
Anteige
|
||||
arfon
|
||||
DavidLaidlaw
|
||||
mik3caprio
|
||||
mingenuity
|
||||
nbartzokas
|
||||
nealmcb
|
||||
noahdasanaike
|
||||
|
||||
+15
-1
@@ -383,7 +383,10 @@ void mainInitFunc() {
|
||||
|
||||
for (size_t i = 0; i < nWindows; ++i) {
|
||||
sgct::SGCTWindow* w = SgctEngine->getWindowPtr(i);
|
||||
constexpr const char* screenshotNames = "OpenSpace";
|
||||
const std::string screenshotNames = nWindows > 1 ?
|
||||
fmt::format("OpenSpace_{}", i) :
|
||||
"OpenSpace";
|
||||
|
||||
sgct_core::ScreenCapture* cpt0 = w->getScreenCapturePointer(0);
|
||||
sgct_core::ScreenCapture* cpt1 = w->getScreenCapturePointer(1);
|
||||
|
||||
@@ -1014,6 +1017,7 @@ void setSgctDelegateFunctions() {
|
||||
sgctDelegate.takeScreenshot = [](bool applyWarping) {
|
||||
sgct::SGCTSettings::instance()->setCaptureFromBackBuffer(applyWarping);
|
||||
sgct::Engine::instance()->takeScreenshot();
|
||||
return sgct::Engine::instance()->getScreenShotNumber();
|
||||
};
|
||||
sgctDelegate.swapBuffer = []() {
|
||||
GLFWwindow* w = glfwGetCurrentContext();
|
||||
@@ -1038,6 +1042,16 @@ void setSgctDelegateFunctions() {
|
||||
sgct::SGCTWindow* w = sgct::Engine::instance()->getWindowPtr(0);
|
||||
w->setHorizFieldOfView(hFovDeg);
|
||||
};
|
||||
#ifdef WIN32
|
||||
sgctDelegate.getNativeWindowHandle = [](size_t windowIndex) -> void* {
|
||||
sgct::SGCTWindow* w = sgct::Engine::instance()->getWindowPtr(windowIndex);
|
||||
if(w) {
|
||||
HWND hWnd = glfwGetWin32Window(w->getWindowHandle());
|
||||
return reinterpret_cast<void*>(hWnd);
|
||||
}
|
||||
return nullptr;
|
||||
};
|
||||
#endif // WIN32
|
||||
sgctDelegate.frustumMode = []() {
|
||||
using FM = sgct_core::Frustum::FrustumMode;
|
||||
switch (sgct::Engine::instance()->getCurrentFrustumMode()) {
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="localhost" externalControlPort="20500">
|
||||
<Settings>
|
||||
<Display swapInterval="0" />
|
||||
</Settings>
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="true" numberOfSamples="4" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<Size x="1920" y="1080" />
|
||||
<Pos x="0" y="0" />
|
||||
<Viewport tracked="true">
|
||||
<Pos x="0.0" y="0.0" />
|
||||
<Size x="1.0" y="1.0" />
|
||||
<PlanarProjection>
|
||||
<FOV down="25.267007923362" left="40.0" right="40.0" up="25.267007923362" />
|
||||
<Orientation heading="0.0" pitch="0.0" roll="0.0" />
|
||||
</PlanarProjection>
|
||||
</Viewport>
|
||||
</Window>
|
||||
</Node>
|
||||
<User eyeSeparation="0.065">
|
||||
<Pos x="0.0" y="0.0" z="0.0" />
|
||||
</User>
|
||||
</Cluster>
|
||||
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="localhost" externalControlPort="20500">
|
||||
<Settings>
|
||||
<Display swapInterval="0" />
|
||||
</Settings>
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="true" monitor="1" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<Size x="1920" y="1080" />
|
||||
<Pos x="0" y="0" />
|
||||
<Viewport tracked="true">
|
||||
<Pos x="0.0" y="0.0" />
|
||||
<Size x="1.0" y="1.0" />
|
||||
<PlanarProjection>
|
||||
<FOV down="25.267007923362" left="40.0" right="40.0" up="25.267007923362" />
|
||||
<Orientation heading="0.0" pitch="0.0" roll="0.0" />
|
||||
</PlanarProjection>
|
||||
</Viewport>
|
||||
</Window>
|
||||
<Window fullScreen="false" border="false" name="GUI" tags="GUI">
|
||||
<Stereo type="none" />
|
||||
<Size x="1920" y="1080" />
|
||||
<Pos x="0" y="0" />
|
||||
<Viewport>
|
||||
<Pos x="0.0" y="0.0" />
|
||||
<Size x="1.0" y="1.0" />
|
||||
</Viewport>
|
||||
</Window>
|
||||
</Node>
|
||||
<User eyeSeparation="0.065">
|
||||
<Pos x="0.0" y="0.0" z="0.0" />
|
||||
</User>
|
||||
</Cluster>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="localhost">
|
||||
<Node address="localhost" port="20401">
|
||||
<Window tags="OpenVR" fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window tags="OpenVR" fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="side_by_side" />
|
||||
<!-- Res is equal to the Recommend target size -->
|
||||
<Size x="1332" y="840" />
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="localhost">
|
||||
<Node address="localhost" port="20401">
|
||||
<Window tags="OpenVR" fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window tags="OpenVR" fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="side_by_side" />
|
||||
<!-- Res is equal to the Recommend target size -->
|
||||
<Size x="1332" y="793" />
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@
|
||||
<Display swapInterval="0" />
|
||||
</Settings>
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="false" fxaa="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<Size x="1280" y="720" />
|
||||
<Pos x="50" y="50" />
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<Scale value="1.0" />
|
||||
</Scene> -->
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<!-- 16:9 aspect ratio -->
|
||||
<Size x="1024" y="1024" />
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<Scale value="1.0" />
|
||||
</Scene> -->
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<!-- 16:9 aspect ratio -->
|
||||
<Size x="1024" y="1024" />
|
||||
@@ -32,7 +32,7 @@
|
||||
</Window>
|
||||
|
||||
|
||||
<Window fullScreen="false" msaa="1" name="GUI" tags="GUI">
|
||||
<Window fullScreen="false" name="GUI" tags="GUI">
|
||||
<Stereo type="none" />
|
||||
<Size x="1280" y="720" />
|
||||
<Res x="2048" y="2048" />
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<Display swapInterval="0" />
|
||||
</Settings>
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<Size x="1280" y="720" />
|
||||
<Pos x="50" y="50" />
|
||||
@@ -17,7 +17,7 @@
|
||||
</PlanarProjection>
|
||||
</Viewport>
|
||||
</Window>
|
||||
<Window fullScreen="false" numberOfSamples="4" name="GUI" tags="GUI">
|
||||
<Window fullScreen="false" name="GUI" tags="GUI">
|
||||
<Stereo type="none" />
|
||||
<Size x="1280" y="720" />
|
||||
<Pos x="50" y="50" />
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="127.0.0.1">
|
||||
<Node address="127.0.0.1" port="20401">
|
||||
<Window fullScreen="false" numberOfSamples="4" border="true">
|
||||
<Window fullScreen="false" border="true">
|
||||
<Pos x="10" y="100" />
|
||||
<Size x="1280" y="720" />
|
||||
<Viewport tracked="true">
|
||||
@@ -13,7 +13,7 @@
|
||||
</PlanarProjection>
|
||||
</Viewport>
|
||||
</Window>
|
||||
<Window fullScreen="false" numberOfSamples="8" border="true">
|
||||
<Window fullScreen="false" border="true">
|
||||
<Pos x="340" y="100" />
|
||||
<Size x="1280" y="720" />
|
||||
<Viewport>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="127.0.0.1">
|
||||
<Node ip="127.0.0.1" port="20401">
|
||||
<Window fullscreen="false" fxaa="false" msaa="1" name="Spherical Projection">
|
||||
<Window fullscreen="false" name="Spherical Projection">
|
||||
<Stereo type="none" />
|
||||
<Pos x="0" y="100" />
|
||||
<!-- 16:9 aspect ratio -->
|
||||
@@ -17,7 +17,9 @@
|
||||
- 8k (8192)
|
||||
tilt specifies the dome tilt angle in degrees from the horizontal
|
||||
-->
|
||||
<Viewport name="warped fisheye" mesh="mesh/standard_16x9.data">
|
||||
<!-- mesh path is relative to working directory-->
|
||||
<!-- NOTE, if no working directory is set, mesh must be absolute path -->
|
||||
<Viewport name="warped fisheye" mesh="config/mesh/standard_16x9.data">
|
||||
<Pos x="0.0" y="0.0" />
|
||||
<Size x="1.0" y="1.0" />
|
||||
<FisheyeProjection fov="180" quality="2k" tilt="30.0">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" ?>
|
||||
<Cluster masterAddress="127.0.0.1">
|
||||
<Node ip="127.0.0.1" port="20401">
|
||||
<Window fullscreen="false" fxaa="false" msaa="1" name="Spherical Projection">
|
||||
<Window fullscreen="false" name="Spherical Projection">
|
||||
<Stereo type="none" />
|
||||
<Pos x="0" y="100" />
|
||||
<!-- 16:9 aspect ratio -->
|
||||
@@ -17,6 +17,8 @@
|
||||
- 8k (8192)
|
||||
tilt specifies the dome tilt angle in degrees from the horizontal
|
||||
-->
|
||||
<!-- mesh path is relative to working directory-->
|
||||
<!-- NOTE, if no working directory is set, mesh must be absolute path -->
|
||||
<Viewport name="warped fisheye" mesh="mesh/standard_16x9.data">
|
||||
<Pos x="0.0" y="0.0" />
|
||||
<Size x="1.0" y="1.0" />
|
||||
@@ -25,7 +27,7 @@
|
||||
</FisheyeProjection>
|
||||
</Viewport>
|
||||
</Window>
|
||||
<Window fullScreen="false" msaa="1" name="GUI" tags="GUI">
|
||||
<Window fullScreen="false" name="GUI" tags="GUI">
|
||||
<Stereo type="none" />
|
||||
<Size x="1280" y="720" />
|
||||
<Res x="2048" y="2048" />
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</Scene>
|
||||
-->
|
||||
<Node address="localhost" port="20401">
|
||||
<Window fullScreen="false" numberOfSamples="4" name="OpenSpace">
|
||||
<Window fullScreen="false" name="OpenSpace">
|
||||
<Stereo type="none" />
|
||||
<Size x="1024" y="1024" />
|
||||
<Viewport name="Spout">
|
||||
|
||||
@@ -100,8 +100,8 @@ asset.onInitialize(function ()
|
||||
-- openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_11.Enabled', true);
|
||||
-- openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A11_M177481212_p_longlat.Enabled', true);
|
||||
|
||||
openspace.setPropertyValueSingle('Scene.Apollo11LemDescentModel.Renderable.RotationVector', { 273.205475,6.904110,308.712311 });
|
||||
openspace.setPropertyValueSingle('Scene.Apollo11LemLandedModel.Renderable.RotationVector', { 273.205475,6.904110,308.712311 });
|
||||
openspace.setPropertyValueSingle('Scene.Apollo11LemDescentModel.Renderable.RotationVector', { 273.750,28.0,309.85 });
|
||||
openspace.setPropertyValueSingle('Scene.Apollo11LemLandedModel.Renderable.RotationVector', { 273.750,28.0,309.85 });
|
||||
|
||||
openspace.globebrowsing.goToGeo(moonAsset.Moon.Identifier, 20, -60, 15000000)
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ asset.require('util/default_dashboard')
|
||||
asset.require('util/default_joystick')
|
||||
|
||||
-- Load web gui
|
||||
asset.require('util/webgui')
|
||||
local webGui = asset.require('util/webgui')
|
||||
|
||||
asset.request('customization/globebrowsing')
|
||||
|
||||
@@ -66,6 +66,8 @@ local Keybindings = {
|
||||
}
|
||||
|
||||
asset.onInitialize(function ()
|
||||
webGui.setCefRoute("onscreen")
|
||||
|
||||
sceneHelper.bindKeys(Keybindings)
|
||||
openspace.setDefaultGuiSorting()
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
-- This is a base scene that is included in most other scenes to set up defaults
|
||||
-- loading this scene directly without any other elements added on top of it will
|
||||
-- probably not work
|
||||
|
||||
local assetHelper = asset.require('util/asset_helper')
|
||||
local sceneHelper = asset.require('util/scene_helper')
|
||||
local propertyHelper = asset.require('util/property_helper')
|
||||
|
||||
-- Specifying which other assets should be loaded in this scene
|
||||
asset.require('spice/base')
|
||||
-- Load default key bindings applicable to most scenes
|
||||
asset.require('util/default_keybindings')
|
||||
asset.require('util/default_dashboard')
|
||||
asset.require('util/default_joystick')
|
||||
|
||||
-- Load web gui
|
||||
asset.require('util/webgui')
|
||||
asset.request('customization/globebrowsing')
|
||||
|
||||
asset.onInitialize(function ()
|
||||
openspace.setDefaultGuiSorting()
|
||||
openspace.globebrowsing.loadWMSServersFromFile(
|
||||
openspace.absPath("${DATA}/globebrowsing_servers.lua")
|
||||
)
|
||||
end)
|
||||
@@ -22,12 +22,13 @@ local vrt_folders = {
|
||||
-- example: 'C:/OpenSpace/GlobeBrowsingData/Mars/CTX'
|
||||
|
||||
-- We recommend using this folder for CTX
|
||||
openspace.absPath('${ASSETS}/scene/solarsystem/planets/mars/map_service_configs/ESRI/CTX'),
|
||||
openspace.absPath('${BASE}/../OpenSpaceData/Mars/CTX'),
|
||||
-- if not and you have a custom path for CTX layers, enter it below
|
||||
'',
|
||||
|
||||
-- Our provided HiRISE layer
|
||||
openspace.absPath('${ASSETS}/scene/solarsystem/planets/mars/map_service_configs/ESRI/'),
|
||||
openspace.absPath('${ASSETS}/scene/solarsystem/planets/mars/map_service_configs/ESRI/HiRISE'),
|
||||
-- We recommend using this folder for HiRISE
|
||||
openspace.absPath('${BASE}/../OpenSpaceData/Mars/HiRISE'),
|
||||
-- if not and you have a custom path for HiRISE layers, enter it below
|
||||
@@ -40,6 +41,7 @@ local vrt_folders = {
|
||||
-- results
|
||||
-- example: 'C:/OpenSpace/GlobeBrowsingData/Moon'
|
||||
openspace.absPath('${BASE}/../OpenSpaceData/Moon'),
|
||||
openspace.absPath('${BASE}/../OpenSpaceData/Apollo'),
|
||||
''
|
||||
},
|
||||
Mercury = {
|
||||
|
||||
@@ -5,4 +5,4 @@ asset.export("webguiDevelopmentMode", false)
|
||||
-- 1) Set the above `webguiDevelopmentMode` to true
|
||||
-- 2) Clone the repository: https://github.com/OpenSpace/OpenSpace-WebGuiFrontend
|
||||
-- 3) Install nodejs (including npm)
|
||||
-- 4) Within the repository, run `npm install` and `npm start`
|
||||
-- 4) Within the repository, run `npm install` and `npm start`
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
-- This asset requires OpenSpace to be built with the OPENSPACE_MODULE_SYNC enabled
|
||||
|
||||
local assetHelper = asset.require("util/asset_helper")
|
||||
|
||||
asset.syncedResource({
|
||||
Type = "UrlSynchronization",
|
||||
Name = "Icons",
|
||||
Identifier = "planet_icons",
|
||||
Url = {
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/earth.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/moon.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/jupiter.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/mars.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/mercury.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/neptune.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/saturn.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/uranus.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/venus.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/callisto.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/europa.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/ganymede.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/icons/solarsystem/io.png",
|
||||
},
|
||||
UseHash = false
|
||||
})
|
||||
|
||||
asset.syncedResource({
|
||||
Type = "UrlSynchronization",
|
||||
Name = "Stories",
|
||||
Identifier = "story_images",
|
||||
Url = {
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_solarsystem.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_jupitermoons.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_earthweather.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_mars.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_galaxies.png",
|
||||
"http://data.openspaceproject.com/files/webgui/assets/images/stories/story_example.png",
|
||||
},
|
||||
UseHash = false
|
||||
})
|
||||
|
||||
asset.syncedResource({
|
||||
Type = "UrlSynchronization",
|
||||
Name = "Instructions",
|
||||
Identifier = "images",
|
||||
Url = "http://data.openspaceproject.com/files/webgui/assets/images/instructions.png",
|
||||
UseHash = false
|
||||
})
|
||||
@@ -1,29 +0,0 @@
|
||||
asset.require('./base')
|
||||
|
||||
asset.request('scene/solarsystem/planets/earth/satellites/navigation/gps')
|
||||
asset.request('scene/solarsystem/planets/earth/satellites/misc/spacestations')
|
||||
|
||||
asset.onInitialize(function ()
|
||||
local now = openspace.time.currentWallTime()
|
||||
-- Jump back one day to be able to show complete weather data on Earth.
|
||||
openspace.time.setTime(openspace.time.advancedTime(now, "-1d"))
|
||||
|
||||
openspace.addVirtualProperty(
|
||||
"BoolProperty",
|
||||
"Show Trails",
|
||||
"Scene.*Trail.Renderable.Enabled",
|
||||
"Disable or enable all trails of the scene at the same time",
|
||||
true,
|
||||
nil,
|
||||
nil
|
||||
)
|
||||
|
||||
openspace.globebrowsing.goToGeo("Earth", 58.5877, 16.1924, 20000000)
|
||||
|
||||
openspace.markInterestingNodes({ "Earth", "Sun" })
|
||||
end)
|
||||
|
||||
asset.onDeinitialize(function ()
|
||||
openspace.removeInterestingNodes({ "Earth", "Sun" })
|
||||
openspace.removeVirtualProperty("*Trail.Renderable.Enabled")
|
||||
end)
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "2dF Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_2dF_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,14 +22,16 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 1.0,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/2dF.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
ColorMap = speck .. "/lss.cmap",
|
||||
ColorOption = { "redshift", "prox5Mpc" },
|
||||
ColorRange = { { 0.0, 0.075 }, { 1.0, 50.0 } },
|
||||
ColorMap = speck .. "/2dF.cmap",
|
||||
ColorOption = { "redshift", "proximity" },
|
||||
ColorRange = { { 0.0, 0.075 }, { 1.0, 25.0 } },
|
||||
Unit = "Mpc",
|
||||
ScaleFactor = 508.0
|
||||
ScaleFactor = 520.0,
|
||||
BillboardMaxSize = 4.7,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "2dF Galaxies",
|
||||
|
||||
@@ -22,7 +22,7 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 0.4, 0.2 },
|
||||
Transparency = 1.0,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/2MASS.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
ColorMap = speck .. "/lss.cmap",
|
||||
@@ -31,7 +31,9 @@ local object = {
|
||||
Unit = "Mpc",
|
||||
CorrectionSizeEndDistance = 20.6,
|
||||
CorrectionSizeFactor = 15.0,
|
||||
ScaleFactor = 508.0
|
||||
ScaleFactor = 510.78,
|
||||
BillboardMaxSize = 11.15,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "2MASS Galaxies",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "6dF Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_6dF_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -21,15 +21,17 @@ local object = {
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 1.0,
|
||||
Color = { 1.0, 1.0, 0.0 },
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/6dF.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
ColorMap = speck .. "/lss.cmap",
|
||||
ColorOption = { "redshift", "prox5Mpc" },
|
||||
ColorRange = { { 0.0, 0.075 }, { 1.0, 50.0 } },
|
||||
ColorMap = speck .. "/6dF.cmap",
|
||||
ColorOption = { "redshift", "proximity" },
|
||||
ColorRange = { { 0.0, 0.075 }, { 1.0, 10.0 } },
|
||||
Unit = "Mpc",
|
||||
ScaleFactor = 508.0
|
||||
ScaleFactor = 534.0,
|
||||
BillboardMaxSize = 7.0,
|
||||
EnablePixelSizeControl = true,
|
||||
},
|
||||
GUI = {
|
||||
Name = "6dF Galaxies",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Abell Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_abell_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,8 +22,8 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 0.4, 0.2 },
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 525.0,
|
||||
Opacity = 1.0,
|
||||
--ColorMap = speck .. "/abell.cmap",
|
||||
File = speck .. "/abell.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
LabelFile = speck .. "/abell.label",
|
||||
@@ -36,7 +36,10 @@ local object = {
|
||||
-0.074553778365, -0.080991471307, 0.9939225904, 0.0,
|
||||
0.67314530211, 0.73127116582, 0.11008126223, 0.0,
|
||||
0.0, 0.0, 0.0, 1.0
|
||||
}
|
||||
},
|
||||
ScaleFactor = 520.0,
|
||||
BillboardMaxSize = 7.0,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Abell Galaxy Clusters",
|
||||
|
||||
@@ -15,7 +15,7 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
LabelFile = speck .. "/stars-altlbl.label",
|
||||
TextColor = { 0.4, 0.4, 0.4, 1.0 },
|
||||
DrawLabels = true,
|
||||
|
||||
@@ -6,7 +6,7 @@ local textures = asset.syncedResource({
|
||||
Name = "Background Radiation Textures",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_backgroundradiation_textures",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local speck = asset.syncedResource({
|
||||
@@ -214,7 +214,35 @@ local multiverse_planck_4 = {
|
||||
}
|
||||
|
||||
|
||||
local Halpha = {
|
||||
Identifier = "HAlpha",
|
||||
Transform = {
|
||||
Rotation = {
|
||||
Type = "StaticRotation",
|
||||
Rotation = {0, 0, 3.14159265359}
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
Type = "RenderableSphere",
|
||||
Enabled = false,
|
||||
Size = 9.2E21,
|
||||
Segments = 40,
|
||||
Opacity = 0.4,
|
||||
Texture = textures .. "/mwHalpha-f.png",
|
||||
Orientation = "Inside",
|
||||
UseAdditiveBlending = true,
|
||||
MirrorTexture = true,
|
||||
FadeOutThreshold = 0.025,
|
||||
Background = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "H Alpha",
|
||||
Path = "/Milky Way/All Sky Images"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, {
|
||||
wmap, cbe, planck, multiverse_planck_1, multiverse_planck_2, multiverse_planck_3,
|
||||
multiverse_planck_4
|
||||
multiverse_planck_4, Halpha
|
||||
})
|
||||
|
||||
@@ -6,7 +6,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Clusters Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_clusters_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -15,13 +15,19 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
LabelFile = speck .. "/galclust.label",
|
||||
TextColor = { 0.7, 0.3, 0.0, 1.0 },
|
||||
TextColor = { 1.0, 0.44, 0.0, 1.0 },
|
||||
DrawLabels = true,
|
||||
TextSize = 22,
|
||||
TextMinSize = 8.0,
|
||||
Unit = "Mpc"
|
||||
Unit = "Mpc",
|
||||
TransformationMatrix = {
|
||||
-0.7357425748, 0.67726129641, 0.0, 0.0,
|
||||
-0.074553778365, -0.080991471307, 0.9939225904, 0.0,
|
||||
0.67314530211, 0.73127116582, 0.11008126223, 0.0,
|
||||
0.0, 0.0, 0.0, 1.0
|
||||
},
|
||||
},
|
||||
GUI = {
|
||||
Name = "Galaxy Cluster Labels",
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
local assetHelper = asset.require('util/asset_helper')
|
||||
|
||||
local textures = asset.syncedResource({
|
||||
Name = "Deep Sky Objects Textures",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_deepsky_textures",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local speck = asset.syncedResource({
|
||||
Name = "Deep Sky Objects Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_deepsky_speck",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local deepSkyPoints = {
|
||||
Identifier = "DeepSkyObjects",
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 0.0 },
|
||||
Opacity = 0.99,
|
||||
ScaleFactor = 500.0,
|
||||
File = speck .. "/dso.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
--ColorMap = speck .. "/tully.cmap",
|
||||
--ColorMap = speck .. "/lss.cmap",
|
||||
--ColorOption = { "proximity" },
|
||||
--ColorOption = { "prox5Mpc" },
|
||||
--ColorRange = { { 1.0, 30.0 } },
|
||||
LabelFile = speck .. "/dso.label",
|
||||
TextColor = { 0.1, 0.4, 0.6, 1.0 },
|
||||
TextSize = 20.50,
|
||||
TextMinSize = 16.0,
|
||||
Unit = "Mpc",
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
--FadeInDistances = { 0.05, 1.0 },
|
||||
-- Max size in pixels
|
||||
BillboardMaxSize = 8.22,
|
||||
BillboardMinSize = 0.0,
|
||||
--CorrectionSizeEndDistance = 22.0,
|
||||
--CorrectionSizeFactor = 10.45
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Deep Sky Objects Points",
|
||||
Path = "/Universe/Galaxies"
|
||||
}
|
||||
}
|
||||
|
||||
local deepSkyImages = {
|
||||
Identifier = "DeepSkyObjectsImages",
|
||||
Renderable = {
|
||||
Type = "RenderablePlanesCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.99,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/dso.speck",
|
||||
TexturePath = textures,
|
||||
Luminosity = "radius",
|
||||
ScaleLuminosity = 0.001,
|
||||
Unit = "Mpc",
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
--FadeInDistances = {0.001, 0.05010},
|
||||
PlaneMinSize = 5.0
|
||||
},
|
||||
GUI = {
|
||||
Name = "Deep Sky Objects Images",
|
||||
Path = "/Universe/Galaxies"
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { deepSkyPoints, deepSkyImages })
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Brown Dwarf Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_dwarfs_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,16 +22,21 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.4, 0.0, 0.1 },
|
||||
Transparency = 0.999,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/dwarfs.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
LabelFile = speck .. "/dwarfs.label",
|
||||
ColorMap = speck .. "/dwarfs.cmap",
|
||||
ColorOption = { "typeindex" },
|
||||
--ColorRange = { { 1.0, 4.0} },
|
||||
TextColor = { 0.5, 0.1, 0.2, 1.0 },
|
||||
TextSize = 14.6,
|
||||
TextMinSize = 10.0,
|
||||
ScaleFactor = 360,
|
||||
CorrectionSizeEndDistance = 16.1,
|
||||
CorrectionSizeFactor = 7.75,
|
||||
ScaleFactor = 370,
|
||||
--CorrectionSizeEndDistance = 16.1,
|
||||
--CorrectionSizeFactor = 7.75,
|
||||
BillboardMaxSize = 18.0,
|
||||
EnablePixelSizeControl = true,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
|
||||
@@ -22,19 +22,21 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 1.0,
|
||||
ScaleFactor = 10.0,
|
||||
Texture = textures .. "/target-blue.png",
|
||||
File = speck .. "/expl.speck",
|
||||
LabelFile = speck .. "/expl.label",
|
||||
ScaleFactor = 380.0,
|
||||
ScaleFactor = 392.5,
|
||||
TextColor = { 0.3, 0.3, 0.8, 1.0 },
|
||||
TextSize = 14.8,
|
||||
TextMaxSize = 200.0,
|
||||
TextMinSize = 10.0,
|
||||
CorrectionSizeEndDistance = 15.23,
|
||||
CorrectionSizeFactor = 13.3,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 52.0,
|
||||
EnablePixelSizeControl = true,
|
||||
},
|
||||
GUI = {
|
||||
Path = "/Milky Way/Exoplanets"
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Globular Clusters Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_globularclusters_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,17 +22,19 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.8, 0.8, 0.0 },
|
||||
Transparency = 0.35,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/gc.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 5,
|
||||
LabelFile = speck .. "/gc.label",
|
||||
TextColor = { 0.5, 0.5, 0.0, 1.0 },
|
||||
ScaleFactor = 440.0,
|
||||
TextSize = 17.5,
|
||||
TextSize = 18.6,
|
||||
TextMinSize = 10.0,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
TextMaxSize = 14.4,
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 13.5,
|
||||
EnablePixelSizeControl = true,
|
||||
},
|
||||
GUI = {
|
||||
Name = "Globular Clusters",
|
||||
|
||||
@@ -24,7 +24,7 @@ local radio = {
|
||||
Renderable = {
|
||||
Type = "RenderableSphericalGrid",
|
||||
Enabled = false,
|
||||
GridColor = { 1.0, 1.0, 0.3, 0.75},
|
||||
GridColor = { 0.3, 0.84, 1.0, 0.3},
|
||||
LineWidth = 2.0,
|
||||
GridMatrix = { -0.05487554, 0.4941095, -0.8676661 , 0.0,
|
||||
-0.9938214 , -0.1109906, -0.0003515167, 0.0,
|
||||
@@ -74,7 +74,7 @@ local ecliptic = {
|
||||
Renderable = {
|
||||
Type = "RenderableSphericalGrid",
|
||||
Enabled = false,
|
||||
GridColor = { 0.7, 0.0, 0.0, 0.5},
|
||||
GridColor = { 0.74, 0.26, 0.26, 0.5},
|
||||
LineWidth = 2.0,
|
||||
GridMatrix = { -0.05487554, 0.4941095, -0.8676661 , 0.0,
|
||||
-0.9938214 , -0.1109906, -0.0003515167, 0.0,
|
||||
@@ -121,13 +121,13 @@ local equatorial = {
|
||||
Transform = {
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 6.2440846E17;
|
||||
Scale = 4.28601E17;
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
Type = "RenderableSphericalGrid",
|
||||
Enabled = false,
|
||||
GridColor = { 0.0, 0.0, 1.0, 0.8},
|
||||
GridColor = { 0.69, 0.68, 0.29, 0.8},
|
||||
LineWidth = 2.0,
|
||||
GridMatrix = { -0.05487554, 0.4941095, -0.8676661, 0.0,
|
||||
-0.8734371 , -0.4448296, -0.1980764, 0.0,
|
||||
|
||||
@@ -15,16 +15,23 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
--ScaleFactor = 10.0,
|
||||
LabelFile = speck .. "/groups.label",
|
||||
TextColor = { 0.1, 0.6, 0.2, 1.0 },
|
||||
TextSize = 21.5,
|
||||
TextMinSize = 8.0,
|
||||
Unit = "Mpc"
|
||||
Unit = "Mpc",
|
||||
DrawLabels = true,
|
||||
TransformationMatrix = {
|
||||
-0.7357425748, 0.67726129641, 0.0, 0.0,
|
||||
-0.074553778365, -0.080991471307, 0.9939225904, 0.0,
|
||||
0.67314530211, 0.73127116582, 0.11008126223, 0.0,
|
||||
0.0, 0.0, 0.0, 1.0
|
||||
},
|
||||
},
|
||||
GUI = {
|
||||
Name = "Nearby Galaxy Groups",
|
||||
Name = "Galaxy Group Labels",
|
||||
Path = "/Universe/Galaxies"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "HII Regions Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_h2regions_speck",
|
||||
Version = 2
|
||||
Version = 3
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,17 +22,19 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.0, 0.5, 1.0 },
|
||||
Transparency = 0.35,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/h2.speck",
|
||||
Texture = textures .."/point4.png",
|
||||
PolygonSides = 6,
|
||||
LabelFile = speck .. "/h2.label",
|
||||
TextColor = { 0.5, 0.5, 0.5, 1.0 },
|
||||
ScaleFactor = 420,
|
||||
ScaleFactor = 425,
|
||||
TextSize = 17.25,
|
||||
TextMinSize = 10.0,
|
||||
TextMinSize = 30.0,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 25.0,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "HII Regions",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Kepler Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_kepler_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,13 +22,15 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 0.0 },
|
||||
Transparency = 0.99,
|
||||
ScaleFactor = 395.0,
|
||||
Opacity = 0.99,
|
||||
ScaleFactor = 410.0,
|
||||
File = speck .. "/kepler.speck",
|
||||
Texture = textures .. "/halo.png",
|
||||
CorrectionSizeEndDistance = 15.86,
|
||||
CorrectionSizeFactor = 8.59,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 23.0,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Kepler Planetary Candidates",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Local Dwarfs Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_localdwarfs_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,19 +22,23 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.5, 1.0, 0.2 },
|
||||
Transparency = 0.3,
|
||||
File = speck .. "/localdwarfs.speck",
|
||||
ColorMap = speck .. "/localgroup.cmap",
|
||||
ColorOption = { "association" },
|
||||
Opacity = 0.3,
|
||||
File = speck .. "/localgroup.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 12,
|
||||
LabelFile = speck .. "/localdwarfs.label",
|
||||
LabelFile = speck .. "/localgroup.label",
|
||||
TextColor = { 0.3, 0.3, 1.0, 1.0 },
|
||||
ScaleFactor = 478,
|
||||
ScaleFactor = 465,
|
||||
TextSize = 18.3,
|
||||
TextMinSize = 7.3,
|
||||
Unit = "Mpc"
|
||||
Unit = "Mpc",
|
||||
BillboardMaxSize = 20.0,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Local Dwarf Galaxies",
|
||||
Name = "Local Group",
|
||||
Path = "/Universe/Galaxies"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,13 @@ local planeSpeck = asset.syncedResource({
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local homespeck = asset.syncedResource({
|
||||
Name = "Home Speck File",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_home_speck",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local sphere = {
|
||||
Identifier = "MilkyWay",
|
||||
Transform = {
|
||||
@@ -40,7 +47,7 @@ local sphere = {
|
||||
Orientation = "Inside",
|
||||
UseAdditiveBlending = true,
|
||||
MirrorTexture = true,
|
||||
FadeOutThreshold = 0.025,
|
||||
FadeOutThreshold = 0.0015,
|
||||
Background = true
|
||||
},
|
||||
GUI = {
|
||||
@@ -73,6 +80,43 @@ local plane = {
|
||||
}
|
||||
}
|
||||
|
||||
local homeLabel = {
|
||||
Identifier = "HomeLabel",
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 0.4, 0.2 },
|
||||
Opacity = 0.99,
|
||||
ScaleFactor = 500.0,
|
||||
--File = homespeck .. "/home.speck",
|
||||
-- Texture = textures .. "/point3.png",
|
||||
DrawLabels = true,
|
||||
LabelFile = homespeck .. "/home.label",
|
||||
TextColor = { 0.8, 0.8, 0.8, 1.0 },
|
||||
TextSize = 20.50,
|
||||
TextMinSize = 16.0,
|
||||
TransformationMatrix = {
|
||||
-0.7357425748, 0.67726129641, 0.0, 0.0,
|
||||
-0.074553778365, -0.080991471307, 0.9939225904, 0.0,
|
||||
0.67314530211, 0.73127116582, 0.11008126223, 0.0,
|
||||
0.0, 0.0, 0.0, 1.0
|
||||
},
|
||||
Unit = "Mpc",
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
FadeInDistances = { 0.05, 1.0 },
|
||||
-- Max size in pixels
|
||||
BillboardMaxSize = 8.22,
|
||||
BillboardMinSize = 0.0,
|
||||
--CorrectionSizeEndDistance = 22.0,
|
||||
--CorrectionSizeFactor = 10.45
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Home Label",
|
||||
Path = "/Universe/Galaxies"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { sphere, plane })
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { sphere, plane, homeLabel })
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "OB Associations Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_obassociations_speck",
|
||||
Version = 2
|
||||
Version = 3
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -21,18 +21,24 @@ local object = {
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.0, 0.0, 1.0 },
|
||||
Transparency = 0.5,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
ColorMap = speck .. "/ob.cmap",
|
||||
ColorOption = { "arm" },
|
||||
SizeOption = {"diameter"},
|
||||
ExactColorMap = true,
|
||||
Opacity = 0.9,
|
||||
File = speck .. "/ob.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 7,
|
||||
LabelFile = speck .. "/ob.label",
|
||||
TextColor = { 0.4, 0.5, 1.0, 1.0 },
|
||||
ScaleFactor = 428.0,
|
||||
ScaleFactor = 390.0,
|
||||
TextSize = 17.0,
|
||||
TextMinSize = 5.76,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
--BillboardMaxSize = 21.0,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "OB Associations",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Open Clusters Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_openclusters_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,7 +22,7 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.1, 0.8, 0.4 },
|
||||
Transparency = 0.5,
|
||||
Opacity = 0.5,
|
||||
File = speck .. "/oc.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 12,
|
||||
@@ -32,7 +32,9 @@ local object = {
|
||||
TextSize = 16.68,
|
||||
TextMinSize = 4.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 20.22,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Open Star Clusters",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Planetary Nebulae Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_planetarynebulae_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,17 +22,19 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.4, 0.4, 0.9 },
|
||||
Transparency = 0.35,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/pn.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 3,
|
||||
LabelFile = speck .. "/pn.label",
|
||||
TextColor = { 0.25, 0.25, 0.65, 1.0 },
|
||||
ScaleFactor = 418.33,
|
||||
ScaleFactor = 435.0,
|
||||
TextSize = 16.68,
|
||||
TextMinSize = 4.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 35,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Planetary Nebulae",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Pulsars Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_pulsars_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,7 +22,7 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 0.7, 0.0, 0.0 },
|
||||
Transparency = 0.5,
|
||||
Opacity = 1.0,
|
||||
File = speck .. "/pulsar.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 4,
|
||||
@@ -32,7 +32,9 @@ local object = {
|
||||
TextSize = 16.68,
|
||||
TextMinSize = 7.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 35,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Path = "/Milky Way"
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Quasars Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_quasars_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,15 +22,17 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = true,
|
||||
Color = { 1.0, 0.4, 0.2 },
|
||||
Transparency = 1.0,
|
||||
Opacity = 0.95,
|
||||
File = speck .. "/quasars.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
Unit = "Mpc",
|
||||
ScaleFactor = 537.31,
|
||||
ScaleFactor = 540.9,
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
FadeInDistances = { 1000.0, 10000.0 },
|
||||
BillboardMaxSize = 30.0,
|
||||
BillboardMinSize = 0.0,
|
||||
BillboardMaxSize = 11.1,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Path = "/Universe"
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Sloan Digital Sky Survey Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_sloandss_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,11 +22,11 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = true,
|
||||
Color = { 0.8, 0.8, 1.0 },
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 507.88,
|
||||
Opacity = 0.8,
|
||||
ScaleFactor = 520.0,
|
||||
File = speck .. "/SDSSgals.speck",
|
||||
ColorMap = speck .. "/lss.cmap",
|
||||
ColorOption = { "redshift", "prox5Mpc" },
|
||||
ColorMap = speck .. "/SDSSgals.cmap",
|
||||
ColorOption = { "redshift", "proximity" },
|
||||
ColorRange = { { 0.0, 0.075 }, { 1.0, 50.0 } },
|
||||
Texture = textures .. "/point3.png",
|
||||
Unit = "Mpc",
|
||||
@@ -38,7 +38,9 @@ local object = {
|
||||
CorrectionSizeFactor = 10.41,
|
||||
TextSize = 14.8,
|
||||
TextMinSize = 10.0,
|
||||
TextMaxSize = 50.0
|
||||
TextMaxSize = 50.0,
|
||||
BillboardMaxSize = 5.5,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Sloan Digital Sky Survey",
|
||||
|
||||
@@ -15,7 +15,7 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
LabelFile = speck .. "/stars.label",
|
||||
TextColor = { 0.4, 0.4, 0.4, 1.0 },
|
||||
DrawLabels = true,
|
||||
|
||||
@@ -0,0 +1,184 @@
|
||||
local assetHelper = asset.require('util/asset_helper')
|
||||
local transforms = asset.require('scene/solarsystem/sun/transforms')
|
||||
local earth_transforms = asset.require('scene/solarsystem/planets/earth/transforms')
|
||||
|
||||
|
||||
local speck = asset.syncedResource({
|
||||
Name = "Grids Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_starorbits_speck",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local sunOrbit = {
|
||||
Identifier = "SunOrbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 0.65, 0.0 },
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-Sun.speck",
|
||||
MeshColor = {{ 1.0, 0.65, 0.0 }},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "Sun Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local barnardsOrbit = {
|
||||
Identifier = "BarnardsOrbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-BarnardsStar.speck",
|
||||
MeshColor = {{0.39, 0.58, 0.93}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "Barnards Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local kapteynsOrbit = {
|
||||
Identifier = "KapteynsOrbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-kapteynsStar.speck",
|
||||
MeshColor = {{0.6, 0.6, 0.6}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "Kapteyns Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local lacaille9352Orbit = {
|
||||
Identifier = "Lacaille9352Orbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-Lacaille9352.speck",
|
||||
MeshColor = {{0.58, 0.0, 0.83}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "Lacaille 9352 Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local lSR1826Orbit = {
|
||||
Identifier = "LSR1826Orbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-LSR1826+3014.speck",
|
||||
MeshColor = {{0.0, 0.39, 0.0}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "LSR1826+3014 Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local lSRJ0822Orbit = {
|
||||
Identifier = "LSRJ0822Orbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-LSRJ0822+1700.speck",
|
||||
MeshColor = {{0.5, 1.0, 0.0}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "LSRJ0822+1700 Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
local pM_J13420Orbit = {
|
||||
Identifier = "PM_J13420Orbit",
|
||||
--Parent = transforms.SolarSystemBarycenter.Name,
|
||||
Renderable = {
|
||||
Type = "RenderableDUMeshes",
|
||||
Enabled = false,
|
||||
Color = {1.0, 1.0, 1.0},
|
||||
Transparency = 1.0,
|
||||
ScaleFactor = 1.0,
|
||||
File = speck .. "/starorbits-PM_J13420-3415.speck",
|
||||
MeshColor = {{0.70, 0.13, 0.13}},
|
||||
--LabelFile = speck .. "/1ld.label",
|
||||
TextColor = { 0.0, 0.2, 0.5, 1.0 },
|
||||
TextSize = 10.3,
|
||||
TextMinSize = 0.5,
|
||||
TextMaxSize = 30.0,
|
||||
Unit = "pc"
|
||||
},
|
||||
GUI = {
|
||||
Name = "PM_J13420-3415 Orbit",
|
||||
Path = "/Milky Way/Stars/Stars Orbits"
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, {
|
||||
sunOrbit, barnardsOrbit, pM_J13420Orbit, lSRJ0822Orbit, lSR1826Orbit,
|
||||
lacaille9352Orbit, kapteynsOrbit
|
||||
})
|
||||
@@ -13,7 +13,14 @@ local speck = asset.syncedResource({
|
||||
Name = "Stars Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "stars_du",
|
||||
Version = 3
|
||||
Version = 4
|
||||
})
|
||||
|
||||
local sunspeck = asset.syncedResource({
|
||||
Name = "Stars Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_sunstar_speck",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local colorLUT = asset.syncedResource({
|
||||
@@ -40,4 +47,23 @@ local stars = {
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { stars })
|
||||
local sunstar = {
|
||||
Identifier = "SunStar",
|
||||
Renderable = {
|
||||
Type = "RenderableStars",
|
||||
File = sunspeck .. "/sunstar.speck",
|
||||
Texture = textures .. "/halo.png",
|
||||
--ShapeTexture = textures .. "/disc.png",
|
||||
ColorMap = colorLUT .. "/colorbv.cmap",
|
||||
MagnitudeExponent = 6.2,
|
||||
SizeComposition = "Distance Modulus",
|
||||
RenderMethod = "Texture Based", -- or PSF
|
||||
FadeInDistances = {0.0001, 0.1}
|
||||
},
|
||||
GUI = {
|
||||
Name = "Sun",
|
||||
Path = "/Milky Way/Stars"
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { stars, sunstar })
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Galaxy Superclusters Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_superclusters_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -21,16 +21,20 @@ local object = {
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
DrawElements = false,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
File = speck .. "/superclust.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
LabelFile = speck .. "/superclust.label",
|
||||
TextColor = { 0.6, 0.6, 0.6, 1.0 },
|
||||
TextColor = { 0.9, 0.9, 0.9, 1.0 },
|
||||
ScaleFactor = 531.0,
|
||||
TextSize = 22.44,
|
||||
TextMinSize = 8.0,
|
||||
Unit = "Mpc"
|
||||
Unit = "Mpc",
|
||||
DrawLabels = true,
|
||||
--BillboardMaxSize = 7.2,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Galaxy Superclusters",
|
||||
|
||||
@@ -13,7 +13,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Supernova Remnants Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_supernovaremnants_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -22,19 +22,21 @@ local object = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
Color = { 1.0, 0.5, 0.0 },
|
||||
Transparency = 0.5,
|
||||
Opacity = 0.9,
|
||||
File = speck .. "/snr.speck",
|
||||
Texture = textures .. "/point4.png",
|
||||
PolygonSides = 7,
|
||||
LabelFile = speck .. "/snr.label",
|
||||
TextColor = { 0.6, 0.3, 0.0, 1.0 },
|
||||
ScaleFactor = 440.08,
|
||||
ScaleFactor = 435,
|
||||
TextSize = 17.5,
|
||||
TextMinSize = 8.0,
|
||||
TextMaxSize = 30.0,
|
||||
CorrectionSizeEndDistance = 17.5,
|
||||
CorrectionSizeFactor = 13.96,
|
||||
Unit = "pc"
|
||||
--CorrectionSizeEndDistance = 17.5,
|
||||
--CorrectionSizeFactor = 13.96,
|
||||
Unit = "pc",
|
||||
BillboardMaxSize = 27.2,
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Supernova Remnants",
|
||||
|
||||
@@ -22,13 +22,15 @@ local tullyPoints = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = true,
|
||||
Color = { 1.0, 0.4, 0.2 },
|
||||
Transparency = 0.99,
|
||||
ScaleFactor = 502.77,
|
||||
Opacity = 0.99,
|
||||
ScaleFactor = 500.0,
|
||||
File = speck .. "/tully.speck",
|
||||
Texture = textures .. "/point3.png",
|
||||
--ColorMap = speck .. "/tully.cmap",
|
||||
ColorMap = speck .. "/lss.cmap",
|
||||
--ColorOption = { "proximity" },
|
||||
ColorOption = { "prox5Mpc" },
|
||||
ColorRange = { { 1.0, 80.0 } },
|
||||
ColorRange = { { 1.0, 30.0 } },
|
||||
LabelFile = speck .. "/tully.label",
|
||||
TextColor = { 0.7, 0.7, 0.7, 1.0 },
|
||||
TextSize = 20.50,
|
||||
@@ -43,10 +45,11 @@ local tullyPoints = {
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
FadeInDistances = { 0.05, 1.0 },
|
||||
-- Max size in pixels
|
||||
BillboardMaxSize = 50.0,
|
||||
BillboardMaxSize = 8.22,
|
||||
BillboardMinSize = 0.0,
|
||||
CorrectionSizeEndDistance = 22.0,
|
||||
CorrectionSizeFactor = 10.45
|
||||
--CorrectionSizeEndDistance = 22.0,
|
||||
--CorrectionSizeFactor = 10.45
|
||||
EnablePixelSizeControl = true
|
||||
},
|
||||
GUI = {
|
||||
Name = "Tully Galaxies",
|
||||
@@ -74,7 +77,7 @@ local tullyImages = {
|
||||
},
|
||||
Unit = "Mpc",
|
||||
-- Fade in value in the same unit as "Unit"
|
||||
FadeInDistances = {0.05, 0.1},
|
||||
FadeInDistances = {0.001, 0.05010},
|
||||
PlaneMinSize = 5.0
|
||||
},
|
||||
GUI = {
|
||||
@@ -84,5 +87,4 @@ local tullyImages = {
|
||||
}
|
||||
|
||||
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { tullyPoints, tullyImages })
|
||||
|
||||
@@ -6,7 +6,7 @@ local speck = asset.syncedResource({
|
||||
Name = "Voids Speck Files",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "digitaluniverse_voids_speck",
|
||||
Version = 1
|
||||
Version = 2
|
||||
})
|
||||
|
||||
local object = {
|
||||
@@ -14,11 +14,12 @@ local object = {
|
||||
Renderable = {
|
||||
Type = "RenderableBillboardsCloud",
|
||||
Enabled = false,
|
||||
DrawElements = false,
|
||||
DrawLabels = true,
|
||||
Color = { 1.0, 1.0, 1.0 },
|
||||
Transparency = 0.65,
|
||||
Opacity = 0.65,
|
||||
LabelFile = speck .. "/voids.label",
|
||||
TextColor = { 0.0, 0.4, 0.7, 1.0 },
|
||||
TextColor = { 0.296, 0.629, 1.0, 1.0 },
|
||||
TextSize = 20.9,
|
||||
TextMinSize = 8.0,
|
||||
Unit = "Mpc"
|
||||
|
||||
@@ -10,15 +10,25 @@ local data = asset.syncedResource({
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local kiloparsec = 3.086E19
|
||||
|
||||
local MilkyWayVolumeGalaxy = {
|
||||
Identifier = "Milky Way Volume",
|
||||
Identifier = "MilkyWayVolume",
|
||||
Parent = transforms.SolarSystemBarycenter.Identifier,
|
||||
Transform = {
|
||||
Translation = {
|
||||
Type = "StaticTranslation",
|
||||
-- The center of the Milky Way is approximately 8 kiloparsec from the Sun.
|
||||
-- The x-axis of galactic coordinates points from the sun towards the center
|
||||
-- of the galaxy.
|
||||
Position = {8 * kiloparsec, 0, 0}
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
Type = "RenderableGalaxy",
|
||||
StepSize = 0.01,
|
||||
AbsorptionMultiply = 75,
|
||||
EmissionMultiply = 200,
|
||||
Translation = {0.2, 0, 0},
|
||||
AbsorptionMultiply = 200,
|
||||
EmissionMultiply = 250,
|
||||
Rotation = {3.1415926, 3.1248, 4.45741},
|
||||
Volume = {
|
||||
Type = "Volume",
|
||||
@@ -34,9 +44,10 @@ local MilkyWayVolumeGalaxy = {
|
||||
}
|
||||
},
|
||||
GUI = {
|
||||
Path = "/Milky Way"
|
||||
Path = "/Milky Way",
|
||||
Name = "Milky Way Volume"
|
||||
}
|
||||
}
|
||||
|
||||
local objects = { MilkyWayVolumeGalaxy }
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, objects)
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, objects)
|
||||
|
||||
@@ -20,10 +20,6 @@ local Charon = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_CHARON",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -7,7 +7,8 @@ local Kernels = asset.syncedResource({
|
||||
|
||||
local PlutoKernels = {
|
||||
Kernels .. "/NavPE_de433_od122.bsp",
|
||||
Kernels .. "/NavSE_plu047_od122.bsp"
|
||||
Kernels .. "/NavSE_plu047_od122.bsp",
|
||||
Kernels .. "/ssd_jpl_nasa_gov_plu043.bsp"
|
||||
}
|
||||
|
||||
asset.export("PlutoKernels", PlutoKernels)
|
||||
|
||||
@@ -20,10 +20,6 @@ local Pluto = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_PLUTO",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
local assetHelper = asset.require('util/asset_helper')
|
||||
local sunTransforms = asset.require('scene/solarsystem/sun/transforms')
|
||||
|
||||
local trajectory = asset.syncedResource({
|
||||
Name = "C-2019 Q4 Borisov Trajectory",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "borisov_horizons",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local C2019Q4BorisovTrail = {
|
||||
Identifier = "C2019Q4BorisovTrail",
|
||||
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
|
||||
Renderable = {
|
||||
Type = "RenderableTrailTrajectory",
|
||||
Translation = {
|
||||
Type = "HorizonsTranslation",
|
||||
HorizonsTextFile = trajectory .. "/horizons_c2019q4borisov.dat"
|
||||
},
|
||||
Color = { 0.9, 0.9, 0.0 },
|
||||
StartTime = "2015 JAN 01 00:00:00",
|
||||
EndTime = "2024 JAN 01 00:00:00",
|
||||
SampleInterval = 60
|
||||
},
|
||||
GUI = {
|
||||
Name = "C-2019 Q4 Borisov Trail",
|
||||
Path = "/Solar System/Interstellar"
|
||||
}
|
||||
}
|
||||
|
||||
local C2019Q4BorisovPosition = {
|
||||
Identifier = "C2019Q4BorisovPosition",
|
||||
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
|
||||
Transform = {
|
||||
Translation = {
|
||||
Type = "HorizonsTranslation",
|
||||
HorizonsTextFile = trajectory .. "/horizons_c2019q4borisov.dat"
|
||||
},
|
||||
},
|
||||
GUI = {
|
||||
Name = "C-2019 Q4 Borisov",
|
||||
Path = "/Solar System/Interstellar"
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { C2019Q4BorisovPosition, C2019Q4BorisovTrail })
|
||||
@@ -39,6 +39,7 @@ local Apollo17LemModel = {
|
||||
Type = "MultiModelGeometry",
|
||||
GeometryFile = model.modelFolder .. "/LM-2_ver2clean.obj"
|
||||
},
|
||||
SpecularIntensity = 0.0,
|
||||
ColorTexture = model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg",
|
||||
LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier)
|
||||
},
|
||||
|
||||
@@ -196,6 +196,7 @@ local Apollo11LemDescentModel = {
|
||||
Type = "MultiModelGeometry",
|
||||
GeometryFile = model.modelFolder .. "/lmremoved.obj"
|
||||
},
|
||||
SpecularIntensity = 0.0,
|
||||
ColorTexture = model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg",
|
||||
LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier)
|
||||
},
|
||||
@@ -225,6 +226,7 @@ local Apollo11LemLandedModel = {
|
||||
Type = "MultiModelGeometry",
|
||||
GeometryFile = model.modelFolder .. "/LM-2_ver2clean.obj"
|
||||
},
|
||||
SpecularIntensity = 0.0,
|
||||
ColorTexture = model.modelFolder .. "/LM-2_ver2clean_u1_v1.jpeg",
|
||||
LightSources = assetHelper.getDefaultLightSources(sunTransforms.SolarSystemBarycenter.Identifier)
|
||||
},
|
||||
|
||||
@@ -46,10 +46,6 @@ local PlutoProjection = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_PLUTO",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -14,12 +14,6 @@ local mapServiceConfigsPath = asset.localResource("map_service_configs")
|
||||
local Earth = {
|
||||
Identifier = "Earth",
|
||||
Parent = transforms.EarthIAU.Identifier,
|
||||
Transform = {
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
Type = "RenderableGlobe",
|
||||
Radii = earthEllipsoid,
|
||||
@@ -132,7 +126,7 @@ local Earth = {
|
||||
Name = "AMSR2 GCOM W1 Sea Ice Concentration (Temporal)",
|
||||
Type = "TemporalTileLayer",
|
||||
FilePath = openspace.globebrowsing.createTemporalGibsGdalXml(
|
||||
"AMSR2_Sea_Ice_Concentration_12km",
|
||||
"AMSRU2_Sea_Ice_Concentration_12km",
|
||||
"2012-05-08",
|
||||
"Yesterday",
|
||||
"1d",
|
||||
|
||||
@@ -35,42 +35,62 @@ local Moon = {
|
||||
Identifier = "WAC_Utah",
|
||||
Name = "WAC [Utah]",
|
||||
FilePath = mapServiceConfigs .. "/Utah/Wac.wms",
|
||||
Enabled = true
|
||||
Enabled = true,
|
||||
Settings = { Multiplier = 2.0 }
|
||||
},
|
||||
{
|
||||
Identifier = "WAC_Sweden",
|
||||
Name = "WAC [Sweden]",
|
||||
FilePath = mapServiceConfigs .. "/LiU/WAC.wms"
|
||||
FilePath = mapServiceConfigs .. "/LiU/WAC.wms",
|
||||
Settings = { Multiplier = 2.0 }
|
||||
},
|
||||
{
|
||||
Identifier = "ClemUvvis_Utah",
|
||||
Name = "Clem Uvvis [Utah]",
|
||||
FilePath = mapServiceConfigs .. "/Utah/ClemUvvis.wms"
|
||||
FilePath = mapServiceConfigs .. "/Utah/ClemUvvis.wms",
|
||||
Settings = { Multiplier = 2.0 }
|
||||
},
|
||||
{
|
||||
Identifier = "ClemUvvis_Sweden",
|
||||
Name = "Clem Uvvis [Sweden]",
|
||||
FilePath = mapServiceConfigs .. "/LiU/Clem_Uvvis.wms"
|
||||
FilePath = mapServiceConfigs .. "/LiU/Clem_Uvvis.wms",
|
||||
Settings = { Multiplier = 2.0 }
|
||||
},
|
||||
{
|
||||
Identifier = "UvvisHybrid_Utah",
|
||||
Name = "Uvvis Hybrid [Utah]",
|
||||
FilePath = mapServiceConfigs .. "/Utah/UvvisHybrid.wms"
|
||||
FilePath = mapServiceConfigs .. "/Utah/UvvisHybrid.wms",
|
||||
Settings = {
|
||||
Gamma = 0.75,
|
||||
Multiplier = 1.5
|
||||
}
|
||||
},
|
||||
{
|
||||
Identifier = "UvvisHybrid_Sweden",
|
||||
Name = "Uvvis Hybrid [Sweden]",
|
||||
FilePath = mapServiceConfigs .. "/LiU/Uvvis_Hybrid.wms"
|
||||
FilePath = mapServiceConfigs .. "/LiU/Uvvis_Hybrid.wms",
|
||||
Settings = {
|
||||
Gamma = 0.75,
|
||||
Multiplier = 1.5
|
||||
}
|
||||
},
|
||||
{
|
||||
Identifier = "Kaguya_Utah",
|
||||
Name = "Kaguya [Utah]",
|
||||
FilePath = mapServiceConfigs .. "/Utah/Kaguya.wms"
|
||||
FilePath = mapServiceConfigs .. "/Utah/Kaguya.wms",
|
||||
Settings = {
|
||||
Gamma = 1.12,
|
||||
Multiplier = 2.7
|
||||
}
|
||||
},
|
||||
{
|
||||
Identifier = "Kaguya_Sweden",
|
||||
Name = "Kaguya [Sweden]",
|
||||
FilePath = mapServiceConfigs .. "/LiU/Kaguya.wms"
|
||||
FilePath = mapServiceConfigs .. "/LiU/Kaguya.wms",
|
||||
Settings = {
|
||||
Gamma = 1.12,
|
||||
Multiplier = 2.7
|
||||
}
|
||||
},
|
||||
{
|
||||
Identifier = "Lola_Clr_Shade_Utah",
|
||||
|
||||
@@ -29,7 +29,7 @@ local Io = {
|
||||
Target = "IO",
|
||||
Observer = "JUPITER BARYCENTER",
|
||||
Kernels = kernel
|
||||
},
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
Type = "RenderableGlobe",
|
||||
|
||||
@@ -20,10 +20,6 @@ local Jupiter = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_JUPITER",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -16,7 +16,7 @@ local Atmosphere = {
|
||||
PlanetRadius = 3386.190,
|
||||
PlanetAverageGroundReflectance = 0.1,
|
||||
GroundRadianceEmittion = 0.37,
|
||||
SunIntensity = 6.7,
|
||||
SunIntensity = 13.1,
|
||||
MieScatteringExtinctionPropCoefficient = 0.23862,
|
||||
Rayleigh = {
|
||||
Coefficients = {
|
||||
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
Name = "CTX Blended beta01"
|
||||
Identifier = "CTXblended"
|
||||
Description = "Seam-corrected and seam-mapped mosaic of Mars CTX created by Jay Dixon at The Murray Lab"
|
||||
HeightFile = nil
|
||||
ColorFile = "CTXblended.vrt"
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
<GDAL_WMS>
|
||||
<Service name="TMS">
|
||||
<ServerUrl>http://astro.arcgis.com/arcgis/rest/services/OnMars/CTX/MapServer/tile/${z}/${y}/${x}</ServerUrl>
|
||||
</Service>
|
||||
<DataWindow>
|
||||
<UpperLeftX>-180.0</UpperLeftX> <UpperLeftY>90.0</UpperLeftY>
|
||||
<LowerRightX>180.0</LowerRightX> <LowerRightY>-90.0</LowerRightY>
|
||||
<SizeX>4194304</SizeX> <SizeY>2097152</SizeY>
|
||||
<TileLevel>12</TileLevel> <YOrigin>top</YOrigin>
|
||||
</DataWindow>
|
||||
<Projection>GEOGCS["GCS_Mars_2000_Sphere",DATUM["D_Mars_2000_Sphere",SPHEROID["Mars_2000_Sphere_IAU_IAG",3396190.0,0.0]],PRIMEM["Reference_Meridian",0.0],UNIT["Degree",0.0174532925199433]]</Projection>
|
||||
<BlockSizeX>512</BlockSizeX>
|
||||
<BlockSizeY>512</BlockSizeY>
|
||||
<BandsCount>1</BandsCount>
|
||||
<MaxConnections>5</MaxConnections>
|
||||
<DataValues NoData="0"></DataValues>
|
||||
<ZeroBlockHttpCodes>404,400</ZeroBlockHttpCodes>
|
||||
</GDAL_WMS>
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
<VRTDataset rasterXSize="11534336" rasterYSize="2097152">
|
||||
<SRS>GEOGCS["GCS_Mars_2000_Sphere",DATUM["D_Mars_2000_Sphere",SPHEROID["Mars_2000_Sphere_IAU_IAG",3396190.0,0.0]],PRIMEM["Reference_Meridian",0.0],UNIT["Degree",0.0174532925199433]]</SRS>
|
||||
<GeoTransform> -8.1000000000000000e+02, 8.5830688476562500e-05, 0.0000000000000000e+00, 9.0000000000000000e+01, 0.0000000000000000e+00, -8.5830688476562500e-05</GeoTransform>
|
||||
<VRTRasterBand dataType="Byte" band="1">
|
||||
<NoDataValue>0.00000000000000E+00</NoDataValue>
|
||||
<ColorInterp>Gray</ColorInterp>
|
||||
<ComplexSource>
|
||||
<SourceFilename relativeToVRT="1">CTXblended.tif</SourceFilename>
|
||||
<SourceBand>1</SourceBand>
|
||||
<SourceProperties RasterXSize="4194304" RasterYSize="2097152" DataType="Byte" BlockXSize="512" BlockYSize="512" />
|
||||
<SrcRect xOff="0" yOff="0" xSize="4194304" ySize="2097152" />
|
||||
<DstRect xOff="7340032" yOff="0" xSize="4194304" ySize="2097152" />
|
||||
<NODATA>0</NODATA>
|
||||
</ComplexSource>
|
||||
</VRTRasterBand>
|
||||
<VRTRasterBand dataType="Byte" band="2">
|
||||
<NoDataValue>0</NoDataValue>
|
||||
<ColorInterp>Alpha</ColorInterp>
|
||||
<ComplexSource>
|
||||
<SourceFilename relativeToVRT="1">CTXblended.tif</SourceFilename>
|
||||
<SourceBand>1</SourceBand>
|
||||
<SourceProperties RasterXSize="4194304" RasterYSize="2097152" DataType="Byte" BlockXSize="512" BlockYSize="512" />
|
||||
<SrcRect xOff="0" yOff="0" xSize="4194304" ySize="2097152" />
|
||||
<DstRect xOff="7340032" yOff="0" xSize="4194304" ySize="2097152" />
|
||||
<LUT>0:0,1:255,255:255</LUT>
|
||||
</ComplexSource>
|
||||
</VRTRasterBand>
|
||||
</VRTDataset>
|
||||
@@ -153,10 +153,6 @@ local Mars = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_MARS",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -189,10 +189,6 @@ local Mercury = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_MERCURY",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -18,10 +18,6 @@ local Neptune = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_NEPTUNE",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -20,10 +20,6 @@ local Saturn = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_SATURN",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -20,10 +20,6 @@ local Uranus = {
|
||||
Type = "SpiceRotation",
|
||||
SourceFrame = "IAU_URANUS",
|
||||
DestinationFrame = "GALACTIC"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -26,10 +26,6 @@ local Venus = {
|
||||
Type = "SpiceTranslation",
|
||||
Target = "VENUS",
|
||||
Observer = "VENUS BARYCENTER"
|
||||
},
|
||||
Scale = {
|
||||
Type = "StaticScale",
|
||||
Scale = 1.0
|
||||
}
|
||||
},
|
||||
Renderable = {
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
local assetHelper = asset.require('util/asset_helper')
|
||||
local sunTransforms = asset.require('scene/solarsystem/sun/transforms')
|
||||
|
||||
local sync = asset.syncedResource({
|
||||
Name = "Swift Tuttle Orbit",
|
||||
Type = "HttpSynchronization",
|
||||
Identifier = "swift_tuttle_horizons",
|
||||
Version = 1
|
||||
})
|
||||
|
||||
local SwiftTuttleTrail = {
|
||||
Identifier = "SwiftTuttleTrail",
|
||||
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
|
||||
Renderable = {
|
||||
Type = "RenderableTrailTrajectory",
|
||||
Translation = {
|
||||
Type = "HorizonsTranslation",
|
||||
HorizonsTextFile = sync .. "/horizons_swifttuttle.dat"
|
||||
},
|
||||
Color = { 0.9, 0.9, 0.0 },
|
||||
StartTime = "1879 JUN 27 00:00:00",
|
||||
EndTime = "2019 JUN 27 00:00:00",
|
||||
SampleInterval = 60
|
||||
},
|
||||
GUI = {
|
||||
Name = "Swift Tuttle Trail",
|
||||
Path = "/Solar System/SSSB"
|
||||
}
|
||||
}
|
||||
|
||||
local SwiftTuttlePosition = {
|
||||
Identifier = "SwiftTuttlePosition",
|
||||
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
|
||||
Transform = {
|
||||
Translation = {
|
||||
Type = "HorizonsTranslation",
|
||||
HorizonsTextFile = sync .. "/horizons_swifttuttle.dat"
|
||||
},
|
||||
},
|
||||
GUI = {
|
||||
Name = "Swift Tuttle Position",
|
||||
Path = "/Solar System/SSSB"
|
||||
}
|
||||
}
|
||||
|
||||
assetHelper.registerSceneGraphNodesAndExport(asset, { SwiftTuttlePosition, SwiftTuttleTrail })
|
||||
@@ -1,28 +0,0 @@
|
||||
asset.require('./base')
|
||||
|
||||
--asset.request('scene/solarsystem/planets/earth/satellites/satellites_all')
|
||||
asset.request('scene/solarsystem/planets/earth/satellites/satellites_debris')
|
||||
|
||||
asset.onInitialize(function ()
|
||||
local now = openspace.time.currentWallTime()
|
||||
--local now = "2019-06-26T00:00:00"
|
||||
|
||||
-- Jump back one day to show a complete planet
|
||||
openspace.time.setTime(openspace.time.advancedTime(now, "-1d"))
|
||||
|
||||
openspace.addVirtualProperty(
|
||||
"BoolProperty",
|
||||
"Show Trails",
|
||||
"Scene.*Trail.Renderable.Enabled",
|
||||
"Disable or enable all trails of the scene at the same time",
|
||||
true,
|
||||
nil,
|
||||
nil
|
||||
)
|
||||
|
||||
openspace.globebrowsing.goToGeo(58.5877, 16.1924, 20000000)
|
||||
end)
|
||||
|
||||
asset.onDeinitialize(function ()
|
||||
openspace.removeVirtualProperty("*Trail.Renderable.Enabled")
|
||||
end)
|
||||
@@ -0,0 +1,37 @@
|
||||
local has_touch = openspace.modules.isLoaded('Touch')
|
||||
if not has_touch then
|
||||
openspace.printFatal('Could not load scene "' .. asset.filePath .. '" due to missing module "touch"')
|
||||
do return end
|
||||
end
|
||||
|
||||
asset.require('./base')
|
||||
local webGui = asset.require('util/webgui')
|
||||
|
||||
local earthAsset = asset.require('scene/solarsystem/planets/earth/earth')
|
||||
|
||||
asset.onInitialize(function ()
|
||||
local now = openspace.time.currentWallTime()
|
||||
-- Jump back one day to be able to show complete weather data on Earth.
|
||||
openspace.time.setTime(openspace.time.advancedTime(now, "-1d"))
|
||||
|
||||
openspace.markInterestingNodes(
|
||||
{ "Earth", "Mars", "Moon" }
|
||||
)
|
||||
|
||||
openspace.navigation.setNavigationState({
|
||||
Anchor = earthAsset.Earth.Identifier,
|
||||
Position = { 58.5877, 16.1924, 20000000 }
|
||||
})
|
||||
|
||||
openspace.setPropertyValueSingle('Scene.Pluto.Renderable.Enabled', false)
|
||||
openspace.setPropertyValueSingle('Scene.Charon.Renderable.Enabled', false)
|
||||
openspace.setPropertyValueSingle('Scene.PlutoBarycenterTrail.Renderable.Enabled', false)
|
||||
|
||||
webGui.setCefRoute("ontouch")
|
||||
end)
|
||||
|
||||
asset.onDeinitialize(function ()
|
||||
openspace.removeInterestingNodes(
|
||||
{ "Earth", "Mars", "Moon" }
|
||||
)
|
||||
end)
|
||||
@@ -10,14 +10,6 @@ local Keybindings = {
|
||||
GuiPath = "/Native GUI",
|
||||
Local = true
|
||||
},
|
||||
{
|
||||
Key = "F4",
|
||||
Name = "Show Performance Measurements",
|
||||
Command = propertyHelper.invert("RenderEngine.PerformanceMeasurements"),
|
||||
Documentation = "Toogles performance measurements that shows rendering time informations.",
|
||||
GuiPath = "/Native GUI",
|
||||
Local = true
|
||||
},
|
||||
{
|
||||
Key = "ESC",
|
||||
Name = "Toggle Shutdown",
|
||||
@@ -28,16 +20,16 @@ local Keybindings = {
|
||||
{
|
||||
Key = "PRINT_SCREEN",
|
||||
Name = "Take Screenshot",
|
||||
Command = "openspace.setPropertyValueSingle('RenderEngine.TakeScreenshot', nil)",
|
||||
Documentation = "Saves the contents of the screen to a file in the working directory.",
|
||||
Command = "openspace.takeScreenshot()",
|
||||
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
|
||||
GuiPath = "/Rendering",
|
||||
Local = true
|
||||
},
|
||||
{
|
||||
Key = "F12",
|
||||
Name = "Take Screenshot",
|
||||
Command = "openspace.setPropertyValueSingle('RenderEngine.TakeScreenshot', nil)",
|
||||
Documentation = "Saves the contents of the screen to a file in the working directory.",
|
||||
Command = "openspace.takeScreenshot()",
|
||||
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
|
||||
GuiPath = "/Rendering",
|
||||
Local = true
|
||||
},
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
-- Function that returns the string that inverts the fully qualified boolean property 'property'
|
||||
local invert = function(prop)
|
||||
local escaped_property = "'" .. prop .. "'"
|
||||
return "openspace.setPropertyValue(" .. escaped_property .. ", not openspace.getPropertyValue(" .. escaped_property .. "));"
|
||||
return "openspace.setPropertyValueSingle(" .. escaped_property .. ", not openspace.getPropertyValue(" .. escaped_property .. "));"
|
||||
end
|
||||
|
||||
-- Function that returns the string that increments the 'property' by the 'value'
|
||||
local increment = function(prop, value)
|
||||
local v = value or 1
|
||||
local escaped_property = "'" .. prop .. "'"
|
||||
return "openspace.setPropertyValue(" .. escaped_property .. ", openspace.getPropertyValue(" .. escaped_property .. ") + " .. v .. ");"
|
||||
return "openspace.setPropertyValueSingle(" .. escaped_property .. ", openspace.getPropertyValue(" .. escaped_property .. ") + " .. v .. ");"
|
||||
end
|
||||
|
||||
-- Function that returns the string that decrements the 'property' by the 'value'
|
||||
@@ -21,7 +21,7 @@ local fade = function(prop, value, duration)
|
||||
assert(type(duration) == "number", "duration must be a number")
|
||||
|
||||
local escaped_property = "'" .. prop .. "'"
|
||||
return "openspace.setPropertyValue(" .. escaped_property ..", " .. tostring(value) .. ", " .. tostring(duration) .. ")"
|
||||
return "openspace.setPropertyValueSingle(" .. escaped_property ..", " .. tostring(value) .. ", " .. tostring(duration) .. ")"
|
||||
end
|
||||
|
||||
local fadeOut = function(prop, duration)
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
asset.onInitialize(function ()
|
||||
-- Disable the server, add production gui endpoint, and restart server.
|
||||
-- The temporary disabling avoids restarting the server on each property change.
|
||||
-- TODO: Add a trigger property to the module to restart the server "manually"
|
||||
-- and remove automatic restart on each property change,
|
||||
-- since frequent restarting seems to be unstable on mac.
|
||||
|
||||
local enabled = openspace.getPropertyValue("Modules.WebGui.ServerProcessEnabled")
|
||||
openspace.setPropertyValueSingle("Modules.WebGui.ServerProcessEnabled", false)
|
||||
|
||||
local directories = openspace.getPropertyValue("Modules.WebGui.Directories")
|
||||
directories[#directories + 1] = "screenshots"
|
||||
directories[#directories + 1] = "${SCREENSHOTS}"
|
||||
openspace.setPropertyValueSingle("Modules.WebGui.Directories", directories)
|
||||
openspace.setPropertyValueSingle("Modules.WebGui.ServerProcessEnabled", enabled)
|
||||
end)
|
||||
|
||||
asset.onDeinitialize(function ()
|
||||
-- TODO: Remove endpoints. As of 2019-10-29, OpenSpace sometimes
|
||||
-- crashes when endpoints are removed while the application is closing.
|
||||
end)
|
||||
@@ -7,8 +7,8 @@ local Keybindings = {
|
||||
{
|
||||
Key = "F7",
|
||||
Name = "Take Screenshot",
|
||||
Command = "openspace.setPropertyValueSingle('RenderEngine.TakeScreenshot', nil)",
|
||||
Documentation = "Saves the contents of the screen to a file in the working directory.",
|
||||
Command = "openspace.takeScreenshot()",
|
||||
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
|
||||
GuiPath = "/Rendering",
|
||||
Local = true
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ asset.require('./static_server')
|
||||
local guiCustomization = asset.require('customization/gui')
|
||||
|
||||
-- Select which commit hashes to use for the frontend and backend
|
||||
local frontendHash = "129a2c70ec8179b193fdb3a689c37bd65418ac22"
|
||||
local frontendHash = "7f464f7ede73b0e9edd1869eeb90465a5194dd29"
|
||||
local dataProvider = "data.openspaceproject.com/files/webgui"
|
||||
|
||||
local frontend = asset.syncedResource({
|
||||
@@ -37,16 +37,6 @@ asset.onInitialize(function ()
|
||||
openspace.setPropertyValueSingle("Modules.WebGui.DefaultEndpoint", "frontend")
|
||||
openspace.setPropertyValueSingle("Modules.WebGui.ServerProcessEnabled", enabled)
|
||||
|
||||
if guiCustomization.webguiDevelopmentMode then
|
||||
-- Route CEF to the deveopment version of the GUI.
|
||||
-- This must be manually served using `npm start`
|
||||
-- in the OpenSpace-WebGuiFrontend repository.
|
||||
openspace.setPropertyValueSingle(
|
||||
"Modules.CefWebGui.GuiUrl",
|
||||
"http://127.0.0.1:4690/frontend/#/onscreen"
|
||||
)
|
||||
end
|
||||
|
||||
-- The GUI contains date and simulation increment,
|
||||
-- so let's remove these from the dashboard.
|
||||
if openspace.getPropertyValue('Modules.CefWebGui.Visible') then
|
||||
@@ -76,3 +66,19 @@ asset.onDeinitialize(function ()
|
||||
-- need to address in webguimodule.cpp
|
||||
--openspace.setPropertyValueSingle("Modules.WebGui.Directories", newDirectories)
|
||||
end)
|
||||
|
||||
function setCefRoute(route)
|
||||
local port = 4680
|
||||
-- As a developer, you can manually serve the webgui from port 4690
|
||||
-- with the command `npm start` in the web gui repository
|
||||
if guiCustomization.webguiDevelopmentMode then
|
||||
port = 4690
|
||||
end
|
||||
openspace.setPropertyValueSingle(
|
||||
"Modules.CefWebGui.GuiUrl",
|
||||
"http://127.0.0.1:" .. port .. "/frontend/#/" .. route
|
||||
)
|
||||
end
|
||||
|
||||
|
||||
asset.export("setCefRoute", setCefRoute)
|
||||
|
||||
@@ -36,6 +36,12 @@ namespace openspace::documentation { struct Documentation; }
|
||||
namespace openspace::configuration {
|
||||
|
||||
struct Configuration {
|
||||
Configuration() = default;
|
||||
Configuration(Configuration&&) = default;
|
||||
Configuration(const Configuration&) = delete;
|
||||
Configuration& operator=(const Configuration&) = delete;
|
||||
Configuration& operator=(Configuration&&) = default;
|
||||
|
||||
std::string windowConfiguration = "${CONFIG}/single.xml";
|
||||
std::string asset;
|
||||
std::vector<std::string> globalCustomizationScripts;
|
||||
|
||||
@@ -53,6 +53,7 @@ namespace configuration { struct Configuration; }
|
||||
namespace interaction {
|
||||
struct JoystickInputStates;
|
||||
struct WebsocketInputStates;
|
||||
class InteractionMonitor;
|
||||
class KeybindingManager;
|
||||
class NavigationHandler;
|
||||
class SessionRecording;
|
||||
@@ -87,6 +88,7 @@ VersionChecker& gVersionChecker();
|
||||
VirtualPropertyManager& gVirtualPropertyManager();
|
||||
WindowDelegate& gWindowDelegate();
|
||||
configuration::Configuration& gConfiguration();
|
||||
interaction::InteractionMonitor& gInteractionMonitor();
|
||||
interaction::JoystickInputStates& gJoystickInputStates();
|
||||
interaction::WebsocketInputStates& gWebsocketInputStates();
|
||||
interaction::KeybindingManager& gKeybindingManager();
|
||||
@@ -120,6 +122,7 @@ static VersionChecker& versionChecker = detail::gVersionChecker();
|
||||
static VirtualPropertyManager& virtualPropertyManager = detail::gVirtualPropertyManager();
|
||||
static WindowDelegate& windowDelegate = detail::gWindowDelegate();
|
||||
static configuration::Configuration& configuration = detail::gConfiguration();
|
||||
static interaction::InteractionMonitor& interactionMonitor = detail::gInteractionMonitor();
|
||||
static interaction::JoystickInputStates& joystickInputStates =
|
||||
detail::gJoystickInputStates();
|
||||
static interaction::WebsocketInputStates& websocketInputStates =
|
||||
|
||||
@@ -107,7 +107,7 @@ struct WindowDelegate {
|
||||
|
||||
bool (*isFisheyeRendering)() = []() { return false; };
|
||||
|
||||
void (*takeScreenshot)(bool applyWarping) = [](bool) { };
|
||||
unsigned int(*takeScreenshot)(bool applyWarping) = [](bool) { return 0u; };
|
||||
|
||||
void (*swapBuffer)() = []() {};
|
||||
|
||||
@@ -118,6 +118,10 @@ struct WindowDelegate {
|
||||
double (*getHorizFieldOfView)() = []() { return 0.0; };
|
||||
|
||||
void (*setHorizFieldOfView)(float hFovDeg) = [](float) { };
|
||||
|
||||
void* (*getNativeWindowHandle)(size_t windowIndex) = [](size_t) -> void* {
|
||||
return nullptr;
|
||||
};
|
||||
|
||||
using GLProcAddress = void(*)(void);
|
||||
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
/*****************************************************************************************
|
||||
* *
|
||||
* OpenSpace *
|
||||
* *
|
||||
* Copyright (c) 2014-2019 *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of this *
|
||||
* software and associated documentation files (the "Software"), to deal in the Software *
|
||||
* without restriction, including without limitation the rights to use, copy, modify, *
|
||||
* merge, publish, distribute, sublicense, and/or sell copies of the Software, and to *
|
||||
* permit persons to whom the Software is furnished to do so, subject to the following *
|
||||
* conditions: *
|
||||
* *
|
||||
* The above copyright notice and this permission notice shall be included in all copies *
|
||||
* or substantial portions of the Software. *
|
||||
* *
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, *
|
||||
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT *
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF *
|
||||
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE *
|
||||
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
||||
****************************************************************************************/
|
||||
|
||||
#ifndef __OPENSPACE_CORE___INTERACTIONMONITOR___H__
|
||||
#define __OPENSPACE_CORE___INTERACTIONMONITOR___H__
|
||||
|
||||
#include <openspace/properties/propertyowner.h>
|
||||
|
||||
#include <openspace/properties/scalar/boolproperty.h>
|
||||
#include <openspace/properties/scalar/floatproperty.h>
|
||||
|
||||
namespace openspace::interaction {
|
||||
|
||||
/**
|
||||
* The class InteractionMonitor keeps track of user interactions during an OpenSpace
|
||||
* session. It keeps track of when the latest interaction was made and of when the state
|
||||
* changes to idle.
|
||||
*/
|
||||
class InteractionMonitor : public properties::PropertyOwner {
|
||||
public:
|
||||
InteractionMonitor();
|
||||
|
||||
void setActivityState(bool isActive);
|
||||
void setIdleTime(float time);
|
||||
|
||||
/*
|
||||
* Called every frame from OpenSpaceEngine and calculates the activity state depending
|
||||
* on the last registered interaction.
|
||||
*/
|
||||
void updateActivityState();
|
||||
|
||||
/*
|
||||
* Called from all places we want to mark activity from. Updates the last registered
|
||||
* interaction time
|
||||
*/
|
||||
void markInteraction();
|
||||
|
||||
private:
|
||||
double _lastInteractionTime = 0;
|
||||
properties::BoolProperty _isInActiveState;
|
||||
properties::FloatProperty _idleTime; // in seconds
|
||||
|
||||
// @TODO (lovisa) make a list of interactions to listen for
|
||||
// and only allow registering updates from those interactions
|
||||
};
|
||||
|
||||
} // namespace openspace::interaction
|
||||
|
||||
#endif // __OPENSPACE_CORE___INTERACTIONMONITOR___H__
|
||||
@@ -80,6 +80,10 @@ public:
|
||||
void deinitialize();
|
||||
|
||||
// Mutators
|
||||
|
||||
void setFocusNode(SceneGraphNode* node);
|
||||
void resetCameraDirection();
|
||||
|
||||
void setNavigationStateNextFame(NavigationState state);
|
||||
void setCamera(Camera* camera);
|
||||
void setInterpolationTime(float durationInSeconds);
|
||||
@@ -92,6 +96,7 @@ public:
|
||||
|
||||
// Accessors
|
||||
Camera* camera() const;
|
||||
const SceneGraphNode* anchorNode() const;
|
||||
const InputState& inputState() const;
|
||||
const OrbitalNavigator& orbitalNavigator() const;
|
||||
OrbitalNavigator& orbitalNavigator();
|
||||
@@ -131,6 +136,7 @@ public:
|
||||
WebsocketCameraStates::AxisNormalize shouldNormalize =
|
||||
WebsocketCameraStates::AxisNormalize::No);
|
||||
|
||||
NavigationState navigationState() const;
|
||||
NavigationState navigationState(const SceneGraphNode& referenceFrame) const;
|
||||
|
||||
void saveNavigationState(const std::string& filepath,
|
||||
|
||||
@@ -64,6 +64,8 @@ public:
|
||||
void setCamera(Camera* camera);
|
||||
void clearPreviousState();
|
||||
|
||||
SceneGraphNode* focusNode() const;
|
||||
void setFocusNode(const SceneGraphNode* focusNode);
|
||||
void setFocusNode(const std::string& focusNode);
|
||||
void setAnchorNode(const std::string& anchorNode);
|
||||
void setAimNode(const std::string& aimNode);
|
||||
@@ -118,7 +120,6 @@ private:
|
||||
properties::FloatProperty friction;
|
||||
};
|
||||
|
||||
void setFocusNode(const SceneGraphNode* focusNode);
|
||||
void setAnchorNode(const SceneGraphNode* anchorNode);
|
||||
void setAimNode(const SceneGraphNode* aimNode);
|
||||
|
||||
@@ -141,7 +142,11 @@ private:
|
||||
|
||||
properties::FloatProperty _followAnchorNodeRotationDistance;
|
||||
properties::FloatProperty _minimumAllowedDistance;
|
||||
properties::FloatProperty _flightDestinationDistance;
|
||||
properties::BoolProperty _applyLinearFlight;
|
||||
|
||||
|
||||
properties::FloatProperty _velocitySensitivity;
|
||||
properties::FloatProperty _mouseSensitivity;
|
||||
properties::FloatProperty _joystickSensitivity;
|
||||
properties::FloatProperty _websocketSensitivity;
|
||||
@@ -246,6 +251,18 @@ private:
|
||||
const glm::dvec3& objectPosition, const glm::dquat& globalCameraRotation,
|
||||
const SurfacePositionHandle& positionHandle) const;
|
||||
|
||||
/**
|
||||
* Moves the camera along a vector, camPosToCenterPosDiff, until it reaches the focusLimit.
|
||||
* The velocity of the zooming depend on distFromCameraToFocus and the final frame
|
||||
* where the camera stops moving depends on the distance set in the variable focusLimit.
|
||||
* The bool determines whether to move/fly towards the focus node or away from it.
|
||||
* \returns a new position of the camera, closer to the focusLimit than the previous
|
||||
* position.
|
||||
*/
|
||||
glm::dvec3 moveCameraAlongVector(const glm::dvec3& camPos,
|
||||
double distFromCameraToFocus, const glm::dvec3& camPosToCenterPosDiff,
|
||||
double destination) const;
|
||||
|
||||
/*
|
||||
* Adds rotation to the camera position so that it follows the rotation of the anchor
|
||||
* node defined by the differential anchorNodeRotationDiff.
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <openspace/properties/propertyowner.h>
|
||||
|
||||
#include <openspace/properties/scalar/boolproperty.h>
|
||||
#include <openspace/properties/vector/ivec2property.h>
|
||||
#include <openspace/rendering/dashboarditem.h>
|
||||
#include <ghoul/glm.h>
|
||||
#include <memory>
|
||||
@@ -50,6 +51,7 @@ public:
|
||||
void removeDashboardItem(const std::string& identifier);
|
||||
void removeDashboardItem(int index);
|
||||
void clearDashboardItems();
|
||||
glm::vec2 getStartPositionOffset();
|
||||
|
||||
/**
|
||||
* Returns the Lua library that contains all Lua functions available to affect the
|
||||
@@ -59,6 +61,7 @@ public:
|
||||
|
||||
private:
|
||||
properties::BoolProperty _isEnabled;
|
||||
properties::IVec2Property _startPositionOffset;
|
||||
|
||||
std::vector<std::unique_ptr<DashboardItem>> _items;
|
||||
};
|
||||
|
||||
@@ -94,6 +94,7 @@ public:
|
||||
protected:
|
||||
properties::BoolProperty _enabled;
|
||||
properties::FloatProperty _opacity;
|
||||
properties::FloatProperty _boundingSphere;
|
||||
properties::StringProperty _renderableType;
|
||||
|
||||
void setRenderBinFromOpacity();
|
||||
@@ -101,7 +102,6 @@ protected:
|
||||
|
||||
private:
|
||||
RenderBin _renderBin = RenderBin::Opaque;
|
||||
float _boundingSphere = 0.f;
|
||||
};
|
||||
|
||||
} // namespace openspace
|
||||
|
||||
@@ -142,9 +142,14 @@ public:
|
||||
void setResolveData(ghoul::Dictionary resolveData);
|
||||
|
||||
/**
|
||||
* Mark that one screenshot should be taken
|
||||
* Take a screenshot and store in the ${SCREENSHOTS} directory
|
||||
*/
|
||||
void takeScreenShot();
|
||||
void takeScreenshot();
|
||||
|
||||
/**
|
||||
* Get the filename of the latest screenshot
|
||||
*/
|
||||
unsigned int latestScreenshotNumber() const;
|
||||
|
||||
/**
|
||||
* Returns the Lua library that contains all Lua functions available to affect the
|
||||
@@ -187,8 +192,6 @@ private:
|
||||
properties::BoolProperty _showVersionInfo;
|
||||
properties::BoolProperty _showCameraInfo;
|
||||
|
||||
properties::TriggerProperty _takeScreenshot;
|
||||
bool _shouldTakeScreenshot = false;
|
||||
properties::BoolProperty _applyWarping;
|
||||
properties::BoolProperty _showFrameInformation;
|
||||
#ifdef OPENSPACE_WITH_INSTRUMENTATION
|
||||
@@ -226,6 +229,7 @@ private:
|
||||
properties::Vec3Property _masterRotation;
|
||||
|
||||
uint64_t _frameNumber = 0;
|
||||
unsigned int _latestScreenshotNumber = 0;
|
||||
|
||||
std::vector<ghoul::opengl::ProgramObject*> _programs;
|
||||
|
||||
|
||||
@@ -29,12 +29,16 @@
|
||||
|
||||
#include <openspace/properties/stringproperty.h>
|
||||
#include <openspace/properties/scalar/boolproperty.h>
|
||||
#include <openspace/properties/scalar/doubleproperty.h>
|
||||
#include <openspace/properties/scalar/floatproperty.h>
|
||||
#include <openspace/properties/vector/ivec2property.h>
|
||||
#include <ghoul/glm.h>
|
||||
#include <ghoul/misc/boolean.h>
|
||||
#include <atomic>
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <chrono>
|
||||
|
||||
//#define Debugging_Core_SceneGraphNode_Indices
|
||||
|
||||
@@ -149,6 +153,7 @@ private:
|
||||
glm::dvec3 calculateWorldPosition() const;
|
||||
glm::dmat3 calculateWorldRotation() const;
|
||||
double calculateWorldScale() const;
|
||||
void computeScreenSpaceData(RenderData& newData);
|
||||
|
||||
std::atomic<State> _state = State::Loaded;
|
||||
std::vector<std::unique_ptr<SceneGraphNode>> _children;
|
||||
@@ -187,6 +192,17 @@ private:
|
||||
glm::dmat4 _modelTransformCached;
|
||||
glm::dmat4 _inverseModelTransformCached;
|
||||
|
||||
properties::BoolProperty _computeScreenSpaceValues;
|
||||
properties::IVec2Property _screenSpacePosition;
|
||||
properties::BoolProperty _screenVisibility;
|
||||
properties::DoubleProperty _distFromCamToNode;
|
||||
properties::DoubleProperty _screenSizeRadius;
|
||||
properties::FloatProperty _visibilityDistance;
|
||||
|
||||
// This variable is used for the rate-limiting of the screenspace positions (if they
|
||||
// are calculated when _computeScreenSpaceValues is true)
|
||||
std::chrono::high_resolution_clock::time_point _lastScreenSpaceUpdateTime;
|
||||
|
||||
#ifdef Debugging_Core_SceneGraphNode_Indices
|
||||
int index = 0;
|
||||
static int nextIndex;
|
||||
|
||||
@@ -101,6 +101,7 @@ public:
|
||||
// Right now this function returns the actual combined matrix which makes some
|
||||
// of the old calls to the function wrong..
|
||||
const glm::dmat4& combinedViewMatrix() const;
|
||||
const glm::dmat4& combinedViewMatrixNoScale() const;
|
||||
|
||||
void invalidateCache();
|
||||
|
||||
|
||||
@@ -141,6 +141,7 @@ public:
|
||||
|
||||
HttpDownload();
|
||||
HttpDownload(HttpDownload&& d) = default;
|
||||
HttpDownload& operator=(HttpDownload&&) = default;
|
||||
virtual ~HttpDownload() = default;
|
||||
void onProgress(ProgressCallback progressCallback);
|
||||
void onHeader(HeaderCallback headerCallback);
|
||||
@@ -169,6 +170,7 @@ class SyncHttpDownload : public virtual HttpDownload {
|
||||
public:
|
||||
SyncHttpDownload(std::string url);
|
||||
SyncHttpDownload(SyncHttpDownload&& d) = default;
|
||||
SyncHttpDownload& operator=(SyncHttpDownload&&) = default;
|
||||
virtual ~SyncHttpDownload() = default;
|
||||
void download(HttpRequest::RequestOptions opt);
|
||||
|
||||
@@ -182,6 +184,7 @@ class AsyncHttpDownload : public virtual HttpDownload {
|
||||
public:
|
||||
AsyncHttpDownload(std::string url);
|
||||
AsyncHttpDownload(AsyncHttpDownload&& d);
|
||||
AsyncHttpDownload& operator=(AsyncHttpDownload&&) = default;
|
||||
virtual ~AsyncHttpDownload() = default;
|
||||
void start(HttpRequest::RequestOptions opt);
|
||||
void cancel();
|
||||
@@ -208,6 +211,7 @@ public:
|
||||
HttpFileDownload() = default;
|
||||
HttpFileDownload(std::string destination, Overwrite = Overwrite::No);
|
||||
HttpFileDownload(HttpFileDownload&& d) = default;
|
||||
HttpFileDownload& operator=(HttpFileDownload&&) = default;
|
||||
virtual ~HttpFileDownload() = default;
|
||||
|
||||
const std::string& destination() const;
|
||||
@@ -233,6 +237,8 @@ class HttpMemoryDownload : public virtual HttpDownload {
|
||||
public:
|
||||
HttpMemoryDownload() = default;
|
||||
HttpMemoryDownload(HttpMemoryDownload&& d) = default;
|
||||
HttpMemoryDownload& operator=(HttpMemoryDownload&&) = default;
|
||||
|
||||
virtual ~HttpMemoryDownload() = default;
|
||||
const std::vector<char>& downloadedData() const;
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user