@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
|
@@ -1,36 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Vector3f } from '@vertexvis/scene-view-protos/core/protos/geometry_pb';
|
|
3
|
-
import { ModelEntity } from '@vertexvis/scene-view-protos/core/protos/model_entity_pb';
|
|
4
|
-
import { MeasureEntity } from '@vertexvis/scene-view-protos/sceneview/protos/scene_view_api_pb';
|
|
5
|
-
import { EventDispatcher, Mapper, } from '@vertexvis/utils';
|
|
6
|
-
import { fromPbVector3f } from '../mappers';
|
|
7
|
-
export class MeasurementEntity {
|
|
8
|
-
constructor(point, modelEntity) {
|
|
9
|
-
this.point = point;
|
|
10
|
-
this.modelEntity = modelEntity;
|
|
11
|
-
}
|
|
12
|
-
static fromHit(hit) {
|
|
13
|
-
if (hit.hitPoint != null && hit.modelEntity != null) {
|
|
14
|
-
const hitPoint = Mapper.ifInvalidThrow(fromPbVector3f)(hit.hitPoint);
|
|
15
|
-
const modelEntity = vertexvis.protobuf.core.ModelEntity.encode(hit.modelEntity).finish();
|
|
16
|
-
return new MeasurementEntity(hitPoint, modelEntity);
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
throw new Error('Cannot create MeasurementEntity from Hit. Hit is missing hit point and model entity');
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
toProto() {
|
|
23
|
-
const entity = new MeasureEntity();
|
|
24
|
-
const point = new Vector3f();
|
|
25
|
-
point.setX(this.point.x);
|
|
26
|
-
point.setY(this.point.y);
|
|
27
|
-
point.setZ(this.point.z);
|
|
28
|
-
entity.setPoint(point);
|
|
29
|
-
const modelEntity = ModelEntity.deserializeBinary(this.modelEntity);
|
|
30
|
-
entity.setModelEntity(modelEntity);
|
|
31
|
-
return entity;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
1
|
+
import { EventDispatcher, Objects, } from '@vertexvis/utils';
|
|
34
2
|
/**
|
|
35
3
|
* A model representing the state of measurement.
|
|
36
4
|
*
|
|
@@ -45,8 +13,8 @@ export class MeasurementModel {
|
|
|
45
13
|
constructor() {
|
|
46
14
|
this.entities = new Set();
|
|
47
15
|
this.results = new Set();
|
|
48
|
-
this.resultsChanged = new EventDispatcher();
|
|
49
16
|
this.entitiesChanged = new EventDispatcher();
|
|
17
|
+
this.outcomeChanged = new EventDispatcher();
|
|
50
18
|
}
|
|
51
19
|
/**
|
|
52
20
|
* Registers an entity to be measured with the model.
|
|
@@ -64,24 +32,6 @@ export class MeasurementModel {
|
|
|
64
32
|
return false;
|
|
65
33
|
}
|
|
66
34
|
}
|
|
67
|
-
/**
|
|
68
|
-
* Adds a measurement result to the model.
|
|
69
|
-
*
|
|
70
|
-
* Emits a _result changed_ event.
|
|
71
|
-
*
|
|
72
|
-
* @param result A result to add.
|
|
73
|
-
* @returns `true` if the result has been added.
|
|
74
|
-
*/
|
|
75
|
-
addResult(result) {
|
|
76
|
-
if (!this.results.has(result)) {
|
|
77
|
-
this.results.add(result);
|
|
78
|
-
this.resultsChanged.emit(this.getResults());
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
return false;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
35
|
/**
|
|
86
36
|
* Clears all registered entities from the model.
|
|
87
37
|
*/
|
|
@@ -89,23 +39,23 @@ export class MeasurementModel {
|
|
|
89
39
|
this.entities.forEach((e) => this.removeEntity(e));
|
|
90
40
|
}
|
|
91
41
|
/**
|
|
92
|
-
* Clears
|
|
93
|
-
*
|
|
94
|
-
* Emits a _result changed_ event.
|
|
42
|
+
* Clears the outcome containing the results of a measurement.
|
|
95
43
|
*/
|
|
96
|
-
|
|
97
|
-
this.
|
|
44
|
+
clearOutcome() {
|
|
45
|
+
this.setOutcome(undefined);
|
|
98
46
|
}
|
|
99
47
|
/**
|
|
100
|
-
*
|
|
48
|
+
* Sets the outcome containing the results of a measurement.
|
|
101
49
|
*
|
|
102
|
-
* Emits a
|
|
50
|
+
* Emits a _outcome changed_ event.
|
|
103
51
|
*
|
|
104
|
-
* @param outcome The outcome
|
|
52
|
+
* @param outcome The outcome containing results.
|
|
105
53
|
*/
|
|
106
|
-
|
|
107
|
-
this.
|
|
108
|
-
|
|
54
|
+
setOutcome(outcome) {
|
|
55
|
+
if (!Objects.isEqual(this.outcome, outcome)) {
|
|
56
|
+
this.outcome = outcome;
|
|
57
|
+
this.outcomeChanged.emit(outcome);
|
|
58
|
+
}
|
|
109
59
|
}
|
|
110
60
|
/**
|
|
111
61
|
* Returns all the entities registered with the model.
|
|
@@ -113,6 +63,12 @@ export class MeasurementModel {
|
|
|
113
63
|
getEntities() {
|
|
114
64
|
return Array.from(this.entities);
|
|
115
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Returns the outcome that contains the results of a measurement.
|
|
68
|
+
*/
|
|
69
|
+
getOutcome() {
|
|
70
|
+
return this.outcome;
|
|
71
|
+
}
|
|
116
72
|
/**
|
|
117
73
|
* Returns all the measurement results of the model.
|
|
118
74
|
*/
|
|
@@ -135,23 +91,6 @@ export class MeasurementModel {
|
|
|
135
91
|
return false;
|
|
136
92
|
}
|
|
137
93
|
}
|
|
138
|
-
/**
|
|
139
|
-
* Removes a measurement result from the model.
|
|
140
|
-
*
|
|
141
|
-
* Emits a _result changed_ event.
|
|
142
|
-
*
|
|
143
|
-
* @param result The result to remove.
|
|
144
|
-
*/
|
|
145
|
-
removeResult(result) {
|
|
146
|
-
if (this.results.has(result)) {
|
|
147
|
-
this.results.delete(result);
|
|
148
|
-
this.resultsChanged.emit(this.getResults());
|
|
149
|
-
return true;
|
|
150
|
-
}
|
|
151
|
-
else {
|
|
152
|
-
return false;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
94
|
/**
|
|
156
95
|
* Sets the set of entities to be measured with the model.
|
|
157
96
|
*
|
|
@@ -165,14 +104,14 @@ export class MeasurementModel {
|
|
|
165
104
|
return true;
|
|
166
105
|
}
|
|
167
106
|
/**
|
|
168
|
-
* Registers an event listener that will be invoked when the model's
|
|
169
|
-
*
|
|
107
|
+
* Registers an event listener that will be invoked when the model's outcome
|
|
108
|
+
* changes.
|
|
170
109
|
*
|
|
171
110
|
* @param listener The listener to add.
|
|
172
111
|
* @returns A disposable that can be used to remove the listener.
|
|
173
112
|
*/
|
|
174
|
-
|
|
175
|
-
return this.
|
|
113
|
+
onOutcomeChanged(listener) {
|
|
114
|
+
return this.outcomeChanged.on(listener);
|
|
176
115
|
}
|
|
177
116
|
/**
|
|
178
117
|
* Registers an event listener that will be invoked when the model's
|
|
@@ -185,4 +124,4 @@ export class MeasurementModel {
|
|
|
185
124
|
return this.entitiesChanged.on(listener);
|
|
186
125
|
}
|
|
187
126
|
}
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL21lYXN1cmVtZW50L21vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxlQUFlLEVBRWYsT0FBTyxHQUNSLE1BQU0sa0JBQWtCLENBQUM7QUFNMUI7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtFQUE3QjtJQUNVLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBcUIsQ0FBQztJQUV4QyxZQUFPLEdBQUcsSUFBSSxHQUFHLEVBQXFCLENBQUM7SUFFdkMsb0JBQWUsR0FBRyxJQUFJLGVBQWUsRUFBdUIsQ0FBQztJQUU3RCxtQkFBYyxHQUFHLElBQUksZUFBZSxFQUV6QyxDQUFDO0VBeUhOLENBQUM7RUF2SEM7Ozs7O0tBS0c7RUFDSSxTQUFTLENBQUMsTUFBeUI7SUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO01BQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO01BQzFCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO01BQzlDLE9BQU8sSUFBSSxDQUFDO0tBQ2I7U0FBTTtNQUNMLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7RUFDSCxDQUFDO0VBRUQ7O0tBRUc7RUFDSSxhQUFhO0lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7RUFDckQsQ0FBQztFQUVEOztLQUVHO0VBQ0ksWUFBWTtJQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0VBQzdCLENBQUM7RUFFRDs7Ozs7O0tBTUc7RUFDSSxVQUFVLENBQUMsT0FBdUM7SUFDdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsRUFBRTtNQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztNQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUNuQztFQUNILENBQUM7RUFFRDs7S0FFRztFQUNJLFdBQVc7SUFDaEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztFQUNuQyxDQUFDO0VBRUQ7O0tBRUc7RUFDSSxVQUFVO0lBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0VBQ3RCLENBQUM7RUFFRDs7S0FFRztFQUNJLFVBQVU7SUFDZixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0VBQ2xDLENBQUM7RUFFRDs7Ozs7S0FLRztFQUNJLFlBQVksQ0FBQyxNQUF5QjtJQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO01BQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO01BQzdCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO01BQzlDLE9BQU8sSUFBSSxDQUFDO0tBQ2I7U0FBTTtNQUNMLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7RUFDSCxDQUFDO0VBRUQ7Ozs7O0tBS0c7RUFDSSxXQUFXLENBQUMsUUFBZ0M7SUFDakQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sSUFBSSxDQUFDO0VBQ2QsQ0FBQztFQUVEOzs7Ozs7S0FNRztFQUNJLGdCQUFnQixDQUNyQixRQUFrRDtJQUVsRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0VBQzFDLENBQUM7RUFFRDs7Ozs7O0tBTUc7RUFDSSxpQkFBaUIsQ0FDdEIsUUFBdUM7SUFFdkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztFQUMzQyxDQUFDO0NBQ0YifQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Vector3 } from '@vertexvis/geometry';
|
|
2
|
+
import { EventDispatcher, UUID } from '@vertexvis/utils';
|
|
3
|
+
export class MeasurementOverlayManager {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.overlays = new Map();
|
|
6
|
+
this.overlaysChanged = new EventDispatcher();
|
|
7
|
+
}
|
|
8
|
+
addLineFromResult(result) {
|
|
9
|
+
return this.addLine(result.point1, result.point2);
|
|
10
|
+
}
|
|
11
|
+
addLine(start, end) {
|
|
12
|
+
const id = UUID.create();
|
|
13
|
+
const overlay = {
|
|
14
|
+
type: 'line',
|
|
15
|
+
id: id,
|
|
16
|
+
start,
|
|
17
|
+
end,
|
|
18
|
+
dispose: () => this.remove(id),
|
|
19
|
+
};
|
|
20
|
+
this.addOverlay(overlay);
|
|
21
|
+
return overlay;
|
|
22
|
+
}
|
|
23
|
+
addDistanceVectorFromResult(result) {
|
|
24
|
+
return this.addDistanceVector(result.point1, result.point2);
|
|
25
|
+
}
|
|
26
|
+
addDistanceVector(start, end) {
|
|
27
|
+
const id = UUID.create();
|
|
28
|
+
const v = Vector3.subtract(start, end);
|
|
29
|
+
const ze = Vector3.add(start, Vector3.create(0, 0, -v.z));
|
|
30
|
+
const z = { start, end: ze };
|
|
31
|
+
const ye = Vector3.add(ze, Vector3.create(0, -v.y, 0));
|
|
32
|
+
const y = { start: ze, end: ye };
|
|
33
|
+
const xe = Vector3.add(ye, Vector3.create(-v.x, 0, 0));
|
|
34
|
+
const x = { start: ye, end: xe };
|
|
35
|
+
const overlay = {
|
|
36
|
+
type: 'distance-vector',
|
|
37
|
+
id,
|
|
38
|
+
x,
|
|
39
|
+
y,
|
|
40
|
+
z,
|
|
41
|
+
dispose: () => this.remove(id),
|
|
42
|
+
};
|
|
43
|
+
this.addOverlay(overlay);
|
|
44
|
+
return overlay;
|
|
45
|
+
}
|
|
46
|
+
addOverlay(overlay) {
|
|
47
|
+
if (!this.overlays.has(overlay.id)) {
|
|
48
|
+
this.overlays.set(overlay.id, overlay);
|
|
49
|
+
this.overlaysChanged.emit(this.getOverlays());
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
getOverlays() {
|
|
53
|
+
return Array.from(this.overlays.values());
|
|
54
|
+
}
|
|
55
|
+
remove(id) {
|
|
56
|
+
if (this.overlays.has(id)) {
|
|
57
|
+
this.overlays.delete(id);
|
|
58
|
+
this.overlaysChanged.emit(this.getOverlays());
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
onOverlaysChanged(listener) {
|
|
66
|
+
return this.overlaysChanged.on(listener);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL21lYXN1cmVtZW50L292ZXJsYXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQWMsZUFBZSxFQUFZLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBcUIvRSxNQUFNLE9BQU8seUJBQXlCO0VBQXRDO0lBQ1UsYUFBUSxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO0lBQ2pELG9CQUFlLEdBQUcsSUFBSSxlQUFlLEVBQXdCLENBQUM7RUFpRnhFLENBQUM7RUEvRVEsaUJBQWlCLENBQ3RCLE1BQXdDO0lBRXhDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztFQUNwRCxDQUFDO0VBRU0sT0FBTyxDQUFDLEtBQXNCLEVBQUUsR0FBb0I7SUFDekQsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLE1BQU0sT0FBTyxHQUFnQjtNQUMzQixJQUFJLEVBQUUsTUFBTTtNQUNaLEVBQUUsRUFBRSxFQUFFO01BQ04sS0FBSztNQUNMLEdBQUc7TUFDSCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7S0FDL0IsQ0FBQztJQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekIsT0FBTyxPQUFPLENBQUM7RUFDakIsQ0FBQztFQUVNLDJCQUEyQixDQUNoQyxNQUF3QztJQUV4QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztFQUM5RCxDQUFDO0VBRU0saUJBQWlCLENBQ3RCLEtBQXNCLEVBQ3RCLEdB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
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Vector3 } from '@vertexvis/geometry';
|
|
2
|
+
/**
|
|
3
|
+
* Constructs a new measurement result from the given points.
|
|
4
|
+
*
|
|
5
|
+
* @param point1 A starting point.
|
|
6
|
+
* @param point2 An ending point.
|
|
7
|
+
* @returns A new measurement result.
|
|
8
|
+
*/
|
|
9
|
+
export function makeMinimumDistanceResult(point1, point2) {
|
|
10
|
+
return {
|
|
11
|
+
type: 'minimum-distance',
|
|
12
|
+
point1,
|
|
13
|
+
point2,
|
|
14
|
+
distance: Vector3.distance(point1, point2),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvbWVhc3VyZW1lbnQvcmVzdWx0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVMsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFzR3JEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FDdkMsTUFBdUIsRUFDdkIsTUFBdUI7RUFFdkIsT0FBTztJQUNMLElBQUksRUFBRSxrQkFBa0I7SUFDeEIsTUFBTTtJQUNOLE1BQU07SUFDTixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDO0dBQzNDLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -29,5 +29,9 @@ export var EntityType;
|
|
|
29
29
|
* A value that represents the presence of geometry without BREP.
|
|
30
30
|
*/
|
|
31
31
|
EntityType[EntityType["GENERIC_GEOMETRY"] = 96] = "GENERIC_GEOMETRY";
|
|
32
|
+
/**
|
|
33
|
+
* A value that represents the absence of geometry.
|
|
34
|
+
*/
|
|
35
|
+
EntityType[EntityType["NO_GEOMETRY"] = 0] = "NO_GEOMETRY";
|
|
32
36
|
})(EntityType || (EntityType = {}));
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzL2VudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVDQUF1QztBQUN2QywySEFBMkg7QUFFM0g7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxVQW1DWDtBQW5DRCxXQUFZLFVBQVU7RUFDcEI7O0tBRUc7RUFDSCwrREFBb0IsQ0FBQTtFQUVwQjs7S0FFRztFQUNILDZEQUFtQixDQUFBO0VBRW5COztLQUVHO0VBQ0gsbUVBQXNCLENBQUE7RUFFdEI7O0tBRUc7RUFDSCxpRUFBcUIsQ0FBQTtFQUVyQjs7S0FFRztFQUNILHVFQUF3QixDQUFBO0VBRXhCOztLQUVHO0VBQ0gsb0VBQXVCLENBQUE7RUFFdkI7O0tBRUc7RUFDSCx5REFBa0IsQ0FBQTtBQUNwQixDQUFDLEVBbkNXLFVBQVUsS0FBVixVQUFVLFFBbUNyQiJ9
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Point } from '@vertexvis/geometry';
|
|
1
|
+
import { Point, Rectangle } from '@vertexvis/geometry';
|
|
2
2
|
import { Color } from '@vertexvis/utils';
|
|
3
3
|
import { EntityType } from './entities';
|
|
4
4
|
/**
|
|
@@ -25,11 +25,17 @@ export class FeatureMap {
|
|
|
25
25
|
* @returns A new feature map.
|
|
26
26
|
*/
|
|
27
27
|
static fromPng(png, imageAttr) {
|
|
28
|
-
if (png.data instanceof Uint8Array) {
|
|
29
|
-
|
|
28
|
+
if (!(png.data instanceof Uint8Array)) {
|
|
29
|
+
throw new Error('Cannot create FeatureMap. Expected decoded PNG to be a Uint8Array.');
|
|
30
|
+
}
|
|
31
|
+
else if (png.channels !== 4) {
|
|
32
|
+
throw new Error('Cannot create FeatureMap. Missing alpha channel.');
|
|
30
33
|
}
|
|
31
34
|
else {
|
|
32
|
-
|
|
35
|
+
return new FeatureMap(png.data, Object.assign(Object.assign({}, imageAttr), {
|
|
36
|
+
// TODO(dan): Need to change frame protos to include image attributes
|
|
37
|
+
// per image artifact.
|
|
38
|
+
imageRect: Rectangle.fromPointAndDimensions(imageAttr.imageRect, png) }));
|
|
33
39
|
}
|
|
34
40
|
}
|
|
35
41
|
/**
|
|
@@ -60,6 +66,9 @@ export class FeatureMap {
|
|
|
60
66
|
else if ((color === null || color === void 0 ? void 0 : color.a) === EntityType.PRECISE_SURFACE) {
|
|
61
67
|
return EntityType.PRECISE_SURFACE;
|
|
62
68
|
}
|
|
69
|
+
else {
|
|
70
|
+
return EntityType.NO_GEOMETRY;
|
|
71
|
+
}
|
|
63
72
|
}
|
|
64
73
|
getColor(point) {
|
|
65
74
|
const { width, height } = this.imageAttr.imageRect;
|
|
@@ -78,4 +87,4 @@ export class FeatureMap {
|
|
|
78
87
|
return undefined;
|
|
79
88
|
}
|
|
80
89
|
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZU1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHlwZXMvZmVhdHVyZU1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBR3hDOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sVUFBVTtFQUNyQjs7Ozs7S0FLRztFQUNILFlBQ21CLE1BQWtCLEVBQ25CLFNBQThCO0lBRDdCLFdBQU0sR0FBTixNQUFNLENBQVk7SUFDbkIsY0FBUyxHQUFULFNBQVMsQ0FBcUI7RUFDN0MsQ0FBQztFQUVKOzs7Ozs7S0FNRztFQUNJLE1BQU0sQ0FBQyxPQUFPLENBQ25CLEdBQStELEVBQy9ELFNBQThCO0lBRTlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFlBQVksVUFBVSxDQUFDLEVBQUU7TUFDckMsTUFBTSxJQUFJLEtBQUssQ0FDYixvRUFBb0UsQ0FDckUsQ0FBQztLQUNIO1NBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLENBQUMsRUFBRTtNQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7S0FDckU7U0FBTTtNQUNMLE9BQU8sSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksa0NBQ3pCLFNBQVM7UUFDWixxRUFBcUU7UUFDckUsc0JBQXNCO1FBQ3RCLFNBQVMsRUFBRSxTQUFTLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsSUFDckUsQ0FBQztLQUNKO0VBQ0gsQ0FBQztFQUVEOzs7Ozs7O0tBT0c7RUFDSSxhQUFhLENBQUMsS0FBa0I7SUFDckMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFD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
|
|
@@ -17,7 +17,7 @@ export class Frame {
|
|
|
17
17
|
if (this.cachedDepthBuffer == null) {
|
|
18
18
|
this.cachedDepthBuffer =
|
|
19
19
|
this.depthBufferBytes != null
|
|
20
|
-
? this.decodeDepthBuffer(this.depthBufferBytes)
|
|
20
|
+
? this.decodeDepthBuffer(new Uint8Array(this.depthBufferBytes))
|
|
21
21
|
: Promise.resolve(undefined);
|
|
22
22
|
}
|
|
23
23
|
return this.cachedDepthBuffer;
|
|
@@ -30,7 +30,7 @@ export class Frame {
|
|
|
30
30
|
if (this.cachedFeatureMap == null) {
|
|
31
31
|
this.cachedFeatureMap =
|
|
32
32
|
this.featureMapBytes != null
|
|
33
|
-
? this.decodeFeatureMap(this.featureMapBytes)
|
|
33
|
+
? this.decodeFeatureMap(new Uint8Array(this.featureMapBytes))
|
|
34
34
|
: Promise.resolve(undefined);
|
|
35
35
|
}
|
|
36
36
|
return this.cachedFeatureMap;
|
|
@@ -137,4 +137,4 @@ export class FramePerspectiveCamera {
|
|
|
137
137
|
return pt != null ? Vector3.add(pt, position) : undefined;
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzL2ZyYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxLQUFLLEVBQ0wsT0FBTyxFQUNQLEtBQUssRUFFTCxPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxLQUFLLGNBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFJMUMsTUFBTSxPQUFPLEtBQUs7RUFJaEIsWUFDa0IsY0FBd0IsRUFDeEIsY0FBc0IsRUFDdEIsVUFBaUMsRUFDakMsS0FBaUIsRUFDakIsS0FBaUIsRUFDaEIsZ0JBQXdDLEVBQ3hDLGVBQXVDO0lBTnhDLG1CQUFjLEdBQWQsY0FBYyxDQUFVO0lBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO0lBQ3RCLGVBQVUsR0FBVixVQUFVLENBQXVCO0lBQ2pDLFVBQUssR0FBTCxLQUFLLENBQVk7SUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtJQUNoQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO0lBQ3hDLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtFQUN2RCxDQUFDO0VBRUcsS0FBSyxDQUFDLFdBQVc7SUFDdEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxFQUFFO01BQ2xDLElBQUksQ0FBQyxpQkFBaUI7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUk7VUFDM0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztVQUMvRCxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FB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
|
|
@@ -201,33 +201,33 @@ export class AreaUnits {
|
|
|
201
201
|
AreaUnits.units = {
|
|
202
202
|
millimeters: {
|
|
203
203
|
name: 'Square Millimeters',
|
|
204
|
-
abbreviatedName: 'mm
|
|
204
|
+
abbreviatedName: 'mm²',
|
|
205
205
|
converter: new MillimeterUnitConverter(),
|
|
206
206
|
},
|
|
207
207
|
centimeters: {
|
|
208
208
|
name: 'Square Centimeters',
|
|
209
|
-
abbreviatedName: 'cm
|
|
209
|
+
abbreviatedName: 'cm²',
|
|
210
210
|
converter: new CentimeterUnitConverter(2),
|
|
211
211
|
},
|
|
212
212
|
meters: {
|
|
213
213
|
name: 'Square Meters',
|
|
214
|
-
abbreviatedName: 'm
|
|
214
|
+
abbreviatedName: 'm²',
|
|
215
215
|
converter: new MeterUnitConverter(2),
|
|
216
216
|
},
|
|
217
217
|
inches: {
|
|
218
218
|
name: 'Square Inches',
|
|
219
|
-
abbreviatedName: 'in
|
|
219
|
+
abbreviatedName: 'in²',
|
|
220
220
|
converter: new InchesUnitConverter(2),
|
|
221
221
|
},
|
|
222
222
|
feet: {
|
|
223
223
|
name: 'Square Feet',
|
|
224
|
-
abbreviatedName: 'ft
|
|
224
|
+
abbreviatedName: 'ft²',
|
|
225
225
|
converter: new FeetUnitConverter(2),
|
|
226
226
|
},
|
|
227
227
|
yards: {
|
|
228
228
|
name: 'Square Yards',
|
|
229
|
-
abbreviatedName: 'yd
|
|
229
|
+
abbreviatedName: 'yd²',
|
|
230
230
|
converter: new YardUnitConverter(2),
|
|
231
231
|
},
|
|
232
232
|
};
|
|
233
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
233
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVhc3VyZW1lbnRVbml0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHlwZXMvbWVhc3VyZW1lbnRVbml0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFXLE1BQU0scUJBQXFCLENBQUM7QUE2QnJELE1BQU0sbUJBQW1CO0VBQ3ZCLFlBQW9DLEtBQWE7SUFBYixVQUFLLEdBQUwsS0FBSyxDQUFRO0VBQUcsQ0FBQztFQUU5QyxTQUFTLENBQUMsS0FBYTtJQUM1QixPQUFPLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0VBQzVCLENBQUM7RUFFTSxXQUFXLENBQUMsS0FBYTtJQUM5QixPQUFPLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0VBQzVCLENBQUM7Q0FDRjtBQUVELE1BQU0sdUJBQXdCLFNBQVEsbUJBQW1CO0VBQ3ZEO0lBQ0UsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0VBQ1gsQ0FBQztDQUNGO0FBRUQsTUFBTSx1QkFBd0IsU0FBUSxtQkFBbUI7RUFDdkQsWUFBbUIsS0FBSyxHQUFHLENBQUM7SUFDMUIsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0VBQ2pDLENBQUM7Q0FDRjtBQUVELE1BQU0sa0JBQW1CLFNBQVEsbUJBQW1CO0VBQ2xELFlBQW1CLEtBQUssR0FBRyxDQUFDO0lBQzFCLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztFQUNuQyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLG1CQUFvQixTQUFRLG1CQUFtQjtFQUNuRCxZQUFtQixLQUFLLEdBQUcsQ0FBQztJQUMxQixLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxD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
|
|
@@ -41,6 +41,17 @@ export class Viewport {
|
|
|
41
41
|
transformVectorToViewport(ndc) {
|
|
42
42
|
return Point.create(ndc.x * this.center.x + this.center.x, -ndc.y * this.center.y + this.center.y);
|
|
43
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Transforms a world point to 2D point in viewport space.
|
|
46
|
+
*
|
|
47
|
+
* @param worldPt The world point to transform.
|
|
48
|
+
* @param projectionViewMatrix The projection matrix to transform a 3D point to 2D point.
|
|
49
|
+
* @returns A point in viewport space.
|
|
50
|
+
*/
|
|
51
|
+
transformWorldToViewport(worldPt, projectionViewMatrix) {
|
|
52
|
+
const ndc = Vector3.transformMatrix(worldPt, projectionViewMatrix);
|
|
53
|
+
return this.transformVectorToViewport(ndc);
|
|
54
|
+
}
|
|
44
55
|
transformPointToViewport(pt, image) {
|
|
45
56
|
const { x: scaleX, y: scaleY } = this.calculateFrameScale(image);
|
|
46
57
|
return Point.scale(pt, 1 * scaleX, 1 * scaleY);
|
|
@@ -125,4 +136,4 @@ export class Viewport {
|
|
|
125
136
|
return Dimensions.create(this.width, this.height);
|
|
126
137
|
}
|
|
127
138
|
}
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzL3ZpZXdwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBRVYsS0FBSyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQ1QsT0FBTyxHQUNSLE1BQU0scUJBQXFCLENBQUM7QUFNN0I7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxPQUFPLFFBQVE7RUFNbkI7RUFDRTs7S0FFRztFQUNhLEtBQWE7RUFFN0I7O0tBRUc7RUFDYSxNQUFjO0lBTGQsVUFBSyxHQUFMLEtBQUssQ0FBUTtJQUtiLFdBQU0sR0FBTixNQUFNLENBQVE7SUFFOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztFQUNuRCxDQUFDO0VBRUQ7Ozs7S0FJRztFQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBaUM7SUFDNUQsT0FBTyxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztFQUMzRCxDQUFDO0VBRUQ7Ozs7OztLQU1HO0VBQ0kseUJBQXlCLENBQUMsR0FBb0I7SUFDbkQsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUNqQixHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUNyQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQ3ZDLENBQUM7RUFDSixDQUFDO0VBRUQ7Ozs7OztLQU1HO0VBQ0ksd0JBQXdCLENBQzdCLE9BQXdCLEVBQ3hCLG9CQUFxQztJQUVyQyxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLE9BQU8s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
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Async } from '@vertexvis/utils';
|
|
2
|
+
/**
|
|
3
|
+
* Runs a function that contains assertions until they pass, or until the number
|
|
4
|
+
* of attempts are exhausted. This helper is handy for async operations where
|
|
5
|
+
* you are not able to know if they've completed or not.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
*
|
|
9
|
+
* test('it works', async () => {
|
|
10
|
+
* await eventually(() => expect(1 + 1).toEqual(2));
|
|
11
|
+
* })
|
|
12
|
+
*/
|
|
13
|
+
export async function eventually(assertions, { attempts = 50, delay = 20 } = {}) {
|
|
14
|
+
let error = undefined;
|
|
15
|
+
for (let i = 0; i < attempts; i++) {
|
|
16
|
+
try {
|
|
17
|
+
await assertions();
|
|
18
|
+
error = null;
|
|
19
|
+
break;
|
|
20
|
+
}
|
|
21
|
+
catch (e) {
|
|
22
|
+
error = e;
|
|
23
|
+
await Async.delay(delay);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (error != null) {
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnR1YWxseS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0aW5nL2V2ZW50dWFsbHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXpDOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFVBQVUsQ0FDOUIsVUFBc0MsRUFDdEMsRUFBRSxRQUFRLEdBQUcsRUFBRSxFQUFFLEtBQUssR0FBRyxFQUFFLEtBQTRDLEVBQUU7RUFFekUsSUFBSSxLQUFLLEdBQXdCLFNBQVMsQ0FBQztFQUUzQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFO0lBQ2pDLElBQUk7TUFDRixNQUFNLFVBQVUsRUFBRSxDQUFDO01BQ25CLEtBQUssR0FBRyxJQUFJLENBQUM7TUFDYixNQUFNO0tBQ1A7SUFBQyxPQUFPLENBQUMsRUFBRTtNQUNWLEtBQUssR0FBRyxDQUFDLENBQUM7TUFDVixNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDMUI7R0FDRjtFQUVELElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtJQUNqQixNQUFNLEtBQUssQ0FBQztHQUNiO0FBQ0gsQ0FBQyJ9
|
|
@@ -34,7 +34,9 @@ export const drawFramePayload = {
|
|
|
34
34
|
image: makeImagePng(100, 50),
|
|
35
35
|
depthBuffer: { value: makeDepthImagePng(100, 50) },
|
|
36
36
|
};
|
|
37
|
-
export
|
|
37
|
+
export function makeFrame() {
|
|
38
|
+
return Mapper.ifInvalidThrow(fromPbFrame(Orientation.DEFAULT))(drawFramePayload);
|
|
39
|
+
}
|
|
38
40
|
export function makeImagePng(width, height) {
|
|
39
41
|
const data = new Uint8ClampedArray(width * height * 4);
|
|
40
42
|
for (let y = 0; y < height; y++) {
|
|
@@ -57,7 +59,7 @@ export function makeDepthImageBytes(width, height, value = 2 ** 16 - 1) {
|
|
|
57
59
|
return data.fill(value);
|
|
58
60
|
}
|
|
59
61
|
export function makeDepthBuffer(width, height, value = 2 ** 16 - 1) {
|
|
60
|
-
return DepthBuffer.fromPng({ data: makeDepthImageBytes(width, height, value) },
|
|
62
|
+
return DepthBuffer.fromPng({ data: makeDepthImageBytes(width, height, value) }, makeFrame().scene.camera, makeImageAttributes(width, height));
|
|
61
63
|
}
|
|
62
64
|
export function makeStencilImageBytes(width, height, fill) {
|
|
63
65
|
const data = new Uint8Array(width * height * 3);
|
|
@@ -73,7 +75,12 @@ export function makeStencilBuffer(width, height, fill, depthBuffer) {
|
|
|
73
75
|
return StencilBuffer.fromPng({ data, channels: 1 }, makeImageAttributes(width, height), data, depthBuffer !== null && depthBuffer !== void 0 ? depthBuffer : makeDepthBuffer(width, height));
|
|
74
76
|
}
|
|
75
77
|
export function makeFeatureMap(width, height, fill) {
|
|
76
|
-
return FeatureMap.fromPng({
|
|
78
|
+
return FeatureMap.fromPng({
|
|
79
|
+
data: makeFeatureMapBytes(width, height, fill),
|
|
80
|
+
width,
|
|
81
|
+
height,
|
|
82
|
+
channels: 4,
|
|
83
|
+
}, makeImageAttributes(width, height));
|
|
77
84
|
}
|
|
78
85
|
export function makeFeatureMapBytes(width, height, fill) {
|
|
79
86
|
const data = new Uint8Array(width * height * 4);
|
|
@@ -110,4 +117,4 @@ export function makeHitProvider({ hitTester, raycaster, }) {
|
|
|
110
117
|
raycaster: async () => raycaster !== null && raycaster !== void 0 ? raycaster : defaultRaycaster,
|
|
111
118
|
};
|
|
112
119
|
}
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdGluZy9maXh0dXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVuRSxPQUFPLEVBQVMsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUUxRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUNMLFdBQVcsRUFDWCxVQUFVLEVBR1YsV0FBVyxFQUNYLDRCQUE0QixFQUM1QixhQUFhLEVBQ2IsUUFBUSxHQUNULE1BQU0sY0FBYyxDQUFDO0FBRXRCLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFxQjtFQUNoRCxjQUFjLEVBQUUsQ0FBQztFQUNqQixlQUFlLEVBQUU7SUFDZixNQUFNLEVBQUU7TUFDTixRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtNQUNoQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtNQUM1QixFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRTtLQUN6QjtJQUNELGtCQUFrQixFQUFFO01BQ2xCLElBQUksRUFBRSxDQUFDLEdBQUc7TUFDVixJQUFJLEVBQUUsQ0FBQyxHQUFHO01BQ1YsSUFBSSxFQUFFLENBQUMsR0FBRztNQUNWLElBQUksRUFBRSxHQUFHO01BQ1QsSUFB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
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
export * from './eventually';
|
|
1
2
|
export * from './frameStreamingClient';
|
|
2
3
|
export * from './grpc';
|
|
3
4
|
export * from './random';
|
|
4
5
|
export * from './sceneTree';
|
|
5
6
|
export * from './sceneView';
|
|
6
7
|
export * from './utils';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDIn0=
|