@shapediver/viewer.rendering-engine.camera-engine 2.1.3 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrthographicCamera.d.ts","sourceRoot":"","sources":["../../../src/implementation/camera/OrthographicCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,cAAc,EAGf,MAAM,oCAAoC,CAAA;AAE3C,OAAO,EAAQ,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,GAAG,EAAQ,MAAM,gCAAgC,CAAA;AAM1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAA;AAChH,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAA;AAEnG,qBAAa,kBAAmB,SAAQ,cAAe,YAAW,mBAAmB;IAGnF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsD;IACjF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAE/D,OAAO,CAAC,sBAAsB,CAAC,CAAS;IACxC,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,UAAU,CAAoE;IACtF,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,GAAG,CAAkC;IAC7C,SAAS,CAAC,SAAS,EAAE,2BAA2B,CAAC;gBAMrC,EAAE,EAAE,MAAM;IAStB,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAW,QAAQ,IAAI,2BAA2B,CAEjD;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,2BAA2B,EAErD;IAED,IAAW,SAAS,IAAI,6BAA6B,CAEpD;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,6BAA6B,EAiCxD;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IAED,IAAW,GAAG,IAAI,MAAM,CAEvB;IAED,IAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAE3B;IAED,IAAW,EAAE,IAAI,IAAI,CAEpB;IAED,IAAW,EAAE,CAAC,KAAK,EAAE,IAAI,EAExB;IAMM,aAAa,CAAC,cAAc,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"OrthographicCamera.d.ts","sourceRoot":"","sources":["../../../src/implementation/camera/OrthographicCamera.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,cAAc,EAGf,MAAM,oCAAoC,CAAA;AAE3C,OAAO,EAAQ,IAAI,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,GAAG,EAAQ,MAAM,gCAAgC,CAAA;AAM1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAA;AAChH,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAA;AAEnG,qBAAa,kBAAmB,SAAQ,cAAe,YAAW,mBAAmB;IAGnF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsD;IACjF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAE/D,OAAO,CAAC,sBAAsB,CAAC,CAAS;IACxC,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,UAAU,CAAoE;IACtF,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,GAAG,CAAkC;IAC7C,SAAS,CAAC,SAAS,EAAE,2BAA2B,CAAC;gBAMrC,EAAE,EAAE,MAAM;IAStB,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAW,QAAQ,IAAI,2BAA2B,CAEjD;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,2BAA2B,EAErD;IAED,IAAW,SAAS,IAAI,6BAA6B,CAEpD;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,6BAA6B,EAiCxD;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IAED,IAAW,GAAG,IAAI,MAAM,CAEvB;IAED,IAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAE3B;IAED,IAAW,EAAE,IAAI,IAAI,CAEpB;IAED,IAAW,EAAE,CAAC,KAAK,EAAE,IAAI,EAExB;IAMM,aAAa,CAAC,cAAc,EAAE,cAAc;IAgC5C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAyBtC,KAAK,IAAI,mBAAmB;IAI5B,eAAe,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,gBAAgB,GAAE,IAAoB,EAAE,cAAc,GAAE,IAAkB,GAAG;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,IAAI,CAAC;KAAE;IAwDhJ,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAQxB,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,OAAgB,EAAE,MAAM,OAAc,GAAG,IAAI;CASlF"}
|
|
@@ -127,7 +127,8 @@ class OrthographicCamera extends AbstractCamera_1.AbstractCamera {
|
|
|
127
127
|
}
|
|
128
128
|
if (this.position[0] === this.target[0] && this.position[1] === this.target[1] && this.position[2] === this.target[2]) {
|
|
129
129
|
if (this._viewportId) {
|
|
130
|
-
this._stateEngine.renderingEngines[this._viewportId].boundingBoxCreated
|
|
130
|
+
this._stateEngine.renderingEngines[this._viewportId].boundingBoxCreated
|
|
131
|
+
.then(() => __awaiter(this, void 0, void 0, function* () {
|
|
131
132
|
yield this.zoomTo(undefined, { duration: 0 });
|
|
132
133
|
this.defaultPosition = gl_matrix_1.vec3.clone(this._controls.position);
|
|
133
134
|
this.defaultTarget = gl_matrix_1.vec3.clone(this._controls.target);
|
|
@@ -158,7 +159,7 @@ class OrthographicCamera extends AbstractCamera_1.AbstractCamera {
|
|
|
158
159
|
clone() {
|
|
159
160
|
return new OrthographicCamera(this.id);
|
|
160
161
|
}
|
|
161
|
-
calculateZoomTo(zoomTarget, startingPosition, startingTarget) {
|
|
162
|
+
calculateZoomTo(zoomTarget, startingPosition = this.position, startingTarget = this.target) {
|
|
162
163
|
let box;
|
|
163
164
|
// Part 1 - calculate the bounding box that we should zoom to
|
|
164
165
|
if (!zoomTarget) {
|
|
@@ -169,6 +170,8 @@ class OrthographicCamera extends AbstractCamera_1.AbstractCamera {
|
|
|
169
170
|
// specified Box
|
|
170
171
|
box = zoomTarget.clone();
|
|
171
172
|
}
|
|
173
|
+
if (box.isEmpty())
|
|
174
|
+
return { position: gl_matrix_1.vec3.create(), target: gl_matrix_1.vec3.create() };
|
|
172
175
|
const factor = 2 * box.boundingSphere.radius * this.zoomExtentsFactor;
|
|
173
176
|
const center = gl_matrix_1.vec3.clone(box.boundingSphere.center);
|
|
174
177
|
switch (this._direction) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrthographicCamera.js","sourceRoot":"","sources":["../../../src/implementation/camera/OrthographicCamera.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"OrthographicCamera.js","sourceRoot":"","sources":["../../../src/implementation/camera/OrthographicCamera.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapediver/viewer.rendering-engine.camera-engine",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "Michael Oppitz <michael@shapediver.com>",
|
|
@@ -39,16 +39,16 @@
|
|
|
39
39
|
"testEnvironment": "node"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@shapediver/viewer.rendering-engine.rendering-engine": "2.
|
|
42
|
+
"@shapediver/viewer.rendering-engine.rendering-engine": "2.2.0",
|
|
43
43
|
"@shapediver/viewer.settings": "0.1.36",
|
|
44
|
-
"@shapediver/viewer.shared.math": "2.
|
|
45
|
-
"@shapediver/viewer.shared.node-tree": "2.
|
|
46
|
-
"@shapediver/viewer.shared.services": "2.
|
|
47
|
-
"@shapediver/viewer.shared.types": "2.
|
|
44
|
+
"@shapediver/viewer.shared.math": "2.2.0",
|
|
45
|
+
"@shapediver/viewer.shared.node-tree": "2.2.0",
|
|
46
|
+
"@shapediver/viewer.shared.services": "2.2.0",
|
|
47
|
+
"@shapediver/viewer.shared.types": "2.2.0",
|
|
48
48
|
"@tweenjs/tween.js": "^18.6.4",
|
|
49
49
|
"detect-it": "4.0.1",
|
|
50
50
|
"gl-matrix": "3.3.0",
|
|
51
51
|
"tsyringe": "^4.5.0"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "d15d9011a2f9a4988c88ee690e6dd44750f59b1b"
|
|
54
54
|
}
|
|
@@ -162,12 +162,13 @@ export class OrthographicCamera extends AbstractCamera implements IOrthographicC
|
|
|
162
162
|
}
|
|
163
163
|
|
|
164
164
|
if (this.position[0] === this.target[0] && this.position[1] === this.target[1] && this.position[2] === this.target[2]) {
|
|
165
|
-
if(this._viewportId) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
165
|
+
if (this._viewportId) {
|
|
166
|
+
this._stateEngine.renderingEngines[this._viewportId].boundingBoxCreated
|
|
167
|
+
.then(async () => {
|
|
168
|
+
await this.zoomTo(undefined, { duration: 0 });
|
|
169
|
+
this.defaultPosition = vec3.clone(this._controls.position);
|
|
170
|
+
this.defaultTarget = vec3.clone(this._controls.target);
|
|
171
|
+
})
|
|
171
172
|
}
|
|
172
173
|
}
|
|
173
174
|
(<OrthographicCameraControls>this._controls).applySettings(settingsEngine);
|
|
@@ -202,7 +203,7 @@ export class OrthographicCamera extends AbstractCamera implements IOrthographicC
|
|
|
202
203
|
return new OrthographicCamera(this.id);
|
|
203
204
|
}
|
|
204
205
|
|
|
205
|
-
public calculateZoomTo(zoomTarget?: Box, startingPosition
|
|
206
|
+
public calculateZoomTo(zoomTarget?: Box, startingPosition: vec3 = this.position, startingTarget: vec3 = this.target): { position: vec3; target: vec3; } {
|
|
206
207
|
let box: IBox;
|
|
207
208
|
|
|
208
209
|
// Part 1 - calculate the bounding box that we should zoom to
|
|
@@ -213,10 +214,12 @@ export class OrthographicCamera extends AbstractCamera implements IOrthographicC
|
|
|
213
214
|
// specified Box
|
|
214
215
|
box = zoomTarget.clone();
|
|
215
216
|
}
|
|
217
|
+
|
|
218
|
+
if (box.isEmpty()) return { position: vec3.create(), target: vec3.create() }
|
|
216
219
|
|
|
217
220
|
const factor = 2 * box.boundingSphere.radius * this.zoomExtentsFactor;
|
|
218
|
-
|
|
219
221
|
const center = vec3.clone(box.boundingSphere.center);
|
|
222
|
+
|
|
220
223
|
switch (this._direction) {
|
|
221
224
|
case ORTHOGRAPHIC_CAMERA_DIRECTION.TOP:
|
|
222
225
|
return {
|