@vertexvis/viewer 0.15.2-testing.3 → 0.15.2
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.
- package/dist/cjs/_commonjsHelpers-dcc4cf71.js +1 -1
- package/dist/cjs/app-globals-2035678d.js +1 -1
- package/dist/cjs/browser.esm-5d246754.js +1 -1
- package/dist/cjs/bundle.esm-22b6f2d6.js +1 -1
- package/dist/cjs/bundle.esm-b43c197a.js +38280 -0
- package/dist/cjs/{config-6e330a82.js → config-3fc1c093.js} +2 -2
- package/dist/cjs/{cursors-85d403e9.js → cursors-02a06ec9.js} +7 -1
- package/dist/cjs/dom-8d90bfaf.js +1 -1
- package/dist/cjs/dom-92728e58.js +1 -1
- package/dist/cjs/dom-d1bbd67c.js +1 -1
- package/dist/cjs/dom-d57d3c3b.js +1 -1
- package/dist/cjs/elementRectObserver-9b28f182.js +1 -1
- package/dist/cjs/entities-9eb7e608.js +1 -1
- package/dist/cjs/{entities-7b2e8c03.js → entities-c1c3c6a3.js} +3 -3
- package/dist/cjs/errors-1b37642b.js +97 -0
- package/dist/cjs/grpc-web-client.umd-2af20c1b.js +1 -1
- package/dist/cjs/index-70db349e.js +1 -1
- package/dist/cjs/index-b9d13137.js +1 -1
- package/dist/cjs/index.cjs.js +9 -6
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{mapper-0f2294a6.js → mapper-d4145b72.js} +2 -2
- package/dist/cjs/markup-4a2fc281.js +1 -1
- package/dist/cjs/{model-b61f4d20.js → model-19fb560a.js} +27 -6
- package/dist/cjs/model-20a70d27.js +1 -1
- package/dist/cjs/overlays-b03ec80b.js +1 -1
- package/dist/cjs/png-decoder-ef097f37.js +1 -1
- package/dist/cjs/results-178e89a3.js +1 -1
- package/dist/cjs/{scene-56438693.js → scene-a94e6fa5.js} +293 -215
- package/dist/cjs/shadow-css-6b9daa41.js +1 -1
- package/dist/cjs/stencil-fc92b387.js +1 -1
- package/dist/cjs/{streamAttributes-c64aee75.js → streamAttributes-cf0c513d.js} +8424 -41995
- package/dist/cjs/templates-e57b3741.js +1 -1
- package/dist/cjs/utils-2c8e2aa3.js +1 -1
- package/dist/cjs/utils-ea359796.js +1 -1
- package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-cell.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-column.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-header.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-table-resize-divider.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree-toolbar-group.cjs.entry.js +1 -1
- package/dist/cjs/vertex-scene-tree.cjs.entry.js +158 -37
- package/dist/cjs/vertex-viewer-box-query-tool.cjs.entry.js +425 -0
- package/dist/cjs/vertex-viewer-button_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-default-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +3 -2
- package/dist/cjs/vertex-viewer-dom-group.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-icon.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-layer.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup-arrow_3.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup-tool.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-markup.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +3 -2
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +5 -4
- package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +4 -3
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +7 -6
- package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +10 -5
- package/dist/cjs/vertex-viewer-pin-label_2.cjs.entry.js +15 -13
- package/dist/cjs/vertex-viewer-pin-tool.cjs.entry.js +20 -9
- package/dist/cjs/vertex-viewer-spinner.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +6 -4
- package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +5 -4
- package/dist/cjs/vertex-viewer.cjs.entry.js +80 -53
- package/dist/cjs/viewer.cjs.js +2 -2
- package/dist/cjs/viewport-5ca619f7.js +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/scene-tree/lib/controller.js +108 -28
- package/dist/collection/components/scene-tree/lib/errors.js +35 -2
- package/dist/collection/components/scene-tree/scene-tree.js +12 -5
- package/dist/collection/components/viewer/viewer.js +17 -15
- package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.css +79 -0
- package/dist/collection/components/viewer-box-query-tool/viewer-box-query-tool.js +278 -0
- package/dist/collection/components/viewer-pin-group/viewer-pin-group.js +5 -1
- package/dist/collection/components/viewer-pin-label/viewer-pin-label.css +1 -1
- package/dist/collection/components/viewer-pin-label/viewer-pin-label.js +14 -12
- package/dist/collection/components/viewer-pin-tool/utils.js +25 -4
- package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.css +12 -0
- package/dist/collection/components/viewer-pin-tool/viewer-pin-tool.js +9 -2
- package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +3 -2
- package/dist/collection/components/viewer-view-cube/viewer-view-cube.js +5 -5
- package/dist/collection/lib/cursors.js +6 -1
- package/dist/collection/lib/interactions/baseInteractionHandler.js +12 -2
- package/dist/collection/lib/interactions/mouseInteractions.js +5 -4
- package/dist/collection/lib/mappers/frameStreaming.js +11 -11
- package/dist/collection/lib/pins/interactions.js +9 -5
- package/dist/collection/lib/pins/model.js +2 -2
- package/dist/collection/lib/rendering/matrices.js +2 -4
- package/dist/collection/lib/scenes/camera.js +4 -2
- package/dist/collection/lib/scenes/mapper.js +103 -30
- package/dist/collection/lib/scenes/queries.js +101 -46
- package/dist/collection/lib/scenes/scene.js +15 -7
- package/dist/collection/lib/stream/stream.js +24 -12
- package/dist/collection/lib/transforms/drawable.js +2 -2
- package/dist/collection/lib/types/frame.js +4 -3
- package/dist/collection/lib/types/frameCamera.js +6 -1
- package/dist/collection/lib/types/index.js +3 -2
- package/dist/collection/lib/types/loadableResource.js +24 -4
- package/dist/collection/lib/types/sceneViewStateIdentifier.js +7 -0
- package/dist/collection/lib/volume-intersection/controller.js +104 -0
- package/dist/collection/lib/volume-intersection/interactions.js +82 -0
- package/dist/collection/lib/volume-intersection/model.js +84 -0
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +23825 -18358
- package/dist/custom-elements/png-decoder.js +1 -1
- package/dist/esm/_commonjsHelpers-11ca3be1.js +1 -1
- package/dist/esm/app-globals-40df99a0.js +1 -1
- package/dist/esm/{browser.esm-ae4ca1f1.js → browser.esm-07e7db8f.js} +2 -2
- package/dist/esm/bundle.esm-91404853.js +38273 -0
- package/dist/esm/{bundle.esm-ce2c7ad3.js → bundle.esm-92e615bf.js} +2 -2
- package/dist/esm/{config-49688db8.js → config-25384fe6.js} +3 -3
- package/dist/esm/{cursors-a8d4b3f4.js → cursors-127a3bb7.js} +8 -3
- package/dist/esm/dom-0440435d.js +1 -1
- package/dist/esm/dom-be140992.js +1 -1
- package/dist/esm/dom-e19ee80b.js +1 -1
- package/dist/esm/{dom-5b164305.js → dom-e436f0c0.js} +2 -2
- package/dist/esm/elementRectObserver-39cf7b95.js +1 -1
- package/dist/esm/{entities-a5bfef48.js → entities-0e325765.js} +4 -4
- package/dist/esm/entities-ce81dd7f.js +1 -1
- package/dist/esm/errors-a4cc9caa.js +85 -0
- package/dist/esm/grpc-web-client.umd-5409853c.js +1 -1
- package/dist/esm/index-26dfb2d0.js +1 -1
- package/dist/esm/index-e841d91b.js +1 -1
- package/dist/esm/index.js +15 -13
- package/dist/esm/index.mjs +15 -13
- package/dist/esm/loader.js +2 -2
- package/dist/esm/loader.mjs +2 -2
- package/dist/esm/{mapper-5894c2a4.js → mapper-dd937684.js} +3 -3
- package/dist/esm/{markup-3c2900f3.js → markup-2dde1f10.js} +3 -3
- package/dist/esm/{model-fa9af61a.js → model-3cd8cd47.js} +2 -2
- package/dist/esm/{model-40bd1711.js → model-bfe1c4d8.js} +29 -8
- package/dist/esm/{overlays-cc3efc30.js → overlays-8f195eb3.js} +3 -3
- package/dist/esm/{png-decoder-d4b65417.js → png-decoder-45f38ea3.js} +2 -2
- package/dist/esm/{results-3b4df2cf.js → results-38baef59.js} +2 -2
- package/dist/esm/{scene-5b919078.js → scene-2543b3bd.js} +254 -168
- package/dist/esm/shadow-css-51dd7708.js +1 -1
- package/dist/esm/stencil-bfbf099f.js +1 -1
- package/dist/esm/{streamAttributes-7e8565be.js → streamAttributes-23270e27.js} +8429 -41994
- package/dist/esm/templates-022199c1.js +1 -1
- package/dist/esm/{utils-81347571.js → utils-2306c744.js} +2 -2
- package/dist/esm/{utils-559e1632.js → utils-f03802ef.js} +2 -2
- package/dist/esm/vertex-scene-tree-search_3.entry.js +3 -3
- package/dist/esm/vertex-scene-tree-table-cell.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-column.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-header.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-table-resize-divider.entry.js +1 -1
- package/dist/esm/vertex-scene-tree-toolbar-group.entry.js +1 -1
- package/dist/esm/vertex-scene-tree.entry.js +160 -39
- package/dist/esm/vertex-viewer-box-query-tool.entry.js +421 -0
- package/dist/esm/vertex-viewer-button_3.entry.js +1 -1
- package/dist/esm/vertex-viewer-default-toolbar.entry.js +1 -1
- package/dist/esm/vertex-viewer-dom-element_2.entry.js +6 -5
- package/dist/esm/vertex-viewer-dom-group.entry.js +3 -3
- package/dist/esm/vertex-viewer-icon.entry.js +1 -1
- package/dist/esm/vertex-viewer-layer.entry.js +1 -1
- package/dist/esm/vertex-viewer-markup-arrow_3.entry.js +4 -4
- package/dist/esm/vertex-viewer-markup-tool.entry.js +5 -5
- package/dist/esm/vertex-viewer-markup.entry.js +5 -5
- package/dist/esm/vertex-viewer-measurement-details.entry.js +5 -4
- package/dist/esm/vertex-viewer-measurement-distance.entry.js +13 -12
- package/dist/esm/vertex-viewer-measurement-line_2.entry.js +8 -7
- package/dist/esm/vertex-viewer-measurement-precise.entry.js +12 -11
- package/dist/esm/vertex-viewer-pin-group.entry.js +13 -8
- package/dist/esm/vertex-viewer-pin-label_2.entry.js +18 -16
- package/dist/esm/vertex-viewer-pin-tool.entry.js +23 -12
- package/dist/esm/vertex-viewer-spinner.entry.js +1 -1
- package/dist/esm/vertex-viewer-transform-widget.entry.js +9 -7
- package/dist/esm/vertex-viewer-view-cube.entry.js +7 -6
- package/dist/esm/vertex-viewer.entry.js +65 -38
- package/dist/esm/viewer.js +2 -2
- package/dist/esm/{viewport-e39e2eba.js → viewport-f19fc583.js} +2 -2
- package/dist/types/components/scene-tree/lib/controller.d.ts +18 -3
- package/dist/types/components/scene-tree/lib/errors.d.ts +17 -2
- package/dist/types/components/viewer/viewer.d.ts +2 -0
- package/dist/types/components/viewer-box-query-tool/viewer-box-query-tool.d.ts +94 -0
- package/dist/types/components/viewer-pin-tool/utils.d.ts +1 -1
- package/dist/types/components.d.ts +56 -0
- package/dist/types/lib/cursors.d.ts +5 -0
- package/dist/types/lib/interactions/baseInteractionHandler.d.ts +1 -0
- package/dist/types/lib/interactions/mouseInteractions.d.ts +2 -1
- package/dist/types/lib/pins/interactions.d.ts +4 -2
- package/dist/types/lib/pins/model.d.ts +1 -1
- package/dist/types/lib/scenes/camera.d.ts +1 -1
- package/dist/types/lib/scenes/mapper.d.ts +5 -1
- package/dist/types/lib/scenes/queries.d.ts +55 -28
- package/dist/types/lib/scenes/scene.d.ts +10 -1
- package/dist/types/lib/types/frame.d.ts +1 -1
- package/dist/types/lib/types/index.d.ts +2 -1
- package/dist/types/lib/types/loadableResource.d.ts +8 -2
- package/dist/types/lib/types/sceneViewStateIdentifier.d.ts +15 -0
- package/dist/types/lib/volume-intersection/controller.d.ts +45 -0
- package/dist/types/lib/volume-intersection/interactions.d.ts +24 -0
- package/dist/types/lib/volume-intersection/model.d.ts +33 -0
- package/dist/viewer/index.esm.js +2 -2
- package/dist/viewer/{p-ad09c92e.entry.js → p-029fba92.entry.js} +1 -1
- package/dist/viewer/p-07aeee89.js +1 -1
- package/dist/viewer/{p-29986489.js → p-0a017be7.js} +2 -2
- package/dist/viewer/p-0c583cad.entry.js +4 -0
- package/dist/viewer/p-0d494d01.js +4 -0
- package/dist/viewer/p-0fdad1a5.js +1 -1
- package/dist/viewer/{p-3ca4a7c1.js → p-1812c82d.js} +2 -2
- package/dist/viewer/{p-7663a603.entry.js → p-191156ad.entry.js} +1 -1
- package/dist/viewer/{p-a57dc6e4.entry.js → p-1998284a.entry.js} +2 -2
- package/dist/viewer/p-27f715f8.entry.js +4 -0
- package/dist/viewer/{p-7f6251da.js → p-283aeac4.js} +2 -2
- package/dist/viewer/p-298b63c2.entry.js +4 -0
- package/dist/viewer/p-2ace066b.entry.js +4 -0
- package/dist/viewer/{p-927b528b.js → p-2b60a8b0.js} +2 -2
- package/dist/viewer/{p-050f912b.entry.js → p-2fd123c8.entry.js} +1 -1
- package/dist/viewer/p-305a8be6.entry.js +4 -0
- package/dist/viewer/p-31724d24.js +4 -0
- package/dist/viewer/p-32cc2209.js +4 -0
- package/dist/viewer/p-3829dd99.entry.js +4 -0
- package/dist/viewer/{p-6da8a28f.entry.js → p-3aae4bf1.entry.js} +2 -2
- package/dist/viewer/{p-99352cf0.js → p-42760392.js} +2 -2
- package/dist/viewer/p-440c8174.js +4 -0
- package/dist/viewer/{p-e422deaf.entry.js → p-4f25e367.entry.js} +2 -2
- package/dist/viewer/{p-d64c1e14.entry.js → p-507b5aeb.entry.js} +3 -3
- package/dist/viewer/{p-1fc24ec6.js → p-51401063.js} +2 -2
- package/dist/viewer/{p-426970b3.entry.js → p-533b1c63.entry.js} +1 -1
- package/dist/viewer/{p-dcb9804c.entry.js → p-569ed94a.entry.js} +2 -2
- package/dist/viewer/p-5809b400.js +1 -1
- package/dist/viewer/p-6072cf84.js +4 -0
- package/dist/viewer/{p-e4a26a32.entry.js → p-6406a70a.entry.js} +1 -1
- package/dist/viewer/p-6bf0594b.entry.js +4 -0
- package/dist/viewer/p-72c59115.entry.js +4 -0
- package/dist/viewer/{p-d71652b0.entry.js → p-8ac7290a.entry.js} +1 -1
- package/dist/viewer/{p-f184bcab.entry.js → p-8afcbd99.entry.js} +1 -1
- package/dist/viewer/p-92fe4417.js +1 -1
- package/dist/viewer/{p-5746931d.entry.js → p-952a217d.entry.js} +1 -1
- package/dist/viewer/p-98e6a50e.js +1 -1
- package/dist/viewer/{p-99fd27e0.entry.js → p-9cb99ea8.entry.js} +1 -1
- package/dist/viewer/p-a2e9e8a5.js +4 -0
- package/dist/viewer/p-a380f0c2.js +1 -1
- package/dist/viewer/{p-661b5234.js → p-acfc5c50.js} +2 -2
- package/dist/viewer/{p-82bd25e8.entry.js → p-b3540dce.entry.js} +1 -1
- package/dist/viewer/p-b5ca30cd.js +4 -0
- package/dist/viewer/p-b74242dc.js +1 -1
- package/dist/viewer/p-bc1160cf.entry.js +4 -0
- package/dist/viewer/{p-c5e67a1e.entry.js → p-bd5a302c.entry.js} +2 -2
- package/dist/viewer/p-c738296e.js +1 -1
- package/dist/viewer/p-c8c4343b.js +1 -1
- package/dist/viewer/p-cd9ccb9e.entry.js +4 -0
- package/dist/viewer/{p-40a9dd7d.js → p-cf689bbd.js} +2 -2
- package/dist/viewer/{p-70e5e8a8.js → p-d216a866.js} +2 -2
- package/dist/viewer/p-d4ed7b8d.js +4 -0
- package/dist/viewer/p-d6d5d5de.entry.js +4 -0
- package/dist/viewer/p-d6fce4c1.js +1 -1
- package/dist/viewer/p-df8fbe56.js +1 -1
- package/dist/viewer/p-dfe5a97d.js +1 -1
- package/dist/viewer/{p-00ce31a0.js → p-e1896ce4.js} +2 -2
- package/dist/viewer/p-e23af70c.js +4 -0
- package/dist/viewer/p-e4aa9cdb.js +1 -1
- package/dist/viewer/p-e929dd63.entry.js +4 -0
- package/dist/viewer/{p-65af7a89.js → p-fc7d8c03.js} +3 -3
- package/dist/viewer/viewer.esm.js +2 -2
- package/package.json +9 -9
- package/readme.md +4 -4
- package/dist/viewer/p-096e60bd.js +0 -4
- package/dist/viewer/p-0cf4f05d.entry.js +0 -4
- package/dist/viewer/p-0fcafbf9.js +0 -4
- package/dist/viewer/p-1abfe4bf.js +0 -4
- package/dist/viewer/p-1e0dd2e9.js +0 -4
- package/dist/viewer/p-22ae6785.entry.js +0 -4
- package/dist/viewer/p-27dbc865.js +0 -4
- package/dist/viewer/p-31b87b90.js +0 -4
- package/dist/viewer/p-3f6f2457.entry.js +0 -4
- package/dist/viewer/p-61e50e11.entry.js +0 -4
- package/dist/viewer/p-7579e2a1.entry.js +0 -4
- package/dist/viewer/p-920c9a88.entry.js +0 -4
- package/dist/viewer/p-990f98c2.js +0 -4
- package/dist/viewer/p-9dfe0b43.entry.js +0 -4
- package/dist/viewer/p-a6558bb2.entry.js +0 -4
- package/dist/viewer/p-b7e170ac.entry.js +0 -4
- package/dist/viewer/p-d34ad2b2.entry.js +0 -4
- package/dist/viewer/p-f3ea0c2b.entry.js +0 -4
|
@@ -31,10 +31,10 @@ export class PinModel {
|
|
|
31
31
|
* @param pin A pin entity to draw.
|
|
32
32
|
* @returns `true` if the entity has been added.
|
|
33
33
|
*/
|
|
34
|
-
addPin(pin,
|
|
34
|
+
addPin(pin, suppressEvent = false) {
|
|
35
35
|
if (this.entities[pin.id] == null) {
|
|
36
36
|
this.entities = Object.assign(Object.assign({}, this.entities), { [pin.id]: pin });
|
|
37
|
-
if (!
|
|
37
|
+
if (!suppressEvent) {
|
|
38
38
|
this.entitiesChanged.emit(this.getPins());
|
|
39
39
|
}
|
|
40
40
|
return true;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @see https://openframeworks.cc/documentation/math/ofMatrix4x4/
|
|
3
3
|
* @see https://github.com/openframeworks/openFrameworks/blob/356612673304e2f8b0584bc4080b58ee36db62f7/libs/openFrameworks/math/ofMatrix4x4.cpp
|
|
4
4
|
*/
|
|
5
|
-
import { Angle,
|
|
5
|
+
import { Angle, Vector3 } from '@vertexvis/geometry';
|
|
6
6
|
import { isOrthographicFrameCamera } from '../types/frameCamera';
|
|
7
7
|
/**
|
|
8
8
|
* Matrix becomes a perspective projection matrix.
|
|
@@ -96,7 +96,6 @@ export function makeLookAtViewMatrix(camera) {
|
|
|
96
96
|
0, 0, 0, 1,
|
|
97
97
|
];
|
|
98
98
|
/* eslint-enable prettier/prettier */
|
|
99
|
-
return Matrix4.makeIdentity();
|
|
100
99
|
}
|
|
101
100
|
/**
|
|
102
101
|
* Matrix becomes a combination of translation and rotation.
|
|
@@ -125,6 +124,5 @@ export function makeLookAtMatrix(camera) {
|
|
|
125
124
|
0, 0, 0, 1
|
|
126
125
|
];
|
|
127
126
|
/* eslint-enable prettier/prettier */
|
|
128
|
-
return Matrix4.makeIdentity();
|
|
129
127
|
}
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3JlbmRlcmluZy9tYXRyaWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsS0FBSyxFQUFXLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzlELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsSUFBWSxFQUNaLEtBQWEsRUFDYixHQUFXLEVBQ1gsTUFBYyxFQUNkLElBQVksRUFDWixHQUFXO0VBRVgsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUM7RUFDMUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUM7RUFDMUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztFQUN2QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztFQUUzQyxzQ0FBc0M7RUFDdEMsT0FBTztJQUNMLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNwQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDcEMs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
|
|
@@ -264,7 +264,9 @@ export class PerspectiveCamera extends Camera {
|
|
|
264
264
|
return super.fitCameraToBoundingBox(boundingBox, distance, this.viewVector);
|
|
265
265
|
}
|
|
266
266
|
update(camera) {
|
|
267
|
-
|
|
267
|
+
var _a;
|
|
268
|
+
const fovY = (_a = camera.fovY) !== null && _a !== void 0 ? _a : this.fovY;
|
|
269
|
+
return new PerspectiveCamera(this.stream, this.aspect, Object.assign(Object.assign(Object.assign({}, this.perspectiveData), camera), { fovY }), this.boundingBox, this.decodeFrame, this.flyToOptions);
|
|
268
270
|
}
|
|
269
271
|
toFrameCamera() {
|
|
270
272
|
var _a;
|
|
@@ -410,4 +412,4 @@ export class OrthographicCamera extends Camera {
|
|
|
410
412
|
return new OrthographicCamera(this.stream, this.aspect, this.orthographicData, this.boundingBox, this.decodeFrame, flyToOptions);
|
|
411
413
|
}
|
|
412
414
|
}
|
|
413
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9zY2VuZXMvY2FtZXJhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBQ1gsY0FBYyxFQUNkLE9BQU8sRUFDUCxVQUFVLEVBQ1YsR0FBRyxFQUNILE9BQU8sR0FDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsRUFFWCx1QkFBdUIsRUFDdkIsc0JBQXNCLEdBRXZCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvQyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztBQU10QyxNQUFNLE9BQU8scUJBQXFCO0VBQ2hDLFlBQTJCLFlBQWlDO0lBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtFQUFHLENBQUM7RUFFekQsS0FBSztJQUNWLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztFQUMzQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sYUFBYTtFQUdqQixVQUFVLENBQUMsRUFBVTtJQUMxQixPQUFPLElBQUkscUJBQXFCLENBQUM7TUFDL0IsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsSUFBSSxFQUFFLEVBQUU7T0FDVDtLQUNGLENBQUMsQ0FBQztFQUNMLENBQUM7RUFFTSxjQUFjLENBQUMsRUFBVTtJ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
|
|
415
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9zY2VuZXMvY2FtZXJhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBQ1gsY0FBYyxFQUNkLE9BQU8sRUFDUCxVQUFVLEVBQ1YsR0FBRyxFQUNILE9BQU8sR0FDUixNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBRUwsY0FBYyxFQUVkLFdBQVcsRUFFWCx1QkFBdUIsRUFDdkIsc0JBQXNCLEdBRXZCLE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvQyxNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztBQU10QyxNQUFNLE9BQU8scUJBQXFCO0VBQ2hDLFlBQTJCLFlBQWlDO0lBQWpDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtFQUFHLENBQUM7RUFFekQsS0FBSztJQUNWLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztFQUMzQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sYUFBYTtFQUdqQixVQUFVLENBQUMsRUFBVTtJQUMxQixPQUFPLElBQUkscUJBQXFCLENBQUM7TUFDL0IsS0FBSyxFQUFFO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsSUFBSSxFQUFFLEVBQUU7T0FDVDtLQUNGLENBQUMsQ0FBQztFQUNMLENBQUM7RUFFTSxjQUFjLENBQUMsRUFBVTtJ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
|
|
@@ -1,68 +1,114 @@
|
|
|
1
1
|
import { vertexvis } from '@vertexvis/frame-streaming-protos';
|
|
2
2
|
import { toProtoDuration } from '@vertexvis/stream-api';
|
|
3
|
-
import { FrameCamera } from '../types';
|
|
4
|
-
export function
|
|
5
|
-
|
|
3
|
+
import { FrameCamera, SceneViewStateIdentifier, } from '../types';
|
|
4
|
+
export function buildSceneViewStateIdentifier(identifier) {
|
|
5
|
+
if (typeof identifier === 'string') {
|
|
6
|
+
return { sceneViewStateId: { hex: identifier } };
|
|
7
|
+
}
|
|
8
|
+
else if (SceneViewStateIdentifier.isSceneViewStateId(identifier)) {
|
|
9
|
+
return { sceneViewStateId: { hex: identifier.id } };
|
|
10
|
+
}
|
|
11
|
+
else if (SceneViewStateIdentifier.isSceneViewStateSuppliedId(identifier)) {
|
|
12
|
+
return { sceneViewStateSuppliedId: { value: identifier.suppliedId } };
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
throw new Error('Unable to build scene view state identifier, input must be a string or `SceneViewStateIdentifier`.');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function buildQueryExpression(query, context) {
|
|
6
19
|
switch (query.type) {
|
|
7
20
|
case 'and':
|
|
8
21
|
case 'or':
|
|
9
22
|
return {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
23
|
+
operand: {
|
|
24
|
+
itemCollection: {
|
|
25
|
+
queries: query.expressions.map((exp) => ({
|
|
26
|
+
sceneItemQuery: buildSceneItemQuery(exp),
|
|
27
|
+
})),
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
case 'not':
|
|
32
|
+
return {
|
|
33
|
+
not: {
|
|
34
|
+
expression: buildQueryExpression(query.query, context),
|
|
14
35
|
},
|
|
15
|
-
operationTypes,
|
|
16
36
|
};
|
|
17
37
|
case 'item-id':
|
|
18
38
|
case 'supplied-id':
|
|
19
39
|
return {
|
|
20
|
-
|
|
21
|
-
|
|
40
|
+
operand: {
|
|
41
|
+
item: {
|
|
42
|
+
sceneItemQuery: buildSceneItemQuery(query),
|
|
43
|
+
},
|
|
22
44
|
},
|
|
23
|
-
operationTypes,
|
|
24
45
|
};
|
|
25
46
|
case 'all':
|
|
26
47
|
return {
|
|
27
|
-
|
|
28
|
-
|
|
48
|
+
operand: {
|
|
49
|
+
root: {},
|
|
50
|
+
},
|
|
29
51
|
};
|
|
30
52
|
case 'scene-tree-range':
|
|
31
53
|
return {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
54
|
+
operand: {
|
|
55
|
+
sceneTreeRange: {
|
|
56
|
+
start: query.range.start,
|
|
57
|
+
end: query.range.end,
|
|
58
|
+
},
|
|
35
59
|
},
|
|
36
|
-
operationTypes,
|
|
37
60
|
};
|
|
38
61
|
case 'metadata':
|
|
39
62
|
return {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
63
|
+
operand: {
|
|
64
|
+
metadata: {
|
|
65
|
+
valueFilter: query.filter,
|
|
66
|
+
keys: query.keys,
|
|
67
|
+
exactMatch: query.exactMatch,
|
|
68
|
+
},
|
|
44
69
|
},
|
|
45
|
-
operationTypes,
|
|
46
70
|
};
|
|
47
71
|
case 'all-selected':
|
|
48
72
|
return {
|
|
49
|
-
|
|
50
|
-
|
|
73
|
+
operand: {
|
|
74
|
+
override: {
|
|
75
|
+
selection: {},
|
|
76
|
+
},
|
|
51
77
|
},
|
|
52
|
-
operationTypes,
|
|
53
78
|
};
|
|
54
79
|
case 'point':
|
|
55
80
|
return {
|
|
56
|
-
|
|
57
|
-
point:
|
|
58
|
-
|
|
81
|
+
operand: {
|
|
82
|
+
point: {
|
|
83
|
+
point: query.point,
|
|
84
|
+
viewport: context.dimensions,
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
case 'volume-intersection':
|
|
89
|
+
return {
|
|
90
|
+
operand: {
|
|
91
|
+
volume: {
|
|
92
|
+
frustumByRectangle: {
|
|
93
|
+
rectangle: query.rectangle,
|
|
94
|
+
},
|
|
95
|
+
exclusive: query.exclusive,
|
|
96
|
+
viewport: context.dimensions,
|
|
97
|
+
},
|
|
59
98
|
},
|
|
60
|
-
operationTypes,
|
|
61
99
|
};
|
|
62
100
|
default:
|
|
63
101
|
return {};
|
|
64
102
|
}
|
|
65
103
|
}
|
|
104
|
+
export function buildSceneOperation(query, operations, context) {
|
|
105
|
+
const operationTypes = buildOperationTypes(operations);
|
|
106
|
+
const queryExpression = buildQueryExpression(query, context);
|
|
107
|
+
return {
|
|
108
|
+
queryExpression,
|
|
109
|
+
operationTypes,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
66
112
|
function buildSceneItemQuery(item) {
|
|
67
113
|
switch (item.type) {
|
|
68
114
|
case 'item-id':
|
|
@@ -182,4 +228,31 @@ function buildOperationTypes(operations) {
|
|
|
182
228
|
}
|
|
183
229
|
});
|
|
184
230
|
}
|
|
185
|
-
|
|
231
|
+
export function toPbSceneViewStateFeatures(features) {
|
|
232
|
+
return features.map((feature) => {
|
|
233
|
+
switch (feature) {
|
|
234
|
+
case 'camera':
|
|
235
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
236
|
+
.SCENE_VIEW_STATE_FEATURE_CAMERA;
|
|
237
|
+
case 'material_overrides':
|
|
238
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
239
|
+
.SCENE_VIEW_STATE_FEATURE_MATERIAL_OVERRIDE;
|
|
240
|
+
case 'selection':
|
|
241
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
242
|
+
.SCENE_VIEW_STATE_FEATURE_SELECTION;
|
|
243
|
+
case 'visibility':
|
|
244
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
245
|
+
.SCENE_VIEW_STATE_FEATURE_VISIBILITY;
|
|
246
|
+
case 'transforms':
|
|
247
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
248
|
+
.SCENE_VIEW_STATE_FEATURE_TRANSFORM;
|
|
249
|
+
case 'cross_section':
|
|
250
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
251
|
+
.SCENE_VIEW_STATE_FEATURE_CROSS_SECTION;
|
|
252
|
+
default:
|
|
253
|
+
return vertexvis.protobuf.stream.SceneViewStateFeature
|
|
254
|
+
.SCENE_VIEW_STATE_FEATURE_INVALID;
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9zY2VuZXMvbWFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHeEQsT0FBTyxFQUdMLFdBQVcsRUFDWCx3QkFBd0IsR0FDekIsTUFBTSxVQUFVLENBQUM7QUFTbEIsTUFBTSxVQUFVLDZCQUE2QixDQUMzQyxVQUF5RTtFQVV6RSxJQUFJLE9BQU8sVUFBVSxLQUFLLFFBQVEsRUFBRTtJQUNsQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQztHQUNsRDtPQUFNLElBQUksd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQUU7SUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO0dBQ3JEO09BQU0sSUFBSSx3QkFBd0IsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsRUFBRTtJQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7R0FDdkU7T0FBTTtJQUNMLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0dBQW9HLENBQ3JHLENBQUM7R0FDSDtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLEtBQXNCLEVBQ3RCLE9BQW1DO0VBRW5DLFFBQVEsS0FBSyxDQUFDLElBQUksRUFBRTtJQUNsQixLQUFLLEtBQUssQ0FBQztJQUNYLEtBQUssSUFBSTtNQUNQLE9BQU87UUFDTCxPQUFPLEVBQUU7VUFDUCxjQUFjLEVBQUU7WUFDZCxPQUFPLEVBQUUsS0FBSyxDQUFDLFdBQVcs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
|
|
@@ -1,56 +1,95 @@
|
|
|
1
1
|
import { SceneItemOperationsBuilder } from './scene';
|
|
2
|
+
/**
|
|
3
|
+
* An interface that represents a query is "complete" and can be turned into an
|
|
4
|
+
* expression.
|
|
5
|
+
*/
|
|
6
|
+
class TerminalQuery {
|
|
7
|
+
constructor(inverted) {
|
|
8
|
+
this.inverted = inverted;
|
|
9
|
+
}
|
|
10
|
+
build() {
|
|
11
|
+
if (this.inverted) {
|
|
12
|
+
return {
|
|
13
|
+
type: 'not',
|
|
14
|
+
query: this.queryExpressionBuilder(),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
return this.queryExpressionBuilder();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
2
22
|
export class RootQuery {
|
|
23
|
+
constructor(inverted = false) {
|
|
24
|
+
this.inverted = inverted;
|
|
25
|
+
}
|
|
3
26
|
all() {
|
|
4
27
|
return new AllQuery();
|
|
5
28
|
}
|
|
29
|
+
not() {
|
|
30
|
+
return new NotQuery(!this.inverted);
|
|
31
|
+
}
|
|
6
32
|
withItemIds(ids) {
|
|
7
|
-
return new BulkQuery(ids, 'item-id');
|
|
33
|
+
return new BulkQuery(ids, 'item-id', this.inverted);
|
|
8
34
|
}
|
|
9
35
|
withSuppliedIds(ids) {
|
|
10
|
-
return new BulkQuery(ids, 'supplied-id');
|
|
36
|
+
return new BulkQuery(ids, 'supplied-id', this.inverted);
|
|
11
37
|
}
|
|
12
38
|
withItemId(id) {
|
|
13
|
-
return new SingleQuery({ type: 'item-id', value: id });
|
|
39
|
+
return new SingleQuery({ type: 'item-id', value: id }, this.inverted);
|
|
14
40
|
}
|
|
15
41
|
withSuppliedId(id) {
|
|
16
|
-
return new SingleQuery({ type: 'supplied-id', value: id });
|
|
42
|
+
return new SingleQuery({ type: 'supplied-id', value: id }, this.inverted);
|
|
17
43
|
}
|
|
18
44
|
withSceneTreeRange(range) {
|
|
19
|
-
return new SceneTreeRangeQuery(range);
|
|
45
|
+
return new SceneTreeRangeQuery(range, this.inverted);
|
|
20
46
|
}
|
|
21
47
|
withMetadata(filter, keys, exactMatch) {
|
|
22
|
-
return new MetadataQuery(filter, keys, exactMatch);
|
|
48
|
+
return new MetadataQuery(filter, keys, exactMatch, this.inverted);
|
|
23
49
|
}
|
|
24
50
|
withSelected() {
|
|
25
|
-
return new AllSelectedQuery();
|
|
51
|
+
return new AllSelectedQuery(this.inverted);
|
|
26
52
|
}
|
|
27
53
|
withPoint(point) {
|
|
28
|
-
return new PointQuery(point);
|
|
54
|
+
return new PointQuery(point, this.inverted);
|
|
55
|
+
}
|
|
56
|
+
withVolumeIntersection(rectangle, exclusive) {
|
|
57
|
+
return new VolumeIntersectionQuery(rectangle, this.inverted, exclusive);
|
|
29
58
|
}
|
|
30
59
|
}
|
|
31
|
-
export class
|
|
32
|
-
|
|
60
|
+
export class NotQuery extends RootQuery {
|
|
61
|
+
constructor(inverted) {
|
|
62
|
+
super(inverted);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export class AllQuery extends TerminalQuery {
|
|
66
|
+
constructor(inverted = false) {
|
|
67
|
+
super(inverted);
|
|
68
|
+
}
|
|
69
|
+
queryExpressionBuilder() {
|
|
33
70
|
return { type: 'all' };
|
|
34
71
|
}
|
|
35
72
|
}
|
|
36
|
-
export class SceneTreeRangeQuery {
|
|
37
|
-
constructor(range) {
|
|
73
|
+
export class SceneTreeRangeQuery extends TerminalQuery {
|
|
74
|
+
constructor(range, inverted) {
|
|
75
|
+
super(inverted);
|
|
38
76
|
this.range = range;
|
|
39
77
|
}
|
|
40
|
-
|
|
78
|
+
queryExpressionBuilder() {
|
|
41
79
|
return {
|
|
42
80
|
type: 'scene-tree-range',
|
|
43
81
|
range: this.range,
|
|
44
82
|
};
|
|
45
83
|
}
|
|
46
84
|
}
|
|
47
|
-
export class MetadataQuery {
|
|
48
|
-
constructor(filter, keys, exactMatch) {
|
|
85
|
+
export class MetadataQuery extends TerminalQuery {
|
|
86
|
+
constructor(filter, keys, exactMatch, inverted) {
|
|
87
|
+
super(inverted);
|
|
49
88
|
this.filter = filter;
|
|
50
89
|
this.keys = keys;
|
|
51
90
|
this.exactMatch = exactMatch;
|
|
52
91
|
}
|
|
53
|
-
|
|
92
|
+
queryExpressionBuilder() {
|
|
54
93
|
return {
|
|
55
94
|
type: 'metadata',
|
|
56
95
|
filter: this.filter,
|
|
@@ -59,30 +98,49 @@ export class MetadataQuery {
|
|
|
59
98
|
};
|
|
60
99
|
}
|
|
61
100
|
}
|
|
62
|
-
export class AllSelectedQuery {
|
|
63
|
-
|
|
101
|
+
export class AllSelectedQuery extends TerminalQuery {
|
|
102
|
+
constructor(inverted) {
|
|
103
|
+
super(inverted);
|
|
104
|
+
}
|
|
105
|
+
queryExpressionBuilder() {
|
|
64
106
|
return {
|
|
65
107
|
type: 'all-selected',
|
|
66
108
|
};
|
|
67
109
|
}
|
|
68
110
|
}
|
|
69
|
-
export class PointQuery {
|
|
70
|
-
constructor(point) {
|
|
111
|
+
export class PointQuery extends TerminalQuery {
|
|
112
|
+
constructor(point, inverted) {
|
|
113
|
+
super(inverted);
|
|
71
114
|
this.point = point;
|
|
72
115
|
}
|
|
73
|
-
|
|
116
|
+
queryExpressionBuilder() {
|
|
74
117
|
return {
|
|
75
118
|
type: 'point',
|
|
76
119
|
point: this.point,
|
|
77
120
|
};
|
|
78
121
|
}
|
|
79
122
|
}
|
|
80
|
-
export class
|
|
81
|
-
constructor(
|
|
123
|
+
export class VolumeIntersectionQuery extends TerminalQuery {
|
|
124
|
+
constructor(rectangle, inverted, exclusive) {
|
|
125
|
+
super(inverted);
|
|
126
|
+
this.rectangle = rectangle;
|
|
127
|
+
this.exclusive = exclusive;
|
|
128
|
+
}
|
|
129
|
+
queryExpressionBuilder() {
|
|
130
|
+
return {
|
|
131
|
+
type: 'volume-intersection',
|
|
132
|
+
rectangle: this.rectangle,
|
|
133
|
+
exclusive: !!this.exclusive,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
export class BulkQuery extends TerminalQuery {
|
|
138
|
+
constructor(ids, type, inverted) {
|
|
139
|
+
super(inverted);
|
|
82
140
|
this.ids = ids;
|
|
83
141
|
this.type = type;
|
|
84
142
|
}
|
|
85
|
-
|
|
143
|
+
queryExpressionBuilder() {
|
|
86
144
|
return {
|
|
87
145
|
type: 'or',
|
|
88
146
|
expressions: this.ids.map((id) => {
|
|
@@ -94,55 +152,52 @@ export class BulkQuery {
|
|
|
94
152
|
};
|
|
95
153
|
}
|
|
96
154
|
}
|
|
97
|
-
class SingleQuery {
|
|
98
|
-
constructor(query) {
|
|
155
|
+
class SingleQuery extends TerminalQuery {
|
|
156
|
+
constructor(query, inverted) {
|
|
157
|
+
super(inverted);
|
|
99
158
|
this.query = query;
|
|
100
159
|
}
|
|
101
|
-
|
|
160
|
+
queryExpressionBuilder() {
|
|
102
161
|
return Object.assign({}, this.query);
|
|
103
162
|
}
|
|
104
163
|
and() {
|
|
105
|
-
return new AndQuery([this.query]);
|
|
164
|
+
return new AndQuery([this.query], this.inverted);
|
|
106
165
|
}
|
|
107
166
|
or() {
|
|
108
|
-
return new OrQuery([this.query]);
|
|
167
|
+
return new OrQuery([this.query], this.inverted);
|
|
109
168
|
}
|
|
110
169
|
}
|
|
111
|
-
export class OrQuery {
|
|
112
|
-
constructor(expressions) {
|
|
170
|
+
export class OrQuery extends TerminalQuery {
|
|
171
|
+
constructor(expressions, inverted) {
|
|
172
|
+
super(inverted);
|
|
113
173
|
this.expressions = expressions;
|
|
114
174
|
}
|
|
115
|
-
|
|
175
|
+
queryExpressionBuilder() {
|
|
116
176
|
return { type: 'or', expressions: [...this.expressions] };
|
|
117
177
|
}
|
|
118
178
|
withItemId(id) {
|
|
119
|
-
return new OrQuery([...this.expressions, { type: 'item-id', value: id }]);
|
|
179
|
+
return new OrQuery([...this.expressions, { type: 'item-id', value: id }], this.inverted);
|
|
120
180
|
}
|
|
121
181
|
withSuppliedId(id) {
|
|
122
|
-
return new OrQuery([
|
|
123
|
-
...this.expressions,
|
|
124
|
-
{ type: 'supplied-id', value: id },
|
|
125
|
-
]);
|
|
182
|
+
return new OrQuery([...this.expressions, { type: 'supplied-id', value: id }], this.inverted);
|
|
126
183
|
}
|
|
127
184
|
or() {
|
|
128
185
|
return this;
|
|
129
186
|
}
|
|
130
187
|
}
|
|
131
|
-
export class AndQuery {
|
|
132
|
-
constructor(expressions) {
|
|
188
|
+
export class AndQuery extends TerminalQuery {
|
|
189
|
+
constructor(expressions, inverted) {
|
|
190
|
+
super(inverted);
|
|
133
191
|
this.expressions = expressions;
|
|
134
192
|
}
|
|
135
|
-
|
|
193
|
+
queryExpressionBuilder() {
|
|
136
194
|
return { type: 'and', expressions: [...this.expressions] };
|
|
137
195
|
}
|
|
138
196
|
withItemId(id) {
|
|
139
|
-
return new AndQuery([...this.expressions, { type: 'item-id', value: id }]);
|
|
197
|
+
return new AndQuery([...this.expressions, { type: 'item-id', value: id }], this.inverted);
|
|
140
198
|
}
|
|
141
199
|
withSuppliedId(id) {
|
|
142
|
-
return new AndQuery([
|
|
143
|
-
...this.expressions,
|
|
144
|
-
{ type: 'supplied-id', value: id },
|
|
145
|
-
]);
|
|
200
|
+
return new AndQuery([...this.expressions, { type: 'supplied-id', value: id }], this.inverted);
|
|
146
201
|
}
|
|
147
202
|
and() {
|
|
148
203
|
return this;
|
|
@@ -157,4 +212,4 @@ export class SceneItemQueryExecutor {
|
|
|
157
212
|
return new SceneItemOperationsBuilder(expression, this.defaultSelectionMaterial);
|
|
158
213
|
}
|
|
159
214
|
}
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
215
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvc2NlbmVzL3F1ZXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBd0VyRDs7O0dBR0c7QUFDSCxNQUFlLGFBQWE7RUFFMUIsWUFBbUIsUUFBaUI7SUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7RUFDM0IsQ0FBQztFQUVNLEtBQUs7SUFDVixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7TUFDakIsT0FBTztRQUNMLElBQUksRUFBRSxLQUFLO1FBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtPQUNyQyxDQUFDO0tBQ0g7U0FBTTtNQUNMLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7S0FDdEM7RUFDSCxDQUFDO0NBR0Y7QUFhRCxNQUFNLE9BQU8sU0FBUztFQUNwQixZQUEyQixXQUFvQixLQUFLO0lBQXpCLGFBQVEsR0FBUixRQUFRLENBQWlCO0VBQUcsQ0FBQztFQUNqRCxHQUFHO0lBQ1IsT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO0VBQ3hCLENBQUM7RUFFTSxHQUFHO0lBQ1IsT0FBTyxJQUFJLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztFQUN0QyxDQUFDO0VBRU0sV0FBVyxDQUFDLEdBQWE7SUFDOUIsT0FBTyxJQUFJLFNBQVMsQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztFQUN0RCxDQUFDO0VBRU0sZUFBZSxDQUFDLEdBQWE7SUFDbEMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxHQUFHLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztFQUMxRCxDQUFDO0VBRU0sVUFBVSxDQUFDLEVBQVU7SUFDMUIsT0FBTyxJQUFJLFdBQVcsQ0FB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
|