diff --git a/src/App.vue b/src/App.vue
index 0763022..8815982 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,58 +1,42 @@
- {
- console.log('Model-Viewer finished loading:', args)
- modelViewerInfo = args
- }"/>
+ modelViewerInfo = args"/>
-
+
Models
-
-
- ? F ? E ? V | Model Name
-
- Content
-
-
-
+
-
+
Tools
@@ -67,12 +51,4 @@ html, body {
height: 100%;
overflow: hidden;
}
-
-
-
-
\ No newline at end of file
diff --git a/src/index.ts b/src/index.ts
index ce6d3cd..4598b5b 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -19,7 +19,6 @@ const vuetify = createVuetify({
const app = createApp(App)
app.use(vuetify)
-// noinspection JSUnresolvedReference
app.mount('body')
// Start non-blocking loading of Vuetify and icon styles
diff --git a/src/models/Models.vue b/src/models/Models.vue
new file mode 100644
index 0000000..9c868e4
--- /dev/null
+++ b/src/models/Models.vue
@@ -0,0 +1,24 @@
+
+
+
+
+
+ ? F ? E ? V | Model Name
+ Content
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Sidebar.vue b/src/models/Sidebar.vue
similarity index 100%
rename from src/Sidebar.vue
rename to src/models/Sidebar.vue
diff --git a/src/orientation.ts b/src/orientation.ts
deleted file mode 100644
index 238bc4b..0000000
--- a/src/orientation.ts
+++ /dev/null
@@ -1,53 +0,0 @@
-import * as OrientationGizmoRaw from "three-orientation-gizmo/src/OrientationGizmo";
-import * as THREE from "three";
-import {ModelScene} from "@google/model-viewer/lib/three-components/ModelScene";
-
-window.THREE = THREE // HACK: Required for the gizmo to work
-
-export class OrientationGizmo {
- element: OrientationGizmoRaw
-
- constructor(scene: ModelScene) {
- // noinspection SpellCheckingInspection
- this.element = new OrientationGizmoRaw(scene.camera, {
- size: 120,
- bubbleSizePrimary: 12,
- bubbleSizeSeconday: 10,
- fontSize: "14px"
- });
- // Place in the top right corner
- this.element.style.position = "absolute";
- this.element.style.top = "0px";
- this.element.style.right = "0px";
- this.element.style.zIndex = "1000";
- // HACK: Swap axes to match A-Frame
- for (let swap of [["y", "-z"], ["z", "-y"], ["z", "-z"]]) {
- let indexA = this.element.bubbles.findIndex((bubble) => bubble.axis == swap[0])
- let indexB = this.element.bubbles.findIndex((bubble) => bubble.axis == swap[1])
- let dirA = this.element.bubbles[indexA].direction.clone();
- let dirB = this.element.bubbles[indexB].direction.clone();
- this.element.bubbles[indexA].direction.copy(dirB);
- this.element.bubbles[indexB].direction.copy(dirA);
- }
- // Append and listen for events
- this.element.onAxisSelected = (axis: { direction: { x: any; y: any; z: any; }; }) => {
- let lookFrom = scene.getCamera().position.clone();
- let lookAt = scene.getTarget().clone().add(scene.target.position);
- let magnitude = lookFrom.clone().sub(lookAt).length()
- let direction = new THREE.Vector3(axis.direction.x, axis.direction.y, axis.direction.z);
- let newLookFrom = lookAt.clone().add(direction.clone().multiplyScalar(magnitude));
- //console.log("New camera position", newLookFrom)
- scene.getCamera().position.copy(newLookFrom);
- scene.getCamera().lookAt(lookAt);
- scene.queueRender();
- }
- }
-
- install() {
- document.body.appendChild(this.element);
- }
-
- update() {
- this.element.update();
- }
-}
\ No newline at end of file
diff --git a/src/OrientationGizmo.vue b/src/tools/OrientationGizmo.vue
similarity index 100%
rename from src/OrientationGizmo.vue
rename to src/tools/OrientationGizmo.vue
diff --git a/src/Tools.vue b/src/tools/Tools.vue
similarity index 100%
rename from src/Tools.vue
rename to src/tools/Tools.vue
diff --git a/src/settings.ts b/src/tools/settings.ts
similarity index 90%
rename from src/settings.ts
rename to src/tools/settings.ts
index 35a5e96..67f43e6 100644
--- a/src/settings.ts
+++ b/src/tools/settings.ts
@@ -1,7 +1,7 @@
// These are the default values for the settings, which are overridden below
export const settings = {
// @ts-ignore
- preloadModels: [new URL('../assets/fox.glb', import.meta.url).href, "ws://localhost:8080/api/updates"],
+ preloadModels: [new URL('../../assets/fox.glb', import.meta.url).href, new URL('../../assets/logo.glbs', import.meta.url).href, "ws://localhost:8080"],
// ModelViewer settings
autoplay: true,
arModes: 'webxr scene-viewer quick-look',
diff --git a/src/Loading.vue b/src/viewer/Loading.vue
similarity index 100%
rename from src/Loading.vue
rename to src/viewer/Loading.vue
diff --git a/src/ModelViewerOverlay.vue b/src/viewer/ModelViewerOverlay.vue
similarity index 100%
rename from src/ModelViewerOverlay.vue
rename to src/viewer/ModelViewerOverlay.vue
diff --git a/src/ModelViewerWrapper.vue b/src/viewer/ModelViewerWrapper.vue
similarity index 85%
rename from src/ModelViewerWrapper.vue
rename to src/viewer/ModelViewerWrapper.vue
index b1c48fb..cca39f0 100644
--- a/src/ModelViewerWrapper.vue
+++ b/src/viewer/ModelViewerWrapper.vue
@@ -1,5 +1,5 @@