diff --git a/index.html b/index.html
index 87f0909b..ec425166 100644
--- a/index.html
+++ b/index.html
@@ -138,6 +138,15 @@
+
+ -
+
+
+
+
+
-
diff --git a/js/app.js b/js/app.js
index 8d8b9a7a..e183718d 100644
--- a/js/app.js
+++ b/js/app.js
@@ -199,7 +199,7 @@ const initializationHelper = async container => {
document.querySelector('.navbar').style.display = 'flex'
- renderContainerController = new RenderContainerController(container, sceneManager)
+ renderContainerController = new RenderContainerController(container)
renderLoop()
diff --git a/js/renderContainerController.js b/js/renderContainerController.js
index 8dec855d..1e073a2e 100644
--- a/js/renderContainerController.js
+++ b/js/renderContainerController.js
@@ -1,31 +1,14 @@
import { configureRenderContainerDrag } from './renderContainerDrag.js'
-import { traceNavigator } from './app.js'
class RenderContainerController {
- constructor(rootContainer, sceneManager) {
+ constructor(rootContainer) {
this.rootContainer = rootContainer
this.threejsContainer = rootContainer.querySelector('#spacewalk-threejs-container')
this.setTopLeftPercentages(this.rootContainer, this.threejsContainer)
-
- const config =
- {
- // handles: "w, sw, s, se, e",
- handles: "se",
- autoHide: true,
- aspectRatio: true,
- helper: "spacewalk-threejs-container-resizable-helper",
- stop: () => {
- sceneManager.resizeContainer()
- traceNavigator.resize(sceneManager.container)
- }
- };
-
- $(sceneManager.container).resizable(config)
-
const navbar = document.querySelector('.navbar')
const topConstraint = navbar.getBoundingClientRect().height
diff --git a/js/sceneManager.js b/js/sceneManager.js
index 2c0a6bbd..317c86e7 100644
--- a/js/sceneManager.js
+++ b/js/sceneManager.js
@@ -57,6 +57,54 @@ class SceneManager {
this.cameraLightingRig = cameraLightingRig;
this.cameraLightingRig.addToScene(this.scene);
+ const resizeableContainer = document.getElementById('spacewalk-threejs-trace-navigator-container')
+
+ this.resizeObserver = new ResizeObserver(entries => {
+ const { width, height } = container.getBoundingClientRect()
+ this.renderer.setSize(width, height)
+ this.cameraLightingRig.object.aspect = width / height
+ this.cameraLightingRig.object.updateProjectionMatrix()
+ this.renderer.render(this.scene, this.cameraLightingRig.object);
+ });
+
+ this.resizeObserver.observe(resizeableContainer)
+
+ const onWindowResize = () => {
+ const { width, height } = container.getBoundingClientRect()
+ this.renderer.setSize(width, height)
+ this.cameraLightingRig.object.aspect = width / height
+ this.cameraLightingRig.object.updateProjectionMatrix()
+ this.renderer.render(this.scene, this.cameraLightingRig.object);
+ }
+
+ window.addEventListener('resize', onWindowResize);
+
+ document.getElementById('spacewalk-fullscreen-button').addEventListener('click', () => {
+ if (!document.fullscreenElement) {
+ resizeableContainer.requestFullscreen().then(() => {
+ document.body.classList.add('fullscreen');
+ }).catch(err => {
+ alert(`Error attempting to enable full-screen mode: ${err.message} (${err.name})`);
+ });
+ } else {
+ document.exitFullscreen().then(() => {
+ document.body.classList.remove('fullscreen');
+ }).catch(err => {
+ alert(`Error attempting to exit full-screen mode: ${err.message} (${err.name})`);
+ });
+ }
+ });
+
+ document.addEventListener('fullscreenchange', () => {
+ if (!document.fullscreenElement) {
+ document.body.classList.remove('fullscreen');
+ }
+ });
+
+
+
+
+
SpacewalkEventBus.globalBus.subscribe('RenderStyleDidChange', this);
SpacewalkEventBus.globalBus.subscribe('DidSelectTrace', this);
diff --git a/styles/app.css b/styles/app.css
index b4a7c4ff..22f1fb8d 100644
--- a/styles/app.css
+++ b/styles/app.css
@@ -538,7 +538,8 @@ div#spacewalk_info_panel > div:last-child {
justify-content: flex-start;
align-items: flex-start;
}
-#spacewalk-threejs-container #spacewalk-threejs-drag-container {
+
+#spacewalk-threejs-drag-container {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
@@ -549,16 +550,15 @@ div#spacewalk_info_panel > div:last-child {
background-color: rgba(0, 0, 0, 0.2);
cursor: grab;
}
-#spacewalk-threejs-container #spacewalk-threejs-drag-container i {
+#spacewalk-threejs-drag-container i {
color: #6e6e6e;
display: block;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container {
+
+#spacewalk-threejs-trace-navigator-container {
display: flex;
- flex-direction: row;
- flex-wrap: nowrap;
- justify-content: flex-start;
- align-items: flex-start;
+ width: calc(512px + 48px);
+ height: 512px;
border-left-style: solid;
border-left-width: thin;
border-left-color: black;
@@ -568,14 +568,16 @@ div#spacewalk_info_panel > div:last-child {
border-right-style: solid;
border-right-width: thin;
border-right-color: black;
+ resize: both;
+ overflow: auto;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-threejs-canvas-container {
+#spacewalk-threejs-trace-navigator-container #spacewalk-threejs-canvas-container {
position: relative;
- width: 512px;
- height: 512px;
- background-color: white;
+ height: 100%;
+ width: calc(100% - 48px);
+ background-color: #ffffff;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-threejs-canvas-container #spacewalk-threejs-canvas-center-dot {
+#spacewalk-threejs-trace-navigator-container #spacewalk-threejs-canvas-container #spacewalk-threejs-canvas-center-dot {
z-index: 512;
position: absolute;
top: 50%;
@@ -588,21 +590,18 @@ div#spacewalk_info_panel > div:last-child {
border-width: thin;
border-color: black;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container {
+ display: flex;
+ flex-direction: column;
width: 48px;
- height: 512px;
+ align-self: stretch;
background-color: white;
border-left-style: solid;
border-left-width: thin;
border-left-color: black;
- display: flex;
- flex-direction: column;
- flex-wrap: nowrap;
- justify-content: flex-start;
- align-items: center;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-header {
- width: 100%;
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-header {
+ align-self: stretch;
height: 32px;
font-size: 0.85rem;
line-height: 32px;
@@ -610,29 +609,29 @@ div#spacewalk_info_panel > div:last-child {
text-align: center;
background-color: white;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget {
position: relative;
cursor: pointer;
width: 46px;
height: 100%;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas {
display: block;
position: absolute;
top: 0;
left: 0;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_highlight {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_highlight {
z-index: 128;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_rgb {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_rgb {
z-index: inherit;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_alpha {
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-widget canvas#spacewalk_color_ramp_canvas_alpha {
z-index: -128;
}
-#spacewalk-threejs-container #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-footer {
- width: 100%;
+#spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container #spacewalk-trace-navigator-footer {
+ align-self: stretch;
height: 32px;
font-size: 0.85rem;
line-height: 32px;
@@ -641,6 +640,15 @@ div#spacewalk_info_panel > div:last-child {
background-color: white;
}
+.fullscreen #spacewalk-threejs-trace-navigator-container {
+ width: 100vw;
+ height: 100vh;
+ border: none;
+}
+.fullscreen #spacewalk-threejs-trace-navigator-container #spacewalk-trace-navigator-container {
+ height: 100vh;
+}
+
.ui-widget-content {
border: 0 solid;
background: transparent;
diff --git a/styles/app.css.map b/styles/app.css.map
index d402c207..70be2367 100644
--- a/styles/app.css.map
+++ b/styles/app.css.map
@@ -1 +1 @@
-{"version":3,"sourceRoot":"","sources":["_navbar.scss","app.scss","_color.scss","_checkbox-menu.scss","_panel.scss","_data_file_load_modal.scss","_distance_map_panel.scss","_contact_frequence_map_panel.scss","_juicebox_panel.scss","_igv_panel.scss","_ui_manager.scss","_info_panel.scss"],"names":[],"mappings":"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;EACE;EACA;;AAEF;EAEE;EACA;EACA;;AAKJ;EACE;;;AVxBJ;EACE;;AACA;EACE;;;AAKF;EACE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA,kBCzCiB;;;AD4CnB;EAEE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EAEA;EACA,QAnEsC;EAqEtC;EAEA;;AAEA;EACE,OC5EY;ED6EZ;;AAKJ;EAEE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;;AAEA;EACE;EACA,OAzGoC;EA0GpC,QA1GoC;EA4GpC;;AAEA;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA,eA/GoC;EAgHpC;EACA;EACA;;AAIJ;EAEE,OA5H4B;EA6H5B,QAlIoC;EAmIpC;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA,QA3IiC;EA6IjC;EACA,aA9IiC;EA+IjC;EACA;EACA;;AAGF;EACE;EACA;EAEA,OAvJiC;EAwJjC;;AAIA;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAKJ;EACE;EACA,QApLiC;EAsLjC;EACA,aAvLiC;EAwLjC;EACA;EAEA;;;AASR;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EAEE;EAEA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;;;AAIF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA","file":"app.css"}
\ No newline at end of file
+{"version":3,"sourceRoot":"","sources":["_navbar.scss","app.scss","_color.scss","_checkbox-menu.scss","_panel.scss","_data_file_load_modal.scss","_distance_map_panel.scss","_contact_frequence_map_panel.scss","_juicebox_panel.scss","_igv_panel.scss","_ui_manager.scss","_info_panel.scss"],"names":[],"mappings":"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;EACE;EACA;;AAEF;EAEE;EACA;EACA;;AAKJ;EACE;;;AVrBJ;EACE;;AACA;EACE;;;AAKF;EACE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA,kBC5CiB;;;AD+CnB;EAEE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EAEA;EACA,QA/DwC;EAiExC;EAEA;;AAEA;EACE,OCjFc;EDkFd;;;AAKJ;EAEE;EAEA,OAlFkD;EAmFlD,QApFmD;EAsFnD;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA,eA1HsC;EA2HtC;EACA;EACA;;AAIJ;EAEE;EACA;EAEA,OA1I8B;EA2I9B;EAEA;EAEA;EACA;EACA;;AAEA;EACE;EACA,QApJmC;EAsJnC;EACA,aAvJmC;EAwJnC;EACA;EACA;;AAGF;EACE;EACA;EAEA,OAhKmC;EAiKnC;;AAIA;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAKJ;EACE;EACA,QA7LmC;EA+LnC;EACA,aAhMmC;EAiMnC;EACA;EAEA;;;AAOJ;EACE;EACA;EACA;;AAMA;EACE;;;AAON;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EAEE;EAEA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;;;AAIF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA","file":"app.css"}
\ No newline at end of file
diff --git a/styles/app.scss b/styles/app.scss
index 6ce4bbe2..4c380dd0 100644
--- a/styles/app.scss
+++ b/styles/app.scss
@@ -1,17 +1,20 @@
$spacewalk_navbar_height: 42px;
$spacewalk_spinner_size: 128px;
-$spacewalk-threejs-canvas-container-size: 512px;
-//$spacewalk-threejs-canvas-container-size: 256px;
-
-$spacewalk-threejs-drag-container-height: 32px;
-
$spacewalk-trace-navigator-width: 48px;
$spacewalk-trace-navigator-label-height: 32px;
$spacewalk-trace-navigator-canvas-width: 46px;
$spacewalk-threejs-canvas-center-dot-radius:6px;
+$spacewalk-threejs-canvas-container-size: 512px;
+//$spacewalk-threejs-canvas-container-size: 256px;
+
+$spacewalk-threejs-trace-navigator-container-height: 512px;
+$spacewalk-threejs-trace-navigator-container-width: calc(#{$spacewalk-threejs-canvas-container-size} + #{$spacewalk-trace-navigator-width});
+
+$spacewalk-threejs-drag-container-height: 32px;
+
@import "color";
@import "navbar";
@import "checkbox-menu";
@@ -63,143 +66,159 @@ $spacewalk-threejs-canvas-center-dot-radius:6px;
justify-content: flex-start;
align-items: flex-start;
- #spacewalk-threejs-drag-container {
- display: flex;
- flex-direction: row;
- flex-wrap: nowrap;
- justify-content: center;
- align-items: center;
+}
- width: 100%;
- height: $spacewalk-threejs-drag-container-height;
- //background-color: $spacewalk_snow;
- background-color: rgba(0, 0, 0, 0.2);
+#spacewalk-threejs-drag-container {
+ display: flex;
+ flex-direction: row;
+ flex-wrap: nowrap;
+ justify-content: center;
+ align-items: center;
- cursor: grab;
+ width: 100%;
+ height: $spacewalk-threejs-drag-container-height;
+ //background-color: $spacewalk_snow;
+ background-color: rgba(0, 0, 0, 0.2);
- i {
- color: $spacewalk_steel;
- display: block;
- }
+ cursor: grab;
+ i {
+ color: $spacewalk_steel;
+ display: block;
}
- #spacewalk-threejs-trace-navigator-container {
+}
- display: flex;
- flex-direction: row;
- flex-wrap: nowrap;
- justify-content: flex-start;
- align-items: flex-start;
+#spacewalk-threejs-trace-navigator-container {
- border-left-style: solid;
- border-left-width: thin;
- border-left-color: black;
+ display: flex;
- border-bottom-style: solid;
- border-bottom-width: thin;
- border-bottom-color: black;
+ width: $spacewalk-threejs-trace-navigator-container-width;
+ height:$spacewalk-threejs-trace-navigator-container-height;
- border-right-style: solid;
- border-right-width: thin;
- border-right-color: black;
+ border-left-style: solid;
+ border-left-width: thin;
+ border-left-color: black;
- #spacewalk-threejs-canvas-container {
- position: relative;
- width: $spacewalk-threejs-canvas-container-size;
- height:$spacewalk-threejs-canvas-container-size;
- //background-color: $spacewalk_nickel;
- background-color: white;
+ border-bottom-style: solid;
+ border-bottom-width: thin;
+ border-bottom-color: black;
- #spacewalk-threejs-canvas-center-dot {
- z-index: 512;
- position: absolute;
- top: 50%;
- left: 50%;
- transform: translate(-50%, -50%);
+ border-right-style: solid;
+ border-right-width: thin;
+ border-right-color: black;
- width: 2 * $spacewalk-threejs-canvas-center-dot-radius;
- height: 2 * $spacewalk-threejs-canvas-center-dot-radius;
+ resize: both;
+ overflow: auto;
- border-radius: $spacewalk-threejs-canvas-center-dot-radius;
- border-style: solid;
- border-width: thin;
- border-color: black;
- }
+ #spacewalk-threejs-canvas-container {
+ position: relative;
+ height: 100%;
+ width: calc(100% - #{$spacewalk-trace-navigator-width});
+ background-color: #ffffff;
+
+ #spacewalk-threejs-canvas-center-dot {
+ z-index: 512;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+
+ width: 2 * $spacewalk-threejs-canvas-center-dot-radius;
+ height: 2 * $spacewalk-threejs-canvas-center-dot-radius;
+
+ border-radius: $spacewalk-threejs-canvas-center-dot-radius;
+ border-style: solid;
+ border-width: thin;
+ border-color: black;
}
+ }
- #spacewalk-trace-navigator-container {
+ #spacewalk-trace-navigator-container {
- width: $spacewalk-trace-navigator-width;
- height: $spacewalk-threejs-canvas-container-size;
- background-color: white;
+ display: flex;
+ flex-direction: column;
- border-left-style: solid;
- border-left-width: thin;
- border-left-color: black;
-
- display: flex;
- flex-direction: column;
- flex-wrap: nowrap;
- justify-content: flex-start;
- align-items: center;
-
- #spacewalk-trace-navigator-header {
- width: 100%;
- height: $spacewalk-trace-navigator-label-height;
-
- font-size: .85rem;
- line-height: $spacewalk-trace-navigator-label-height;
- vertical-align: middle;
- text-align: center;
- background-color: white;
- }
+ width: $spacewalk-trace-navigator-width;
+ align-self: stretch;
- #spacewalk-trace-navigator-widget {
- position: relative;
- cursor: pointer;
+ background-color: white;
- width: $spacewalk-trace-navigator-canvas-width;
- height: 100%;
+ border-left-style: solid;
+ border-left-width: thin;
+ border-left-color: black;
- //background-color: #6495ed;
+ #spacewalk-trace-navigator-header {
+ align-self: stretch;
+ height: $spacewalk-trace-navigator-label-height;
- canvas {
- display: block;
- position: absolute;
- top: 0;
- left: 0;
- }
+ font-size: .85rem;
+ line-height: $spacewalk-trace-navigator-label-height;
+ vertical-align: middle;
+ text-align: center;
+ background-color: white;
+ }
- canvas#spacewalk_color_ramp_canvas_highlight {
- z-index: 128;
- }
+ #spacewalk-trace-navigator-widget {
+ position: relative;
+ cursor: pointer;
- canvas#spacewalk_color_ramp_canvas_rgb {
- z-index: inherit;
- }
+ width: $spacewalk-trace-navigator-canvas-width;
+ height: 100%;
- canvas#spacewalk_color_ramp_canvas_alpha {
- z-index: -128;
- }
+ //background-color: #6495ed;
+ canvas {
+ display: block;
+ position: absolute;
+ top: 0;
+ left: 0;
}
- #spacewalk-trace-navigator-footer {
- width: 100%;
- height: $spacewalk-trace-navigator-label-height;
+ canvas#spacewalk_color_ramp_canvas_highlight {
+ z-index: 128;
+ }
- font-size: .85rem;
- line-height: $spacewalk-trace-navigator-label-height;
- vertical-align: middle;
- text-align: center;
+ canvas#spacewalk_color_ramp_canvas_rgb {
+ z-index: inherit;
+ }
- background-color: white;
+ canvas#spacewalk_color_ramp_canvas_alpha {
+ z-index: -128;
}
}
+
+ #spacewalk-trace-navigator-footer {
+ align-self: stretch;
+ height: $spacewalk-trace-navigator-label-height;
+
+ font-size: .85rem;
+ line-height: $spacewalk-trace-navigator-label-height;
+ vertical-align: middle;
+ text-align: center;
+
+ background-color: white;
+ }
+
}
+}
+
+.fullscreen {
+ #spacewalk-threejs-trace-navigator-container {
+ width: 100vw;
+ height: 100vh;
+ border: none;
+ #spacewalk-threejs-canvas-container {
+
+ }
+
+ #spacewalk-trace-navigator-container {
+ height: 100vh;
+ }
+
+ }
}
// jQuery UI hack