@itwin/ecschema-rpcinterface-tests 4.1.0-dev.70 → 4.1.0-dev.72
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/lib/dist/{_05e2.bundled-tests.js → _0062.bundled-tests.js} +3 -3
- package/lib/dist/_0062.bundled-tests.js.map +1 -0
- package/lib/dist/bundled-tests.js +540 -393
- package/lib/dist/bundled-tests.js.map +1 -1
- package/lib/dist/{vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_4_node_modules_loaders_gl_draco_di-6aa0d4.bundled-tests.js → vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd.bundled-tests.js} +73 -73
- package/lib/dist/{vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_4_node_modules_loaders_gl_draco_di-6aa0d4.bundled-tests.js.map → vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd.bundled-tests.js.map} +1 -1
- package/package.json +15 -15
- package/lib/dist/_05e2.bundled-tests.js.map +0 -1
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
|
|
22
22
|
/***/ }),
|
|
23
23
|
|
|
24
|
-
/***/ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
25
|
-
|
|
26
|
-
!*** ../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
27
|
-
|
|
24
|
+
/***/ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.11/node_modules/@itwin/certa/lib/utils/CallbackUtils.js":
|
|
25
|
+
/*!*********************************************************************************************************************!*\
|
|
26
|
+
!*** ../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.11/node_modules/@itwin/certa/lib/utils/CallbackUtils.js ***!
|
|
27
|
+
\*********************************************************************************************************************/
|
|
28
28
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
29
29
|
|
|
30
30
|
"use strict";
|
|
@@ -2825,7 +2825,7 @@ exports.getAccessTokenFromBackend = exports.getTokenCallbackName = void 0;
|
|
|
2825
2825
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
2826
2826
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
2827
2827
|
*--------------------------------------------------------------------------------------------*/
|
|
2828
|
-
const CallbackUtils_1 = __webpack_require__(/*! @itwin/certa/lib/utils/CallbackUtils */ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
2828
|
+
const CallbackUtils_1 = __webpack_require__(/*! @itwin/certa/lib/utils/CallbackUtils */ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.11/node_modules/@itwin/certa/lib/utils/CallbackUtils.js");
|
|
2829
2829
|
// Shared by both the frontend and backend side of the tests
|
|
2830
2830
|
exports.getTokenCallbackName = "getToken";
|
|
2831
2831
|
async function getAccessTokenFromBackend(user, oidcConfig) {
|
|
@@ -18151,8 +18151,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
18151
18151
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
18152
18152
|
/* harmony export */ "default": () => (/* binding */ Browser)
|
|
18153
18153
|
/* harmony export */ });
|
|
18154
|
-
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
18155
|
-
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
18154
|
+
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
|
|
18155
|
+
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/createClass.js");
|
|
18156
18156
|
|
|
18157
18157
|
|
|
18158
18158
|
|
|
@@ -73168,17 +73168,25 @@ class AccuSnap {
|
|
|
73168
73168
|
}
|
|
73169
73169
|
}
|
|
73170
73170
|
}
|
|
73171
|
-
/**
|
|
73171
|
+
/** TentativeOrAccuSnap returns information about an active snap generated by either [[AccuSnap]] or [[TentativePoint]].
|
|
73172
|
+
* @public
|
|
73173
|
+
*/
|
|
73172
73174
|
class TentativeOrAccuSnap {
|
|
73175
|
+
/** @return true if AccuSnap is *hot* or TentativePoint is active and snapped to pickable geometry. */
|
|
73173
73176
|
static get isHot() { return _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.isHot || _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tentativePoint.isSnapped; }
|
|
73177
|
+
/** Get the current snap from either AccuSnap or TentativePoint.
|
|
73178
|
+
* @param checkIsHot true to only return the snap from AccuSnap when it is *hot*.
|
|
73179
|
+
* @return The current snap from AccuSnap, TentativePoint, or undefined.
|
|
73180
|
+
*/
|
|
73174
73181
|
static getCurrentSnap(checkIsHot = true) {
|
|
73175
|
-
// Checking for a hot AccuSnap
|
|
73182
|
+
// Checking for a hot AccuSnap before checking TentativePoint is done to support extended intersections...
|
|
73176
73183
|
if (_IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.isHot)
|
|
73177
73184
|
return _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.getCurrSnapDetail();
|
|
73178
73185
|
if (_IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tentativePoint.isSnapped)
|
|
73179
73186
|
return _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tentativePoint.currSnap;
|
|
73180
73187
|
return (checkIsHot ? undefined : _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.getCurrSnapDetail());
|
|
73181
73188
|
}
|
|
73189
|
+
/** @return The current snap location from AccuSnap or TentativePoint */
|
|
73182
73190
|
static getCurrentPoint() {
|
|
73183
73191
|
if (_IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.isHot) {
|
|
73184
73192
|
const snap = _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.getCurrSnapDetail();
|
|
@@ -73187,6 +73195,7 @@ class TentativeOrAccuSnap {
|
|
|
73187
73195
|
}
|
|
73188
73196
|
return _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tentativePoint.getPoint();
|
|
73189
73197
|
}
|
|
73198
|
+
/** @return The current snap Viewport from AccuSnap or TentativePoint */
|
|
73190
73199
|
static getCurrentView() {
|
|
73191
73200
|
const snap = _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.accuSnap.getCurrSnapDetail();
|
|
73192
73201
|
return snap ? snap.viewport : _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tentativePoint.viewport;
|
|
@@ -95297,7 +95306,7 @@ class GltfParser {
|
|
|
95297
95306
|
if (dracoMeshes.length === 0)
|
|
95298
95307
|
return;
|
|
95299
95308
|
try {
|
|
95300
|
-
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-
|
|
95309
|
+
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd"), __webpack_require__.e("_0062")]).then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.7/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
95301
95310
|
await Promise.all(dracoMeshes.map(async (x) => this.decodeDracoMesh(x, dracoLoader)));
|
|
95302
95311
|
}
|
|
95303
95312
|
catch (err) {
|
|
@@ -138411,7 +138420,7 @@ class GltfReader {
|
|
|
138411
138420
|
if (dracoMeshes.length === 0)
|
|
138412
138421
|
return;
|
|
138413
138422
|
try {
|
|
138414
|
-
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-
|
|
138423
|
+
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd"), __webpack_require__.e("_0062")]).then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.7/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
138415
138424
|
await Promise.all(dracoMeshes.map(async (x) => this.decodeDracoMesh(x, dracoLoader)));
|
|
138416
138425
|
}
|
|
138417
138426
|
catch (err) {
|
|
@@ -141289,7 +141298,7 @@ function readPnts(stream, dataOffset, pnts) {
|
|
|
141289
141298
|
}
|
|
141290
141299
|
async function decodeDracoPointCloud(buf) {
|
|
141291
141300
|
try {
|
|
141292
|
-
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-
|
|
141301
|
+
const dracoLoader = (await Promise.all(/*! import() */[__webpack_require__.e("vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd"), __webpack_require__.e("_0062")]).then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.7/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
141293
141302
|
const mesh = await dracoLoader.parse(buf, {});
|
|
141294
141303
|
if (mesh.topology !== "point-list")
|
|
141295
141304
|
return undefined;
|
|
@@ -175740,7 +175749,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
175740
175749
|
/**
|
|
175741
175750
|
* An AlternatingConvexClipTreeNode is a node in a tree structure in which
|
|
175742
175751
|
* <ul>
|
|
175743
|
-
* <li>Each node contains a ConvexClipPlaneSet
|
|
175752
|
+
* <li>Each node contains a ConvexClipPlaneSet.
|
|
175744
175753
|
* <li>Each node contains an array of children which are also AlternatingConvexClipTreeNode.
|
|
175745
175754
|
* <li>The rule for an in/out decision is that a point is IN the subtree under a node if
|
|
175746
175755
|
* <ul>
|
|
@@ -175786,9 +175795,7 @@ class AlternatingCCTreeNode {
|
|
|
175786
175795
|
builder.buildHullTree(result); // <-- Currently ALWAYS returns true
|
|
175787
175796
|
return result;
|
|
175788
175797
|
}
|
|
175789
|
-
/**
|
|
175790
|
-
* Build the outer convex hull will inlets as first level children
|
|
175791
|
-
*/
|
|
175798
|
+
/** Build the outer convex hull with inlets as first level children. */
|
|
175792
175799
|
static createHullAndInletsForPolygon(points, result) {
|
|
175793
175800
|
result = result ? result : new AlternatingCCTreeNode();
|
|
175794
175801
|
result.empty();
|
|
@@ -175803,14 +175810,15 @@ class AlternatingCCTreeNode {
|
|
|
175803
175810
|
}
|
|
175804
175811
|
/**
|
|
175805
175812
|
* Return an array with all the loops in the tree.
|
|
175806
|
-
* This
|
|
175813
|
+
* This loses the alternating structure of the tree, but the collection still matches well-formed polygons by
|
|
175814
|
+
* parity rules.
|
|
175807
175815
|
*/
|
|
175808
175816
|
extractLoops() {
|
|
175809
175817
|
const loops = [];
|
|
175810
175818
|
this.extractLoopsGo(loops);
|
|
175811
175819
|
return loops;
|
|
175812
175820
|
}
|
|
175813
|
-
/** Resets this AlternatingConvexClipTreeNode to a newly-created state */
|
|
175821
|
+
/** Resets this AlternatingConvexClipTreeNode to a newly-created state. */
|
|
175814
175822
|
empty() {
|
|
175815
175823
|
this.points.length = 0;
|
|
175816
175824
|
this.planes.planes.length = 0;
|
|
@@ -175837,7 +175845,7 @@ class AlternatingCCTreeNode {
|
|
|
175837
175845
|
const newNode = AlternatingCCTreeNode.createWithIndices(index0, numPoints);
|
|
175838
175846
|
this.children.push(newNode);
|
|
175839
175847
|
}
|
|
175840
|
-
/** Add a plane to the ConvexClipPlaneSet */
|
|
175848
|
+
/** Add a plane to the ConvexClipPlaneSet. */
|
|
175841
175849
|
addPlane(plane) {
|
|
175842
175850
|
this.planes.addPlaneToConvexSet(plane);
|
|
175843
175851
|
}
|
|
@@ -175852,7 +175860,8 @@ class AlternatingCCTreeNode {
|
|
|
175852
175860
|
}
|
|
175853
175861
|
return true;
|
|
175854
175862
|
}
|
|
175855
|
-
/**
|
|
175863
|
+
/**
|
|
175864
|
+
* Add an AlternatingConvexClipTreeNode as a child of this one -- i.e. a hole.
|
|
175856
175865
|
* * The child pointer is pushed directly to the tree -- not cloned.
|
|
175857
175866
|
*/
|
|
175858
175867
|
captureConvexClipPlaneSetAsVoid(child) {
|
|
@@ -175869,10 +175878,11 @@ class AlternatingCCTreeNode {
|
|
|
175869
175878
|
clipper.appendCurveCollectionClip(this, curves, insideIntervals, outsideIntervals);
|
|
175870
175879
|
}
|
|
175871
175880
|
/**
|
|
175872
|
-
*
|
|
175873
|
-
* @param
|
|
175874
|
-
*
|
|
175875
|
-
* @param outsideFragments Array to receive "outside" fragments.
|
|
175881
|
+
* @param xyz input polygon. This is not changed.
|
|
175882
|
+
* @param insideFragments Array to receive "inside" fragments. Each fragment is a GrowableXYZArray grabbed from
|
|
175883
|
+
* the cache. This is NOT cleared.
|
|
175884
|
+
* @param outsideFragments Array to receive "outside" fragments. Each fragment is a GrowableXYZArray grabbed
|
|
175885
|
+
* from the cache. This is NOT cleared.
|
|
175876
175886
|
* @param arrayCache cache for reusable GrowableXYZArray.
|
|
175877
175887
|
*/
|
|
175878
175888
|
appendPolygonClip(xyz, insideFragments, outsideFragments, arrayCache) {
|
|
@@ -175905,9 +175915,6 @@ class AlternatingCCTreeNode {
|
|
|
175905
175915
|
}
|
|
175906
175916
|
}
|
|
175907
175917
|
}
|
|
175908
|
-
/**
|
|
175909
|
-
*
|
|
175910
|
-
*/
|
|
175911
175918
|
depth() {
|
|
175912
175919
|
const myDepth = 1;
|
|
175913
175920
|
let maxChildDepth = 0;
|
|
@@ -175938,9 +175945,15 @@ class AlternatingCCTreeBuilder {
|
|
|
175938
175945
|
result._points.pop();
|
|
175939
175946
|
return result;
|
|
175940
175947
|
}
|
|
175941
|
-
get period() {
|
|
175942
|
-
|
|
175943
|
-
|
|
175948
|
+
get period() {
|
|
175949
|
+
return this._points.length;
|
|
175950
|
+
}
|
|
175951
|
+
indexAfter(i) {
|
|
175952
|
+
return (i + 1) % this._points.length;
|
|
175953
|
+
}
|
|
175954
|
+
indexBefore(i) {
|
|
175955
|
+
return (i + this._points.length - 1) % this._points.length;
|
|
175956
|
+
}
|
|
175944
175957
|
pushIndex(primaryPointIndex) {
|
|
175945
175958
|
this._stack.push(primaryPointIndex);
|
|
175946
175959
|
}
|
|
@@ -176174,8 +176187,8 @@ class AlternatingCCTreeNodeCurveClipper {
|
|
|
176174
176187
|
return false;
|
|
176175
176188
|
}
|
|
176176
176189
|
/**
|
|
176177
|
-
* Run one level of recursion. On return, the stack is one level deeper than at entry and the new top of the stack
|
|
176178
|
-
* (expensive -- must clone items of arrays during "swaps")
|
|
176190
|
+
* Run one level of recursion. On return, the stack is one level deeper than at entry and the new top of the stack
|
|
176191
|
+
* has clip for this node (expensive -- must clone items of arrays during "swaps").
|
|
176179
176192
|
*/
|
|
176180
176193
|
recurse(node) {
|
|
176181
176194
|
this.pushEmptySegmentFrame();
|
|
@@ -176265,25 +176278,26 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
176265
176278
|
|
|
176266
176279
|
|
|
176267
176280
|
|
|
176268
|
-
/**
|
|
176281
|
+
/**
|
|
176282
|
+
* A BooleanClipFactory is a factory to create objects that implement interior nodes of a tree of boolean clip operations.
|
|
176269
176283
|
* * These methods create specific clip tree types:
|
|
176270
176284
|
* * Union
|
|
176271
176285
|
* * Intersection
|
|
176272
176286
|
* * Parity
|
|
176273
176287
|
* * Difference
|
|
176274
|
-
* * Each construction has a `keepInside` flag that optionally negates the initial result of the parity, intersection,
|
|
176275
|
-
*
|
|
176276
|
-
* * if `keepInside ===
|
|
176277
|
-
*
|
|
176278
|
-
*
|
|
176288
|
+
* * Each construction has a `keepInside` flag that optionally negates the initial result of the parity, intersection,
|
|
176289
|
+
* parity, or difference:
|
|
176290
|
+
* * if `keepInside === true`, accept the "inside" of the initial result.
|
|
176291
|
+
* * if `keepInside === false`, accept the "outside" of the initial result.
|
|
176292
|
+
* * These methods create various other specialized clippers.
|
|
176279
176293
|
* @public
|
|
176280
176294
|
*/
|
|
176281
176295
|
class BooleanClipFactory {
|
|
176282
176296
|
/**
|
|
176283
|
-
* Create a boolean clipper which performs a union over its children
|
|
176284
|
-
* * if `keepInside === true`, accept the "inside" of the union result
|
|
176285
|
-
* * if `keepInside === false`, accept the "outside" of the union result
|
|
176286
|
-
* @param clippers clip objects to capture
|
|
176297
|
+
* Create a boolean clipper which performs a union over its children.
|
|
176298
|
+
* * if `keepInside === true`, accept the "inside" of the union result.
|
|
176299
|
+
* * if `keepInside === false`, accept the "outside" of the union result.
|
|
176300
|
+
* @param clippers clip objects to capture.
|
|
176287
176301
|
* @param keepInside flag to select results inside or outside the clippers.
|
|
176288
176302
|
*/
|
|
176289
176303
|
static createCaptureUnion(clippers, keepInside) {
|
|
@@ -176292,10 +176306,10 @@ class BooleanClipFactory {
|
|
|
176292
176306
|
return result;
|
|
176293
176307
|
}
|
|
176294
176308
|
/**
|
|
176295
|
-
* Create a boolean clipper which performs an intersection over its children
|
|
176296
|
-
* * if `keepInside === true`, accept the "inside" of the intersection result
|
|
176297
|
-
* * if `keepInside === false`, accept the "outside" of the intersection result
|
|
176298
|
-
* @param clippers clip objects to capture
|
|
176309
|
+
* Create a boolean clipper which performs an intersection over its children.
|
|
176310
|
+
* * if `keepInside === true`, accept the "inside" of the intersection result.
|
|
176311
|
+
* * if `keepInside === false`, accept the "outside" of the intersection result.
|
|
176312
|
+
* @param clippers clip objects to capture.
|
|
176299
176313
|
* @param keepInside flag to select results inside or outside the clippers.
|
|
176300
176314
|
*/
|
|
176301
176315
|
static createCaptureIntersection(clippers, keepInside) {
|
|
@@ -176304,10 +176318,10 @@ class BooleanClipFactory {
|
|
|
176304
176318
|
return result;
|
|
176305
176319
|
}
|
|
176306
176320
|
/**
|
|
176307
|
-
* Create a boolean clipper which performs a parity over its children
|
|
176308
|
-
* * if `keepInside === true`, accept the "inside" of the parity result
|
|
176309
|
-
* * if `keepInside === false`, accept the "outside" of the parity result
|
|
176310
|
-
* @param clippers clip objects to capture
|
|
176321
|
+
* Create a boolean clipper which performs a parity over its children.
|
|
176322
|
+
* * if `keepInside === true`, accept the "inside" of the parity result.
|
|
176323
|
+
* * if `keepInside === false`, accept the "outside" of the parity result.
|
|
176324
|
+
* @param clippers clip objects to capture.
|
|
176311
176325
|
* @param keepInside flag to select results inside or outside the clippers.
|
|
176312
176326
|
*/
|
|
176313
176327
|
static createCaptureParity(clippers, keepInside) {
|
|
@@ -176316,10 +176330,11 @@ class BooleanClipFactory {
|
|
|
176316
176330
|
return result;
|
|
176317
176331
|
}
|
|
176318
176332
|
/**
|
|
176319
|
-
* Create a boolean clipper which performs a difference operation for points "inside `primaryClipper`" and
|
|
176320
|
-
*
|
|
176321
|
-
* * if `keepInside ===
|
|
176322
|
-
*
|
|
176333
|
+
* Create a boolean clipper which performs a difference operation for points "inside `primaryClipper`" and
|
|
176334
|
+
* "outside `excludedClipper`".
|
|
176335
|
+
* * if `keepInside === true`, accept the "inside" of the difference.
|
|
176336
|
+
* * if `keepInside === false`, accept the "outside" of the difference.
|
|
176337
|
+
* @param primaryClipper any clip object whose output is treated as positive.
|
|
176323
176338
|
* @param excludeClip any clipper whose output is treated as negative.
|
|
176324
176339
|
* @param keepInside flag to select results inside or outside the initial `primary minus excludeClipper` clippers.
|
|
176325
176340
|
*/
|
|
@@ -176328,19 +176343,17 @@ class BooleanClipFactory {
|
|
|
176328
176343
|
return this.createCaptureIntersection([primaryClipper, mask], keepInside);
|
|
176329
176344
|
}
|
|
176330
176345
|
/**
|
|
176331
|
-
* Create a boolean clipper which performs the reverse of that of `primaryClipper
|
|
176332
|
-
* @param primaryClipper clip objects to capture
|
|
176346
|
+
* Create a boolean clipper which performs the reverse of that of `primaryClipper`.
|
|
176347
|
+
* @param primaryClipper clip objects to capture.
|
|
176333
176348
|
* @param keepInside flag to select results inside or outside the clippers.
|
|
176334
176349
|
*/
|
|
176335
176350
|
static createCaptureClipOutside(primaryClipper) {
|
|
176336
176351
|
return this.createCaptureUnion([primaryClipper], false);
|
|
176337
176352
|
}
|
|
176338
176353
|
/**
|
|
176339
|
-
*
|
|
176354
|
+
* Convert `source` to an array of clipper objects.
|
|
176340
176355
|
* * ANY TYPE OF Clipper is accepted.
|
|
176341
176356
|
* * REMARK: This is normally called only from the primary public method `parseToClipper`.
|
|
176342
|
-
* @param source
|
|
176343
|
-
* @param internal
|
|
176344
176357
|
*/
|
|
176345
176358
|
static parseToClipperArray(source) {
|
|
176346
176359
|
if (Array.isArray(source)) {
|
|
@@ -176364,7 +176377,7 @@ class BooleanClipFactory {
|
|
|
176364
176377
|
return undefined;
|
|
176365
176378
|
}
|
|
176366
176379
|
/**
|
|
176367
|
-
*
|
|
176380
|
+
* Look for content that represents a clipper.
|
|
176368
176381
|
* * Possible outputs are
|
|
176369
176382
|
* * `ClipPlane`
|
|
176370
176383
|
* * `ConvexClipPlaneSet`
|
|
@@ -176524,7 +176537,7 @@ class BooleanClipNode {
|
|
|
176524
176537
|
this._clippers.push(child);
|
|
176525
176538
|
}
|
|
176526
176539
|
}
|
|
176527
|
-
/**
|
|
176540
|
+
/** Toggle the "keepInside" behavior. Return the prior value. */
|
|
176528
176541
|
toggleResult() {
|
|
176529
176542
|
return this.selectResult(!this._keepInside);
|
|
176530
176543
|
}
|
|
@@ -176535,7 +176548,7 @@ class BooleanClipNode {
|
|
|
176535
176548
|
return s;
|
|
176536
176549
|
}
|
|
176537
176550
|
/**
|
|
176538
|
-
*
|
|
176551
|
+
* Conditionally (if a1 > a0 strictly) call announce (a0, a1).
|
|
176539
176552
|
* * Return 0 if not called, 1 if called.
|
|
176540
176553
|
*/
|
|
176541
176554
|
testedAnnounceNN(a0, a1, announce) {
|
|
@@ -176547,7 +176560,7 @@ class BooleanClipNode {
|
|
|
176547
176560
|
return 0;
|
|
176548
176561
|
}
|
|
176549
176562
|
/**
|
|
176550
|
-
*
|
|
176563
|
+
* Conditionally (if a1 > a0 strictly) call announce (a0, a1, cp).
|
|
176551
176564
|
* * Return 0 if not called, 1 if called.
|
|
176552
176565
|
*/
|
|
176553
176566
|
testedAnnounceNNC(a0, a1, cp, announce) {
|
|
@@ -176565,8 +176578,8 @@ class BooleanClipNode {
|
|
|
176565
176578
|
this._intervalsB = q;
|
|
176566
176579
|
}
|
|
176567
176580
|
/**
|
|
176568
|
-
*
|
|
176569
|
-
* *
|
|
176581
|
+
* Announce all "outside intervals" --not masked by intervals
|
|
176582
|
+
* * Return true if any intervals announced.
|
|
176570
176583
|
*/
|
|
176571
176584
|
announcePartsNN(keepInside, intervals, f0, f1, announce) {
|
|
176572
176585
|
let numAnnounce = 0;
|
|
@@ -176587,8 +176600,8 @@ class BooleanClipNode {
|
|
|
176587
176600
|
return numAnnounce > 0;
|
|
176588
176601
|
}
|
|
176589
176602
|
/**
|
|
176590
|
-
*
|
|
176591
|
-
* *
|
|
176603
|
+
* Announce all "outside intervals" --not masked by intervals
|
|
176604
|
+
* * Return true if any intervals announced.
|
|
176592
176605
|
*/
|
|
176593
176606
|
announcePartsNNC(keepInside, intervals, f0, f1, cp, announce) {
|
|
176594
176607
|
let numAnnounce = 0;
|
|
@@ -176613,7 +176626,7 @@ class BooleanClipNode {
|
|
|
176613
176626
|
const q = this.isPointOnOrInsideChildren(point);
|
|
176614
176627
|
return this._keepInside ? q : !q;
|
|
176615
176628
|
}
|
|
176616
|
-
/** Announce "in" portions of a line segment.
|
|
176629
|
+
/** Announce "in" portions of a line segment. See `Clipper.announceClippedSegmentIntervals` */
|
|
176617
176630
|
announceClippedSegmentIntervals(f0, f1, pointA, pointB, announce) {
|
|
176618
176631
|
this._intervalsA.length = 0;
|
|
176619
176632
|
const announceIntervalB = (a0, a1) => {
|
|
@@ -176671,7 +176684,7 @@ class BooleanClipNodeUnion extends BooleanClipNode {
|
|
|
176671
176684
|
constructor(keepInside) {
|
|
176672
176685
|
super(keepInside);
|
|
176673
176686
|
}
|
|
176674
|
-
/**
|
|
176687
|
+
/** Return true if inside any child clipper */
|
|
176675
176688
|
isPointOnOrInsideChildren(point) {
|
|
176676
176689
|
for (const clipper of this._clippers) {
|
|
176677
176690
|
if (clipper.isPointOnOrInside(point))
|
|
@@ -176695,7 +176708,7 @@ class BooleanClipNodeParity extends BooleanClipNode {
|
|
|
176695
176708
|
constructor(keepInside) {
|
|
176696
176709
|
super(keepInside);
|
|
176697
176710
|
}
|
|
176698
|
-
/**
|
|
176711
|
+
/** Return true if inside an odd number of clippers child clipper */
|
|
176699
176712
|
isPointOnOrInsideChildren(point) {
|
|
176700
176713
|
let q = false;
|
|
176701
176714
|
for (const clipper of this._clippers) {
|
|
@@ -176720,7 +176733,7 @@ class BooleanClipNodeIntersection extends BooleanClipNode {
|
|
|
176720
176733
|
constructor(keepInside) {
|
|
176721
176734
|
super(keepInside);
|
|
176722
176735
|
}
|
|
176723
|
-
/**
|
|
176736
|
+
/** Return false if outside of any child clipper */
|
|
176724
176737
|
isPointOnOrInsideChildren(point) {
|
|
176725
176738
|
for (const clipper of this._clippers) {
|
|
176726
176739
|
if (!clipper.isPointOnOrInside(point))
|
|
@@ -176780,17 +176793,18 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
176780
176793
|
|
|
176781
176794
|
|
|
176782
176795
|
|
|
176783
|
-
/**
|
|
176796
|
+
/**
|
|
176797
|
+
* A ClipPlane is a single plane represented as
|
|
176784
176798
|
* * An inward unit normal (u,v,w)
|
|
176785
176799
|
* * A signedDistance
|
|
176786
176800
|
*
|
|
176787
176801
|
* Hence
|
|
176788
|
-
* * The halfspace function evaluation for "point"
|
|
176789
|
-
* * POSITIVE values of the halfspace function are "inside"
|
|
176790
|
-
* * ZERO value of the halfspace function is "on"
|
|
176791
|
-
* * NEGATIVE value of the halfspace function is "outside"
|
|
176792
|
-
* * A representative point on the plane is (signedDistance*u, signedDistance * v, signedDistance *w)
|
|
176793
|
-
* * Given a point and inward normal
|
|
176802
|
+
* * The halfspace function evaluation for "point" (x,y,z) is `(x,y,z) DOT (u,v,w) - signedDistance`.
|
|
176803
|
+
* * POSITIVE values of the halfspace function are "inside".
|
|
176804
|
+
* * ZERO value of the halfspace function is "on".
|
|
176805
|
+
* * NEGATIVE value of the halfspace function is "outside".
|
|
176806
|
+
* * A representative point on the plane is (signedDistance * u, signedDistance * v, signedDistance * w).
|
|
176807
|
+
* * Given a point on the plane and the inward normal of the plane, `signedDistance = point DOT normal`.
|
|
176794
176808
|
* @public
|
|
176795
176809
|
*/
|
|
176796
176810
|
class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d {
|
|
@@ -176817,12 +176831,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176817
176831
|
&& this._interior === other._interior
|
|
176818
176832
|
&& this._invisible === other._invisible;
|
|
176819
176833
|
}
|
|
176820
|
-
/**
|
|
176834
|
+
/** Return a cloned plane */
|
|
176821
176835
|
clone() {
|
|
176822
176836
|
const result = new ClipPlane(this._inwardNormal.clone(), this._distanceFromOrigin, this._invisible, this._interior);
|
|
176823
176837
|
return result;
|
|
176824
176838
|
}
|
|
176825
|
-
/**
|
|
176839
|
+
/** Return a cloned plane with coordinate data negated. */
|
|
176826
176840
|
cloneNegated() {
|
|
176827
176841
|
const plane = new ClipPlane(this._inwardNormal.clone(), this._distanceFromOrigin, this._invisible, this._interior);
|
|
176828
176842
|
plane.negateInPlace();
|
|
@@ -176841,7 +176855,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176841
176855
|
return new ClipPlane(plane.getNormalRef().clone(), distance, invisible, interior);
|
|
176842
176856
|
}
|
|
176843
176857
|
/**
|
|
176844
|
-
*
|
|
176858
|
+
* Create a ClipPlane with direct normal and signedDistance.
|
|
176845
176859
|
* * The vector is normalized for storage.
|
|
176846
176860
|
*/
|
|
176847
176861
|
static createNormalAndDistance(normal, distance, invisible = false, interior = false, result) {
|
|
@@ -176857,10 +176871,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176857
176871
|
}
|
|
176858
176872
|
return undefined;
|
|
176859
176873
|
}
|
|
176860
|
-
/**
|
|
176861
|
-
*
|
|
176874
|
+
/**
|
|
176875
|
+
* Create a ClipPlane
|
|
176876
|
+
* * "normal" is the inward normal of the plane (it is internally normalized).
|
|
176862
176877
|
* * "point" is any point of the plane.
|
|
176863
|
-
* * The stored distance for the plane is the dot product of the point with the normal (i.e. treat the point's xyz as
|
|
176878
|
+
* * The stored distance for the plane is the dot product of the point with the normal (i.e. treat the point's xyz as
|
|
176879
|
+
* a vector from the origin.)
|
|
176864
176880
|
*/
|
|
176865
176881
|
static createNormalAndPoint(normal, point, invisible = false, interior = false, result) {
|
|
176866
176882
|
const normalized = normal.normalize();
|
|
@@ -176876,11 +176892,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176876
176892
|
}
|
|
176877
176893
|
return undefined;
|
|
176878
176894
|
}
|
|
176879
|
-
/**
|
|
176895
|
+
/**
|
|
176896
|
+
* Create a clip plane
|
|
176880
176897
|
* @param origin any point on the plane.
|
|
176881
176898
|
* @param vectorA any vector in the plane
|
|
176882
176899
|
* @param vectorB any vector in the plane
|
|
176883
|
-
*
|
|
176900
|
+
* Returns undefined if the vectors are not independent.
|
|
176884
176901
|
* * The stored inward normal is vectorB.crossProduct(vectorA).
|
|
176885
176902
|
* * That is, the vectors are considered as a right-handed pair when viewed from the outside.
|
|
176886
176903
|
*/
|
|
@@ -176888,11 +176905,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176888
176905
|
const normalized = vectorB.crossProduct(vectorA);
|
|
176889
176906
|
return this.createNormalAndPoint(normalized, origin, invisible, interior, result);
|
|
176890
176907
|
}
|
|
176891
|
-
/**
|
|
176892
|
-
*
|
|
176893
|
-
* *
|
|
176894
|
-
* * "point" is any point of the plane.
|
|
176895
|
-
* * The stored distance for the plane is the dot product of the point with the normal (i.e. treat the point's xyz
|
|
176908
|
+
/**
|
|
176909
|
+
* Create a ClipPlane
|
|
176910
|
+
* * "normal" (normalX, normalY, normalZ) is the inward normal of the plane.
|
|
176911
|
+
* * "point" (originX,originY,originZ) is any point of the plane.
|
|
176912
|
+
* * The stored distance for the plane is the dot product of the point with the normal (i.e. treat the point's xyz
|
|
176913
|
+
* as a vector from the origin.)
|
|
176896
176914
|
*/
|
|
176897
176915
|
static createNormalAndPointXYZXYZ(normalX, normalY, normalZ, originX, originY, originZ, invisible = false, interior = false, result) {
|
|
176898
176916
|
const q = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.hypotenuseXYZ(normalX, normalY, normalZ);
|
|
@@ -176911,7 +176929,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176911
176929
|
return undefined;
|
|
176912
176930
|
}
|
|
176913
176931
|
/**
|
|
176914
|
-
*
|
|
176932
|
+
* Return a json object of the form
|
|
176915
176933
|
* `{"normal":[u,v,w],"dist":signedDistanceValue,"interior":true,"invisible":true}`
|
|
176916
176934
|
*/
|
|
176917
176935
|
toJSON() {
|
|
@@ -176925,7 +176943,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176925
176943
|
props.invisible = true;
|
|
176926
176944
|
return props;
|
|
176927
176945
|
}
|
|
176928
|
-
/**
|
|
176946
|
+
/** Parse json object to ClipPlane instance */
|
|
176929
176947
|
static fromJSON(json, result) {
|
|
176930
176948
|
if (json && json.normal && undefined !== json.dist && Number.isFinite(json.dist))
|
|
176931
176949
|
return ClipPlane.createNormalAndDistance(_geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.fromJSON(json.normal), json.dist, !!json.invisible, !!json.interior);
|
|
@@ -176936,22 +176954,22 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176936
176954
|
this._invisible = invisible;
|
|
176937
176955
|
this._interior = interior;
|
|
176938
176956
|
}
|
|
176939
|
-
/**
|
|
176940
|
-
|
|
176941
|
-
|
|
176942
|
-
|
|
176943
|
-
/**
|
|
176944
|
-
|
|
176945
|
-
|
|
176946
|
-
|
|
176947
|
-
/**
|
|
176948
|
-
|
|
176949
|
-
|
|
176950
|
-
|
|
176951
|
-
/**
|
|
176952
|
-
|
|
176953
|
-
|
|
176954
|
-
|
|
176957
|
+
/** Return the stored distanceFromOrigin property. */
|
|
176958
|
+
get distance() {
|
|
176959
|
+
return this._distanceFromOrigin;
|
|
176960
|
+
}
|
|
176961
|
+
/** * Return the stored inward normal property. */
|
|
176962
|
+
get inwardNormalRef() {
|
|
176963
|
+
return this._inwardNormal;
|
|
176964
|
+
}
|
|
176965
|
+
/** Return the "interior" property bit */
|
|
176966
|
+
get interior() {
|
|
176967
|
+
return this._interior;
|
|
176968
|
+
}
|
|
176969
|
+
/** Return the "invisible" property bit. */
|
|
176970
|
+
get invisible() {
|
|
176971
|
+
return this._invisible;
|
|
176972
|
+
}
|
|
176955
176973
|
/**
|
|
176956
176974
|
* Create a plane defined by two points, an up vector, and a tilt angle relative to the up vector.
|
|
176957
176975
|
* @param point0 start point of the edge
|
|
@@ -176975,9 +176993,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176975
176993
|
}
|
|
176976
176994
|
return undefined;
|
|
176977
176995
|
}
|
|
176978
|
-
/**
|
|
176979
|
-
* Create a plane perpendicular to the edge between the xy parts of point0 and point1
|
|
176980
|
-
*/
|
|
176996
|
+
/** Create a plane perpendicular to the edge between the xy parts of point0 and point1. */
|
|
176981
176997
|
static createEdgeXY(point0, point1, result) {
|
|
176982
176998
|
const normal = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.create(point0.y - point1.y, point1.x - point0.x);
|
|
176983
176999
|
if (normal.normalizeInPlace())
|
|
@@ -176991,7 +177007,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
176991
177007
|
*/
|
|
176992
177008
|
getPlane3d() {
|
|
176993
177009
|
const d = this._distanceFromOrigin;
|
|
176994
|
-
//
|
|
177010
|
+
// normal should be normalized, will not return undefined
|
|
176995
177011
|
return _geometry3d_Plane3dByOriginAndUnitNormal__WEBPACK_IMPORTED_MODULE_3__.Plane3dByOriginAndUnitNormal.create(_geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Point3d.create(this._inwardNormal.x * d, this._inwardNormal.y * d, this._inwardNormal.z * d), this._inwardNormal);
|
|
176996
177012
|
}
|
|
176997
177013
|
/**
|
|
@@ -177005,8 +177021,9 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177005
177021
|
/**
|
|
177006
177022
|
* Set the plane from DPoint4d style plane.
|
|
177007
177023
|
* * The saved plane has its direction normalized.
|
|
177008
|
-
* * This preserves the plane itself as a zero set but make plane evaluations act as true distances (even if the
|
|
177009
|
-
*
|
|
177024
|
+
* * This preserves the plane itself as a zero set but make plane evaluations act as true distances (even if the
|
|
177025
|
+
* plane coefficients are scaled otherwise).
|
|
177026
|
+
* @param plane the DPoint4d style plane.
|
|
177010
177027
|
*/
|
|
177011
177028
|
setPlane4d(plane) {
|
|
177012
177029
|
const a = Math.sqrt(plane.x * plane.x + plane.y * plane.y + plane.z * plane.z);
|
|
@@ -177017,49 +177034,63 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177017
177034
|
this._distanceFromOrigin = -r * plane.w;
|
|
177018
177035
|
}
|
|
177019
177036
|
/**
|
|
177020
|
-
* Evaluate the altitude in weighted space, i.e. (dot product with inward normal) minus distance, with point.w
|
|
177021
|
-
*
|
|
177037
|
+
* Evaluate the altitude in weighted space, i.e. (dot product with inward normal) minus distance, with point.w
|
|
177038
|
+
* scale applied to distance.
|
|
177039
|
+
* @param point space point to test.
|
|
177022
177040
|
*/
|
|
177023
177041
|
weightedAltitude(point) {
|
|
177024
|
-
return point.x * this._inwardNormal.x
|
|
177042
|
+
return point.x * this._inwardNormal.x
|
|
177043
|
+
+ point.y * this._inwardNormal.y
|
|
177044
|
+
+ point.z * this._inwardNormal.z
|
|
177045
|
+
- point.w * this._distanceFromOrigin;
|
|
177025
177046
|
}
|
|
177026
177047
|
/**
|
|
177027
|
-
* Evaluate the distance from the plane to a point in space, i.e. (dot product with inward normal) minus distance
|
|
177028
|
-
* @param point space point to test
|
|
177048
|
+
* Evaluate the distance from the plane to a point in space, i.e. (dot product with inward normal) minus distance.
|
|
177049
|
+
* @param point space point to test.
|
|
177029
177050
|
*/
|
|
177030
177051
|
altitude(point) {
|
|
177031
|
-
return point.x * this._inwardNormal.x
|
|
177052
|
+
return point.x * this._inwardNormal.x
|
|
177053
|
+
+ point.y * this._inwardNormal.y
|
|
177054
|
+
+ point.z * this._inwardNormal.z
|
|
177055
|
+
- this._distanceFromOrigin;
|
|
177032
177056
|
}
|
|
177033
177057
|
/**
|
|
177034
|
-
* Evaluate the distance from the plane to a point in space with point given as x,y,z, i.e. (dot product with
|
|
177035
|
-
*
|
|
177058
|
+
* Evaluate the distance from the plane to a point in space with point given as x,y,z, i.e. (dot product with
|
|
177059
|
+
* inward normal) minus distance.
|
|
177060
|
+
* @param point space point to test.
|
|
177036
177061
|
*/
|
|
177037
177062
|
altitudeXYZ(x, y, z) {
|
|
177038
|
-
return x * this._inwardNormal.x
|
|
177063
|
+
return x * this._inwardNormal.x
|
|
177064
|
+
+ y * this._inwardNormal.y
|
|
177065
|
+
+ z * this._inwardNormal.z
|
|
177066
|
+
- this._distanceFromOrigin;
|
|
177039
177067
|
}
|
|
177040
|
-
/**
|
|
177041
|
-
|
|
177042
|
-
|
|
177043
|
-
|
|
177044
|
-
/**
|
|
177045
|
-
|
|
177046
|
-
|
|
177047
|
-
|
|
177048
|
-
/**
|
|
177049
|
-
|
|
177050
|
-
|
|
177051
|
-
|
|
177052
|
-
/** Return the dot product of the plane normal with the vector (NOT using the plane's distanceFromOrigin).
|
|
177053
|
-
*/
|
|
177068
|
+
/** Return the x component of the normal used to evaluate altitude. */
|
|
177069
|
+
normalX() {
|
|
177070
|
+
return this._inwardNormal.x;
|
|
177071
|
+
}
|
|
177072
|
+
/** Return the x component of the normal used to evaluate altitude. */
|
|
177073
|
+
normalY() {
|
|
177074
|
+
return this._inwardNormal.y;
|
|
177075
|
+
}
|
|
177076
|
+
/** Return the z component of the normal used to evaluate altitude. */
|
|
177077
|
+
normalZ() {
|
|
177078
|
+
return this._inwardNormal.z;
|
|
177079
|
+
}
|
|
177080
|
+
/** Return the dot product of the plane normal with the vector (NOT using the plane's distanceFromOrigin). */
|
|
177054
177081
|
velocity(vector) {
|
|
177055
177082
|
return vector.x * this._inwardNormal.x + vector.y * this._inwardNormal.y + vector.z * this._inwardNormal.z;
|
|
177056
177083
|
}
|
|
177057
|
-
/**
|
|
177084
|
+
/**
|
|
177085
|
+
* Return the dot product of the plane normal with the x,yz, vector components (NOT using the plane's
|
|
177086
|
+
* distanceFromOrigin).
|
|
177058
177087
|
*/
|
|
177059
177088
|
velocityXYZ(x, y, z) {
|
|
177060
177089
|
return x * this._inwardNormal.x + y * this._inwardNormal.y + z * this._inwardNormal.z;
|
|
177061
177090
|
}
|
|
177062
|
-
/**
|
|
177091
|
+
/**
|
|
177092
|
+
* Return the dot product of the plane normal with the point (treating the point xyz as a vector, and NOT
|
|
177093
|
+
* using the plane's distanceFromOrigin).
|
|
177063
177094
|
*/
|
|
177064
177095
|
dotProductPlaneNormalPoint(point) {
|
|
177065
177096
|
return point.x * this._inwardNormal.x + point.y * this._inwardNormal.y + point.z * this._inwardNormal.z;
|
|
@@ -177108,7 +177139,8 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177108
177139
|
const gamma = this.velocity(arcVectors.vector90);
|
|
177109
177140
|
_numerics_Polynomials__WEBPACK_IMPORTED_MODULE_5__.AnalyticRoots.appendImplicitLineUnitCircleIntersections(alpha, beta, gamma, undefined, undefined, intersectionRadians);
|
|
177110
177141
|
}
|
|
177111
|
-
/**
|
|
177142
|
+
/**
|
|
177143
|
+
* Announce fractional intervals of arc clip.
|
|
177112
177144
|
* * Each call to `announce(fraction0, fraction1, arc)` announces one interval that is inside the clip plane.
|
|
177113
177145
|
*/
|
|
177114
177146
|
announceClippedArcIntervals(arc, announce) {
|
|
@@ -177119,7 +177151,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177119
177151
|
return _ClipUtils__WEBPACK_IMPORTED_MODULE_6__.ClipUtilities.selectIntervals01(arc, breaks, this, announce);
|
|
177120
177152
|
}
|
|
177121
177153
|
/**
|
|
177122
|
-
*
|
|
177154
|
+
* Compute intersection of (unbounded) segment with the plane.
|
|
177123
177155
|
* * If the ends are on the same side of the plane, return undefined.
|
|
177124
177156
|
* * If the intersection is an endpoint or interior to the segment return the fraction.
|
|
177125
177157
|
* * If both ends are on, return undefined.
|
|
@@ -177134,7 +177166,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177134
177166
|
}
|
|
177135
177167
|
return -h0 / (h1 - h0);
|
|
177136
177168
|
}
|
|
177137
|
-
/** Apply transform to the origin.
|
|
177169
|
+
/** Apply transform to the origin. Apply inverse transpose of the matrix part to th normal vector. */
|
|
177138
177170
|
transformInPlace(transform) {
|
|
177139
177171
|
const plane = this.getPlane3d();
|
|
177140
177172
|
const matrix = transform.matrix;
|
|
@@ -177152,11 +177184,11 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177152
177184
|
this._distanceFromOrigin = this._inwardNormal.dotProduct(plane.getOriginRef());
|
|
177153
177185
|
return true;
|
|
177154
177186
|
}
|
|
177155
|
-
/** Set the invisible flag.
|
|
177187
|
+
/** Set the invisible flag. Interpretation of this is up to the use code algorithms. */
|
|
177156
177188
|
setInvisible(invisible) {
|
|
177157
177189
|
this._invisible = invisible;
|
|
177158
177190
|
}
|
|
177159
|
-
/**
|
|
177191
|
+
/** Reverse the sign of all coefficients, so outside and inside reverse */
|
|
177160
177192
|
negateInPlace() {
|
|
177161
177193
|
this._inwardNormal = this._inwardNormal.negate();
|
|
177162
177194
|
this._distanceFromOrigin = -this._distanceFromOrigin;
|
|
@@ -177184,11 +177216,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177184
177216
|
* @param matrix matrix to apply.
|
|
177185
177217
|
* @param invert if true, use in verse of the matrix.
|
|
177186
177218
|
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter)
|
|
177187
|
-
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect on the plane is the inverse transpose of matrixA
|
|
177188
|
-
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
177189
|
-
* * Both params default to true to get the full effect of transforming space.
|
|
177190
177219
|
* @param matrix matrix to apply
|
|
177191
177220
|
* @return false if unable to invert
|
|
177221
|
+
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding
|
|
177222
|
+
* effect on the plane is the inverse transpose of matrixA
|
|
177223
|
+
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
177224
|
+
* * Both params default to true to get the full effect of transforming space.
|
|
177192
177225
|
*/
|
|
177193
177226
|
multiplyPlaneByMatrix4d(matrix, invert = true, transpose = true) {
|
|
177194
177227
|
const plane = this.getPlane4d();
|
|
@@ -177205,7 +177238,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177205
177238
|
this.setPlane4d(plane);
|
|
177206
177239
|
return true;
|
|
177207
177240
|
}
|
|
177208
|
-
/**
|
|
177241
|
+
/** Announce the interval (if any) where a line is within the clip plane half space. */
|
|
177209
177242
|
announceClippedSegmentIntervals(f0, f1, pointA, pointB, announce) {
|
|
177210
177243
|
if (f1 < f0)
|
|
177211
177244
|
return false;
|
|
@@ -177240,7 +177273,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177240
177273
|
* Return a coordinate frame with
|
|
177241
177274
|
* * origin at closest point to global origin
|
|
177242
177275
|
* * z axis points in
|
|
177243
|
-
* x and y are "in plane"
|
|
177276
|
+
* * x and y are "in plane"
|
|
177244
177277
|
*/
|
|
177245
177278
|
getFrame() {
|
|
177246
177279
|
const d = this._distanceFromOrigin;
|
|
@@ -177276,11 +177309,12 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177276
177309
|
xyzOut.pushWrap(1);
|
|
177277
177310
|
return xyzOut;
|
|
177278
177311
|
}
|
|
177279
|
-
/** Implement appendPolygonClip, as defined in interface PolygonClipper.
|
|
177280
|
-
*
|
|
177312
|
+
/** Implement appendPolygonClip, as defined in interface PolygonClipper.
|
|
177281
177313
|
* @param xyz input polygon. This is not changed.
|
|
177282
|
-
* @param insideFragments Array to receive "inside" fragments.
|
|
177283
|
-
*
|
|
177314
|
+
* @param insideFragments Array to receive "inside" fragments. Each fragment is a GrowableXYZArray grabbed
|
|
177315
|
+
* from the cache. This is NOT cleared.
|
|
177316
|
+
* @param outsideFragments Array to receive "outside" fragments. Each fragment is a GrowableXYZArray grabbed
|
|
177317
|
+
* from the cache. This is NOT cleared.
|
|
177284
177318
|
* @param arrayCache cache for reusable GrowableXYZArray.
|
|
177285
177319
|
*/
|
|
177286
177320
|
appendPolygonClip(xyz, insideFragments, outsideFragments, arrayCache) {
|
|
@@ -177291,9 +177325,7 @@ class ClipPlane extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d
|
|
|
177291
177325
|
_ClipUtils__WEBPACK_IMPORTED_MODULE_6__.ClipUtilities.captureOrDrop(newInside, 3, insideFragments, arrayCache);
|
|
177292
177326
|
_ClipUtils__WEBPACK_IMPORTED_MODULE_6__.ClipUtilities.captureOrDrop(newOutside, 3, outsideFragments, arrayCache);
|
|
177293
177327
|
}
|
|
177294
|
-
/**
|
|
177295
|
-
* Project a point in space to the plane.
|
|
177296
|
-
*/
|
|
177328
|
+
/** Project a point in space to the plane. */
|
|
177297
177329
|
projectPointToPlane(spacePoint, result) {
|
|
177298
177330
|
const d = -this.altitude(spacePoint);
|
|
177299
177331
|
return spacePoint.plusXYZ(d * this._inwardNormal.x, d * this._inwardNormal.y, d * this._inwardNormal.z, result);
|
|
@@ -177382,17 +177414,18 @@ var ClipMaskXYZRangePlanes;
|
|
|
177382
177414
|
})(ClipMaskXYZRangePlanes || (ClipMaskXYZRangePlanes = {}));
|
|
177383
177415
|
/**
|
|
177384
177416
|
* * ClipPrimitive is a base class for clipping implementations that use
|
|
177385
|
-
* * A UnionOfConvexClipPlaneSets designated "clipPlanes"
|
|
177386
|
-
* *
|
|
177387
|
-
* * When constructed directly, objects of type ClipPrimitive (directly, not through a derived class) will have just planes
|
|
177417
|
+
* * A UnionOfConvexClipPlaneSets designated "clipPlanes".
|
|
177418
|
+
* * An "invisible" flag.
|
|
177419
|
+
* * When constructed directly, objects of type ClipPrimitive (directly, not through a derived class) will have just planes.
|
|
177388
177420
|
* * Derived classes (e.g. ClipShape) carry additional data such as a swept shape.
|
|
177389
177421
|
* * ClipPrimitive can be constructed with no planes.
|
|
177390
177422
|
* * Derived class is responsible for filling the plane sets.
|
|
177391
|
-
* * At discretion of derived classes, plane construction can be done at construction time or "on demand when" queries
|
|
177423
|
+
* * At discretion of derived classes, plane construction can be done at construction time or "on demand when" queries
|
|
177424
|
+
* call `ensurePlaneSets ()`
|
|
177392
177425
|
* * ClipPrimitive can be constructed directly with planes (and no derived class).
|
|
177393
177426
|
* * That the prevailing use is via a ClipShape derived class.
|
|
177394
177427
|
* * The ClipShape has an "isMask" property
|
|
177395
|
-
* * isMask === false means the plane sets should cover the inside of its polygon
|
|
177428
|
+
* * isMask === false means the plane sets should cover the inside of its polygon.
|
|
177396
177429
|
* * isMask === true means the plane sets should cover the outside of its polygon.
|
|
177397
177430
|
* * Note that the ClipShape's `isMask` property and the ClipPrimitive's `isInvisible` property are distinct controls.
|
|
177398
177431
|
* * In normal usage, callers get "outside" clip behavior using ONLY the ClipShape isMask property.
|
|
@@ -177401,13 +177434,19 @@ var ClipMaskXYZRangePlanes;
|
|
|
177401
177434
|
* @public
|
|
177402
177435
|
*/
|
|
177403
177436
|
class ClipPrimitive {
|
|
177404
|
-
/**
|
|
177405
|
-
*
|
|
177406
|
-
*
|
|
177437
|
+
/**
|
|
177438
|
+
* Get a reference to the `UnionOfConvexClipPlaneSets`.
|
|
177439
|
+
* * It triggers construction of the sets by `this.ensurePlaneSets()`.
|
|
177440
|
+
* * Derived class typically caches the set on the first such call.
|
|
177407
177441
|
*/
|
|
177408
|
-
fetchClipPlanesRef() {
|
|
177442
|
+
fetchClipPlanesRef() {
|
|
177443
|
+
this.ensurePlaneSets();
|
|
177444
|
+
return this._clipPlanes;
|
|
177445
|
+
}
|
|
177409
177446
|
/** Ask if this primitive is a hole. */
|
|
177410
|
-
get invisible() {
|
|
177447
|
+
get invisible() {
|
|
177448
|
+
return this._invisible;
|
|
177449
|
+
}
|
|
177411
177450
|
constructor(planeSet, isInvisible = false) {
|
|
177412
177451
|
this._clipPlanes = planeSet;
|
|
177413
177452
|
this._invisible = isInvisible;
|
|
@@ -177436,26 +177475,30 @@ class ClipPrimitive {
|
|
|
177436
177475
|
}
|
|
177437
177476
|
/**
|
|
177438
177477
|
* Returns true if the planes are present.
|
|
177439
|
-
* * This can be false (for instance) if a ClipShape is holding a polygon but has not yet been asked to construct
|
|
177478
|
+
* * This can be false (for instance) if a ClipShape is holding a polygon but has not yet been asked to construct
|
|
177479
|
+
* the planes.
|
|
177440
177480
|
*/
|
|
177441
177481
|
arePlanesDefined() {
|
|
177442
177482
|
return this._clipPlanes !== undefined;
|
|
177443
177483
|
}
|
|
177444
|
-
/** Return a deep clone
|
|
177484
|
+
/** Return a deep clone. */
|
|
177445
177485
|
clone() {
|
|
177446
177486
|
const newPlanes = this._clipPlanes ? this._clipPlanes.clone() : undefined;
|
|
177447
177487
|
const result = new ClipPrimitive(newPlanes, this._invisible);
|
|
177448
177488
|
return result;
|
|
177449
177489
|
}
|
|
177450
177490
|
/**
|
|
177451
|
-
*
|
|
177491
|
+
* Trigger (if needed) computation of plane sets (if applicable) in the derived class.
|
|
177452
177492
|
* * Base class is no op.
|
|
177453
177493
|
* * In derived class, on first call create planes sets from defining data (e.g. swept shape).
|
|
177454
177494
|
* * In derived class, if planes are present leave them alone.
|
|
177455
177495
|
*/
|
|
177456
177496
|
ensurePlaneSets() { }
|
|
177457
|
-
/**
|
|
177458
|
-
*
|
|
177497
|
+
/**
|
|
177498
|
+
* Return true if the point lies inside/on this polygon (or not inside/on if this polygon is a mask). Otherwise,
|
|
177499
|
+
* return false.
|
|
177500
|
+
* * Note that a derived class may choose to (a) implement its own test using its defining data, or (b) accept
|
|
177501
|
+
* this implementation using planes that it inserted in the base class.
|
|
177459
177502
|
*/
|
|
177460
177503
|
pointInside(point, onTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistanceSquared) {
|
|
177461
177504
|
this.ensurePlaneSets();
|
|
@@ -177464,7 +177507,8 @@ class ClipPrimitive {
|
|
|
177464
177507
|
inside = this._clipPlanes.isPointOnOrInside(point, onTolerance);
|
|
177465
177508
|
return inside;
|
|
177466
177509
|
}
|
|
177467
|
-
/**
|
|
177510
|
+
/**
|
|
177511
|
+
* Method from [[Clipper]] interface.
|
|
177468
177512
|
* * Implement as dispatch to clipPlaneSets as supplied by derived class.
|
|
177469
177513
|
*/
|
|
177470
177514
|
isPointOnOrInside(point, onTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistanceSquared) {
|
|
@@ -177474,7 +177518,8 @@ class ClipPrimitive {
|
|
|
177474
177518
|
inside = this._clipPlanes.isPointOnOrInside(point, onTolerance);
|
|
177475
177519
|
return inside;
|
|
177476
177520
|
}
|
|
177477
|
-
/**
|
|
177521
|
+
/**
|
|
177522
|
+
* Method from [[Clipper]] interface.
|
|
177478
177523
|
* * Implement as dispatch to clipPlaneSets as supplied by derived class.
|
|
177479
177524
|
*/
|
|
177480
177525
|
announceClippedSegmentIntervals(f0, f1, pointA, pointB, announce) {
|
|
@@ -177484,7 +177529,8 @@ class ClipPrimitive {
|
|
|
177484
177529
|
hasInsideParts = this._clipPlanes.announceClippedSegmentIntervals(f0, f1, pointA, pointB, announce);
|
|
177485
177530
|
return hasInsideParts;
|
|
177486
177531
|
}
|
|
177487
|
-
/**
|
|
177532
|
+
/**
|
|
177533
|
+
* Method from [[Clipper]] interface.
|
|
177488
177534
|
* * Implement as dispatch to clipPlaneSets as supplied by derived class.
|
|
177489
177535
|
*/
|
|
177490
177536
|
announceClippedArcIntervals(arc, announce) {
|
|
@@ -177498,11 +177544,12 @@ class ClipPrimitive {
|
|
|
177498
177544
|
* Multiply all ClipPlanes DPoint4d by matrix.
|
|
177499
177545
|
* @param matrix matrix to apply.
|
|
177500
177546
|
* @param invert if true, use in verse of the matrix.
|
|
177501
|
-
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter)
|
|
177502
|
-
*
|
|
177547
|
+
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter).
|
|
177548
|
+
* @param matrix matrix to apply.
|
|
177549
|
+
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding
|
|
177550
|
+
* effect on the plane is the inverse transpose of matrixA.
|
|
177503
177551
|
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
177504
177552
|
* * Both params default to true to get the full effect of transforming space.
|
|
177505
|
-
* @param matrix matrix to apply
|
|
177506
177553
|
*/
|
|
177507
177554
|
multiplyPlanesByMatrix4d(matrix, invert = true, transpose = true) {
|
|
177508
177555
|
if (invert) { // form inverse once here, reuse for all planes
|
|
@@ -177515,7 +177562,7 @@ class ClipPrimitive {
|
|
|
177515
177562
|
this._clipPlanes.multiplyPlanesByMatrix4d(matrix);
|
|
177516
177563
|
return true;
|
|
177517
177564
|
}
|
|
177518
|
-
/** Apply a transform to the clipper (e.g. transform all planes) */
|
|
177565
|
+
/** Apply a transform to the clipper (e.g. transform all planes). */
|
|
177519
177566
|
transformInPlace(transform) {
|
|
177520
177567
|
if (this._clipPlanes)
|
|
177521
177568
|
this._clipPlanes.transformInPlace(transform);
|
|
@@ -177526,7 +177573,8 @@ class ClipPrimitive {
|
|
|
177526
177573
|
this._invisible = invisible;
|
|
177527
177574
|
}
|
|
177528
177575
|
/**
|
|
177529
|
-
* Return true if any plane of the primary clipPlanes has (a) non-zero z component in its normal vector and
|
|
177576
|
+
* Return true if any plane of the primary clipPlanes has (a) non-zero z component in its normal vector and
|
|
177577
|
+
* (b) finite distance from origin.
|
|
177530
177578
|
*/
|
|
177531
177579
|
containsZClip() {
|
|
177532
177580
|
if (this.fetchClipPlanesRef() !== undefined)
|
|
@@ -177538,8 +177586,9 @@ class ClipPrimitive {
|
|
|
177538
177586
|
}
|
|
177539
177587
|
/**
|
|
177540
177588
|
* Quick test of whether the given points fall completely inside or outside.
|
|
177541
|
-
* @param points points to test
|
|
177542
|
-
* @param ignoreInvisibleSetting if true, do the test with the clip planes and return that, ignoring the
|
|
177589
|
+
* @param points points to test.
|
|
177590
|
+
* @param ignoreInvisibleSetting if true, do the test with the clip planes and return that, ignoring the
|
|
177591
|
+
* invisible setting.
|
|
177543
177592
|
*/
|
|
177544
177593
|
classifyPointContainment(points, ignoreInvisibleSetting) {
|
|
177545
177594
|
this.ensurePlaneSets();
|
|
@@ -177558,8 +177607,9 @@ class ClipPrimitive {
|
|
|
177558
177607
|
}
|
|
177559
177608
|
return inside;
|
|
177560
177609
|
}
|
|
177561
|
-
/**
|
|
177562
|
-
*
|
|
177610
|
+
/**
|
|
177611
|
+
* Promote json object form to class instance.
|
|
177612
|
+
* * First try to convert to a ClipShape.
|
|
177563
177613
|
* * then try as a standalone instance of the base class ClipPrimitive.
|
|
177564
177614
|
*/
|
|
177565
177615
|
static fromJSON(json) {
|
|
@@ -177615,27 +177665,49 @@ class ClipShape extends ClipPrimitive {
|
|
|
177615
177665
|
this.initSecondaryProps(isMask, zLow, zHigh, transform);
|
|
177616
177666
|
}
|
|
177617
177667
|
/** Returns true if this ClipShape is marked as invisible. */
|
|
177618
|
-
get invisible() {
|
|
177668
|
+
get invisible() {
|
|
177669
|
+
return this._invisible;
|
|
177670
|
+
}
|
|
177619
177671
|
/** Return this transformFromClip, which may be undefined. */
|
|
177620
|
-
get transformFromClip() {
|
|
177672
|
+
get transformFromClip() {
|
|
177673
|
+
return this._transformFromClip;
|
|
177674
|
+
}
|
|
177621
177675
|
/** Return this transformToClip, which may be undefined. */
|
|
177622
|
-
get transformToClip() {
|
|
177676
|
+
get transformToClip() {
|
|
177677
|
+
return this._transformToClip;
|
|
177678
|
+
}
|
|
177623
177679
|
/** Returns true if this ClipShape's transforms are currently set. */
|
|
177624
|
-
get transformValid() {
|
|
177680
|
+
get transformValid() {
|
|
177681
|
+
return this.transformFromClip !== undefined;
|
|
177682
|
+
}
|
|
177625
177683
|
/** Returns true if this ClipShape's lower z boundary is set. */
|
|
177626
|
-
get zLowValid() {
|
|
177684
|
+
get zLowValid() {
|
|
177685
|
+
return this._zLow !== undefined;
|
|
177686
|
+
}
|
|
177627
177687
|
/** Returns true if this ClipShape's upper z boundary is set. */
|
|
177628
|
-
get zHighValid() {
|
|
177688
|
+
get zHighValid() {
|
|
177689
|
+
return this._zHigh !== undefined;
|
|
177690
|
+
}
|
|
177629
177691
|
/** Return true if this ClipShape has a local to world transform */
|
|
177630
|
-
get transformIsValid() {
|
|
177692
|
+
get transformIsValid() {
|
|
177693
|
+
return this._transformFromClip !== undefined;
|
|
177694
|
+
}
|
|
177631
177695
|
/** Return this zLow, which may be undefined. */
|
|
177632
|
-
get zLow() {
|
|
177696
|
+
get zLow() {
|
|
177697
|
+
return this._zLow;
|
|
177698
|
+
}
|
|
177633
177699
|
/** Return this zHigh, which may be undefined. */
|
|
177634
|
-
get zHigh() {
|
|
177700
|
+
get zHigh() {
|
|
177701
|
+
return this._zHigh;
|
|
177702
|
+
}
|
|
177635
177703
|
/** Returns a reference to this ClipShape's polygon array. */
|
|
177636
|
-
get polygon() {
|
|
177704
|
+
get polygon() {
|
|
177705
|
+
return this._polygon;
|
|
177706
|
+
}
|
|
177637
177707
|
/** Returns true if this ClipShape is a masking set. */
|
|
177638
|
-
get isMask() {
|
|
177708
|
+
get isMask() {
|
|
177709
|
+
return this._isMask;
|
|
177710
|
+
}
|
|
177639
177711
|
/** Sets the polygon points array of this ClipShape to the array given (by reference). */
|
|
177640
177712
|
setPolygon(polygon) {
|
|
177641
177713
|
// Add closure point
|
|
@@ -177644,8 +177716,9 @@ class ClipShape extends ClipPrimitive {
|
|
|
177644
177716
|
this._polygon = polygon;
|
|
177645
177717
|
}
|
|
177646
177718
|
/**
|
|
177647
|
-
*
|
|
177648
|
-
*
|
|
177719
|
+
* If the ClipShape's associated `UnionOfConvexClipPlaneSets` is defined, do nothing.
|
|
177720
|
+
* If the ClipShape's associated `UnionOfConvexClipPlaneSets` is undefined, generate it from the `ClipShape`
|
|
177721
|
+
* and transform.
|
|
177649
177722
|
*/
|
|
177650
177723
|
ensurePlaneSets() {
|
|
177651
177724
|
if (this._clipPlanes !== undefined)
|
|
@@ -177657,7 +177730,7 @@ class ClipShape extends ClipPrimitive {
|
|
|
177657
177730
|
}
|
|
177658
177731
|
/**
|
|
177659
177732
|
* Initialize the members of the ClipShape class that may at times be undefined.
|
|
177660
|
-
* zLow and zHigh default to Number.MAX_VALUE, and the transform defaults to an identity transform
|
|
177733
|
+
* zLow and zHigh default to Number.MAX_VALUE, and the transform defaults to an identity transform.
|
|
177661
177734
|
*/
|
|
177662
177735
|
initSecondaryProps(isMask, zLow, zHigh, transform) {
|
|
177663
177736
|
this._isMask = isMask;
|
|
@@ -177672,7 +177745,7 @@ class ClipShape extends ClipPrimitive {
|
|
|
177672
177745
|
this._transformToClip = _geometry3d_Transform__WEBPACK_IMPORTED_MODULE_5__.Transform.createIdentity();
|
|
177673
177746
|
}
|
|
177674
177747
|
}
|
|
177675
|
-
/**
|
|
177748
|
+
/** Emit json object form */
|
|
177676
177749
|
toJSON() {
|
|
177677
177750
|
const shape = {
|
|
177678
177751
|
points: this._polygon.map((pt) => pt.toJSON()),
|
|
@@ -177689,7 +177762,7 @@ class ClipShape extends ClipPrimitive {
|
|
|
177689
177762
|
shape.zhigh = this.zHigh;
|
|
177690
177763
|
return { shape };
|
|
177691
177764
|
}
|
|
177692
|
-
/**
|
|
177765
|
+
/** Parse `json` to a clip shape. */
|
|
177693
177766
|
static fromClipShapeJSON(json, result) {
|
|
177694
177767
|
const shape = json?.shape;
|
|
177695
177768
|
if (!shape)
|
|
@@ -177751,7 +177824,7 @@ class ClipShape extends ClipPrimitive {
|
|
|
177751
177824
|
blockPoints[1].x = blockPoints[2].x = high.x;
|
|
177752
177825
|
blockPoints[0].y = blockPoints[1].y = blockPoints[4].y = low.y;
|
|
177753
177826
|
blockPoints[2].y = blockPoints[3].y = high.y;
|
|
177754
|
-
return ClipShape.createShape(blockPoints, (ClipMaskXYZRangePlanes.None !== (clipMask & ClipMaskXYZRangePlanes.ZLow)) ? low.z : undefined, ClipMaskXYZRangePlanes.None !== (clipMask & ClipMaskXYZRangePlanes.ZHigh) ? high.z : undefined, transform, isMask, invisible, result);
|
|
177827
|
+
return ClipShape.createShape(blockPoints, (ClipMaskXYZRangePlanes.None !== (clipMask & ClipMaskXYZRangePlanes.ZLow)) ? low.z : undefined, (ClipMaskXYZRangePlanes.None !== (clipMask & ClipMaskXYZRangePlanes.ZHigh)) ? high.z : undefined, transform, isMask, invisible, result);
|
|
177755
177828
|
}
|
|
177756
177829
|
/** Creates a new ClipShape with undefined members and a polygon points array of zero length. */
|
|
177757
177830
|
static createEmpty(isMask = false, invisible = false, transform, result) {
|
|
@@ -177772,11 +177845,14 @@ class ClipShape extends ClipPrimitive {
|
|
|
177772
177845
|
return false;
|
|
177773
177846
|
return true;
|
|
177774
177847
|
}
|
|
177775
|
-
/** Returns a deep copy of this instance of ClipShape, storing in an optional result */
|
|
177848
|
+
/** Returns a deep copy of this instance of ClipShape, storing in an optional result. */
|
|
177776
177849
|
clone(result) {
|
|
177777
177850
|
return ClipShape.createFrom(this, result);
|
|
177778
177851
|
}
|
|
177779
|
-
/**
|
|
177852
|
+
/**
|
|
177853
|
+
* Given the current polygon data, parses clip planes that together form an object, storing the result in
|
|
177854
|
+
* the set given, either clip planes or mask planes.
|
|
177855
|
+
*/
|
|
177780
177856
|
parseClipPlanes(set) {
|
|
177781
177857
|
const points = this._polygon;
|
|
177782
177858
|
if (points.length === 3 && !this._isMask && points[0].isExactEqual(points[points.length - 1])) {
|
|
@@ -177795,7 +177871,10 @@ class ClipShape extends ClipPrimitive {
|
|
|
177795
177871
|
this.parsePolygonPlanes(set, this._polygon, this.isMask);
|
|
177796
177872
|
return true;
|
|
177797
177873
|
}
|
|
177798
|
-
/**
|
|
177874
|
+
/**
|
|
177875
|
+
* Given a start and end point, populate the given UnionOfConvexClipPlaneSets with ConvexClipPlaneSets
|
|
177876
|
+
* defining the bounded region of linear planes. Returns true if successful.
|
|
177877
|
+
*/
|
|
177799
177878
|
parseLinearPlanes(set, start, end, cameraFocalLength) {
|
|
177800
177879
|
// Handles the degenerate case of 2 distinct points (used by select by line).
|
|
177801
177880
|
const normal = start.vectorTo(end);
|
|
@@ -177827,7 +177906,10 @@ class ClipShape extends ClipPrimitive {
|
|
|
177827
177906
|
set.addConvexSet(convexSet);
|
|
177828
177907
|
return true;
|
|
177829
177908
|
}
|
|
177830
|
-
/**
|
|
177909
|
+
/**
|
|
177910
|
+
* Given a convex polygon defined as an array of points, populate the given UnionOfConvexClipPlaneSets with
|
|
177911
|
+
* ConvexClipPlaneSets defining the bounded region. Returns true if successful.
|
|
177912
|
+
*/
|
|
177831
177913
|
parseConvexPolygonPlanes(set, polygon, direction, buildExteriorClipper, cameraFocalLength) {
|
|
177832
177914
|
const samePointTolerance = 1.0e-8; // This could possibly be replaced with more widely used constants
|
|
177833
177915
|
const edges = [];
|
|
@@ -177885,7 +177967,10 @@ class ClipShape extends ClipPrimitive {
|
|
|
177885
177967
|
}
|
|
177886
177968
|
return true;
|
|
177887
177969
|
}
|
|
177888
|
-
/**
|
|
177970
|
+
/**
|
|
177971
|
+
* Given a (possibly non-convex) polygon defined as an array of points, populate the given UnionOfConvexClipPlaneSets
|
|
177972
|
+
* with multiple ConvexClipPlaneSets defining the bounded region. Returns true if successful.
|
|
177973
|
+
*/
|
|
177889
177974
|
parsePolygonPlanes(set, polygon, isMask, cameraFocalLength) {
|
|
177890
177975
|
const cleanPolygon = _geometry3d_PolylineOps__WEBPACK_IMPORTED_MODULE_9__.PolylineOps.compressDanglers(polygon, true);
|
|
177891
177976
|
const announceFace = (_graph, edge) => {
|
|
@@ -177932,17 +178017,19 @@ class ClipShape extends ClipPrimitive {
|
|
|
177932
178017
|
* Multiply all ClipPlanes DPoint4d by matrix.
|
|
177933
178018
|
* @param matrix matrix to apply.
|
|
177934
178019
|
* @param invert if true, use in verse of the matrix.
|
|
177935
|
-
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter)
|
|
177936
|
-
*
|
|
178020
|
+
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter).
|
|
178021
|
+
* @param matrix matrix to apply.
|
|
178022
|
+
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect
|
|
178023
|
+
* on the plane is the inverse transpose of matrixA.
|
|
177937
178024
|
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
177938
178025
|
* * Both params default to true to get the full effect of transforming space.
|
|
177939
|
-
* @param matrix matrix to apply
|
|
177940
178026
|
*/
|
|
177941
178027
|
multiplyPlanesByMatrix4d(matrix, invert = true, transpose = true) {
|
|
177942
178028
|
this.ensurePlaneSets();
|
|
177943
178029
|
return super.multiplyPlanesByMatrix4d(matrix, invert, transpose);
|
|
177944
178030
|
}
|
|
177945
|
-
/**
|
|
178031
|
+
/**
|
|
178032
|
+
* Apply `transform` to the local to world (`transformFromClip`) transform.
|
|
177946
178033
|
* * The world to local transform (`transformToClip` is recomputed from the (changed) `transformToClip`
|
|
177947
178034
|
* * the transform is passed to the base class to be applied to clip plane form of the clipper.
|
|
177948
178035
|
*/
|
|
@@ -177957,7 +178044,8 @@ class ClipShape extends ClipPrimitive {
|
|
|
177957
178044
|
this._transformToClip = this._transformFromClip.inverse(); // could be undefined
|
|
177958
178045
|
return true;
|
|
177959
178046
|
}
|
|
177960
|
-
/**
|
|
178047
|
+
/**
|
|
178048
|
+
* Return true if
|
|
177961
178049
|
* * at least one point is defined
|
|
177962
178050
|
* * The local to world transform (transformFromClip) either
|
|
177963
178051
|
* * is undefined
|
|
@@ -178039,44 +178127,47 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
178039
178127
|
|
|
178040
178128
|
|
|
178041
178129
|
|
|
178042
|
-
/**
|
|
178130
|
+
/**
|
|
178131
|
+
* Enumerated type for describing where geometry lies with respect to clipping planes.
|
|
178043
178132
|
* @public
|
|
178044
178133
|
*/
|
|
178045
178134
|
var ClipPlaneContainment;
|
|
178046
178135
|
(function (ClipPlaneContainment) {
|
|
178047
|
-
/** All points inside */
|
|
178136
|
+
/** All points inside. */
|
|
178048
178137
|
ClipPlaneContainment[ClipPlaneContainment["StronglyInside"] = 1] = "StronglyInside";
|
|
178049
178138
|
/** Inside/outside state unknown. */
|
|
178050
178139
|
ClipPlaneContainment[ClipPlaneContainment["Ambiguous"] = 2] = "Ambiguous";
|
|
178051
|
-
/** All points outside */
|
|
178140
|
+
/** All points outside. */
|
|
178052
178141
|
ClipPlaneContainment[ClipPlaneContainment["StronglyOutside"] = 3] = "StronglyOutside";
|
|
178053
178142
|
})(ClipPlaneContainment || (ClipPlaneContainment = {}));
|
|
178054
178143
|
/**
|
|
178055
|
-
* Enumeration of ways to handle an intermediate fragment from a clipping step
|
|
178144
|
+
* Enumeration of ways to handle an intermediate fragment from a clipping step.
|
|
178056
178145
|
* @public
|
|
178057
178146
|
*/
|
|
178058
178147
|
var ClipStepAction;
|
|
178059
178148
|
(function (ClipStepAction) {
|
|
178060
|
-
/** Pass fragments directly to final accepted "in" state */
|
|
178149
|
+
/** Pass fragments directly to final accepted "in" state. */
|
|
178061
178150
|
ClipStepAction[ClipStepAction["acceptIn"] = 1] = "acceptIn";
|
|
178062
|
-
/** Pass fragments directly to final accepted "out" state */
|
|
178151
|
+
/** Pass fragments directly to final accepted "out" state. */
|
|
178063
178152
|
ClipStepAction[ClipStepAction["acceptOut"] = -1] = "acceptOut";
|
|
178064
|
-
/**
|
|
178153
|
+
/** Forward fragments to subsequent steps. */
|
|
178065
178154
|
ClipStepAction[ClipStepAction["passToNextStep"] = 0] = "passToNextStep";
|
|
178066
178155
|
})(ClipStepAction || (ClipStepAction = {}));
|
|
178067
|
-
/**
|
|
178156
|
+
/**
|
|
178157
|
+
* Enumerated type for describing what must yet be done to clip a piece of geometry.
|
|
178068
178158
|
* @public
|
|
178069
178159
|
*/
|
|
178070
178160
|
var ClipStatus;
|
|
178071
178161
|
(function (ClipStatus) {
|
|
178072
|
-
/**
|
|
178162
|
+
/** Some geometry may cross the clip boundaries */
|
|
178073
178163
|
ClipStatus[ClipStatus["ClipRequired"] = 0] = "ClipRequired";
|
|
178074
|
-
/**
|
|
178164
|
+
/** Geometry is clearly outside */
|
|
178075
178165
|
ClipStatus[ClipStatus["TrivialReject"] = 1] = "TrivialReject";
|
|
178076
|
-
/**
|
|
178166
|
+
/** Geometry is clearly inside */
|
|
178077
178167
|
ClipStatus[ClipStatus["TrivialAccept"] = 2] = "TrivialAccept";
|
|
178078
178168
|
})(ClipStatus || (ClipStatus = {}));
|
|
178079
|
-
/**
|
|
178169
|
+
/**
|
|
178170
|
+
* Class whose various static methods are functions for clipping geometry
|
|
178080
178171
|
* @public
|
|
178081
178172
|
*/
|
|
178082
178173
|
class ClipUtilities {
|
|
@@ -178114,7 +178205,7 @@ class ClipUtilities {
|
|
|
178114
178205
|
return false;
|
|
178115
178206
|
}
|
|
178116
178207
|
/**
|
|
178117
|
-
* Announce triples of (low, high, cp) for each entry in intervals
|
|
178208
|
+
* Announce triples of (low, high, cp) for each entry in intervals.
|
|
178118
178209
|
* @param intervals source array
|
|
178119
178210
|
* @param cp CurvePrimitive for announcement
|
|
178120
178211
|
* @param announce function to receive data
|
|
@@ -178127,7 +178218,8 @@ class ClipUtilities {
|
|
|
178127
178218
|
}
|
|
178128
178219
|
return intervals.length > 0;
|
|
178129
178220
|
}
|
|
178130
|
-
/**
|
|
178221
|
+
/**
|
|
178222
|
+
* Find portions of the curve that are within the clipper.
|
|
178131
178223
|
* Collect them into an array of curve primitives.
|
|
178132
178224
|
*/
|
|
178133
178225
|
static collectClippedCurves(curve, clipper) {
|
|
@@ -178165,7 +178257,8 @@ class ClipUtilities {
|
|
|
178165
178257
|
}
|
|
178166
178258
|
return output;
|
|
178167
178259
|
}
|
|
178168
|
-
/**
|
|
178260
|
+
/**
|
|
178261
|
+
* Given an array of points, test for trivial containment conditions.
|
|
178169
178262
|
* * ClipStatus.TrivialAccept if all points are in any one of the convexSet's.
|
|
178170
178263
|
* * ClipStatus.ClipRequired if (in any single convexSet) there were points on both sides of any single plane.
|
|
178171
178264
|
* * ClipStatus.TrivialReject if neither of those occurred.
|
|
@@ -178255,8 +178348,9 @@ class ClipUtilities {
|
|
|
178255
178348
|
}
|
|
178256
178349
|
}
|
|
178257
178350
|
/**
|
|
178258
|
-
* Return a (possibly empty) array of geometry (Loops !!) which are facets of the intersection of the convex set
|
|
178259
|
-
*
|
|
178351
|
+
* Return a (possibly empty) array of geometry (Loops !!) which are facets of the intersection of the convex set
|
|
178352
|
+
* intersecting a range.
|
|
178353
|
+
* * Return zero length array for (a) null range or (b) no intersections
|
|
178260
178354
|
* @param allClippers convex or union clipper
|
|
178261
178355
|
* @param range range to intersect
|
|
178262
178356
|
* @param includeConvexSetFaces if false, do not compute facets originating as convex set planes.
|
|
@@ -178426,7 +178520,8 @@ class ClipUtilities {
|
|
|
178426
178520
|
}
|
|
178427
178521
|
return false;
|
|
178428
178522
|
}
|
|
178429
|
-
/**
|
|
178523
|
+
/**
|
|
178524
|
+
* Test for intersection of two ranges in different local coordinates.
|
|
178430
178525
|
* * Useful for clash detection of elements in iModels, using their stored (tight) local ranges and placement transforms.
|
|
178431
178526
|
* @param range0 range in local coordinates of first geometry
|
|
178432
178527
|
* @param local0ToWorld placement transform for first geometry
|
|
@@ -178471,8 +178566,8 @@ class ClipUtilities {
|
|
|
178471
178566
|
* * If there are more than baseCount+1 fragments:
|
|
178472
178567
|
* * drop them all to the cache
|
|
178473
178568
|
* * push a copy of the singleton.
|
|
178474
|
-
* * The use case for this is that a multi-step clipper (e.g. UnionOfConvexClipPlaneSets) may produce many fragments,
|
|
178475
|
-
*
|
|
178569
|
+
* * The use case for this is that a multi-step clipper (e.g. UnionOfConvexClipPlaneSets) may produce many fragments,
|
|
178570
|
+
* and then be able to determine that they really are the original pre-clip polygon unchanged.
|
|
178476
178571
|
* * The baseCount+1 case is the case where the entire original singleton is still a singleton and can be left alone.
|
|
178477
178572
|
* * Calling this replacer shuffles the original back into the fragment array, and drops the fragments.
|
|
178478
178573
|
* * This determination is solely within the logic of the caller.
|
|
@@ -178505,8 +178600,7 @@ class ClipUtilities {
|
|
|
178505
178600
|
}
|
|
178506
178601
|
return _internalContexts_LineStringOffsetClipperContext__WEBPACK_IMPORTED_MODULE_12__.LineStringOffsetClipperContext.createClipBetweenOffsets(points, leftOffset, rightOffset, z0, z1);
|
|
178507
178602
|
}
|
|
178508
|
-
/**
|
|
178509
|
-
*/
|
|
178603
|
+
/** If data.length >= minLength threshold, push it to destination; if smaller drop it back to the cache. */
|
|
178510
178604
|
static captureOrDrop(data, minLength, destination, cache) {
|
|
178511
178605
|
if (data.length >= minLength)
|
|
178512
178606
|
destination.push(data);
|
|
@@ -178703,8 +178797,8 @@ class ClipUtilities {
|
|
|
178703
178797
|
const oldOutsideCount = acceptedOut ? acceptedOut.length : 0;
|
|
178704
178798
|
let shard;
|
|
178705
178799
|
// At each convex set, carryForwardA is all the fragments that have been outside all previous convex sets.
|
|
178706
|
-
// Clip each such fragment to the current set, sending the outside parts to carryForwardB, which will got to
|
|
178707
|
-
// The final surviving carryForward really is out.
|
|
178800
|
+
// Clip each such fragment to the current set, sending the outside parts to carryForwardB, which will got to
|
|
178801
|
+
// the next clipper. The final surviving carryForward really is out.
|
|
178708
178802
|
for (const c of clippers) {
|
|
178709
178803
|
if (c.appendPolygonClip) {
|
|
178710
178804
|
while (undefined !== (shard = candidates.pop())) {
|
|
@@ -178728,9 +178822,7 @@ class ClipUtilities {
|
|
|
178728
178822
|
if (acceptedIn?.length === oldInsideCount)
|
|
178729
178823
|
ClipUtilities.restoreSingletonInPlaceOfMultipleShards(acceptedOut, oldOutsideCount, xyz, arrayCache);
|
|
178730
178824
|
}
|
|
178731
|
-
/**
|
|
178732
|
-
* Pass polygon `xyz` through a sequence of PolygonClip steps with "parity" rules
|
|
178733
|
-
*/
|
|
178825
|
+
/** Pass polygon `xyz` through a sequence of PolygonClip steps with "parity" rules */
|
|
178734
178826
|
static doPolygonClipParitySequence(xyz, clippers, acceptedIn, acceptedOut, arrayCache) {
|
|
178735
178827
|
if (arrayCache === undefined)
|
|
178736
178828
|
arrayCache = new _geometry3d_ReusableObjectCache__WEBPACK_IMPORTED_MODULE_14__.GrowableXYZArrayCache();
|
|
@@ -178779,9 +178871,9 @@ class ClipUtilities {
|
|
|
178779
178871
|
moveFragments(candidatesOut, acceptedOut, arrayCache);
|
|
178780
178872
|
}
|
|
178781
178873
|
}
|
|
178782
|
-
/**
|
|
178874
|
+
/**
|
|
178875
|
+
* For each plane of clipper, construct a UnionOfConvexClipPlaneSets for an outer (infinite) convex volume that
|
|
178783
178876
|
* abuts the outer volume of the neighbor faces.
|
|
178784
|
-
*
|
|
178785
178877
|
*/
|
|
178786
178878
|
static createComplementaryClips(clipper) {
|
|
178787
178879
|
const planes = clipper.planes;
|
|
@@ -178890,18 +178982,22 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
178890
178982
|
|
|
178891
178983
|
|
|
178892
178984
|
|
|
178893
|
-
/**
|
|
178985
|
+
/**
|
|
178986
|
+
* Class holding an array structure of shapes defined by `ClipPrimitive`
|
|
178894
178987
|
* * The `ClipVector` defines an intersection of the member `ClipPrimitive` regions.
|
|
178895
|
-
* * In the most common usage, one of the `ClipPrimitive` will be an outer region, and all others are holes with marker
|
|
178988
|
+
* * In the most common usage, one of the `ClipPrimitive` will be an outer region, and all others are holes with marker
|
|
178989
|
+
* flag indicating that the outside of each hole is live.
|
|
178896
178990
|
* @public
|
|
178897
178991
|
*/
|
|
178898
178992
|
class ClipVector {
|
|
178899
178993
|
/** Returns a reference to the array of ClipShapes. */
|
|
178900
178994
|
get clips() { return this._clips; }
|
|
178901
178995
|
constructor(clips) {
|
|
178902
|
-
/**
|
|
178996
|
+
/**
|
|
178997
|
+
* Range acting as first filter.
|
|
178903
178998
|
* * This is understood as overall range limit, not as precise planes.
|
|
178904
|
-
* *
|
|
178999
|
+
* * Applying any rotation to the whole ClipVector generally expands this range, rather than exactly transforming
|
|
179000
|
+
* its planes.
|
|
178905
179001
|
*/
|
|
178906
179002
|
this.boundingRange = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_1__.Range3d.createNull();
|
|
178907
179003
|
this._clips = clips ? clips : [];
|
|
@@ -178989,7 +179085,8 @@ class ClipVector {
|
|
|
178989
179085
|
pointInside(point, onTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_3__.Geometry.smallMetricDistanceSquared) {
|
|
178990
179086
|
return this.isPointOnOrInside(point, onTolerance);
|
|
178991
179087
|
}
|
|
178992
|
-
/**
|
|
179088
|
+
/**
|
|
179089
|
+
* Method from [[Clipper]] interface.
|
|
178993
179090
|
* * Implement as dispatch to clipPlaneSets as supplied by derived class.
|
|
178994
179091
|
*/
|
|
178995
179092
|
isPointOnOrInside(point, onTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_3__.Geometry.smallMetricDistanceSquared) {
|
|
@@ -179015,7 +179112,8 @@ class ClipVector {
|
|
|
179015
179112
|
}
|
|
179016
179113
|
return numChildren > 0;
|
|
179017
179114
|
}
|
|
179018
|
-
/**
|
|
179115
|
+
/**
|
|
179116
|
+
* Method from [[Clipper]] interface.
|
|
179019
179117
|
* * Implement as dispatch to clipPlaneSets as supplied by derived class.
|
|
179020
179118
|
*/
|
|
179021
179119
|
announceClippedSegmentIntervals(f0, f1, pointA, pointB, announce) {
|
|
@@ -179039,10 +179137,11 @@ class ClipVector {
|
|
|
179039
179137
|
if (this._clipNodeProxy)
|
|
179040
179138
|
this._clipNodeProxy.appendPolygonClip(xyz, insideFragments, outsideFragments, arrayCache);
|
|
179041
179139
|
}
|
|
179042
|
-
/**
|
|
179043
|
-
|
|
179044
|
-
|
|
179045
|
-
|
|
179140
|
+
/**
|
|
179141
|
+
* Transforms this ClipVector to a new coordinate-system.
|
|
179142
|
+
* Note that if the transform has rotate and scale the boundingRange member expands.
|
|
179143
|
+
* Returns true if successful.
|
|
179144
|
+
*/
|
|
179046
179145
|
transformInPlace(transform) {
|
|
179047
179146
|
for (const clip of this._clips)
|
|
179048
179147
|
if (clip.transformInPlace(transform) === false)
|
|
@@ -179054,15 +179153,13 @@ class ClipVector {
|
|
|
179054
179153
|
/**
|
|
179055
179154
|
* A simple way of packaging this ClipVector's ClipShape points into a multidimensional array, while also
|
|
179056
179155
|
* taking into account each ClipPrimitive's individual transforms.
|
|
179057
|
-
*
|
|
179058
179156
|
* ClipPrimitives OTHER THAN ClipShape are ignored.
|
|
179059
|
-
*
|
|
179060
179157
|
* Information out:
|
|
179061
|
-
* - All of the loop points are stored in the multidimensional Point3d array given (will return unchanged upon failure)
|
|
179062
|
-
* - If given a transform, will be set from the transformFromClip of the first ClipPrimitive
|
|
179063
|
-
* - The ClipMask of the final ClipPrimitive is stored in the returned array at index 0
|
|
179064
|
-
* - The last valid zLow found is stored in the returned array at index 1
|
|
179065
|
-
* - The last valid zHigh found is stored in the returned array at index 2
|
|
179158
|
+
* - All of the loop points are stored in the multidimensional Point3d array given (will return unchanged upon failure).
|
|
179159
|
+
* - If given a transform, will be set from the transformFromClip of the first ClipPrimitive.
|
|
179160
|
+
* - The ClipMask of the final ClipPrimitive is stored in the returned array at index 0.
|
|
179161
|
+
* - The last valid zLow found is stored in the returned array at index 1.
|
|
179162
|
+
* - The last valid zHigh found is stored in the returned array at index 2.
|
|
179066
179163
|
*/
|
|
179067
179164
|
extractBoundaryLoops(loopPoints, transform) {
|
|
179068
179165
|
let clipM = _ClipPrimitive__WEBPACK_IMPORTED_MODULE_2__.ClipMaskXYZRangePlanes.None;
|
|
@@ -179117,7 +179214,10 @@ class ClipVector {
|
|
|
179117
179214
|
for (const clip of this._clips)
|
|
179118
179215
|
clip.setInvisible(invisible);
|
|
179119
179216
|
}
|
|
179120
|
-
/**
|
|
179217
|
+
/**
|
|
179218
|
+
* For every clip, parse the member point array into the member clip plane object (only for clipPlanes member,
|
|
179219
|
+
* not the mask)
|
|
179220
|
+
*/
|
|
179121
179221
|
parseClipPlanes() {
|
|
179122
179222
|
for (const clip of this._clips)
|
|
179123
179223
|
clip.fetchClipPlanesRef();
|
|
@@ -179146,8 +179246,9 @@ class ClipVector {
|
|
|
179146
179246
|
return true;
|
|
179147
179247
|
}
|
|
179148
179248
|
/**
|
|
179149
|
-
* Determines whether the given points fall inside or outside this set of ClipShapes. If any set is defined
|
|
179150
|
-
* checks the mask planes only, provided that ignoreMasks is false. Otherwise, checks the
|
|
179249
|
+
* Determines whether the given points fall inside or outside this set of ClipShapes. If any set is defined
|
|
179250
|
+
* by masking planes, checks the mask planes only, provided that ignoreMasks is false. Otherwise, checks the
|
|
179251
|
+
* _clipPlanes member.
|
|
179151
179252
|
*/
|
|
179152
179253
|
classifyPointContainment(points, ignoreMasks = false) {
|
|
179153
179254
|
let currentContainment = _ClipUtils__WEBPACK_IMPORTED_MODULE_6__.ClipPlaneContainment.Ambiguous;
|
|
@@ -179171,7 +179272,8 @@ class ClipVector {
|
|
|
179171
179272
|
return this.classifyPointContainment(corners, ignoreMasks);
|
|
179172
179273
|
}
|
|
179173
179274
|
/**
|
|
179174
|
-
* For an array of points (making up a LineString), tests whether the segment between each point lies inside the
|
|
179275
|
+
* For an array of points (making up a LineString), tests whether the segment between each point lies inside the
|
|
179276
|
+
* ClipVector.
|
|
179175
179277
|
* If true, returns true immediately.
|
|
179176
179278
|
*/
|
|
179177
179279
|
isAnyLineStringPointInside(points) {
|
|
@@ -179221,7 +179323,8 @@ class ClipVector {
|
|
|
179221
179323
|
}
|
|
179222
179324
|
return true;
|
|
179223
179325
|
}
|
|
179224
|
-
/**
|
|
179326
|
+
/**
|
|
179327
|
+
* Serializes this ClipVector to a compact string representation appropriate for transmission as part of a URL.
|
|
179225
179328
|
* Chiefly used for requesting [Tile]($frontend)s with section cut facets.
|
|
179226
179329
|
* UnionOfConvexClipPlaneSets is obtained for each ClipPrimitive. The encoding is as follows:
|
|
179227
179330
|
* ClipVector:
|
|
@@ -179284,7 +179387,8 @@ class ClipVector {
|
|
|
179284
179387
|
}
|
|
179285
179388
|
ClipVector._TARGET_FRACTION_SUM = 0.99999999;
|
|
179286
179389
|
|
|
179287
|
-
/**
|
|
179390
|
+
/**
|
|
179391
|
+
* Bundles a ClipVector with its compact string representation.
|
|
179288
179392
|
* @note The string representation is computed once; the ClipVector is assumed not to be subsequently modified.
|
|
179289
179393
|
* @alpha
|
|
179290
179394
|
*/
|
|
@@ -179362,7 +179466,8 @@ class ConvexClipPlaneSet {
|
|
|
179362
179466
|
// this._parity = 1;
|
|
179363
179467
|
this._planes = planes ? planes : [];
|
|
179364
179468
|
}
|
|
179365
|
-
/**
|
|
179469
|
+
/**
|
|
179470
|
+
* Return an array containing all the planes of the convex set.
|
|
179366
179471
|
* * Note that this has no leading keyword identifying it as a ConvexClipPlaneSet.
|
|
179367
179472
|
*/
|
|
179368
179473
|
toJSON() {
|
|
@@ -179371,7 +179476,8 @@ class ConvexClipPlaneSet {
|
|
|
179371
179476
|
val.push(plane.toJSON());
|
|
179372
179477
|
return val;
|
|
179373
179478
|
}
|
|
179374
|
-
/**
|
|
179479
|
+
/**
|
|
179480
|
+
* Extract clip planes from a json array `[ clipPlane, clipPlane ]`.
|
|
179375
179481
|
* * Non-clipPlane members are ignored.
|
|
179376
179482
|
*/
|
|
179377
179483
|
static fromJSON(json, result) {
|
|
@@ -179387,7 +179493,7 @@ class ConvexClipPlaneSet {
|
|
|
179387
179493
|
return result;
|
|
179388
179494
|
}
|
|
179389
179495
|
/**
|
|
179390
|
-
* Return true if all members are almostEqual to corresponding members of other.
|
|
179496
|
+
* Return true if all members are almostEqual to corresponding members of other. This includes identical order in array.
|
|
179391
179497
|
* @param other clip plane to compare
|
|
179392
179498
|
*/
|
|
179393
179499
|
isAlmostEqual(other) {
|
|
@@ -179398,7 +179504,8 @@ class ConvexClipPlaneSet {
|
|
|
179398
179504
|
return false;
|
|
179399
179505
|
return true;
|
|
179400
179506
|
}
|
|
179401
|
-
/**
|
|
179507
|
+
/**
|
|
179508
|
+
* Create ConvexClipPlaneSet from an array of planes.
|
|
179402
179509
|
* * Each plane reference in the `planes` array is taken into the result.
|
|
179403
179510
|
* * The input array itself is NOT taken into the result.
|
|
179404
179511
|
*/
|
|
@@ -179441,7 +179548,7 @@ class ConvexClipPlaneSet {
|
|
|
179441
179548
|
result.planes.push(_ClipPlane__WEBPACK_IMPORTED_MODULE_0__.ClipPlane.createNormalAndPointXYZXYZ(0, 0, -1, 0, 0, range.high.z));
|
|
179442
179549
|
return result;
|
|
179443
179550
|
}
|
|
179444
|
-
/**
|
|
179551
|
+
/** Create an empty `ConvexClipPlaneSet` */
|
|
179445
179552
|
static createEmpty(result) {
|
|
179446
179553
|
if (result) {
|
|
179447
179554
|
result._planes.length = 0;
|
|
@@ -179449,14 +179556,15 @@ class ConvexClipPlaneSet {
|
|
|
179449
179556
|
}
|
|
179450
179557
|
return new ConvexClipPlaneSet();
|
|
179451
179558
|
}
|
|
179452
|
-
/**
|
|
179559
|
+
/** Negate all planes of the set. */
|
|
179453
179560
|
negateAllPlanes() {
|
|
179454
179561
|
for (const plane of this._planes)
|
|
179455
179562
|
plane.negateInPlace();
|
|
179456
179563
|
}
|
|
179457
|
-
/**
|
|
179564
|
+
/**
|
|
179565
|
+
* Create a convex clip plane set that clips to `x0 <= x <= x1` and `y0 <= y <= y1`.
|
|
179458
179566
|
* * Note that there is no test for the usual ordering `x0 <= x1` or `y0 <= y1`.
|
|
179459
|
-
*
|
|
179567
|
+
* * if the usual ordering is violated, the convex set is an empty set.
|
|
179460
179568
|
*/
|
|
179461
179569
|
static createXYBox(x0, y0, x1, y1, result) {
|
|
179462
179570
|
result = result ? result : new ConvexClipPlaneSet();
|
|
@@ -179470,11 +179578,13 @@ class ConvexClipPlaneSet {
|
|
|
179470
179578
|
}
|
|
179471
179579
|
return result;
|
|
179472
179580
|
}
|
|
179473
|
-
/**
|
|
179581
|
+
/**
|
|
179582
|
+
* Create a convex set containing a half space for each edge between points of a polyline.
|
|
179474
179583
|
* * Caller is responsible for assuring the polyline is convex.
|
|
179475
|
-
* @param points array of points.
|
|
179476
|
-
* @param interior array whose boolean value is used as both the `interior` and `invisible` bits of the plane for the
|
|
179477
|
-
*
|
|
179584
|
+
* @param points array of points. Only xy parts are considered.
|
|
179585
|
+
* @param interior array whose boolean value is used as both the `interior` and `invisible` bits of the plane for the
|
|
179586
|
+
* succeeding segment. If this array is not provided, both are false.
|
|
179587
|
+
* @param leftIsInside if true, the interior is "to the left" of the segments. If false, interior is "to the right".
|
|
179478
179588
|
*/
|
|
179479
179589
|
static createXYPolyLine(points, interior, leftIsInside, result) {
|
|
179480
179590
|
result = result ? result : new ConvexClipPlaneSet();
|
|
@@ -179518,7 +179628,7 @@ class ConvexClipPlaneSet {
|
|
|
179518
179628
|
return result;
|
|
179519
179629
|
}
|
|
179520
179630
|
/**
|
|
179521
|
-
* (
|
|
179631
|
+
* Set (or reset) a plane and ConvexClipPlaneSet for a convex array, such as a convex facet used for xy clip.
|
|
179522
179632
|
* * The planeOfPolygon is (re)initialized with the normal from 3 points, but not otherwise referenced.
|
|
179523
179633
|
* * The ConvexClipPlaneSet is filled with outward normals of the facet edges as viewed to xy plane.
|
|
179524
179634
|
* @param points
|
|
@@ -179562,7 +179672,7 @@ class ConvexClipPlaneSet {
|
|
|
179562
179672
|
* Test if there is any intersection with a ray defined by origin and direction.
|
|
179563
179673
|
* * Optionally record the range (null or otherwise) in caller-allocated result.
|
|
179564
179674
|
* * If the ray is unbounded inside the clip, result can contain positive or negative
|
|
179565
|
-
*
|
|
179675
|
+
* "Geometry.largeCoordinateResult" values.
|
|
179566
179676
|
* * If no result is provide, there are no object allocations.
|
|
179567
179677
|
* @param result optional Range1d to receive parameters along the ray.
|
|
179568
179678
|
*/
|
|
@@ -179607,7 +179717,8 @@ class ConvexClipPlaneSet {
|
|
|
179607
179717
|
* @param matrix matrix to apply.
|
|
179608
179718
|
* @param invert if true, use in verse of the matrix.
|
|
179609
179719
|
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter)
|
|
179610
|
-
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect
|
|
179720
|
+
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect
|
|
179721
|
+
* on the plane is the inverse transpose of matrixA.
|
|
179611
179722
|
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
179612
179723
|
* * Both params default to true to get the full effect of transforming space.
|
|
179613
179724
|
* @param matrix matrix to apply
|
|
@@ -179627,7 +179738,8 @@ class ConvexClipPlaneSet {
|
|
|
179627
179738
|
/** Return true if `point` satisfies `point.isPointInside` for all planes */
|
|
179628
179739
|
isPointInside(point) {
|
|
179629
179740
|
for (const plane of this._planes) {
|
|
179630
|
-
|
|
179741
|
+
// Defaults to strict inside check. Other clipping classes may use "on or inside" check for the "on" case
|
|
179742
|
+
if (!plane.isPointInside(point))
|
|
179631
179743
|
return false;
|
|
179632
179744
|
}
|
|
179633
179745
|
return true;
|
|
@@ -179655,13 +179767,15 @@ class ConvexClipPlaneSet {
|
|
|
179655
179767
|
}
|
|
179656
179768
|
return true;
|
|
179657
179769
|
}
|
|
179658
|
-
/**
|
|
179659
|
-
*
|
|
179660
|
-
* *
|
|
179770
|
+
/**
|
|
179771
|
+
* Find the parts of the line segment (if any) that is within the convex clip volume.
|
|
179772
|
+
* * The line segment is defined by `pointA` and `pointB`.
|
|
179773
|
+
* * The input fractional interval from `fraction0` to `fraction1` (increasing) is the active part to consider.
|
|
179774
|
+
* * To clip to the usual bounded line segment, start with fractions (0,1).
|
|
179661
179775
|
* If the clip volume is unbounded, the line interval may also be unbounded.
|
|
179662
|
-
* * An unbounded line portion will have fraction coordinates positive or negative Number.MAX_VALUE
|
|
179663
|
-
* @param
|
|
179664
|
-
* @param
|
|
179776
|
+
* * An unbounded line portion will have fraction coordinates positive or negative `Number.MAX_VALUE`.
|
|
179777
|
+
* @param f0 fraction that is the initial lower fraction of the active interval (e.g., 0.0 for bounded segment).
|
|
179778
|
+
* @param f1 fraction that is the initial upper fraction of the active interval (e.g., 1.0 for bounded segment).
|
|
179665
179779
|
* @param pointA segment start (fraction 0)
|
|
179666
179780
|
* @param pointB segment end (fraction 1)
|
|
179667
179781
|
* @param announce function to be called to announce a fraction interval that is within the convex clip volume.
|
|
@@ -179676,7 +179790,7 @@ class ConvexClipPlaneSet {
|
|
|
179676
179790
|
const hB = -plane.altitude(pointB);
|
|
179677
179791
|
fraction = _Geometry__WEBPACK_IMPORTED_MODULE_3__.Geometry.conditionalDivideFraction(-hA, (hB - hA));
|
|
179678
179792
|
if (fraction === undefined) {
|
|
179679
|
-
//
|
|
179793
|
+
// Line parallel to the plane. If positive, it is all OUT
|
|
179680
179794
|
if (hA > 0.0)
|
|
179681
179795
|
return false;
|
|
179682
179796
|
}
|
|
@@ -179705,7 +179819,8 @@ class ConvexClipPlaneSet {
|
|
|
179705
179819
|
}
|
|
179706
179820
|
return false;
|
|
179707
179821
|
}
|
|
179708
|
-
/**
|
|
179822
|
+
/**
|
|
179823
|
+
* Find fractional parts of the arc that are within this ClipPlaneSet, and announce each as
|
|
179709
179824
|
* * `announce(fraction, fraction, curve)`
|
|
179710
179825
|
*/
|
|
179711
179826
|
announceClippedArcIntervals(arc, announce) {
|
|
@@ -179717,7 +179832,8 @@ class ConvexClipPlaneSet {
|
|
|
179717
179832
|
arc.sweep.radiansArrayToPositivePeriodicFractions(breaks);
|
|
179718
179833
|
return _ClipUtils__WEBPACK_IMPORTED_MODULE_4__.ClipUtilities.selectIntervals01(arc, breaks, this, announce);
|
|
179719
179834
|
}
|
|
179720
|
-
/**
|
|
179835
|
+
/**
|
|
179836
|
+
* Find the parts of the (unbounded) line segment (if any) that is within the convex clip volume.
|
|
179721
179837
|
* @param pointA segment start (fraction 0)
|
|
179722
179838
|
* @param pointB segment end (fraction 1)
|
|
179723
179839
|
* @param announce function to be called to announce a fraction interval that is within the convex clip volume.
|
|
@@ -179747,7 +179863,8 @@ class ConvexClipPlaneSet {
|
|
|
179747
179863
|
return;
|
|
179748
179864
|
}
|
|
179749
179865
|
}
|
|
179750
|
-
/**
|
|
179866
|
+
/**
|
|
179867
|
+
* Clip a convex polygon to (a single) inside part and (possibly many) outside parts.
|
|
179751
179868
|
* @param xyz input polygon.
|
|
179752
179869
|
* @param outsideFragments an array to receive (via push, with no preliminary clear) outside fragments
|
|
179753
179870
|
* @param arrayCache cache for work arrays.
|
|
@@ -179790,14 +179907,15 @@ class ConvexClipPlaneSet {
|
|
|
179790
179907
|
arrayCache.dropToCache(insidePart);
|
|
179791
179908
|
return undefined;
|
|
179792
179909
|
}
|
|
179793
|
-
/**
|
|
179910
|
+
/**
|
|
179911
|
+
* Returns 1, 2, or 3 based on whether point array is strongly inside, ambiguous, or strongly outside respectively.
|
|
179794
179912
|
* * This has a peculiar expected use case as a very fast pre-filter for more precise clipping.
|
|
179795
179913
|
* * The expected point set is for a polygon.
|
|
179796
179914
|
* * Hence any clipping will eventually have to consider the lines between the points.
|
|
179797
179915
|
* * This method looks for the special case of a single clip plane that has all the points outside.
|
|
179798
179916
|
* * In this case the whole polygon must be outside.
|
|
179799
179917
|
* * Note that this does not detect a polygon that is outside but "crosses a corner" -- it is mixed with respect to
|
|
179800
|
-
*
|
|
179918
|
+
* multiple planes.
|
|
179801
179919
|
*/
|
|
179802
179920
|
classifyPointContainment(points, onIsOutside) {
|
|
179803
179921
|
let allInside = true;
|
|
@@ -179819,7 +179937,8 @@ class ConvexClipPlaneSet {
|
|
|
179819
179937
|
/**
|
|
179820
179938
|
* * Create a convex clip set for a polygon swept with possible tilt angle.
|
|
179821
179939
|
* * planes are constructed by ClipPlane.createEdgeAndUpVector, using successive points from the array.
|
|
179822
|
-
* * If the first and last points match, the polygon area is checked. If the area is negative, points are used in
|
|
179940
|
+
* * If the first and last points match, the polygon area is checked. If the area is negative, points are used in
|
|
179941
|
+
* reverse order.
|
|
179823
179942
|
* * If first and last points do not match, points are used in order given
|
|
179824
179943
|
* @param points polygon points. (Closure point optional)
|
|
179825
179944
|
* @param upVector primary sweep direction, as applied by ClipPlane.createEdgeAndUpVector
|
|
@@ -179867,7 +179986,7 @@ class ConvexClipPlaneSet {
|
|
|
179867
179986
|
this._planes.push(_ClipPlane__WEBPACK_IMPORTED_MODULE_0__.ClipPlane.createPlane(plane));
|
|
179868
179987
|
}
|
|
179869
179988
|
/**
|
|
179870
|
-
*
|
|
179989
|
+
* Test many points. Distribute them to arrays depending on in/out result.
|
|
179871
179990
|
* @param points points to test
|
|
179872
179991
|
* @param inOrOn points that are in or on the set
|
|
179873
179992
|
* @param out points that are out.
|
|
@@ -179887,8 +180006,10 @@ class ConvexClipPlaneSet {
|
|
|
179887
180006
|
/**
|
|
179888
180007
|
* Clip a polygon to the planes of the clip plane set.
|
|
179889
180008
|
* * For a convex input polygon, the output is another convex polygon.
|
|
179890
|
-
* * For a non-convex input, the output may have double-back edges along plane intersections.
|
|
179891
|
-
*
|
|
180009
|
+
* * For a non-convex input, the output may have double-back edges along plane intersections. This is still a
|
|
180010
|
+
* valid clip in a parity sense.
|
|
180011
|
+
* * The containingPlane parameter allows callers within ConvexClipPlane set to bypass planes known to contain
|
|
180012
|
+
* the polygon.
|
|
179892
180013
|
* @param input input polygon, usually convex.
|
|
179893
180014
|
* @param output output polygon
|
|
179894
180015
|
* @param work work array.
|
|
@@ -179933,7 +180054,7 @@ class ConvexClipPlaneSet {
|
|
|
179933
180054
|
const inwardNormal = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.createCrossProduct(sweepDirection.x, sweepDirection.y, sweepDirection.z, edgeVector.x, edgeVector.y, edgeVector.z);
|
|
179934
180055
|
const inwardNormalNormalized = inwardNormal.normalize();
|
|
179935
180056
|
let distance;
|
|
179936
|
-
if (inwardNormalNormalized) { //
|
|
180057
|
+
if (inwardNormalNormalized) { // should never fail... simply a check due to the format of the normalize function return
|
|
179937
180058
|
distance = inwardNormalNormalized.dotProduct(xyz0);
|
|
179938
180059
|
const clipToAdd = _ClipPlane__WEBPACK_IMPORTED_MODULE_0__.ClipPlane.createNormalAndDistance(inwardNormalNormalized, distance, false, false);
|
|
179939
180060
|
if (clipToAdd) {
|
|
@@ -179962,13 +180083,16 @@ class ConvexClipPlaneSet {
|
|
|
179962
180083
|
* * optionally throw out points that are not in the set.
|
|
179963
180084
|
* * optionally push the points in the caller-supplied point array.
|
|
179964
180085
|
* * optionally extend a caller supplied range.
|
|
179965
|
-
* * In the common case where the convex set is (a) a slab or (b) a view frustum, there will be 8 points and the
|
|
179966
|
-
*
|
|
180086
|
+
* * In the common case where the convex set is (a) a slab or (b) a view frustum, there will be 8 points and the
|
|
180087
|
+
* range is the range of the convex set.
|
|
180088
|
+
* * If the convex set is unbounded, the range only contains the range of the accepted (corner) points, and the
|
|
180089
|
+
* range is not a representative of the "range of all points in the set".
|
|
179967
180090
|
* @param transform (optional) transform to apply to the points.
|
|
179968
180091
|
* @param points (optional) array to which computed points are to be added.
|
|
179969
180092
|
* @param range (optional) range to be extended by the computed points
|
|
179970
180093
|
* @param transform (optional) transform to apply to the accepted points.
|
|
179971
|
-
* @param testContainment if true, test each point to see if it is within the convex set.
|
|
180094
|
+
* @param testContainment if true, test each point to see if it is within the convex set. (send false if confident
|
|
180095
|
+
* that the convex set is rectilinear set such as a slab. Send true if chiseled corners are possible).
|
|
179972
180096
|
* @returns number of points.
|
|
179973
180097
|
*/
|
|
179974
180098
|
computePlanePlanePlaneIntersections(points, rangeToExtend, transform, testContainment = true) {
|
|
@@ -180017,11 +180141,13 @@ class ConvexClipPlaneSet {
|
|
|
180017
180141
|
if (zHigh !== undefined)
|
|
180018
180142
|
this._planes.push(_ClipPlane__WEBPACK_IMPORTED_MODULE_0__.ClipPlane.createNormalAndDistance(_geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.create(0, 0, -1), -zHigh, invisible));
|
|
180019
180143
|
}
|
|
180020
|
-
/**
|
|
180021
|
-
*
|
|
180144
|
+
/**
|
|
180145
|
+
* Implement appendPolygonClip, as defined in interface PolygonClipper.
|
|
180022
180146
|
* @param xyz input polygon. This is not changed.
|
|
180023
|
-
* @param insideFragments Array to receive "inside" fragments.
|
|
180024
|
-
*
|
|
180147
|
+
* @param insideFragments Array to receive "inside" fragments. Each fragment is a GrowableXYZArray grabbed from
|
|
180148
|
+
* the cache. This is NOT cleared.
|
|
180149
|
+
* @param outsideFragments Array to receive "outside" fragments. Each fragment is a GrowableXYZArray grabbed from
|
|
180150
|
+
* the cache. This is NOT cleared.
|
|
180025
180151
|
* @param arrayCache cache for reusable GrowableXYZArray.
|
|
180026
180152
|
*/
|
|
180027
180153
|
appendPolygonClip(xyz, insideFragments, outsideFragments, arrayCache) {
|
|
@@ -180029,7 +180155,8 @@ class ConvexClipPlaneSet {
|
|
|
180029
180155
|
if (newInside)
|
|
180030
180156
|
insideFragments.push(newInside);
|
|
180031
180157
|
}
|
|
180032
|
-
/**
|
|
180158
|
+
/**
|
|
180159
|
+
* Create a convex clip set from a convex mesh.
|
|
180033
180160
|
* * Create a plane for each facet.
|
|
180034
180161
|
* * Assemble the planes as a single clip plane set.
|
|
180035
180162
|
* * If the facets are closed by edge pairing, use the sign of the computed volume to point the plane normals inward.
|
|
@@ -180118,11 +180245,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
180118
180245
|
*/
|
|
180119
180246
|
class UnionOfConvexClipPlaneSets {
|
|
180120
180247
|
/** (property accessor) Return the (reference to the) array of `ConvexClipPlaneSet` */
|
|
180121
|
-
get convexSets() {
|
|
180248
|
+
get convexSets() {
|
|
180249
|
+
return this._convexSets;
|
|
180250
|
+
}
|
|
180122
180251
|
constructor() {
|
|
180123
180252
|
this._convexSets = [];
|
|
180124
180253
|
}
|
|
180125
|
-
/** Return an array with the `toJSON` form of each
|
|
180254
|
+
/** Return an array with the `toJSON` form of each `ConvexClipPlaneSet` */
|
|
180126
180255
|
toJSON() {
|
|
180127
180256
|
const val = [];
|
|
180128
180257
|
for (const convex of this._convexSets)
|
|
@@ -180148,8 +180277,9 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180148
180277
|
return new UnionOfConvexClipPlaneSets();
|
|
180149
180278
|
}
|
|
180150
180279
|
/**
|
|
180151
|
-
* Return true if all member convex sets are almostEqual to corresponding members of other.
|
|
180152
|
-
*
|
|
180280
|
+
* Return true if all member convex sets are almostEqual to corresponding members of other. This includes
|
|
180281
|
+
* identical order in array.
|
|
180282
|
+
* @param other clip plane to compare.
|
|
180153
180283
|
*/
|
|
180154
180284
|
isAlmostEqual(other) {
|
|
180155
180285
|
if (this._convexSets.length !== other._convexSets.length)
|
|
@@ -180159,14 +180289,14 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180159
180289
|
return false;
|
|
180160
180290
|
return true;
|
|
180161
180291
|
}
|
|
180162
|
-
/** Create a `UnionOfConvexClipPlaneSets` with given `ConvexClipPlaneSet` members */
|
|
180292
|
+
/** Create a `UnionOfConvexClipPlaneSets` with given `ConvexClipPlaneSet` members. */
|
|
180163
180293
|
static createConvexSets(convexSets, result) {
|
|
180164
180294
|
result = result ? result : new UnionOfConvexClipPlaneSets();
|
|
180165
180295
|
for (const set of convexSets)
|
|
180166
180296
|
result._convexSets.push(set);
|
|
180167
180297
|
return result;
|
|
180168
180298
|
}
|
|
180169
|
-
/**
|
|
180299
|
+
/** Return a deep copy. */
|
|
180170
180300
|
clone(result) {
|
|
180171
180301
|
result = result ? result : new UnionOfConvexClipPlaneSets();
|
|
180172
180302
|
result._convexSets.length = 0;
|
|
@@ -180174,7 +180304,8 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180174
180304
|
result._convexSets.push(convexSet.clone());
|
|
180175
180305
|
return result;
|
|
180176
180306
|
}
|
|
180177
|
-
/**
|
|
180307
|
+
/**
|
|
180308
|
+
* Append `toAdd` to the array of `ConvexClipPlaneSet`.
|
|
180178
180309
|
* * undefined toAdd is ignored.
|
|
180179
180310
|
*/
|
|
180180
180311
|
addConvexSet(toAdd) {
|
|
@@ -180185,7 +180316,7 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180185
180316
|
* Test if there is any intersection with a ray defined by origin and direction.
|
|
180186
180317
|
* * Optionally record the range (null or otherwise) in caller-allocated result.
|
|
180187
180318
|
* * If the ray is unbounded inside the clip, result can contain positive or negative
|
|
180188
|
-
* "Geometry.largeCoordinateResult" values
|
|
180319
|
+
* "Geometry.largeCoordinateResult" values.
|
|
180189
180320
|
* * If no result is provide, there are no object allocations.
|
|
180190
180321
|
* @param maximalRange optional Range1d to receive parameters along the ray.
|
|
180191
180322
|
*/
|
|
@@ -180206,7 +180337,10 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180206
180337
|
}
|
|
180207
180338
|
return !maximalRange.isNull;
|
|
180208
180339
|
}
|
|
180209
|
-
/**
|
|
180340
|
+
/**
|
|
180341
|
+
* Return true if true is returned for any contained convex set returns true for
|
|
180342
|
+
* `convexSet.isPointInside (point, tolerance)`.
|
|
180343
|
+
*/
|
|
180210
180344
|
isPointInside(point) {
|
|
180211
180345
|
for (const convexSet of this._convexSets) {
|
|
180212
180346
|
if (convexSet.isPointInside(point)) {
|
|
@@ -180215,7 +180349,10 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180215
180349
|
}
|
|
180216
180350
|
return false;
|
|
180217
180351
|
}
|
|
180218
|
-
/**
|
|
180352
|
+
/**
|
|
180353
|
+
* Return true if true is returned for any contained convex set returns true for
|
|
180354
|
+
* `convexSet.isPointOnOrInside (point, tolerance)`.
|
|
180355
|
+
*/
|
|
180219
180356
|
isPointOnOrInside(point, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance) {
|
|
180220
180357
|
for (const convexSet of this._convexSets) {
|
|
180221
180358
|
if (convexSet.isPointOnOrInside(point, tolerance))
|
|
@@ -180223,7 +180360,10 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180223
180360
|
}
|
|
180224
180361
|
return false;
|
|
180225
180362
|
}
|
|
180226
|
-
/**
|
|
180363
|
+
/**
|
|
180364
|
+
* Return true if true is returned for any contained convex set returns true for
|
|
180365
|
+
* `convexSet.isSphereOnOrInside (point, tolerance)`.
|
|
180366
|
+
*/
|
|
180227
180367
|
isSphereInside(point, radius) {
|
|
180228
180368
|
for (const convexSet of this._convexSets) {
|
|
180229
180369
|
if (convexSet.isSphereInside(point, radius))
|
|
@@ -180231,7 +180371,7 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180231
180371
|
}
|
|
180232
180372
|
return false;
|
|
180233
180373
|
}
|
|
180234
|
-
/**
|
|
180374
|
+
/** Test if any part of a line segment is within the volume. */
|
|
180235
180375
|
isAnyPointInOrOnFromSegment(segment) {
|
|
180236
180376
|
for (const convexSet of this._convexSets) {
|
|
180237
180377
|
if (convexSet.announceClippedSegmentIntervals(0.0, 1.0, segment.point0Ref, segment.point1Ref))
|
|
@@ -180241,19 +180381,19 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180241
180381
|
}
|
|
180242
180382
|
// Intervals must be Segment1d array, as there may be multiple intervals along segment that pass through set regions,
|
|
180243
180383
|
// and so splitting the intervals into segments aids in better organization
|
|
180244
|
-
/** Returns the fractions of the segment that pass through the set region, as 1 dimensional pieces */
|
|
180384
|
+
/** Returns the fractions of the segment that pass through the set region, as 1 dimensional pieces. */
|
|
180245
180385
|
appendIntervalsFromSegment(segment, intervals) {
|
|
180246
180386
|
for (const convexSet of this._convexSets) {
|
|
180247
180387
|
convexSet.announceClippedSegmentIntervals(0.0, 1.0, segment.point0Ref, segment.point1Ref, (fraction0, fraction1) => intervals.push(_geometry3d_Segment1d__WEBPACK_IMPORTED_MODULE_3__.Segment1d.create(fraction0, fraction1)));
|
|
180248
180388
|
}
|
|
180249
180389
|
}
|
|
180250
|
-
/**
|
|
180390
|
+
/** Apply `transform` to all the ConvexClipPlaneSet's. */
|
|
180251
180391
|
transformInPlace(transform) {
|
|
180252
180392
|
for (const convexSet of this._convexSets) {
|
|
180253
180393
|
convexSet.transformInPlace(transform);
|
|
180254
180394
|
}
|
|
180255
180395
|
}
|
|
180256
|
-
/** Returns 1, 2, or 3 based on whether point is strongly inside, ambiguous, or strongly outside respectively */
|
|
180396
|
+
/** Returns 1, 2, or 3 based on whether point is strongly inside, ambiguous, or strongly outside respectively. */
|
|
180257
180397
|
classifyPointContainment(points, onIsOutside) {
|
|
180258
180398
|
for (const convexSet of this._convexSets) {
|
|
180259
180399
|
const thisStatus = convexSet.classifyPointContainment(points, onIsOutside);
|
|
@@ -180262,7 +180402,10 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180262
180402
|
}
|
|
180263
180403
|
return _ClipUtils__WEBPACK_IMPORTED_MODULE_4__.ClipPlaneContainment.StronglyOutside;
|
|
180264
180404
|
}
|
|
180265
|
-
/**
|
|
180405
|
+
/**
|
|
180406
|
+
* Clip a polygon using this ClipPlaneSet, returning new polygon boundaries. Note that each polygon may lie
|
|
180407
|
+
* next to the previous, or be disconnected.
|
|
180408
|
+
*/
|
|
180266
180409
|
polygonClip(input, output) {
|
|
180267
180410
|
output.length = 0;
|
|
180268
180411
|
if (Array.isArray(input))
|
|
@@ -180276,13 +180419,13 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180276
180419
|
}
|
|
180277
180420
|
}
|
|
180278
180421
|
/**
|
|
180279
|
-
*
|
|
180280
|
-
* * all clipPlaneSets are inspected
|
|
180422
|
+
* Announce clipSegment() for each convexSet in this ClipPlaneSet.
|
|
180423
|
+
* * all clipPlaneSets are inspected.
|
|
180281
180424
|
* * announced intervals are for each individual clipPlaneSet -- adjacent intervals are not consolidated.
|
|
180282
180425
|
* @param f0 active interval start.
|
|
180283
|
-
* @param f1 active interval end
|
|
180284
|
-
* @param pointA line segment start
|
|
180285
|
-
* @param pointB line segment end
|
|
180426
|
+
* @param f1 active interval end.
|
|
180427
|
+
* @param pointA line segment start.
|
|
180428
|
+
* @param pointB line segment end.
|
|
180286
180429
|
* @param announce function to announce interval.
|
|
180287
180430
|
* @returns Return true if any announcements are made.
|
|
180288
180431
|
*/
|
|
@@ -180294,7 +180437,8 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180294
180437
|
}
|
|
180295
180438
|
return numAnnounce > 0;
|
|
180296
180439
|
}
|
|
180297
|
-
/**
|
|
180440
|
+
/**
|
|
180441
|
+
* Find parts of an arc that are inside any member clipper.
|
|
180298
180442
|
* Announce each with `announce(startFraction, endFraction, this)`
|
|
180299
180443
|
*/
|
|
180300
180444
|
announceClippedArcIntervals(arc, announce) {
|
|
@@ -180310,12 +180454,12 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180310
180454
|
}
|
|
180311
180455
|
/**
|
|
180312
180456
|
* Collect the output from computePlanePlanePlaneIntersections in all the contained convex sets.
|
|
180313
|
-
*
|
|
180314
180457
|
* @param transform (optional) transform to apply to the points.
|
|
180315
180458
|
* @param points (optional) array to which computed points are to be added.
|
|
180316
|
-
* @param range (optional) range to be extended by the computed points
|
|
180459
|
+
* @param range (optional) range to be extended by the computed points.
|
|
180317
180460
|
* @param transform (optional) transform to apply to the accepted points.
|
|
180318
|
-
* @param testContainment if true, test each point to see if it is within the convex set
|
|
180461
|
+
* @param testContainment if true, test each point to see if it is within the convex set (send false if confident
|
|
180462
|
+
* that the convex set is rectilinear set such as a slab. Send true if chiseled corners are possible).
|
|
180319
180463
|
* @returns number of points.
|
|
180320
180464
|
*/
|
|
180321
180465
|
computePlanePlanePlaneIntersectionsInAllConvexSets(points, rangeToExtend, transform, testContainment = true) {
|
|
@@ -180329,8 +180473,9 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180329
180473
|
* Multiply all ClipPlanes DPoint4d by matrix.
|
|
180330
180474
|
* @param matrix matrix to apply.
|
|
180331
180475
|
* @param invert if true, use in verse of the matrix.
|
|
180332
|
-
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter)
|
|
180333
|
-
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect
|
|
180476
|
+
* @param transpose if true, use the transpose of the matrix (or inverse, per invert parameter).
|
|
180477
|
+
* * Note that if matrixA is applied to all of space, the matrix to send to this method to get a corresponding effect
|
|
180478
|
+
* on the plane is the inverse transpose of matrixA.
|
|
180334
180479
|
* * Callers that will apply the same matrix to many planes should pre-invert the matrix for efficiency.
|
|
180335
180480
|
* * Both params default to true to get the full effect of transforming space.
|
|
180336
180481
|
* @param matrix matrix to apply
|
|
@@ -180367,7 +180512,7 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180367
180512
|
this._convexSets.push(convexSet);
|
|
180368
180513
|
}
|
|
180369
180514
|
}
|
|
180370
|
-
/**
|
|
180515
|
+
/** Move convex sets from source.*/
|
|
180371
180516
|
takeConvexSets(source) {
|
|
180372
180517
|
let convexSet;
|
|
180373
180518
|
while ((undefined !== (convexSet = source._convexSets.pop()))) {
|
|
@@ -180377,8 +180522,10 @@ class UnionOfConvexClipPlaneSets {
|
|
|
180377
180522
|
/**
|
|
180378
180523
|
*
|
|
180379
180524
|
* @param xyz input polygon. This is not changed.
|
|
180380
|
-
* @param insideFragments Array to receive "inside" fragments.
|
|
180381
|
-
*
|
|
180525
|
+
* @param insideFragments Array to receive "inside" fragments. Each fragment is a GrowableXYZArray grabbed from
|
|
180526
|
+
* the cache. This is NOT cleared.
|
|
180527
|
+
* @param outsideFragments Array to receive "outside" fragments. Each fragment is a GrowableXYZArray grabbed from
|
|
180528
|
+
* the cache. This is NOT cleared.
|
|
180382
180529
|
* @param arrayCache cache for reusable GrowableXYZArray.
|
|
180383
180530
|
*/
|
|
180384
180531
|
appendPolygonClip(xyz, insideFragments, outsideFragments, arrayCache) {
|
|
@@ -180576,8 +180723,8 @@ class LineStringOffsetClipperContext {
|
|
|
180576
180723
|
* @param points
|
|
180577
180724
|
* @param positiveOffsetLeft offset to left. 0 is clip on the path.
|
|
180578
180725
|
* @param positiveOffsetRight offset to the right. 0 is clip on the path.
|
|
180579
|
-
* @param z0 z for lower clipping plane.
|
|
180580
|
-
* @param z1 z for upper clipping plane.
|
|
180726
|
+
* @param z0 z for lower clipping plane. If undefined, unbounded in positive z
|
|
180727
|
+
* @param z1 z for upper clipping plane. If undefined, unbounded in negative z.
|
|
180581
180728
|
*/
|
|
180582
180729
|
static createClipBetweenOffsets(points, positiveOffsetLeft, positiveOffsetRight, z0, z1) {
|
|
180583
180730
|
const context = new LineStringOffsetClipperContext(positiveOffsetLeft, positiveOffsetRight);
|
|
@@ -283013,9 +283160,9 @@ const gBase64 = {
|
|
|
283013
283160
|
|
|
283014
283161
|
/***/ }),
|
|
283015
283162
|
|
|
283016
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283163
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js":
|
|
283017
283164
|
/*!******************************************************************************************************************************!*\
|
|
283018
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283165
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***!
|
|
283019
283166
|
\******************************************************************************************************************************/
|
|
283020
283167
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283021
283168
|
|
|
@@ -283032,9 +283179,9 @@ function _arrayLikeToArray(arr, len) {
|
|
|
283032
283179
|
|
|
283033
283180
|
/***/ }),
|
|
283034
283181
|
|
|
283035
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283182
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js":
|
|
283036
283183
|
/*!****************************************************************************************************************************!*\
|
|
283037
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283184
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js ***!
|
|
283038
283185
|
\****************************************************************************************************************************/
|
|
283039
283186
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283040
283187
|
|
|
@@ -283049,9 +283196,9 @@ function _arrayWithHoles(arr) {
|
|
|
283049
283196
|
|
|
283050
283197
|
/***/ }),
|
|
283051
283198
|
|
|
283052
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283199
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js":
|
|
283053
283200
|
/*!***********************************************************************************************************************************!*\
|
|
283054
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283201
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js ***!
|
|
283055
283202
|
\***********************************************************************************************************************************/
|
|
283056
283203
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283057
283204
|
|
|
@@ -283069,9 +283216,9 @@ function _assertThisInitialized(self) {
|
|
|
283069
283216
|
|
|
283070
283217
|
/***/ }),
|
|
283071
283218
|
|
|
283072
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283219
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/classCallCheck.js":
|
|
283073
283220
|
/*!****************************************************************************************************************************!*\
|
|
283074
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283221
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***!
|
|
283075
283222
|
\****************************************************************************************************************************/
|
|
283076
283223
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283077
283224
|
|
|
@@ -283088,9 +283235,9 @@ function _classCallCheck(instance, Constructor) {
|
|
|
283088
283235
|
|
|
283089
283236
|
/***/ }),
|
|
283090
283237
|
|
|
283091
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283238
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/createClass.js":
|
|
283092
283239
|
/*!*************************************************************************************************************************!*\
|
|
283093
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283240
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/createClass.js ***!
|
|
283094
283241
|
\*************************************************************************************************************************/
|
|
283095
283242
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283096
283243
|
|
|
@@ -283099,7 +283246,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283099
283246
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283100
283247
|
/* harmony export */ "default": () => (/* binding */ _createClass)
|
|
283101
283248
|
/* harmony export */ });
|
|
283102
|
-
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283249
|
+
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
|
283103
283250
|
|
|
283104
283251
|
function _defineProperties(target, props) {
|
|
283105
283252
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -283121,9 +283268,9 @@ function _createClass(Constructor, protoProps, staticProps) {
|
|
|
283121
283268
|
|
|
283122
283269
|
/***/ }),
|
|
283123
283270
|
|
|
283124
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283271
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/defineProperty.js":
|
|
283125
283272
|
/*!****************************************************************************************************************************!*\
|
|
283126
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283273
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***!
|
|
283127
283274
|
\****************************************************************************************************************************/
|
|
283128
283275
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283129
283276
|
|
|
@@ -283132,7 +283279,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283132
283279
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283133
283280
|
/* harmony export */ "default": () => (/* binding */ _defineProperty)
|
|
283134
283281
|
/* harmony export */ });
|
|
283135
|
-
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283282
|
+
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
|
283136
283283
|
|
|
283137
283284
|
function _defineProperty(obj, key, value) {
|
|
283138
283285
|
key = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(key);
|
|
@@ -283151,9 +283298,9 @@ function _defineProperty(obj, key, value) {
|
|
|
283151
283298
|
|
|
283152
283299
|
/***/ }),
|
|
283153
283300
|
|
|
283154
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283301
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js":
|
|
283155
283302
|
/*!****************************************************************************************************************************!*\
|
|
283156
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283303
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js ***!
|
|
283157
283304
|
\****************************************************************************************************************************/
|
|
283158
283305
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283159
283306
|
|
|
@@ -283171,9 +283318,9 @@ function _getPrototypeOf(o) {
|
|
|
283171
283318
|
|
|
283172
283319
|
/***/ }),
|
|
283173
283320
|
|
|
283174
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283321
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/inherits.js":
|
|
283175
283322
|
/*!**********************************************************************************************************************!*\
|
|
283176
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283323
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/inherits.js ***!
|
|
283177
283324
|
\**********************************************************************************************************************/
|
|
283178
283325
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283179
283326
|
|
|
@@ -283182,7 +283329,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283182
283329
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283183
283330
|
/* harmony export */ "default": () => (/* binding */ _inherits)
|
|
283184
283331
|
/* harmony export */ });
|
|
283185
|
-
/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283332
|
+
/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js");
|
|
283186
283333
|
|
|
283187
283334
|
function _inherits(subClass, superClass) {
|
|
283188
283335
|
if (typeof superClass !== "function" && superClass !== null) {
|
|
@@ -283203,9 +283350,9 @@ function _inherits(subClass, superClass) {
|
|
|
283203
283350
|
|
|
283204
283351
|
/***/ }),
|
|
283205
283352
|
|
|
283206
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283353
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/iterableToArray.js":
|
|
283207
283354
|
/*!*****************************************************************************************************************************!*\
|
|
283208
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283355
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***!
|
|
283209
283356
|
\*****************************************************************************************************************************/
|
|
283210
283357
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283211
283358
|
|
|
@@ -283220,9 +283367,9 @@ function _iterableToArray(iter) {
|
|
|
283220
283367
|
|
|
283221
283368
|
/***/ }),
|
|
283222
283369
|
|
|
283223
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283370
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js":
|
|
283224
283371
|
/*!*****************************************************************************************************************************!*\
|
|
283225
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283372
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js ***!
|
|
283226
283373
|
\*****************************************************************************************************************************/
|
|
283227
283374
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283228
283375
|
|
|
@@ -283237,9 +283384,9 @@ function _nonIterableRest() {
|
|
|
283237
283384
|
|
|
283238
283385
|
/***/ }),
|
|
283239
283386
|
|
|
283240
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283387
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js":
|
|
283241
283388
|
/*!***************************************************************************************************************************************!*\
|
|
283242
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283389
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js ***!
|
|
283243
283390
|
\***************************************************************************************************************************************/
|
|
283244
283391
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283245
283392
|
|
|
@@ -283248,8 +283395,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283248
283395
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283249
283396
|
/* harmony export */ "default": () => (/* binding */ _possibleConstructorReturn)
|
|
283250
283397
|
/* harmony export */ });
|
|
283251
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283252
|
-
/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283398
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
283399
|
+
/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js");
|
|
283253
283400
|
|
|
283254
283401
|
|
|
283255
283402
|
function _possibleConstructorReturn(self, call) {
|
|
@@ -283263,9 +283410,9 @@ function _possibleConstructorReturn(self, call) {
|
|
|
283263
283410
|
|
|
283264
283411
|
/***/ }),
|
|
283265
283412
|
|
|
283266
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283413
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js":
|
|
283267
283414
|
/*!****************************************************************************************************************************!*\
|
|
283268
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283415
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***!
|
|
283269
283416
|
\****************************************************************************************************************************/
|
|
283270
283417
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283271
283418
|
|
|
@@ -283284,9 +283431,9 @@ function _setPrototypeOf(o, p) {
|
|
|
283284
283431
|
|
|
283285
283432
|
/***/ }),
|
|
283286
283433
|
|
|
283287
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283434
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toArray.js":
|
|
283288
283435
|
/*!*********************************************************************************************************************!*\
|
|
283289
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283436
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toArray.js ***!
|
|
283290
283437
|
\*********************************************************************************************************************/
|
|
283291
283438
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283292
283439
|
|
|
@@ -283295,10 +283442,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283295
283442
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283296
283443
|
/* harmony export */ "default": () => (/* binding */ _toArray)
|
|
283297
283444
|
/* harmony export */ });
|
|
283298
|
-
/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283299
|
-
/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283300
|
-
/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283301
|
-
/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283445
|
+
/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js");
|
|
283446
|
+
/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/iterableToArray.js");
|
|
283447
|
+
/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js");
|
|
283448
|
+
/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js");
|
|
283302
283449
|
|
|
283303
283450
|
|
|
283304
283451
|
|
|
@@ -283309,9 +283456,9 @@ function _toArray(arr) {
|
|
|
283309
283456
|
|
|
283310
283457
|
/***/ }),
|
|
283311
283458
|
|
|
283312
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283459
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPrimitive.js":
|
|
283313
283460
|
/*!*************************************************************************************************************************!*\
|
|
283314
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283461
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***!
|
|
283315
283462
|
\*************************************************************************************************************************/
|
|
283316
283463
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283317
283464
|
|
|
@@ -283320,7 +283467,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283320
283467
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283321
283468
|
/* harmony export */ "default": () => (/* binding */ _toPrimitive)
|
|
283322
283469
|
/* harmony export */ });
|
|
283323
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283470
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
283324
283471
|
|
|
283325
283472
|
function _toPrimitive(input, hint) {
|
|
283326
283473
|
if ((0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(input) !== "object" || input === null) return input;
|
|
@@ -283335,9 +283482,9 @@ function _toPrimitive(input, hint) {
|
|
|
283335
283482
|
|
|
283336
283483
|
/***/ }),
|
|
283337
283484
|
|
|
283338
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283485
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js":
|
|
283339
283486
|
/*!***************************************************************************************************************************!*\
|
|
283340
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283487
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***!
|
|
283341
283488
|
\***************************************************************************************************************************/
|
|
283342
283489
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283343
283490
|
|
|
@@ -283346,8 +283493,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283346
283493
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283347
283494
|
/* harmony export */ "default": () => (/* binding */ _toPropertyKey)
|
|
283348
283495
|
/* harmony export */ });
|
|
283349
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283350
|
-
/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283496
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
283497
|
+
/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toPrimitive.js");
|
|
283351
283498
|
|
|
283352
283499
|
|
|
283353
283500
|
function _toPropertyKey(arg) {
|
|
@@ -283357,9 +283504,9 @@ function _toPropertyKey(arg) {
|
|
|
283357
283504
|
|
|
283358
283505
|
/***/ }),
|
|
283359
283506
|
|
|
283360
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283507
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js":
|
|
283361
283508
|
/*!********************************************************************************************************************!*\
|
|
283362
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283509
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js ***!
|
|
283363
283510
|
\********************************************************************************************************************/
|
|
283364
283511
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283365
283512
|
|
|
@@ -283380,9 +283527,9 @@ function _typeof(obj) {
|
|
|
283380
283527
|
|
|
283381
283528
|
/***/ }),
|
|
283382
283529
|
|
|
283383
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283530
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js":
|
|
283384
283531
|
/*!****************************************************************************************************************************************!*\
|
|
283385
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283532
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***!
|
|
283386
283533
|
\****************************************************************************************************************************************/
|
|
283387
283534
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
283388
283535
|
|
|
@@ -283391,7 +283538,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283391
283538
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
283392
283539
|
/* harmony export */ "default": () => (/* binding */ _unsupportedIterableToArray)
|
|
283393
283540
|
/* harmony export */ });
|
|
283394
|
-
/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283541
|
+
/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js");
|
|
283395
283542
|
|
|
283396
283543
|
function _unsupportedIterableToArray(o, minLen) {
|
|
283397
283544
|
if (!o) return;
|
|
@@ -283825,15 +283972,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
283825
283972
|
/* harmony export */ t: () => (/* binding */ t),
|
|
283826
283973
|
/* harmony export */ use: () => (/* binding */ use)
|
|
283827
283974
|
/* harmony export */ });
|
|
283828
|
-
/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283829
|
-
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283830
|
-
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283831
|
-
/* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/assertThisInitialized */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283832
|
-
/* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inherits */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283833
|
-
/* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/esm/possibleConstructorReturn */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283834
|
-
/* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/esm/getPrototypeOf */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283835
|
-
/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283836
|
-
/* harmony import */ var _babel_runtime_helpers_esm_toArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toArray */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.
|
|
283975
|
+
/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
283976
|
+
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
|
|
283977
|
+
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/createClass.js");
|
|
283978
|
+
/* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/assertThisInitialized */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js");
|
|
283979
|
+
/* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inherits */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/inherits.js");
|
|
283980
|
+
/* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/esm/possibleConstructorReturn */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js");
|
|
283981
|
+
/* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/esm/getPrototypeOf */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js");
|
|
283982
|
+
/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/defineProperty.js");
|
|
283983
|
+
/* harmony import */ var _babel_runtime_helpers_esm_toArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toArray */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/toArray.js");
|
|
283837
283984
|
|
|
283838
283985
|
|
|
283839
283986
|
|
|
@@ -286713,7 +286860,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
|
|
|
286713
286860
|
/***/ ((module) => {
|
|
286714
286861
|
|
|
286715
286862
|
"use strict";
|
|
286716
|
-
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.
|
|
286863
|
+
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.72","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run -s webpackTests && certa -r chrome","cover":"npm -s test","test:debug":"certa -r chrome --debug","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.1.0-dev.72","@itwin/core-bentley":"workspace:^4.1.0-dev.72","@itwin/core-common":"workspace:^4.1.0-dev.72","@itwin/core-geometry":"workspace:^4.1.0-dev.72","@itwin/core-orbitgt":"workspace:^4.1.0-dev.72","@itwin/core-quantity":"workspace:^4.1.0-dev.72"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/certa":"workspace:*","@itwin/eslint-plugin":"4.0.0-dev.44","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"18.16.1","@types/sinon":"^10.0.15","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^8.44.0","glob":"^7.1.2","mocha":"^10.0.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^15.0.4","source-map-loader":"^4.0.0","typescript":"~5.0.2","webpack":"^5.76.0"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.0.0","@itwin/object-storage-core":"^2.0.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"}}');
|
|
286717
286864
|
|
|
286718
286865
|
/***/ })
|
|
286719
286866
|
|