diff --git a/sandbox/embed_selfhost_calculate.html b/sandbox/embed_selfhost_calculate.html
new file mode 100644
index 0000000..0bd7e2f
--- /dev/null
+++ b/sandbox/embed_selfhost_calculate.html
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+ Online 3D Viewer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/source/engine/viewer/embeddedviewer.js b/source/engine/viewer/embeddedviewer.js
index 97fd91a..09f6595 100644
--- a/source/engine/viewer/embeddedviewer.js
+++ b/source/engine/viewer/embeddedviewer.js
@@ -44,6 +44,8 @@ export class EmbeddedViewer
this.viewer.SetEnvironmentMapSettings (environmentMap, backgroundIsEnvMap);
}
+ this.model = null;
+
window.addEventListener ('resize', () => {
this.Resize ();
});
@@ -63,6 +65,7 @@ export class EmbeddedViewer
settings.defaultColor = this.parameters.defaultColor;
}
+ this.model = null;
let progressDiv = null;
let loader = new ThreeModelLoader ();
loader.LoadModel (modelUrls, FileSource.Url, settings, {
@@ -92,6 +95,11 @@ export class EmbeddedViewer
this.viewer.SetUpVector (Direction.Y, false);
}
this.viewer.FitSphereToWindow (boundingSphere, false);
+
+ this.model = importResult.model;
+ if (this.parameters.onModelLoaded) {
+ this.parameters.onModelLoaded ();
+ }
},
onTextureLoaded : () => {
this.viewer.Render ();
@@ -118,6 +126,11 @@ export class EmbeddedViewer
return this.viewer;
}
+ GetModel ()
+ {
+ return this.model;
+ }
+
Resize ()
{
let width = this.parentElement.clientWidth;