@vertexvis/viewer 0.12.0 → 0.13.0-canary.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.
- package/dist/cjs/{config-acd7cea9.js → config-90ee43d5.js} +1 -1
- package/dist/cjs/{cursors-399a9648.js → cursors-ad2fd395.js} +7 -0
- package/dist/cjs/{controller-8cbcdd8d.js → entities-aa59890e.js} +57 -22
- package/dist/cjs/{index-cc65325e.js → index-e100709a.js} +64 -3
- package/dist/cjs/index.cjs.js +21 -11
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{model-18ef3363.js → mapper-f6e6cafe.js} +37 -191
- package/dist/cjs/model-4ec0c36e.js +134 -0
- package/dist/cjs/overlays-8a582edf.js +76 -0
- package/dist/cjs/results-bc325974.js +24 -0
- package/dist/cjs/{scene-ffee07ee.js → scene-f4040800.js} +1 -1
- package/dist/cjs/{stencil-bd453a38.js → stencil-a664cd10.js} +1 -1
- package/dist/cjs/{streamAttributes-9d6226ac.js → streamAttributes-d6236448.js} +87 -30
- package/dist/cjs/vertex-scene-tree-search_3.cjs.entry.js +2 -2
- 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 +3 -3
- 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_3.cjs.entry.js +4 -4
- 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 +221 -75
- package/dist/cjs/{vertex-viewer-measurement-distance_2.cjs.entry.js → vertex-viewer-measurement-distance.cjs.entry.js} +30 -69
- package/dist/cjs/vertex-viewer-measurement-line_2.cjs.entry.js +170 -0
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +163 -55
- package/dist/cjs/vertex-viewer-measurement-tool.cjs.entry.js +2 -2
- package/dist/cjs/vertex-viewer-measurements.cjs.entry.js +33 -4
- package/dist/cjs/vertex-viewer-view-cube.cjs.entry.js +4 -4
- package/dist/cjs/vertex-viewer.cjs.entry.js +58 -10
- package/dist/cjs/viewer.cjs.js +2 -2
- package/dist/cjs/{viewport-51aa05ab.js → viewport-8c39089f.js} +11 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/viewer/viewer.js +2 -2
- package/dist/collection/components/viewer-dom-renderer/viewer-dom-renderer.js +2 -2
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details-entry.js +14 -0
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details-results.js +22 -0
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.css +3 -10
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.js +125 -188
- package/dist/collection/components/viewer-measurement-distance/interactions.js +3 -14
- package/dist/collection/components/viewer-measurement-distance/viewer-measurement-distance.js +41 -1
- package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays-components.js +30 -0
- package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.css +51 -0
- package/dist/collection/components/viewer-measurement-overlays/viewer-measurement-overlays.js +149 -0
- package/dist/collection/components/viewer-measurement-precise/viewer-measurement-precise.js +118 -26
- package/dist/collection/components/viewer-measurements/viewer-measurements.js +67 -2
- package/dist/collection/components/viewer-view-cube/viewer-view-cube.css +21 -3
- package/dist/collection/index.js +2 -2
- package/dist/collection/lib/cursors.js +7 -1
- package/dist/collection/lib/elementRectObserver.js +19 -0
- package/dist/collection/lib/interactions/interactionApi.js +53 -4
- package/dist/collection/lib/mappers/frameStreaming.js +2 -4
- package/dist/collection/lib/measurement/controller.js +21 -17
- package/dist/collection/lib/measurement/entities.js +34 -0
- package/dist/collection/lib/measurement/index.js +4 -2
- package/dist/collection/lib/measurement/interactions.js +74 -28
- package/dist/collection/lib/measurement/mapper.js +5 -5
- package/dist/collection/lib/measurement/model.js +24 -85
- package/dist/collection/lib/measurement/outcomes.js +2 -0
- package/dist/collection/lib/measurement/overlays.js +69 -0
- package/dist/collection/lib/measurement/results.js +17 -0
- package/dist/collection/lib/types/entities.js +5 -1
- package/dist/collection/lib/types/featureMap.js +14 -5
- package/dist/collection/lib/types/frame.js +3 -3
- package/dist/collection/lib/types/measurementUnits.js +7 -7
- package/dist/collection/lib/types/viewport.js +12 -1
- package/dist/collection/testing/eventually.js +30 -0
- package/dist/collection/testing/fixtures.js +11 -4
- package/dist/collection/testing/index.js +2 -1
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +851 -287
- package/dist/esm/{browser.esm-e6827921.js → browser.esm-59e914f6.js} +1 -1
- package/dist/esm/{bundle.esm-8f14ac60.js → bundle.esm-d899b2d5.js} +1 -1
- package/dist/esm/{config-a200c227.js → config-604c644e.js} +2 -2
- package/dist/esm/{cursors-5157d29d.js → cursors-a7ec4adb.js} +8 -2
- package/dist/esm/{dom-2d6a1e1e.js → dom-780d25be.js} +1 -1
- package/dist/esm/{controller-a756cf9c.js → entities-759d97cd.js} +52 -18
- package/dist/esm/{index-f0053642.js → index-10c1495a.js} +64 -3
- package/dist/esm/index.js +13 -11
- package/dist/esm/index.mjs +13 -11
- package/dist/esm/loader.js +2 -2
- package/dist/esm/loader.mjs +2 -2
- package/dist/esm/{model-f711a825.js → mapper-4b815e31.js} +37 -190
- package/dist/esm/{markup-e46623b3.js → markup-1d177b4a.js} +2 -2
- package/dist/esm/{measurement-702d6b8c.js → measurement-12cdbf5c.js} +2 -2
- package/dist/esm/model-e5a4f00f.js +132 -0
- package/dist/esm/overlays-dbe5d652.js +74 -0
- package/dist/esm/{png-decoder-59a0e9c2.js → png-decoder-3f1fa486.js} +1 -1
- package/dist/esm/results-994bdb50.js +22 -0
- package/dist/esm/{scene-16490983.js → scene-9ac8a484.js} +3 -3
- package/dist/esm/{stencil-7d04d41a.js → stencil-9bf7fb9e.js} +1 -1
- package/dist/esm/{streamAttributes-7aa486b2.js → streamAttributes-d623bb60.js} +77 -20
- package/dist/esm/{utils-8070900a.js → utils-01e4f587.js} +1 -1
- package/dist/esm/{utils-953a1619.js → utils-5e57bf24.js} +1 -1
- 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 +5 -5
- 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_3.entry.js +6 -6
- 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 +221 -75
- package/dist/esm/{vertex-viewer-measurement-distance_2.entry.js → vertex-viewer-measurement-distance.entry.js} +35 -73
- package/dist/esm/vertex-viewer-measurement-line_2.entry.js +165 -0
- package/dist/esm/vertex-viewer-measurement-precise.entry.js +160 -52
- package/dist/esm/vertex-viewer-measurement-tool.entry.js +6 -6
- package/dist/esm/vertex-viewer-measurements.entry.js +36 -7
- package/dist/esm/vertex-viewer-view-cube.entry.js +6 -6
- package/dist/esm/vertex-viewer.entry.js +61 -13
- package/dist/esm/viewer.js +2 -2
- package/dist/esm/{viewport-bb7c46d9.js → viewport-01c886ea.js} +12 -1
- package/dist/types/components/viewer-dom-renderer/viewer-dom-renderer.d.ts +1 -1
- package/dist/types/components/viewer-measurement-details/viewer-measurement-details-entry.d.ts +8 -0
- package/dist/types/components/viewer-measurement-details/viewer-measurement-details-results.d.ts +15 -0
- package/dist/types/components/viewer-measurement-details/viewer-measurement-details.d.ts +44 -42
- package/dist/types/components/viewer-measurement-distance/interactions.d.ts +23 -1
- package/dist/types/components/viewer-measurement-distance/viewer-measurement-distance.d.ts +8 -0
- package/dist/types/components/viewer-measurement-overlays/viewer-measurement-overlays-components.d.ts +10 -0
- package/dist/types/components/viewer-measurement-overlays/viewer-measurement-overlays.d.ts +41 -0
- package/dist/types/components/viewer-measurement-precise/viewer-measurement-precise.d.ts +62 -6
- package/dist/types/components/viewer-measurements/viewer-measurements.d.ts +12 -0
- package/dist/types/components.d.ts +103 -40
- package/dist/types/index.d.ts +1 -1
- package/dist/types/lib/cursors.d.ts +5 -0
- package/dist/types/lib/elementRectObserver.d.ts +8 -0
- package/dist/types/lib/interactions/interactionApi.d.ts +32 -5
- package/dist/types/lib/measurement/controller.d.ts +8 -7
- package/dist/types/lib/measurement/entities.d.ts +10 -0
- package/dist/types/lib/measurement/index.d.ts +3 -1
- package/dist/types/lib/measurement/interactions.d.ts +19 -5
- package/dist/types/lib/measurement/mapper.d.ts +1 -1
- package/dist/types/lib/measurement/model.d.ts +18 -153
- package/dist/types/lib/measurement/outcomes.d.ts +8 -0
- package/dist/types/lib/measurement/overlays.d.ts +38 -0
- package/dist/types/lib/measurement/results.d.ts +90 -0
- package/dist/types/lib/types/entities.d.ts +5 -1
- package/dist/types/lib/types/featureMap.d.ts +2 -2
- package/dist/types/lib/types/measurementUnits.d.ts +1 -1
- package/dist/types/lib/types/viewport.d.ts +9 -1
- package/dist/types/testing/eventually.d.ts +15 -0
- package/dist/types/testing/fixtures.d.ts +2 -2
- package/dist/types/testing/index.d.ts +1 -0
- package/dist/viewer/index.esm.js +1 -1
- package/dist/viewer/p-081e6873.js +4 -0
- package/dist/viewer/{p-5d82c131.entry.js → p-099fe6ca.entry.js} +1 -1
- package/dist/viewer/{p-784914e4.js → p-0aba71fd.js} +1 -1
- package/dist/viewer/p-0aeab3fc.js +4 -0
- package/dist/viewer/p-0eb195dd.entry.js +4 -0
- package/dist/viewer/p-1a7df99a.entry.js +4 -0
- package/dist/viewer/{p-f70d8def.js → p-301660cf.js} +1 -1
- package/dist/viewer/{p-a0e49d10.entry.js → p-31658489.entry.js} +1 -1
- package/dist/viewer/{p-95f3a81c.entry.js → p-353cfc7a.entry.js} +1 -1
- package/dist/viewer/p-364ce21c.js +4 -0
- package/dist/viewer/{p-a5a0bf86.js → p-3f6ac74f.js} +1 -1
- package/dist/viewer/p-423410be.js +4 -0
- package/dist/viewer/{p-6f71f0f2.js → p-439220c6.js} +1 -1
- package/dist/viewer/{p-e84ed098.entry.js → p-46459921.entry.js} +1 -1
- package/dist/viewer/{p-c23a8b34.entry.js → p-4717c98e.entry.js} +1 -1
- package/dist/viewer/p-4985fad5.js +4 -0
- package/dist/viewer/{p-ba393340.entry.js → p-61b1097b.entry.js} +1 -1
- package/dist/viewer/{p-011eecd5.entry.js → p-6370098c.entry.js} +1 -1
- package/dist/viewer/p-67446e35.js +4 -0
- package/dist/viewer/p-7006fd4e.entry.js +4 -0
- package/dist/viewer/{p-a20e4ea1.entry.js → p-70ca1ea7.entry.js} +1 -1
- package/dist/viewer/p-76ec0245.js +4 -0
- package/dist/viewer/p-7cad9bf4.js +4 -0
- package/dist/viewer/p-7f25dcb5.entry.js +4 -0
- package/dist/viewer/{p-ca6bbe53.entry.js → p-8decee06.entry.js} +1 -1
- package/dist/viewer/{p-b7ffa306.entry.js → p-915d95ad.entry.js} +1 -1
- package/dist/viewer/{p-4485ac6d.js → p-a0df0e0c.js} +1 -1
- package/dist/viewer/{p-cc9888be.entry.js → p-a455ae02.entry.js} +1 -1
- package/dist/viewer/{p-a6a8026f.js → p-acf22d3e.js} +1 -1
- package/dist/viewer/{p-653aca1b.entry.js → p-b2b48a42.entry.js} +1 -1
- package/dist/viewer/p-bc9b1e67.entry.js +4 -0
- package/dist/viewer/p-c458f191.entry.js +32 -0
- package/dist/viewer/p-cafa57a6.js +4 -0
- package/dist/viewer/p-d00e9203.js +4 -0
- package/dist/viewer/{p-3e96bd62.entry.js → p-d2bcf788.entry.js} +1 -1
- package/dist/viewer/p-d90f2f6d.entry.js +4 -0
- package/dist/viewer/p-da2f4a56.js +4 -0
- package/dist/viewer/{p-5a2e34e1.entry.js → p-e07377fa.entry.js} +1 -1
- package/dist/viewer/{p-40800e8d.entry.js → p-f755af5a.entry.js} +1 -1
- package/dist/viewer/p-f7cb7e59.js +4 -0
- package/dist/viewer/p-fad9693e.js +4 -0
- package/dist/viewer/p-fe11d694.js +4 -0
- package/dist/viewer/{p-b92a3ac2.entry.js → p-fec1a8d0.entry.js} +1 -1
- package/dist/viewer/viewer.css +1 -1
- package/dist/viewer/viewer.esm.js +1 -1
- package/package.json +11 -10
- package/dist/cjs/summary-7bbdb4c9.js +0 -45
- package/dist/collection/lib/measurement/summary.js +0 -38
- package/dist/esm/summary-0a3d0bf9.js +0 -43
- package/dist/types/lib/measurement/summary.d.ts +0 -11
- package/dist/viewer/p-03e482ff.js +0 -4
- package/dist/viewer/p-0c052bc8.entry.js +0 -4
- package/dist/viewer/p-148cd792.js +0 -4
- package/dist/viewer/p-26d99e2d.entry.js +0 -4
- package/dist/viewer/p-38eeacc5.js +0 -4
- package/dist/viewer/p-39d1720c.js +0 -4
- package/dist/viewer/p-5dc17b8b.js +0 -4
- package/dist/viewer/p-5fea3491.js +0 -4
- package/dist/viewer/p-6b700561.entry.js +0 -4
- package/dist/viewer/p-6cd7a6e0.js +0 -4
- package/dist/viewer/p-75337d0b.js +0 -4
- package/dist/viewer/p-b83cc8a9.js +0 -4
- package/dist/viewer/p-d2a9e047.js +0 -4
- package/dist/viewer/p-d40bd835.entry.js +0 -4
- package/dist/viewer/p-e10b1526.js +0 -4
- package/dist/viewer/p-ec8a1a68.entry.js +0 -4
- package/dist/viewer/p-f4a8c901.js +0 -4
- package/dist/viewer/p-f77dde26.entry.js +0 -4
|
@@ -2,40 +2,86 @@
|
|
|
2
2
|
import { Component, h, Host, Prop, State, Watch } from '@stencil/core';
|
|
3
3
|
import { SceneViewAPIClient } from '@vertexvis/scene-view-protos/sceneview/protos/scene_view_api_pb_service';
|
|
4
4
|
import { parseConfig } from '../../lib/config';
|
|
5
|
-
import { MeasurementController, MeasurementModel, } from '../../lib/measurement';
|
|
6
|
-
import {
|
|
5
|
+
import { MeasurementController, MeasurementModel, MeasurementOverlayManager, } from '../../lib/measurement';
|
|
6
|
+
import { MeasurementInteractionHandler } from '../../lib/measurement/interactions';
|
|
7
|
+
import { EntityType } from '../../lib/types';
|
|
7
8
|
export class ViewerMeasurementPrecise {
|
|
8
9
|
constructor() {
|
|
10
|
+
/**
|
|
11
|
+
* The model that contains the entities and outcomes from performing precise
|
|
12
|
+
* measurements.
|
|
13
|
+
*/
|
|
9
14
|
this.measurementModel = new MeasurementModel();
|
|
15
|
+
/**
|
|
16
|
+
* The manager that is responsible for measurement overlays to present by this
|
|
17
|
+
* component.
|
|
18
|
+
*/
|
|
19
|
+
this.measurementOverlays = new MeasurementOverlayManager();
|
|
20
|
+
/**
|
|
21
|
+
* @internal
|
|
22
|
+
*
|
|
23
|
+
* An internal property that can be used to opt-in to performing measurements
|
|
24
|
+
* on other types of entities.
|
|
25
|
+
*/
|
|
26
|
+
this.measurableEntityTypes = [EntityType.PRECISE_SURFACE];
|
|
27
|
+
/**
|
|
28
|
+
* The environment that will be used to request measurement results.
|
|
29
|
+
*/
|
|
10
30
|
this.configEnv = 'platprod';
|
|
11
|
-
this.
|
|
12
|
-
this.handleEntitiesChanged = () => {
|
|
13
|
-
this.updateEntities();
|
|
14
|
-
};
|
|
31
|
+
this.overlays = [];
|
|
15
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* @ignore
|
|
35
|
+
*/
|
|
16
36
|
connectedCallback() {
|
|
17
37
|
this.setupInteractionHandler();
|
|
18
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* @ignore
|
|
41
|
+
*/
|
|
19
42
|
componentWillLoad() {
|
|
20
43
|
this.setupController();
|
|
21
|
-
this.setupInteractionHandler();
|
|
22
44
|
this.setupModelListeners();
|
|
45
|
+
this.setupInteractionHandler();
|
|
23
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* @ignore
|
|
49
|
+
*/
|
|
24
50
|
disconnectedCallback() {
|
|
25
51
|
this.clearInteractionHandler();
|
|
52
|
+
this.clearModelListeners();
|
|
26
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* @ignore
|
|
56
|
+
*/
|
|
57
|
+
handleMeasurableEntityTypesChanged() {
|
|
58
|
+
this.setupInteractionHandler();
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* @ignore
|
|
62
|
+
*/
|
|
27
63
|
handleMeasurementControllerChanged() {
|
|
28
64
|
this.setupInteractionHandler();
|
|
29
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* @ignore
|
|
68
|
+
*/
|
|
30
69
|
handleMeasurementModelChanged() {
|
|
31
70
|
this.setupController();
|
|
32
71
|
this.setupModelListeners();
|
|
33
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* @ignore
|
|
75
|
+
*/
|
|
34
76
|
handleViewerChanged() {
|
|
35
77
|
this.setupInteractionHandler();
|
|
36
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* @ignore
|
|
81
|
+
*/
|
|
37
82
|
render() {
|
|
38
|
-
return h(Host, null
|
|
83
|
+
return (h(Host, null,
|
|
84
|
+
h("vertex-viewer-measurement-overlays", { viewer: this.viewer, measurementOverlays: this.measurementOverlays })));
|
|
39
85
|
}
|
|
40
86
|
setupController() {
|
|
41
87
|
var _a;
|
|
@@ -53,22 +99,20 @@ export class ViewerMeasurementPrecise {
|
|
|
53
99
|
this.clearInteractionHandler();
|
|
54
100
|
if (this.measurementController != null) {
|
|
55
101
|
this.registeredInteractionHandler =
|
|
56
|
-
(_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new
|
|
102
|
+
(_a = this.viewer) === null || _a === void 0 ? void 0 : _a.registerInteractionHandler(new MeasurementInteractionHandler(this.measurementController, this.measurableEntityTypes));
|
|
57
103
|
}
|
|
58
104
|
}
|
|
59
105
|
clearModelListeners() {
|
|
60
|
-
var _a;
|
|
61
|
-
(_a = this.
|
|
62
|
-
this.
|
|
106
|
+
var _a, _b;
|
|
107
|
+
(_a = this.onEntitiesChangedHandler) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
108
|
+
this.onEntitiesChangedHandler = undefined;
|
|
109
|
+
(_b = this.onOverlaysChangedHandler) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
110
|
+
this.onOverlaysChangedHandler = undefined;
|
|
63
111
|
}
|
|
64
112
|
setupModelListeners() {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
updateEntities() {
|
|
70
|
-
var _a, _b;
|
|
71
|
-
this.entities = (_b = (_a = this.measurementModel) === null || _a === void 0 ? void 0 : _a.getEntities()) !== null && _b !== void 0 ? _b : [];
|
|
113
|
+
this.onOverlaysChangedHandler = this.measurementOverlays.onOverlaysChanged((overlays) => {
|
|
114
|
+
this.overlays = overlays;
|
|
115
|
+
});
|
|
72
116
|
}
|
|
73
117
|
static get is() { return "vertex-viewer-measurement-precise"; }
|
|
74
118
|
static get encapsulation() { return "shadow"; }
|
|
@@ -96,10 +140,31 @@ export class ViewerMeasurementPrecise {
|
|
|
96
140
|
"optional": false,
|
|
97
141
|
"docs": {
|
|
98
142
|
"tags": [],
|
|
99
|
-
"text": ""
|
|
143
|
+
"text": "The model that contains the entities and outcomes from performing precise\nmeasurements."
|
|
100
144
|
},
|
|
101
145
|
"defaultValue": "new MeasurementModel()"
|
|
102
146
|
},
|
|
147
|
+
"measurementOverlays": {
|
|
148
|
+
"type": "unknown",
|
|
149
|
+
"mutable": false,
|
|
150
|
+
"complexType": {
|
|
151
|
+
"original": "MeasurementOverlayManager",
|
|
152
|
+
"resolved": "MeasurementOverlayManager",
|
|
153
|
+
"references": {
|
|
154
|
+
"MeasurementOverlayManager": {
|
|
155
|
+
"location": "import",
|
|
156
|
+
"path": "../../lib/measurement"
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"required": false,
|
|
161
|
+
"optional": false,
|
|
162
|
+
"docs": {
|
|
163
|
+
"tags": [],
|
|
164
|
+
"text": "The manager that is responsible for measurement overlays to present by this\ncomponent."
|
|
165
|
+
},
|
|
166
|
+
"defaultValue": "new MeasurementOverlayManager()"
|
|
167
|
+
},
|
|
103
168
|
"measurementController": {
|
|
104
169
|
"type": "unknown",
|
|
105
170
|
"mutable": true,
|
|
@@ -117,9 +182,33 @@ export class ViewerMeasurementPrecise {
|
|
|
117
182
|
"optional": true,
|
|
118
183
|
"docs": {
|
|
119
184
|
"tags": [],
|
|
120
|
-
"text": ""
|
|
185
|
+
"text": "The controller that is responsible for performing measurements and updating\nthe model."
|
|
121
186
|
}
|
|
122
187
|
},
|
|
188
|
+
"measurableEntityTypes": {
|
|
189
|
+
"type": "unknown",
|
|
190
|
+
"mutable": false,
|
|
191
|
+
"complexType": {
|
|
192
|
+
"original": "EntityType[]",
|
|
193
|
+
"resolved": "EntityType[]",
|
|
194
|
+
"references": {
|
|
195
|
+
"EntityType": {
|
|
196
|
+
"location": "import",
|
|
197
|
+
"path": "../../lib/types"
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"required": false,
|
|
202
|
+
"optional": false,
|
|
203
|
+
"docs": {
|
|
204
|
+
"tags": [{
|
|
205
|
+
"name": "internal",
|
|
206
|
+
"text": "An internal property that can be used to opt-in to performing measurements\non other types of entities."
|
|
207
|
+
}],
|
|
208
|
+
"text": ""
|
|
209
|
+
},
|
|
210
|
+
"defaultValue": "[EntityType.PRECISE_SURFACE]"
|
|
211
|
+
},
|
|
123
212
|
"viewer": {
|
|
124
213
|
"type": "unknown",
|
|
125
214
|
"mutable": false,
|
|
@@ -136,7 +225,7 @@ export class ViewerMeasurementPrecise {
|
|
|
136
225
|
"optional": true,
|
|
137
226
|
"docs": {
|
|
138
227
|
"tags": [],
|
|
139
|
-
"text": ""
|
|
228
|
+
"text": "The viewer that this component is bound to. This is automatically assigned\nif added to the light-dom of a parent viewer element."
|
|
140
229
|
}
|
|
141
230
|
},
|
|
142
231
|
"configEnv": {
|
|
@@ -156,7 +245,7 @@ export class ViewerMeasurementPrecise {
|
|
|
156
245
|
"optional": false,
|
|
157
246
|
"docs": {
|
|
158
247
|
"tags": [],
|
|
159
|
-
"text": ""
|
|
248
|
+
"text": "The environment that will be used to request measurement results."
|
|
160
249
|
},
|
|
161
250
|
"attribute": "config-env",
|
|
162
251
|
"reflect": false,
|
|
@@ -179,14 +268,17 @@ export class ViewerMeasurementPrecise {
|
|
|
179
268
|
"optional": true,
|
|
180
269
|
"docs": {
|
|
181
270
|
"tags": [],
|
|
182
|
-
"text": ""
|
|
271
|
+
"text": "An optional configuration to setup network configuration of measurement\nendpoints."
|
|
183
272
|
}
|
|
184
273
|
}
|
|
185
274
|
}; }
|
|
186
275
|
static get states() { return {
|
|
187
|
-
"
|
|
276
|
+
"overlays": {}
|
|
188
277
|
}; }
|
|
189
278
|
static get watchers() { return [{
|
|
279
|
+
"propName": "measurableEntityTypes",
|
|
280
|
+
"methodName": "handleMeasurableEntityTypesChanged"
|
|
281
|
+
}, {
|
|
190
282
|
"propName": "measurementController",
|
|
191
283
|
"methodName": "handleMeasurementControllerChanged"
|
|
192
284
|
}, {
|
|
@@ -197,4 +289,4 @@ export class ViewerMeasurementPrecise {
|
|
|
197
289
|
"methodName": "handleViewerChanged"
|
|
198
290
|
}]; }
|
|
199
291
|
}
|
|
200
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
292
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50LXByZWNpc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS92aWV3ZXItbWVhc3VyZW1lbnQtcHJlY2lzZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUc3RyxPQUFPLEVBQVUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFFaEIseUJBQXlCLEdBQzFCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTzdDLE1BQU0sT0FBTyx3QkFBd0I7RUFMckM7SUFNRTs7O09BR0c7SUFFSSxxQkFBZ0IsR0FBcUIsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBRW5FOzs7T0FHRztJQUVJLHdCQUFtQixHQUE4QixJQUFJLHlCQUF5QixFQUFFLENBQUM7SUFTeEY7Ozs7O09BS0c7SUFFSSwwQkFBcUIsR0FBaUIsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7SUFTMUU7O09BRUc7SUFFSSxjQUFTLEdBQWdCLFVBQVUsQ0FBQztJQVVuQyxhQUFRLEdBQXlCLEVBQUUsQ0FBQztHQTBIN0M7RUFwSEM7O0tBRUc7RUFDTyxpQkFBaUI7SUFDekIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7RUFDakMsQ0FBQztFQUVEOztLQUVHO0VBQ08saUJBQWlCO0lBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN2QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMzQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFDTyxvQkFBb0I7SUFDNUIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDL0IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7RUFDN0IsQ0FBQztFQUVEOztLQUVHO0VBRU8sa0NBQWtDO0lBQzFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0VBQ2pDLENBQUM7RUFFRDs7S0FFRztFQUVPLGtDQUFrQztJQUMxQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFFTyw2QkFBNkI7SUFDckMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0VBQzdCLENBQUM7RUFFRDs7S0FFRztFQUVPLG1CQUFtQjtJQUMzQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztFQUNqQyxDQUFDO0VBRUQ7O0tBRUc7RUFDTyxNQUFNO0lBQ2QsT0FBTyxDQUNMLEVBQUMsSUFBSTtNQUNILDBDQUNFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUNuQixtQkFBbUIsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEdBQzdDLENBQ0csQ0FDUixDQUFDO0VBQ0osQ0FBQztFQUVPLGVBQWU7O0lBQ3JCLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxNQUFNLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUkscUJBQXFCLENBQ3BELElBQUksQ0FBQyxnQkFBZ0IsRUFDckIsTUFBTSxFQUNOLEdBQUcsRUFBRSxXQUFDLE9BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLENBQUEsRUFBQSxFQUN4QixNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFFBQVEsQ0FDdEIsQ0FBQztFQUNKLENBQUM7RUFFTyx1QkFBdUI7O0lBQzdCLE1BQUEsSUFBSSxDQUFDLDRCQUE0QiwwQ0FBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxTQUFTLENBQUM7RUFDaEQsQ0FBQztFQUVPLHVCQUF1Qjs7SUFDN0IsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFFL0IsSUFBSSxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxFQUFFO01BQ3RDLElBQUksQ0FBQyw0QkFBNEI7UUFDL0IsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSwwQkFBMEIsQ0FDckMsSUFBSSw2QkFBNkIsQ0FDL0IsSUFBSSxDQUFDLHFCQUFxQixFQUMxQixJQUFJLENBQUMscUJBQXFCLENBQzNCLENBQ0YsQ0FBQztLQUNMO0VBQ0gsQ0FBQztFQUVPLG1CQUFtQjs7SUFDekIsTUFBQSxJQUFJLENBQUMsd0JBQXdCLDBDQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3pDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxTQUFTLENBQUM7SUFFMUMsTUFBQSxJQUFJLENBQUMsd0JBQXdCLDBDQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3pDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxTQUFTLENBQUM7RUFDNUMsQ0FBQztFQUVPLG1CQUFtQjtJQUN6QixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUN4RSxDQUFDLFFBQVEsRUFBRSxFQUFFO01BQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQyxDQUNGLENBQUM7RUFDSixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQ0YifQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component, Element, Event, h, Host, Listen, Method, Prop, Watch, } from '@stencil/core';
|
|
2
2
|
import { MEASUREMENT_SNAP_DISTANCE } from '../../lib/constants';
|
|
3
|
+
import { makeMinimumDistanceResult, MeasurementModel, } from '../../lib/measurement';
|
|
3
4
|
import { stampTemplateWithId } from '../../lib/templates';
|
|
4
5
|
import { DistanceMeasurement, } from '../../lib/types';
|
|
5
6
|
import { isVertexViewerDistanceMeasurement } from '../viewer-measurement-distance/utils';
|
|
@@ -27,6 +28,17 @@ export class ViewerMeasurements {
|
|
|
27
28
|
* value of 0 disables snapping.
|
|
28
29
|
*/
|
|
29
30
|
this.snapDistance = MEASUREMENT_SNAP_DISTANCE;
|
|
31
|
+
/**
|
|
32
|
+
* Enables the display of axis reference lines between the start and end
|
|
33
|
+
* point of selected measurements.
|
|
34
|
+
*/
|
|
35
|
+
this.showAxisReferenceLines = false;
|
|
36
|
+
/**
|
|
37
|
+
* The measurement model that will be updated with the selected measurement.
|
|
38
|
+
* You can pass this to a <vertex-viewer-measurement-details> component to
|
|
39
|
+
* display measurement outcomes.
|
|
40
|
+
*/
|
|
41
|
+
this.measurementModel = new MeasurementModel();
|
|
30
42
|
}
|
|
31
43
|
/**
|
|
32
44
|
* Adds a new measurement as a child to this component. A new measurement
|
|
@@ -95,9 +107,23 @@ export class ViewerMeasurements {
|
|
|
95
107
|
* @ignore
|
|
96
108
|
*/
|
|
97
109
|
async handleSelectedMeasurementIdChanged() {
|
|
110
|
+
this.measurementModel.clearOutcome();
|
|
98
111
|
const measurements = await this.getMeasurementElements();
|
|
99
112
|
measurements.forEach((m) => {
|
|
100
|
-
|
|
113
|
+
if (m.id === this.selectedMeasurementId) {
|
|
114
|
+
m.mode = 'edit';
|
|
115
|
+
m.showAxisReferenceLines = this.showAxisReferenceLines;
|
|
116
|
+
if (m.start != null && m.end != null) {
|
|
117
|
+
this.measurementModel.setOutcome({
|
|
118
|
+
isApproximate: true,
|
|
119
|
+
results: [makeMinimumDistanceResult(m.start, m.end)],
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
m.mode = '';
|
|
125
|
+
m.showAxisReferenceLines = false;
|
|
126
|
+
}
|
|
101
127
|
});
|
|
102
128
|
}
|
|
103
129
|
/**
|
|
@@ -376,6 +402,45 @@ export class ViewerMeasurements {
|
|
|
376
402
|
"attribute": "snap-distance",
|
|
377
403
|
"reflect": false,
|
|
378
404
|
"defaultValue": "MEASUREMENT_SNAP_DISTANCE"
|
|
405
|
+
},
|
|
406
|
+
"showAxisReferenceLines": {
|
|
407
|
+
"type": "boolean",
|
|
408
|
+
"mutable": false,
|
|
409
|
+
"complexType": {
|
|
410
|
+
"original": "boolean",
|
|
411
|
+
"resolved": "boolean",
|
|
412
|
+
"references": {}
|
|
413
|
+
},
|
|
414
|
+
"required": false,
|
|
415
|
+
"optional": false,
|
|
416
|
+
"docs": {
|
|
417
|
+
"tags": [],
|
|
418
|
+
"text": "Enables the display of axis reference lines between the start and end\npoint of selected measurements."
|
|
419
|
+
},
|
|
420
|
+
"attribute": "show-axis-reference-lines",
|
|
421
|
+
"reflect": false,
|
|
422
|
+
"defaultValue": "false"
|
|
423
|
+
},
|
|
424
|
+
"measurementModel": {
|
|
425
|
+
"type": "unknown",
|
|
426
|
+
"mutable": false,
|
|
427
|
+
"complexType": {
|
|
428
|
+
"original": "MeasurementModel",
|
|
429
|
+
"resolved": "MeasurementModel",
|
|
430
|
+
"references": {
|
|
431
|
+
"MeasurementModel": {
|
|
432
|
+
"location": "import",
|
|
433
|
+
"path": "../../lib/measurement"
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
"required": false,
|
|
438
|
+
"optional": false,
|
|
439
|
+
"docs": {
|
|
440
|
+
"tags": [],
|
|
441
|
+
"text": "The measurement model that will be updated with the selected measurement.\nYou can pass this to a <vertex-viewer-measurement-details> component to\ndisplay measurement outcomes."
|
|
442
|
+
},
|
|
443
|
+
"defaultValue": "new MeasurementModel()"
|
|
379
444
|
}
|
|
380
445
|
}; }
|
|
381
446
|
static get events() { return [{
|
|
@@ -587,4 +652,4 @@ export class ViewerMeasurements {
|
|
|
587
652
|
"passive": true
|
|
588
653
|
}]; }
|
|
589
654
|
}
|
|
590
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
655
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLW1lYXN1cmVtZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci1tZWFzdXJlbWVudHMvdmlld2VyLW1lYXN1cmVtZW50cy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLENBQUMsRUFDRCxJQUFJLEVBQ0osTUFBTSxFQUNOLE1BQU0sRUFDTixJQUFJLEVBQ0osS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCx5QkFBeUIsRUFDekIsZ0JBQWdCLEdBQ2pCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUQsT0FBTyxFQUNMLG1CQUFtQixHQUdwQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBUXpGLE1BQU0sT0FBTyxrQkFBa0I7RUFML0I7SUFjRTs7T0FFRztJQUVJLFNBQUksR0FBOEIsVUFBVSxDQUFDO0lBRXBEOztPQUVHO0lBRUksVUFBSyxHQUFxQixhQUFhLENBQUM7SUFFL0M7O09BRUc7SUFFSSxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFFNUI7OztPQUdHO0lBRUksYUFBUSxHQUFHLEtBQUssQ0FBQztJQWV4Qjs7O09BR0c7SUFFSSxpQkFBWSxHQUFXLHlCQUF5QixDQUFDO0lBRXhEOzs7T0FHRztJQUVJLDJCQUFzQixHQUFHLEtBQUssQ0FBQztJQUV0Qzs7OztPQUlHO0lBRUkscUJBQWdCLEdBQXFCLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztHQXVTcEU7RUFwUkM7Ozs7Ozs7O0tBUUc7RUFFSSxLQUFLLENBQUMsY0FBYyxDQUN6QixXQUF3QjtJ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
|
|
@@ -36,6 +36,24 @@
|
|
|
36
36
|
*/
|
|
37
37
|
--viewer-view-cube-opacity: 0.8;
|
|
38
38
|
|
|
39
|
+
/**
|
|
40
|
+
* @prop --viewer-view-cube-triad-x-axis-color: A CSS color for the X axis of
|
|
41
|
+
* the triad
|
|
42
|
+
*/
|
|
43
|
+
--viewer-view-cube-triad-x-axis-color: var(--x-axis-color);
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @prop --viewer-view-cube-triad-y-axis-color: A CSS color for the Y axis of
|
|
47
|
+
* the triad
|
|
48
|
+
*/
|
|
49
|
+
--viewer-view-cube-triad-y-axis-color: var(--y-axis-color);
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @prop --viewer-view-cube-triad-z-axis-color: A CSS color for the Z axis of
|
|
53
|
+
* the triad
|
|
54
|
+
*/
|
|
55
|
+
--viewer-view-cube-triad-z-axis-color: var(--z-axis-color);
|
|
56
|
+
|
|
39
57
|
display: block;
|
|
40
58
|
color: var(--neutral-700);
|
|
41
59
|
width: 80px;
|
|
@@ -87,13 +105,13 @@
|
|
|
87
105
|
font-size: 0.6875rem;
|
|
88
106
|
}
|
|
89
107
|
.triad-label-x {
|
|
90
|
-
color:
|
|
108
|
+
color: var(--viewer-view-cube-triad-x-axis-color);
|
|
91
109
|
}
|
|
92
110
|
.triad-label-y {
|
|
93
|
-
color:
|
|
111
|
+
color: var(--viewer-view-cube-triad-y-axis-color);
|
|
94
112
|
}
|
|
95
113
|
.triad-label-z {
|
|
96
|
-
color:
|
|
114
|
+
color: var(--viewer-view-cube-triad-z-axis-color);
|
|
97
115
|
}
|
|
98
116
|
|
|
99
117
|
.cube {
|
package/dist/collection/index.js
CHANGED
|
@@ -10,7 +10,7 @@ export * from './lib/interactions/interactionHandler';
|
|
|
10
10
|
export * from './lib/interactions/keyInteraction';
|
|
11
11
|
export * from './lib/measurement';
|
|
12
12
|
export { Scene } from './lib/scenes';
|
|
13
|
-
export { LoadableResource, Frame as ReceivedFrame, FrameImage as ReceivedFrameImage, FrameScene as ReceivedFrameScene, FramePerspectiveCamera as ReceivedPerspectiveCamera, SynchronizedClock, Viewport, } from './lib/types';
|
|
13
|
+
export { EntityType, LoadableResource, Frame as ReceivedFrame, FrameImage as ReceivedFrameImage, FrameScene as ReceivedFrameScene, FramePerspectiveCamera as ReceivedPerspectiveCamera, SynchronizedClock, Viewport, } from './lib/types';
|
|
14
14
|
export * from './lib/types/markup';
|
|
15
15
|
export * from './lib/types/measurementUnits';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEtBQUssYUFBYSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztBQUV6QixjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxFQUNMLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsS0FBSyxJQUFJLGFBQWEsRUFDdEIsVUFBVSxJQUFJLGtCQUFrQixFQUNoQyxVQUFVLElBQUksa0JBQWtCLEVBQ2hDLHNCQUFzQixJQUFJLHlCQUF5QixFQUNuRCxpQkFBaUIsRUFDakIsUUFBUSxHQUNULE1BQU0sYUFBYSxDQUFDO0FBQ3JCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw4QkFBOEIsQ0FBQyJ9
|
|
@@ -74,9 +74,15 @@ CursorManager.NORMAL_PRIORITY = 10;
|
|
|
74
74
|
* A constant representing the high priority cursors.
|
|
75
75
|
*/
|
|
76
76
|
CursorManager.HIGH_PRIORITY = 20;
|
|
77
|
+
// CSS SVG images need to be URL encoded: https://yoksel.github.io/url-encoder/
|
|
77
78
|
export const measurementCursor = {
|
|
78
79
|
url: "data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' stroke='%23fff' stroke-width='1.25' stroke-opacity='0.5' stroke-miterlimit='10' shape-rendering='crispEdges'/%3E%3Cpath d='M21.5 8h-19a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h19a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5zm-.5 6H3V9h3v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2v2.5a.5.5 0 001 0V9h2z' shape-rendering='crispEdges'/%3E%3C/svg%3E",
|
|
79
80
|
offsetX: -24,
|
|
80
81
|
offsetY: -24,
|
|
81
82
|
};
|
|
82
|
-
|
|
83
|
+
export const measurementWithArrowCursor = {
|
|
84
|
+
url: "data:image/svg+xml;utf8,%3Csvg id='icons' xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bstroke:%23fff;stroke-miterlimit:10;stroke-width:2px;%7D.cls-2%7Bfill:%23fff;%7D.cls-2,.cls-3%7Bfill-rule:evenodd;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath d='M27.46,21h-19a.5.5,0,0,0-.5.5v6a.5.5,0,0,0,.5.5h19a.5.5,0,0,0,.5-.5v-6A.5.5,0,0,0,27.46,21ZM27,27H9V22h3v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2v2.5a.5.5,0,0,0,1,0V22h2Z'/%3E%3Cpath class='cls-2' d='M1,17V1L12.59,12.62H5.81l-.41.12Z'/%3E%3Cpath class='cls-2' d='M10.08,17.69l-3.6,1.53L1.8,8.14,5.48,6.58Z'/%3E%3Cpath class='cls-3' d='M8.75,17l-1.84.77-3.1-7.37,1.84-.78Z'/%3E%3Cpath class='cls-3' d='M2,3.41V14.6l3-2.87.43-.14h4.76Z'/%3E%3C/svg%3E",
|
|
85
|
+
offsetX: -30,
|
|
86
|
+
offsetY: -30,
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY3Vyc29ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFpRS9EOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxhQUFhO0VBQTFCO0lBaUJFOzs7OztPQUtHO0lBQ2EsY0FBUyxHQUFHLElBQUksZUFBZSxFQUFRLENBQUM7SUFFaEQsWUFBTyxHQUFxQixFQUFFLENBQUM7SUFFL0IsV0FBTSxHQUFHLENBQUMsQ0FBQztFQWlEckIsQ0FBQztFQS9DQzs7Ozs7Ozs7O0tBU0c7RUFDSSxHQUFHLENBQ1IsTUFBYyxFQUNkLFFBQVEsR0FBRyxhQUFhLENBQUMsZUFBZTtJQUV4QyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDekIsTUFBTSxRQUFRLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsT0FBTyxRQUFRLENBQUM7RUFDbEIsQ0FBQztFQUVEOzs7O0tBSUc7RUFDSyxNQUFNLENBQUMsUUFBZ0I7SUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7SUFDbEUsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFO01BQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO01BQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7S0FDdkI7RUFDSCxDQUFDO0VBRUQ7Ozs7S0FJRztFQUNJLGVBQWU7O0lBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPO09BQ3hCLE1BQU0sRUFBRTtPQUNSLE9BQU8sRUFBRTtPQUNULElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sTUFBQSxNQUFNLENBQUMsQ0FBQyxDQUFDLDBDQUFFLE1BQU0sQ0FBQztFQUMzQixDQUFDOztBQTFFRDs7R0FFRztBQUNvQiwwQkFBWSxHQUFHLENBQUMsQ0FBQztBQUV4Qzs7O0dBR0c7QUFDb0IsNkJBQWUsR0FBRyxFQUFFLENBQUM7QUFFNUM7O0dBRUc7QUFDb0IsMkJBQWEsR0FBRyxFQUFFLENBQUM7QUErRDVDLCtFQUErRTtBQUUvRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRztFQUMvQixHQUFHLEVBQUUsaXJCQUFpckI7RUFDdHJCLE9BQU8sRUFBRSxDQUFDLEVBQUU7RUFDWixPQUFPLEVBQUUsQ0FBQyxFQUFFO0NBQ2IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHO0VBQ3hDLEdBQUcsRUFBRSxzaUNBQXNpQztFQUMzaUMsT0FBTyxFQUFFLENBQUMsRUFBRTtFQUNaLE9BQU8sRUFBRSxDQUFDLEVBQUU7Q0FDYixDQUFDIn0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class ElementRectObserver {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.observer = new ResizeObserver(() => this.measure());
|
|
4
|
+
}
|
|
5
|
+
observe(element) {
|
|
6
|
+
this.element = element;
|
|
7
|
+
this.observer.observe(element);
|
|
8
|
+
this.measure();
|
|
9
|
+
}
|
|
10
|
+
disconnect() {
|
|
11
|
+
this.element = undefined;
|
|
12
|
+
this.observer.disconnect();
|
|
13
|
+
}
|
|
14
|
+
measure() {
|
|
15
|
+
var _a;
|
|
16
|
+
this.rect = (_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudFJlY3RPYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvZWxlbWVudFJlY3RPYnNlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sbUJBQW1CO0VBQWhDO0lBSVUsYUFBUSxHQUFtQixJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztFQWdCOUUsQ0FBQztFQWRRLE9BQU8sQ0FBQyxPQUFvQjtJQUNqQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7RUFDakIsQ0FBQztFQUVNLFVBQVU7SUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQztJQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO0VBQzdCLENBQUM7RUFFTyxPQUFPOztJQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxxQkFBcUIsRUFBRSxDQUFDO0VBQ3BELENBQUM7Q0FDRiJ9
|