@vertexvis/viewer 0.13.2-canary.44 → 0.13.2-canary.45
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/index.cjs.js +1 -1
- package/dist/cjs/vertex-viewer-dom-element_2.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-pin-group.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-transform-widget.cjs.entry.js +61 -17
- package/dist/cjs/vertex-viewer.cjs.entry.js +1 -1
- package/dist/cjs/{viewport-a259d895.js → viewport-aeb8a3f3.js} +13 -3
- package/dist/collection/components/viewer-transform-widget/util.js +15 -4
- package/dist/collection/components/viewer-transform-widget/viewer-transform-widget.js +5 -3
- package/dist/collection/components/viewer-transform-widget/widget.js +25 -5
- package/dist/collection/lib/transforms/hits.js +12 -4
- package/dist/collection/lib/transforms/mesh.js +6 -3
- package/dist/collection/lib/types/viewport.js +14 -4
- package/dist/custom-elements/index.js +73 -19
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/vertex-viewer-dom-element_2.entry.js +1 -1
- package/dist/esm/vertex-viewer-measurement-distance.entry.js +1 -1
- package/dist/esm/vertex-viewer-pin-group.entry.js +1 -1
- package/dist/esm/vertex-viewer-transform-widget.entry.js +62 -18
- package/dist/esm/vertex-viewer.entry.js +1 -1
- package/dist/esm/{viewport-7421cd5c.js → viewport-7e612d0d.js} +13 -3
- package/dist/types/components/viewer-transform-widget/widget.d.ts +2 -0
- package/dist/types/lib/transforms/mesh.d.ts +2 -1
- package/dist/types/lib/types/viewport.d.ts +8 -0
- package/dist/viewer/index.esm.js +1 -1
- package/dist/viewer/p-4d6ea58f.entry.js +4 -0
- package/dist/viewer/{p-5d833a6d.entry.js → p-831fe8e4.entry.js} +1 -1
- package/dist/viewer/{p-b2a5d2ee.entry.js → p-8897b397.entry.js} +1 -1
- package/dist/viewer/p-8cf1d174.js +4 -0
- package/dist/viewer/{p-d2d6cf52.entry.js → p-b09a7169.entry.js} +1 -1
- package/dist/viewer/{p-10655c8a.entry.js → p-cfc93df0.entry.js} +1 -1
- package/dist/viewer/viewer.esm.js +1 -1
- package/package.json +7 -7
- package/dist/viewer/p-9e675bb3.entry.js +0 -4
- package/dist/viewer/p-aebcfde0.js +0 -4
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -14,7 +14,7 @@ const results = require('./results-6cab066c.js');
|
|
|
14
14
|
const streamAttributes = require('./streamAttributes-07357da5.js');
|
|
15
15
|
const entities = require('./entities-9eb7e608.js');
|
|
16
16
|
const markup = require('./markup-d779dd54.js');
|
|
17
|
-
const viewport = require('./viewport-
|
|
17
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
18
18
|
require('./browser.esm-739c5a8a.js');
|
|
19
19
|
require('./bundle.esm-3581a1e0.js');
|
|
20
20
|
require('./mapper-7ee069ef.js');
|
|
@@ -10,7 +10,7 @@ const bundle_esm = require('./bundle.esm-3581a1e0.js');
|
|
|
10
10
|
const browser_esm = require('./browser.esm-739c5a8a.js');
|
|
11
11
|
require('./streamAttributes-07357da5.js');
|
|
12
12
|
require('./entities-9eb7e608.js');
|
|
13
|
-
const viewport = require('./viewport-
|
|
13
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
14
14
|
require('./_commonjsHelpers-dcc4cf71.js');
|
|
15
15
|
|
|
16
16
|
const viewerDomElementCss = ":host{position:absolute;pointer-events:none}:host(:not([interactions-off]))>*{pointer-events:auto}";
|
|
@@ -17,7 +17,7 @@ const model = require('./model-2dbabec1.js');
|
|
|
17
17
|
const overlays = require('./overlays-bac05f94.js');
|
|
18
18
|
const results = require('./results-6cab066c.js');
|
|
19
19
|
require('./entities-9eb7e608.js');
|
|
20
|
-
const viewport = require('./viewport-
|
|
20
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
21
21
|
const browser_esm = require('./browser.esm-739c5a8a.js');
|
|
22
22
|
const utils = require('./utils-1bfe6fec.js');
|
|
23
23
|
const index$1 = require('./index-b9d13137.js');
|
|
@@ -12,7 +12,7 @@ require('./mapper-7ee069ef.js');
|
|
|
12
12
|
require('./grpc-web-client.umd-2af20c1b.js');
|
|
13
13
|
require('./streamAttributes-07357da5.js');
|
|
14
14
|
require('./entities-9eb7e608.js');
|
|
15
|
-
const viewport = require('./viewport-
|
|
15
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
16
16
|
const model = require('./model-1fb38025.js');
|
|
17
17
|
const utils = require('./utils-cfcdeea5.js');
|
|
18
18
|
const index$1 = require('./index-b9d13137.js');
|
|
@@ -13,7 +13,7 @@ const browser_esm = require('./browser.esm-739c5a8a.js');
|
|
|
13
13
|
const _commonjsHelpers = require('./_commonjsHelpers-dcc4cf71.js');
|
|
14
14
|
require('./streamAttributes-07357da5.js');
|
|
15
15
|
require('./entities-9eb7e608.js');
|
|
16
|
-
const viewport = require('./viewport-
|
|
16
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
17
17
|
|
|
18
18
|
class TransformController {
|
|
19
19
|
constructor(stream) {
|
|
@@ -104,9 +104,20 @@ function convertPointToCanvas(point, bounds) {
|
|
|
104
104
|
}
|
|
105
105
|
function convertCanvasPointToWorld(point, frame, viewport, position) {
|
|
106
106
|
if (point != null && frame != null && viewport != null && position != null) {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
if (frame.scene.camera.isOrthographic()) {
|
|
108
|
+
const ray = viewport.transformPointToOrthographicRay(point, frame.image, frame.scene.camera);
|
|
109
|
+
// Offset the point to past the bounding sphere of the model to
|
|
110
|
+
// adjust the position plane location.
|
|
111
|
+
const offsetPoint = bundle_esm.ray.at(bundle_esm.ray.create({
|
|
112
|
+
origin: position,
|
|
113
|
+
direction: frame.scene.camera.direction,
|
|
114
|
+
}), bundle_esm.vector3.magnitude(frame.scene.camera.viewVector) * 2);
|
|
115
|
+
return bundle_esm.ray.intersectPlane(ray, bundle_esm.plane.fromNormalAndCoplanarPoint(frame.scene.camera.direction, offsetPoint));
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
const ray = viewport.transformPointToRay(point, frame.image, frame.scene.camera);
|
|
119
|
+
return bundle_esm.ray.intersectPlane(ray, bundle_esm.plane.fromNormalAndCoplanarPoint(frame.scene.camera.direction, position));
|
|
120
|
+
}
|
|
110
121
|
}
|
|
111
122
|
return undefined;
|
|
112
123
|
}
|
|
@@ -12464,13 +12475,16 @@ class TriangleMesh extends Mesh {
|
|
|
12464
12475
|
: browser_esm.color.toHexString(outlineColor), typeof fillColor === 'string' ? fillColor : browser_esm.color.toHexString(fillColor), shapeProps);
|
|
12465
12476
|
}
|
|
12466
12477
|
}
|
|
12467
|
-
function computeMesh2dBounds(...meshes) {
|
|
12478
|
+
function computeMesh2dBounds(viewport, ...meshes) {
|
|
12468
12479
|
let min = bundle_esm.point.create(Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
|
|
12469
12480
|
let max = bundle_esm.point.create();
|
|
12470
12481
|
meshes
|
|
12471
12482
|
.filter((m) => m.points.valid)
|
|
12472
12483
|
.map((m) => {
|
|
12473
|
-
m.points
|
|
12484
|
+
m.points
|
|
12485
|
+
.toArray()
|
|
12486
|
+
.map((pt) => viewport.transformNdcPointToViewport(pt))
|
|
12487
|
+
.forEach((pt) => {
|
|
12474
12488
|
min = bundle_esm.point.create(Math.min(pt.x, min.x), Math.min(pt.y, min.y));
|
|
12475
12489
|
max = bundle_esm.point.create(Math.max(pt.x, max.x), Math.max(pt.y, max.y));
|
|
12476
12490
|
});
|
|
@@ -12513,13 +12527,17 @@ function computeArrowNdcValues(widgetPosition, camera, direction, triangleSize)
|
|
|
12513
12527
|
*/
|
|
12514
12528
|
function testTriangleMesh(mesh, frame, viewport, point) {
|
|
12515
12529
|
var _a;
|
|
12516
|
-
const ray =
|
|
12530
|
+
const ray = frame.scene.camera.isOrthographic()
|
|
12531
|
+
? viewport.transformPointToOrthographicRay(point, frame.image, frame.scene.camera)
|
|
12532
|
+
: viewport.transformPointToRay(point, frame.image, frame.scene.camera);
|
|
12517
12533
|
const edge1 = bundle_esm.vector3.subtract(mesh.points.worldRight, mesh.points.worldLeft);
|
|
12518
12534
|
const edge2 = bundle_esm.vector3.subtract(mesh.points.worldTip, mesh.points.worldLeft);
|
|
12519
12535
|
const epsilon = bundle_esm.boundingBox.epsilon((_a = bundle_esm.boundingBox.fromVectors([ray.direction, ray.origin, edge1, edge2])) !== null && _a !== void 0 ? _a : bundle_esm.boundingBox.create(edge1, edge2));
|
|
12520
12536
|
const p = bundle_esm.vector3.cross(ray.direction, edge2);
|
|
12521
12537
|
const det = bundle_esm.vector3.dot(edge1, p);
|
|
12522
|
-
|
|
12538
|
+
// This check causes a `det` of NaN or 0 to return false
|
|
12539
|
+
// without needing to perform the subsequent calculations.
|
|
12540
|
+
if (!(Math.abs(det) >= epsilon)) {
|
|
12523
12541
|
return false;
|
|
12524
12542
|
}
|
|
12525
12543
|
const t = bundle_esm.vector3.subtract(ray.origin, mesh.points.worldLeft);
|
|
@@ -12533,9 +12551,18 @@ function testTriangleMesh(mesh, frame, viewport, point) {
|
|
|
12533
12551
|
return false;
|
|
12534
12552
|
}
|
|
12535
12553
|
const r = bundle_esm.vector3.dot(edge2, q) / det;
|
|
12536
|
-
|
|
12537
|
-
|
|
12538
|
-
|
|
12554
|
+
// Ignore the case where the computed hit position is negative
|
|
12555
|
+
// if in orthographic to correctly return hit results when close
|
|
12556
|
+
// to the camera.
|
|
12557
|
+
// TODO: revisit with https://vertexvis.atlassian.net/browse/PLAT-1549
|
|
12558
|
+
return !isNaN(r) && (r > 0 || frame.scene.camera.isOrthographic());
|
|
12559
|
+
}
|
|
12560
|
+
|
|
12561
|
+
// Scalar that is used in combination with the camera
|
|
12562
|
+
// components to determine the relative size of the meshes.
|
|
12563
|
+
// This attempts to keep the widget approximately the same
|
|
12564
|
+
// size as zooming occurs.
|
|
12565
|
+
const DEFAULT_MESH_SCALAR = 0.005;
|
|
12539
12566
|
class TransformWidget {
|
|
12540
12567
|
constructor(canvasElement, colors = {}) {
|
|
12541
12568
|
this.canvasElement = canvasElement;
|
|
@@ -12563,7 +12590,7 @@ class TransformWidget {
|
|
|
12563
12590
|
boundsContainsPoint(point) {
|
|
12564
12591
|
return (this.bounds != null &&
|
|
12565
12592
|
this.frame != null &&
|
|
12566
|
-
bundle_esm.rectangle.containsPoints(this.bounds,
|
|
12593
|
+
bundle_esm.rectangle.containsPoints(this.bounds, point));
|
|
12567
12594
|
}
|
|
12568
12595
|
updateFrame(frame, updateMeshes = true) {
|
|
12569
12596
|
this.frame = frame;
|
|
@@ -12578,6 +12605,9 @@ class TransformWidget {
|
|
|
12578
12605
|
if (cursor != null && this.frame != null) {
|
|
12579
12606
|
this.updateHovered();
|
|
12580
12607
|
}
|
|
12608
|
+
else {
|
|
12609
|
+
this.clearHovered();
|
|
12610
|
+
}
|
|
12581
12611
|
}
|
|
12582
12612
|
updatePosition(position) {
|
|
12583
12613
|
var _a;
|
|
@@ -12630,7 +12660,9 @@ class TransformWidget {
|
|
|
12630
12660
|
const previousHovered = this.hoveredMesh;
|
|
12631
12661
|
const currentFrame = this.frame;
|
|
12632
12662
|
if (currentFrame != null) {
|
|
12633
|
-
this.hoveredMesh = this.triangleMeshes
|
|
12663
|
+
this.hoveredMesh = this.triangleMeshes
|
|
12664
|
+
.filter((m) => m.points.valid)
|
|
12665
|
+
.find((m) => this.cursor != null
|
|
12634
12666
|
? testTriangleMesh(m, currentFrame, this.viewport, this.cursor)
|
|
12635
12667
|
: false);
|
|
12636
12668
|
if (this.hoveredMesh !== previousHovered) {
|
|
@@ -12640,6 +12672,14 @@ class TransformWidget {
|
|
|
12640
12672
|
}
|
|
12641
12673
|
}
|
|
12642
12674
|
}
|
|
12675
|
+
clearHovered() {
|
|
12676
|
+
const previousHovered = this.hoveredMesh;
|
|
12677
|
+
this.hoveredMesh = undefined;
|
|
12678
|
+
if (this.hoveredMesh !== previousHovered) {
|
|
12679
|
+
this.hoveredChanged.emit(this.hoveredMesh);
|
|
12680
|
+
previousHovered.updateFillColor(previousHovered.initialFillColor);
|
|
12681
|
+
}
|
|
12682
|
+
}
|
|
12643
12683
|
sortMeshes(frame, ...meshes) {
|
|
12644
12684
|
const compare = (m1, m2) => m1.points.shortestDistanceFrom(frame.scene.camera.position) -
|
|
12645
12685
|
m2.points.shortestDistanceFrom(frame.scene.camera.position);
|
|
@@ -12659,7 +12699,7 @@ class TransformWidget {
|
|
|
12659
12699
|
else {
|
|
12660
12700
|
this.updateMeshes(position, frame);
|
|
12661
12701
|
}
|
|
12662
|
-
this.bounds = computeMesh2dBounds(...this.triangleMeshes);
|
|
12702
|
+
this.bounds = computeMesh2dBounds(this.viewport, ...this.triangleMeshes);
|
|
12663
12703
|
}
|
|
12664
12704
|
createMeshes(position, frame) {
|
|
12665
12705
|
this.reglCommand = regl({
|
|
@@ -12694,7 +12734,9 @@ class TransformWidget {
|
|
|
12694
12734
|
}
|
|
12695
12735
|
}
|
|
12696
12736
|
computeTriangleSize(position, frame) {
|
|
12697
|
-
return (
|
|
12737
|
+
return ((frame.scene.camera.isOrthographic()
|
|
12738
|
+
? frame.scene.camera.fovHeight
|
|
12739
|
+
: bundle_esm.vector3.magnitude(bundle_esm.vector3.subtract(position, frame.scene.camera.position))) * DEFAULT_MESH_SCALAR);
|
|
12698
12740
|
}
|
|
12699
12741
|
}
|
|
12700
12742
|
|
|
@@ -12748,8 +12790,10 @@ let ViewerTransformWidget = class {
|
|
|
12748
12790
|
var _a, _b;
|
|
12749
12791
|
if (this.dragging != null && this.lastWorldPosition != null) {
|
|
12750
12792
|
const currentWorld = convertCanvasPointToWorld(convertPointToCanvas(bundle_esm.point.create(event.clientX, event.clientY), this.getCanvasBounds()), (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.frame, (_b = this.viewer) === null || _b === void 0 ? void 0 : _b.viewport, this.currentPosition);
|
|
12751
|
-
|
|
12752
|
-
|
|
12793
|
+
if (currentWorld != null) {
|
|
12794
|
+
this.transform(this.lastWorldPosition, currentWorld);
|
|
12795
|
+
this.lastWorldPosition = currentWorld;
|
|
12796
|
+
}
|
|
12753
12797
|
}
|
|
12754
12798
|
};
|
|
12755
12799
|
this.handleEndTransform = async (event) => {
|
|
@@ -15,7 +15,7 @@ const cursors = require('./cursors-6b087455.js');
|
|
|
15
15
|
const dom = require('./dom-b82f5a23.js');
|
|
16
16
|
const scene = require('./scene-7f29039e.js');
|
|
17
17
|
const entities = require('./entities-9eb7e608.js');
|
|
18
|
-
const viewport = require('./viewport-
|
|
18
|
+
const viewport = require('./viewport-aeb8a3f3.js');
|
|
19
19
|
require('./_commonjsHelpers-dcc4cf71.js');
|
|
20
20
|
|
|
21
21
|
/**
|
|
@@ -37,6 +37,16 @@ class Viewport {
|
|
|
37
37
|
static fromDimensions(dimensions) {
|
|
38
38
|
return new Viewport(dimensions.width, dimensions.height);
|
|
39
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Transforms a normalized device coordinate to a 2D point within the
|
|
42
|
+
* viewport.
|
|
43
|
+
*
|
|
44
|
+
* @param ndc A 2D point in NDC.
|
|
45
|
+
* @returns A 2D point in the coordinate space of the viewport.
|
|
46
|
+
*/
|
|
47
|
+
transformNdcPointToViewport(ndc) {
|
|
48
|
+
return bundle_esm.point.create(ndc.x * this.center.x + this.center.x, -ndc.y * this.center.y + this.center.y);
|
|
49
|
+
}
|
|
40
50
|
/**
|
|
41
51
|
* Transforms a normalized device coordinate to a 2D point within the
|
|
42
52
|
* viewport.
|
|
@@ -45,7 +55,7 @@ class Viewport {
|
|
|
45
55
|
* @returns A 2D point in the coordinate space of the viewport.
|
|
46
56
|
*/
|
|
47
57
|
transformVectorToViewport(ndc) {
|
|
48
|
-
return
|
|
58
|
+
return this.transformNdcPointToViewport(ndc);
|
|
49
59
|
}
|
|
50
60
|
/**
|
|
51
61
|
* Transforms a world point to 2D point in viewport space.
|
|
@@ -133,9 +143,9 @@ class Viewport {
|
|
|
133
143
|
*/
|
|
134
144
|
transformPointToOrthographicRay(pt, image, camera) {
|
|
135
145
|
const ndc = this.transformScreenPointToNdc(pt, image);
|
|
136
|
-
const
|
|
146
|
+
const origin = bundle_esm.vector3.transformNdcToWorldSpace(bundle_esm.vector3.create(ndc.x, ndc.y, 0), camera.worldMatrix, camera.projectionMatrixInverse);
|
|
137
147
|
return bundle_esm.ray.create({
|
|
138
|
-
origin
|
|
148
|
+
origin,
|
|
139
149
|
direction: bundle_esm.vector3.normalize(camera.viewVector),
|
|
140
150
|
});
|
|
141
151
|
}
|
|
@@ -6,9 +6,20 @@ export function convertPointToCanvas(point, bounds) {
|
|
|
6
6
|
}
|
|
7
7
|
export function convertCanvasPointToWorld(point, frame, viewport, position) {
|
|
8
8
|
if (point != null && frame != null && viewport != null && position != null) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
if (frame.scene.camera.isOrthographic()) {
|
|
10
|
+
const ray = viewport.transformPointToOrthographicRay(point, frame.image, frame.scene.camera);
|
|
11
|
+
// Offset the point to past the bounding sphere of the model to
|
|
12
|
+
// adjust the position plane location.
|
|
13
|
+
const offsetPoint = Ray.at(Ray.create({
|
|
14
|
+
origin: position,
|
|
15
|
+
direction: frame.scene.camera.direction,
|
|
16
|
+
}), Vector3.magnitude(frame.scene.camera.viewVector) * 2);
|
|
17
|
+
return Ray.intersectPlane(ray, Plane.fromNormalAndCoplanarPoint(frame.scene.camera.direction, offsetPoint));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
const ray = viewport.transformPointToRay(point, frame.image, frame.scene.camera);
|
|
21
|
+
return Ray.intersectPlane(ray, Plane.fromNormalAndCoplanarPoint(frame.scene.camera.direction, position));
|
|
22
|
+
}
|
|
12
23
|
}
|
|
13
24
|
return undefined;
|
|
14
25
|
}
|
|
@@ -24,4 +35,4 @@ export function computeUpdatedPosition(current, previous, next, identifier) {
|
|
|
24
35
|
return current;
|
|
25
36
|
}
|
|
26
37
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdlci10cmFuc2Zvcm0td2lkZ2V0L3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSWpFLE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsS0FBa0IsRUFDbEIsTUFBZ0I7RUFFaEIsT0FBTyxNQUFNLElBQUksSUFBSTtJQUNuQixDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQzNELENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSx5QkFBeUIsQ0FDdkMsS0FBbUIsRUFDbkIsS0FBYSxFQUNiLFFBQW1CLEVBQ25CLFFBQTBCO0VBRTFCLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLFFBQVEsSUFBSSxJQUFJLElBQUksUUFBUSxJQUFJLElBQUksRUFBRTtJQUMxRSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxFQUFFO01BQ3ZDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQywrQkFBK0IsQ0FDbEQsS0FBSyxFQUNMLEtBQUssQ0FBQyxLQUFLLEVBQ1gsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ25CLENBQUM7TUFDRiwrREFBK0Q7TUFDL0Qsc0NBQXNDO01BQ3RDLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQ3hCLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDVCxNQUFNLEVBQUUsUUFBUTtRQUNoQixTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUztPQUN4QyxDQUFDLEVBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQ3JELENBQUM7TUFFRixPQUFPLEdBQUcsQ0FBQyxjQUFjLENBQ3ZCLEdBQUcsRUFDSCxLQUFLLENBQUMsMEJBQTBCLENBQzlCLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFDNUIsV0FBVyxDQUNaLENBQ0YsQ0FBQztLQUNIO1NBQU07TUFDTCxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsbUJBQW1CLENBQ3RDLEtBQUssRUFDTCxLQUFLLENBQUMsS0FBSyxFQUNYLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNuQixDQUFDO01BRUYsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUN2QixHQUFHLEVBQ0gsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FDekUsQ0FBQztLQUNIO0dBQ0Y7RUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxPQUF3QixFQUN4QixRQUF5QixFQUN6QixJQUFxQixFQUNyQixVQUFrQjtFQUVsQixRQUFRLFVBQVUsRUFBRTtJQUNsQixLQUFLLGFBQWE7TUFDaEIsdUNBQ0ssT0FBTyxLQUNWLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFDakQ7SUFDSixLQUFLLGFBQWE7TUFDaEIsdUNBQ0ssT0FBTyxLQUNWLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFDakQ7SUFDSixLQUFLLGFBQWE7TUFDaEIsdUNBQ0ssT0FBTyxLQUNWLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFDakQ7SUFDSjtNQUNFLE9BQU8sT0FBTyxDQUFDO0dBQ2xCO0FBQ0gsQ0FBQyJ9
|
|
@@ -51,8 +51,10 @@ export class ViewerTransformWidget {
|
|
|
51
51
|
var _a, _b;
|
|
52
52
|
if (this.dragging != null && this.lastWorldPosition != null) {
|
|
53
53
|
const currentWorld = convertCanvasPointToWorld(convertPointToCanvas(Point.create(event.clientX, event.clientY), this.getCanvasBounds()), (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.frame, (_b = this.viewer) === null || _b === void 0 ? void 0 : _b.viewport, this.currentPosition);
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
if (currentWorld != null) {
|
|
55
|
+
this.transform(this.lastWorldPosition, currentWorld);
|
|
56
|
+
this.lastWorldPosition = currentWorld;
|
|
57
|
+
}
|
|
56
58
|
}
|
|
57
59
|
};
|
|
58
60
|
this.handleEndTransform = async (event) => {
|
|
@@ -344,4 +346,4 @@ export class ViewerTransformWidget {
|
|
|
344
346
|
"methodName": "handlePositionChanged"
|
|
345
347
|
}]; }
|
|
346
348
|
}
|
|
347
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXRyYW5zZm9ybS13aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItdHJhbnNmb3JtLXdpZGdldC92aWV3ZXItdHJhbnNmb3JtLXdpZGdldC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLENBQUMsRUFDRCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXJELE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQztBQUVwQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFdEUsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsb0JBQW9CLEdBQ3JCLE1BQU0sUUFBUSxDQUFDO0FBQ2hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFPM0MsTUFBTSxPQUFPLHFCQUFxQjtFQUxsQztJQThDVSxnQkFBVyxHQUF5QixTQUFTLENBQUM7SUFDOUMsZ0JBQVcsR0FBeUIsU0FBUyxDQUFDO0lBQzlDLGdCQUFXLEdBQXlCLFNBQVMsQ0FBQztJQUM5QyxpQkFBWSxHQUF5QixTQUFTLENBQUM7SUFDL0Msa0JBQWEsR0FBeUIsU0FBUyxDQUFDO0lBb0hoRCw2QkFBd0IsR0FBRyxDQUFDLElBQXNCLEVBQVEsRUFBRTtNQUNsRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDLENBQUM7SUFFTSwyQkFBc0IsR0FBRyxHQUFTLEVBQUU7TUFDMUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0lB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
|
|
349
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLXRyYW5zZm9ybS13aWRnZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3ZXItdHJhbnNmb3JtLXdpZGdldC92aWV3ZXItdHJhbnNmb3JtLXdpZGdldC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsS0FBSyxFQUVMLENBQUMsRUFDRCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXJELE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQztBQUVwQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFdEUsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsb0JBQW9CLEdBQ3JCLE1BQU0sUUFBUSxDQUFDO0FBQ2hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFPM0MsTUFBTSxPQUFPLHFCQUFxQjtFQUxsQztJQThDVSxnQkFBVyxHQUF5QixTQUFTLENBQUM7SUFDOUMsZ0JBQVcsR0FBeUIsU0FBUyxDQUFDO0lBQzlDLGdCQUFXLEdBQXlCLFNBQVMsQ0FBQztJQUM5QyxpQkFBWSxHQUF5QixTQUFTLENBQUM7SUFDL0Msa0JBQWEsR0FBeUIsU0FBUyxDQUFDO0lBb0hoRCw2QkFBd0IsR0FBRyxDQUFDLElBQXNCLEVBQVEsRUFBRTtNQUNsRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDLENBQUM7SUFFTSwyQkFBc0IsR0FBRyxHQUFTLEVBQUU7TUFDMUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0lB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
|
|
@@ -7,6 +7,11 @@ import { xAxisArrowPositions, yAxisArrowPositions, zAxisArrowPositions, } from '
|
|
|
7
7
|
import { testTriangleMesh } from '../../lib/transforms/hits';
|
|
8
8
|
import { AxisMesh, computeMesh2dBounds, TriangleMesh, } from '../../lib/transforms/mesh';
|
|
9
9
|
import { Viewport } from '../../lib/types';
|
|
10
|
+
// Scalar that is used in combination with the camera
|
|
11
|
+
// components to determine the relative size of the meshes.
|
|
12
|
+
// This attempts to keep the widget approximately the same
|
|
13
|
+
// size as zooming occurs.
|
|
14
|
+
export const DEFAULT_MESH_SCALAR = 0.005;
|
|
10
15
|
export class TransformWidget {
|
|
11
16
|
constructor(canvasElement, colors = {}) {
|
|
12
17
|
this.canvasElement = canvasElement;
|
|
@@ -34,7 +39,7 @@ export class TransformWidget {
|
|
|
34
39
|
boundsContainsPoint(point) {
|
|
35
40
|
return (this.bounds != null &&
|
|
36
41
|
this.frame != null &&
|
|
37
|
-
Rectangle.containsPoints(this.bounds,
|
|
42
|
+
Rectangle.containsPoints(this.bounds, point));
|
|
38
43
|
}
|
|
39
44
|
updateFrame(frame, updateMeshes = true) {
|
|
40
45
|
this.frame = frame;
|
|
@@ -49,6 +54,9 @@ export class TransformWidget {
|
|
|
49
54
|
if (cursor != null && this.frame != null) {
|
|
50
55
|
this.updateHovered();
|
|
51
56
|
}
|
|
57
|
+
else {
|
|
58
|
+
this.clearHovered();
|
|
59
|
+
}
|
|
52
60
|
}
|
|
53
61
|
updatePosition(position) {
|
|
54
62
|
var _a;
|
|
@@ -101,7 +109,9 @@ export class TransformWidget {
|
|
|
101
109
|
const previousHovered = this.hoveredMesh;
|
|
102
110
|
const currentFrame = this.frame;
|
|
103
111
|
if (currentFrame != null) {
|
|
104
|
-
this.hoveredMesh = this.triangleMeshes
|
|
112
|
+
this.hoveredMesh = this.triangleMeshes
|
|
113
|
+
.filter((m) => m.points.valid)
|
|
114
|
+
.find((m) => this.cursor != null
|
|
105
115
|
? testTriangleMesh(m, currentFrame, this.viewport, this.cursor)
|
|
106
116
|
: false);
|
|
107
117
|
if (this.hoveredMesh !== previousHovered) {
|
|
@@ -111,6 +121,14 @@ export class TransformWidget {
|
|
|
111
121
|
}
|
|
112
122
|
}
|
|
113
123
|
}
|
|
124
|
+
clearHovered() {
|
|
125
|
+
const previousHovered = this.hoveredMesh;
|
|
126
|
+
this.hoveredMesh = undefined;
|
|
127
|
+
if (this.hoveredMesh !== previousHovered) {
|
|
128
|
+
this.hoveredChanged.emit(this.hoveredMesh);
|
|
129
|
+
previousHovered.updateFillColor(previousHovered.initialFillColor);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
114
132
|
sortMeshes(frame, ...meshes) {
|
|
115
133
|
const compare = (m1, m2) => m1.points.shortestDistanceFrom(frame.scene.camera.position) -
|
|
116
134
|
m2.points.shortestDistanceFrom(frame.scene.camera.position);
|
|
@@ -130,7 +148,7 @@ export class TransformWidget {
|
|
|
130
148
|
else {
|
|
131
149
|
this.updateMeshes(position, frame);
|
|
132
150
|
}
|
|
133
|
-
this.bounds = computeMesh2dBounds(...this.triangleMeshes);
|
|
151
|
+
this.bounds = computeMesh2dBounds(this.viewport, ...this.triangleMeshes);
|
|
134
152
|
}
|
|
135
153
|
createMeshes(position, frame) {
|
|
136
154
|
this.reglCommand = regl({
|
|
@@ -165,7 +183,9 @@ export class TransformWidget {
|
|
|
165
183
|
}
|
|
166
184
|
}
|
|
167
185
|
computeTriangleSize(position, frame) {
|
|
168
|
-
return (
|
|
186
|
+
return ((frame.scene.camera.isOrthographic()
|
|
187
|
+
? frame.scene.camera.fovHeight
|
|
188
|
+
: Vector3.magnitude(Vector3.subtract(position, frame.scene.camera.position))) * DEFAULT_MESH_SCALAR);
|
|
169
189
|
}
|
|
170
190
|
}
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld2VyLXRyYW5zZm9ybS13aWRnZXQvd2lkZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUyxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEUsT0FBTyxFQUFxQixlQUFlLEVBQVksTUFBTSxrQkFBa0IsQ0FBQztBQUNoRixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxZQUFZLE1BQU0sWUFBWSxDQUFDO0FBRXRDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsR0FDcEIsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsUUFBUSxFQUNSLG1CQUFtQixFQUVuQixZQUFZLEdBQ2IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQVMsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFVbEQsTUFBTSxPQUFPLGVBQWU7RUFnQzFCLFlBQ1UsYUFBZ0MsRUFDeEMsU0FBcUIsRUFBRTtJQURmLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtJQXBCbEMsZUFBVSxHQUFlLEVBQUUsQ0FBQztJQUM1QixtQkFBYyxHQUFtQixFQUFFLENBQUM7SUFDcEMsbUJBQWMsR0FBVyxFQUFFLENBQUM7SUFTNUIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsRUFBb0IsQ0FBQztJQVkvRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXhFLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLE1BQU0s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
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld2VyLXRyYW5zZm9ybS13aWRnZXQvd2lkZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUyxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEUsT0FBTyxFQUFxQixlQUFlLEVBQVksTUFBTSxrQkFBa0IsQ0FBQztBQUNoRixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxZQUFZLE1BQU0sWUFBWSxDQUFDO0FBRXRDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsR0FDcEIsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsUUFBUSxFQUNSLG1CQUFtQixFQUVuQixZQUFZLEdBQ2IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQVMsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFVbEQscURBQXFEO0FBQ3JELDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsMEJBQTBCO0FBQzFCLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQztBQUV6QyxNQUFNLE9BQU8sZUFBZTtFQWdDMUIsWUFDVSxhQUFnQyxFQUN4QyxTQUFxQixFQUFFO0lBRGYsa0JBQWEsR0FBYixhQUFhLENBQW1CO0lBcEJsQyxlQUFVLEdBQWUsRUFBRSxDQUFDO0lBQzVCLG1CQUFjLEdBQW1CLEVBQUUsQ0FBQztJQUNwQyxtQkFBYyxHQUFXLEVBQUUsQ0FBQztJQVM1QixtQkFBYyxHQUFHLElBQUksZUFBZSxFQUFvQixDQUFDO0lBWS9ELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxR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
|
|
@@ -4,13 +4,17 @@ import { BoundingBox, Vector3 } from '@vertexvis/geometry';
|
|
|
4
4
|
*/
|
|
5
5
|
export function testTriangleMesh(mesh, frame, viewport, point) {
|
|
6
6
|
var _a;
|
|
7
|
-
const ray =
|
|
7
|
+
const ray = frame.scene.camera.isOrthographic()
|
|
8
|
+
? viewport.transformPointToOrthographicRay(point, frame.image, frame.scene.camera)
|
|
9
|
+
: viewport.transformPointToRay(point, frame.image, frame.scene.camera);
|
|
8
10
|
const edge1 = Vector3.subtract(mesh.points.worldRight, mesh.points.worldLeft);
|
|
9
11
|
const edge2 = Vector3.subtract(mesh.points.worldTip, mesh.points.worldLeft);
|
|
10
12
|
const epsilon = BoundingBox.epsilon((_a = BoundingBox.fromVectors([ray.direction, ray.origin, edge1, edge2])) !== null && _a !== void 0 ? _a : BoundingBox.create(edge1, edge2));
|
|
11
13
|
const p = Vector3.cross(ray.direction, edge2);
|
|
12
14
|
const det = Vector3.dot(edge1, p);
|
|
13
|
-
|
|
15
|
+
// This check causes a `det` of NaN or 0 to return false
|
|
16
|
+
// without needing to perform the subsequent calculations.
|
|
17
|
+
if (!(Math.abs(det) >= epsilon)) {
|
|
14
18
|
return false;
|
|
15
19
|
}
|
|
16
20
|
const t = Vector3.subtract(ray.origin, mesh.points.worldLeft);
|
|
@@ -24,6 +28,10 @@ export function testTriangleMesh(mesh, frame, viewport, point) {
|
|
|
24
28
|
return false;
|
|
25
29
|
}
|
|
26
30
|
const r = Vector3.dot(edge2, q) / det;
|
|
27
|
-
|
|
31
|
+
// Ignore the case where the computed hit position is negative
|
|
32
|
+
// if in orthographic to correctly return hit results when close
|
|
33
|
+
// to the camera.
|
|
34
|
+
// TODO: revisit with https://vertexvis.atlassian.net/browse/PLAT-1549
|
|
35
|
+
return !isNaN(r) && (r > 0 || frame.scene.camera.isOrthographic());
|
|
28
36
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGl0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNmb3Jtcy9oaXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQVMsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFLbEU7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLElBQWtCLEVBQ2xCLEtBQVksRUFDWixRQUFrQixFQUNsQixLQUFrQjs7RUFFbEIsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFO0lBQzdDLENBQUMsQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQ3RDLEtBQUssRUFDTCxLQUFLLENBQUMsS0FBSyxFQUNYLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNuQjtJQUNILENBQUMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztFQUV6RSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDOUUsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0VBRTVFLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQ2pDLE1BQUEsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsbUNBQ2hFLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUNuQyxDQUFDO0VBRUYsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0VBQzlDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0VBRWxDLHdEQUF3RDtFQUN4RCwwREFBMEQ7RUFDMUQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLENBQUMsRUFBRTtJQUMvQixPQUFPLEtBQUssQ0FBQztHQUNkO0VBRUQsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7RUFDOUQsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0VBRWxDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO0lBQ2xCLE9BQU8sS0FBSyxDQUFDO0dBQ2Q7RUFFRCxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztFQUNsQyxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0VBRTlDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtJQUN0QixPQUFPLEtBQUssQ0FBQztHQUNkO0VBRUQsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0VBRXRDLDhEQUE4RDtFQUM5RCxnRUFBZ0U7RUFDaEUsaUJBQWlCO0VBQ2pCLHNFQUFzRTtFQUN0RSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0FBQ3JFLENBQUMifQ==
|
|
@@ -84,17 +84,20 @@ export class TriangleMesh extends Mesh {
|
|
|
84
84
|
: Color.toHexString(outlineColor), typeof fillColor === 'string' ? fillColor : Color.toHexString(fillColor), shapeProps);
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
export function computeMesh2dBounds(...meshes) {
|
|
87
|
+
export function computeMesh2dBounds(viewport, ...meshes) {
|
|
88
88
|
let min = Point.create(Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
|
|
89
89
|
let max = Point.create();
|
|
90
90
|
meshes
|
|
91
91
|
.filter((m) => m.points.valid)
|
|
92
92
|
.map((m) => {
|
|
93
|
-
m.points
|
|
93
|
+
m.points
|
|
94
|
+
.toArray()
|
|
95
|
+
.map((pt) => viewport.transformNdcPointToViewport(pt))
|
|
96
|
+
.forEach((pt) => {
|
|
94
97
|
min = Point.create(Math.min(pt.x, min.x), Math.min(pt.y, min.y));
|
|
95
98
|
max = Point.create(Math.max(pt.x, max.x), Math.max(pt.y, max.y));
|
|
96
99
|
});
|
|
97
100
|
});
|
|
98
101
|
return Rectangle.fromPoints(min, max);
|
|
99
102
|
}
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNmb3Jtcy9tZXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUt6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFXM0MsTUFBTSxPQUFnQixJQUFJO0VBT3hCLFlBQ1ksV0FBd0IsRUFDM0IsVUFBa0IsRUFDbEIsTUFBUyxFQUNULFlBQW9CLEVBQ3BCLFNBQWlCLEVBQ2pCLGFBQWtDLEVBQUU7SUFMakMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7SUFDM0IsZUFBVSxHQUFWLFVBQVUsQ0FBUTtJQUNsQixXQUFNLEdBQU4sTUFBTSxDQUFHO0lBQ1QsaUJBQVksR0FBWixZQUFZLENBQVE7SUFDcEIsY0FBUyxHQUFULFNBQVMsQ0FBUTtJQUNqQixlQUFVLEdBQVYsVUFBVSxDQUEwQjtJQUUzQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7SUFFdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFlBQVksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FDdEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ3BDLENBQUM7SUFFRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO0lBRWxDLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLGtCQUN0QyxLQUFLLEVBQUUsYUFBYSxD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
|