@itwin/rpcinterface-full-stack-tests 4.3.0-dev.1 → 4.3.0-dev.10
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/bundled-tests.js +937 -778
- package/lib/dist/bundled-tests.js.map +1 -1
- package/lib/dist/core_frontend_lib_esm_ApproximateTerrainHeightsProps_js.bundled-tests.js.map +1 -1
- package/lib/dist/{vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd.bundled-tests.js → vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_14_node_modules_loaders_gl_draco_d-aa4ff5.bundled-tests.js} +142 -122
- package/lib/dist/{vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_7_node_modules_loaders_gl_draco_di-02c2bd.bundled-tests.js.map → vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_14_node_modules_loaders_gl_draco_d-aa4ff5.bundled-tests.js.map} +1 -1
- package/package.json +14 -14
- package/lib/dist/_0062.bundled-tests.js +0 -14
- package/lib/dist/_0062.bundled-tests.js.map +0 -1
|
@@ -21,53 +21,53 @@
|
|
|
21
21
|
|
|
22
22
|
/***/ }),
|
|
23
23
|
|
|
24
|
-
/***/ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
24
|
+
/***/ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.16/node_modules/@itwin/certa/lib/utils/CallbackUtils.js":
|
|
25
25
|
/*!*********************************************************************************************************************!*\
|
|
26
|
-
!*** ../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
26
|
+
!*** ../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.16/node_modules/@itwin/certa/lib/utils/CallbackUtils.js ***!
|
|
27
27
|
\*********************************************************************************************************************/
|
|
28
28
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
29
29
|
|
|
30
30
|
"use strict";
|
|
31
|
-
|
|
32
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
33
|
-
exports.executeBackendCallback = exports.registerBackendCallback = exports.executeRegisteredCallback = exports.getCallbacksRegisteredOnBackend = void 0;
|
|
34
|
-
const isFrontend = (typeof (window) !== "undefined");
|
|
35
|
-
/** @internal */
|
|
36
|
-
function getCallbacksRegisteredOnBackend() {
|
|
37
|
-
if (isFrontend)
|
|
38
|
-
throw new Error("This should only be called on the backend!");
|
|
39
|
-
__webpack_require__.g._CertaRegisteredCallbacks = __webpack_require__.g._CertaRegisteredCallbacks || {};
|
|
40
|
-
return __webpack_require__.g._CertaRegisteredCallbacks;
|
|
41
|
-
}
|
|
42
|
-
exports.getCallbacksRegisteredOnBackend = getCallbacksRegisteredOnBackend;
|
|
43
|
-
/** @internal */
|
|
44
|
-
function executeRegisteredCallback(name, args) {
|
|
45
|
-
const registeredCallbacks = getCallbacksRegisteredOnBackend();
|
|
46
|
-
if (!(name in registeredCallbacks))
|
|
47
|
-
throw new Error(`Unknown certa backend callback "${name}"`);
|
|
48
|
-
return registeredCallbacks[name](...args);
|
|
49
|
-
}
|
|
50
|
-
exports.executeRegisteredCallback = executeRegisteredCallback;
|
|
51
|
-
function registerBackendCallback(name, cb) {
|
|
52
|
-
if (isFrontend)
|
|
53
|
-
throw new Error("This should only be called on the backend!");
|
|
54
|
-
__webpack_require__.g._CertaRegisteredCallbacks = __webpack_require__.g._CertaRegisteredCallbacks || {};
|
|
55
|
-
__webpack_require__.g._CertaRegisteredCallbacks[name] = cb;
|
|
56
|
-
}
|
|
57
|
-
exports.registerBackendCallback = registerBackendCallback;
|
|
58
|
-
async function executeBackendCallback(name, ...args) {
|
|
59
|
-
if (!isFrontend)
|
|
60
|
-
return executeRegisteredCallback(name, args);
|
|
61
|
-
return window._CertaSendToBackend(name, args);
|
|
62
|
-
}
|
|
63
|
-
exports.executeBackendCallback = executeBackendCallback;
|
|
31
|
+
|
|
32
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
33
|
+
exports.executeBackendCallback = exports.registerBackendCallback = exports.executeRegisteredCallback = exports.getCallbacksRegisteredOnBackend = void 0;
|
|
34
|
+
const isFrontend = (typeof (window) !== "undefined");
|
|
35
|
+
/** @internal */
|
|
36
|
+
function getCallbacksRegisteredOnBackend() {
|
|
37
|
+
if (isFrontend)
|
|
38
|
+
throw new Error("This should only be called on the backend!");
|
|
39
|
+
__webpack_require__.g._CertaRegisteredCallbacks = __webpack_require__.g._CertaRegisteredCallbacks || {};
|
|
40
|
+
return __webpack_require__.g._CertaRegisteredCallbacks;
|
|
41
|
+
}
|
|
42
|
+
exports.getCallbacksRegisteredOnBackend = getCallbacksRegisteredOnBackend;
|
|
43
|
+
/** @internal */
|
|
44
|
+
function executeRegisteredCallback(name, args) {
|
|
45
|
+
const registeredCallbacks = getCallbacksRegisteredOnBackend();
|
|
46
|
+
if (!(name in registeredCallbacks))
|
|
47
|
+
throw new Error(`Unknown certa backend callback "${name}"`);
|
|
48
|
+
return registeredCallbacks[name](...args);
|
|
49
|
+
}
|
|
50
|
+
exports.executeRegisteredCallback = executeRegisteredCallback;
|
|
51
|
+
function registerBackendCallback(name, cb) {
|
|
52
|
+
if (isFrontend)
|
|
53
|
+
throw new Error("This should only be called on the backend!");
|
|
54
|
+
__webpack_require__.g._CertaRegisteredCallbacks = __webpack_require__.g._CertaRegisteredCallbacks || {};
|
|
55
|
+
__webpack_require__.g._CertaRegisteredCallbacks[name] = cb;
|
|
56
|
+
}
|
|
57
|
+
exports.registerBackendCallback = registerBackendCallback;
|
|
58
|
+
async function executeBackendCallback(name, ...args) {
|
|
59
|
+
if (!isFrontend)
|
|
60
|
+
return executeRegisteredCallback(name, args);
|
|
61
|
+
return window._CertaSendToBackend(name, args);
|
|
62
|
+
}
|
|
63
|
+
exports.executeBackendCallback = executeBackendCallback;
|
|
64
64
|
|
|
65
65
|
|
|
66
66
|
/***/ }),
|
|
67
67
|
|
|
68
|
-
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
68
|
+
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/FrontendIModelsAccess.js":
|
|
69
69
|
/*!*****************************************************************************************************************************************************************************************!*\
|
|
70
|
-
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
70
|
+
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/FrontendIModelsAccess.js ***!
|
|
71
71
|
\*****************************************************************************************************************************************************************************************/
|
|
72
72
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
73
73
|
|
|
@@ -80,7 +80,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
80
80
|
/* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
|
|
81
81
|
/* harmony import */ var _itwin_core_frontend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
|
|
82
82
|
/* harmony import */ var _itwin_imodels_client_management__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @itwin/imodels-client-management */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-client-management@3.1.0/node_modules/@itwin/imodels-client-management/lib/esm/index.js");
|
|
83
|
-
/* harmony import */ var _interface_adapters_AccessTokenAdapter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./interface-adapters/AccessTokenAdapter */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
83
|
+
/* harmony import */ var _interface_adapters_AccessTokenAdapter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./interface-adapters/AccessTokenAdapter */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/interface-adapters/AccessTokenAdapter.js");
|
|
84
84
|
/*---------------------------------------------------------------------------------------------
|
|
85
85
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
86
86
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -186,9 +186,9 @@ class FrontendIModelsAccess {
|
|
|
186
186
|
|
|
187
187
|
/***/ }),
|
|
188
188
|
|
|
189
|
-
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
189
|
+
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js":
|
|
190
190
|
/*!*************************************************************************************************************************************************************************!*\
|
|
191
|
-
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
191
|
+
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js ***!
|
|
192
192
|
\*************************************************************************************************************************************************************************/
|
|
193
193
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
194
194
|
|
|
@@ -198,8 +198,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
198
198
|
/* harmony export */ AccessTokenAdapter: () => (/* reexport safe */ _interface_adapters_AccessTokenAdapter__WEBPACK_IMPORTED_MODULE_0__.AccessTokenAdapter),
|
|
199
199
|
/* harmony export */ FrontendIModelsAccess: () => (/* reexport safe */ _FrontendIModelsAccess__WEBPACK_IMPORTED_MODULE_1__.FrontendIModelsAccess)
|
|
200
200
|
/* harmony export */ });
|
|
201
|
-
/* harmony import */ var _interface_adapters_AccessTokenAdapter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./interface-adapters/AccessTokenAdapter */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
202
|
-
/* harmony import */ var _FrontendIModelsAccess__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FrontendIModelsAccess */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
201
|
+
/* harmony import */ var _interface_adapters_AccessTokenAdapter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./interface-adapters/AccessTokenAdapter */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/interface-adapters/AccessTokenAdapter.js");
|
|
202
|
+
/* harmony import */ var _FrontendIModelsAccess__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FrontendIModelsAccess */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/FrontendIModelsAccess.js");
|
|
203
203
|
/*---------------------------------------------------------------------------------------------
|
|
204
204
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
205
205
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -210,9 +210,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
210
210
|
|
|
211
211
|
/***/ }),
|
|
212
212
|
|
|
213
|
-
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
213
|
+
/***/ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/interface-adapters/AccessTokenAdapter.js":
|
|
214
214
|
/*!*********************************************************************************************************************************************************************************************************!*\
|
|
215
|
-
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
215
|
+
!*** ../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/interface-adapters/AccessTokenAdapter.js ***!
|
|
216
216
|
\*********************************************************************************************************************************************************************************************************/
|
|
217
217
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
218
218
|
|
|
@@ -3195,7 +3195,7 @@ exports.getAccessTokenFromBackend = exports.getTokenCallbackName = void 0;
|
|
|
3195
3195
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3196
3196
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
3197
3197
|
*--------------------------------------------------------------------------------------------*/
|
|
3198
|
-
const CallbackUtils_1 = __webpack_require__(/*! @itwin/certa/lib/utils/CallbackUtils */ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.
|
|
3198
|
+
const CallbackUtils_1 = __webpack_require__(/*! @itwin/certa/lib/utils/CallbackUtils */ "../../common/temp/node_modules/.pnpm/@itwin+certa@3.7.16/node_modules/@itwin/certa/lib/utils/CallbackUtils.js");
|
|
3199
3199
|
// Shared by both the frontend and backend side of the tests
|
|
3200
3200
|
exports.getTokenCallbackName = "getToken";
|
|
3201
3201
|
async function getAccessTokenFromBackend(user, oidcConfig) {
|
|
@@ -9891,7 +9891,7 @@ function BufferBigIntNotDefined () {
|
|
|
9891
9891
|
"use strict";
|
|
9892
9892
|
|
|
9893
9893
|
/* eslint-disable no-invalid-this */
|
|
9894
|
-
let checkError = __webpack_require__(/*! check-error */ "../../common/temp/node_modules/.pnpm/check-error@1.0.
|
|
9894
|
+
let checkError = __webpack_require__(/*! check-error */ "../../common/temp/node_modules/.pnpm/check-error@1.0.3/node_modules/check-error/index.js");
|
|
9895
9895
|
|
|
9896
9896
|
module.exports = (chai, utils) => {
|
|
9897
9897
|
const Assertion = chai.Assertion;
|
|
@@ -18939,7 +18939,7 @@ exports.getOperator = __webpack_require__(/*! ./getOperator */ "../../common/tem
|
|
|
18939
18939
|
// https://github.com/joyent/node/blob/f8c335d0caf47f16d31413f89aa28eda3878e3aa/lib/util.js
|
|
18940
18940
|
|
|
18941
18941
|
var getName = __webpack_require__(/*! get-func-name */ "../../common/temp/node_modules/.pnpm/get-func-name@2.0.2/node_modules/get-func-name/index.js");
|
|
18942
|
-
var loupe = __webpack_require__(/*! loupe */ "../../common/temp/node_modules/.pnpm/loupe@2.3.
|
|
18942
|
+
var loupe = __webpack_require__(/*! loupe */ "../../common/temp/node_modules/.pnpm/loupe@2.3.7/node_modules/loupe/loupe.js");
|
|
18943
18943
|
var config = __webpack_require__(/*! ../config */ "../../common/temp/node_modules/.pnpm/chai@4.3.10/node_modules/chai/lib/chai/config.js");
|
|
18944
18944
|
|
|
18945
18945
|
module.exports = inspect;
|
|
@@ -19634,189 +19634,6 @@ module.exports = function transferFlags(assertion, object, includeAll) {
|
|
|
19634
19634
|
};
|
|
19635
19635
|
|
|
19636
19636
|
|
|
19637
|
-
/***/ }),
|
|
19638
|
-
|
|
19639
|
-
/***/ "../../common/temp/node_modules/.pnpm/check-error@1.0.2/node_modules/check-error/index.js":
|
|
19640
|
-
/*!************************************************************************************************!*\
|
|
19641
|
-
!*** ../../common/temp/node_modules/.pnpm/check-error@1.0.2/node_modules/check-error/index.js ***!
|
|
19642
|
-
\************************************************************************************************/
|
|
19643
|
-
/***/ ((module) => {
|
|
19644
|
-
|
|
19645
|
-
"use strict";
|
|
19646
|
-
|
|
19647
|
-
|
|
19648
|
-
/* !
|
|
19649
|
-
* Chai - checkError utility
|
|
19650
|
-
* Copyright(c) 2012-2016 Jake Luer <jake@alogicalparadox.com>
|
|
19651
|
-
* MIT Licensed
|
|
19652
|
-
*/
|
|
19653
|
-
|
|
19654
|
-
/**
|
|
19655
|
-
* ### .checkError
|
|
19656
|
-
*
|
|
19657
|
-
* Checks that an error conforms to a given set of criteria and/or retrieves information about it.
|
|
19658
|
-
*
|
|
19659
|
-
* @api public
|
|
19660
|
-
*/
|
|
19661
|
-
|
|
19662
|
-
/**
|
|
19663
|
-
* ### .compatibleInstance(thrown, errorLike)
|
|
19664
|
-
*
|
|
19665
|
-
* Checks if two instances are compatible (strict equal).
|
|
19666
|
-
* Returns false if errorLike is not an instance of Error, because instances
|
|
19667
|
-
* can only be compatible if they're both error instances.
|
|
19668
|
-
*
|
|
19669
|
-
* @name compatibleInstance
|
|
19670
|
-
* @param {Error} thrown error
|
|
19671
|
-
* @param {Error|ErrorConstructor} errorLike object to compare against
|
|
19672
|
-
* @namespace Utils
|
|
19673
|
-
* @api public
|
|
19674
|
-
*/
|
|
19675
|
-
|
|
19676
|
-
function compatibleInstance(thrown, errorLike) {
|
|
19677
|
-
return errorLike instanceof Error && thrown === errorLike;
|
|
19678
|
-
}
|
|
19679
|
-
|
|
19680
|
-
/**
|
|
19681
|
-
* ### .compatibleConstructor(thrown, errorLike)
|
|
19682
|
-
*
|
|
19683
|
-
* Checks if two constructors are compatible.
|
|
19684
|
-
* This function can receive either an error constructor or
|
|
19685
|
-
* an error instance as the `errorLike` argument.
|
|
19686
|
-
* Constructors are compatible if they're the same or if one is
|
|
19687
|
-
* an instance of another.
|
|
19688
|
-
*
|
|
19689
|
-
* @name compatibleConstructor
|
|
19690
|
-
* @param {Error} thrown error
|
|
19691
|
-
* @param {Error|ErrorConstructor} errorLike object to compare against
|
|
19692
|
-
* @namespace Utils
|
|
19693
|
-
* @api public
|
|
19694
|
-
*/
|
|
19695
|
-
|
|
19696
|
-
function compatibleConstructor(thrown, errorLike) {
|
|
19697
|
-
if (errorLike instanceof Error) {
|
|
19698
|
-
// If `errorLike` is an instance of any error we compare their constructors
|
|
19699
|
-
return thrown.constructor === errorLike.constructor || thrown instanceof errorLike.constructor;
|
|
19700
|
-
} else if (errorLike.prototype instanceof Error || errorLike === Error) {
|
|
19701
|
-
// If `errorLike` is a constructor that inherits from Error, we compare `thrown` to `errorLike` directly
|
|
19702
|
-
return thrown.constructor === errorLike || thrown instanceof errorLike;
|
|
19703
|
-
}
|
|
19704
|
-
|
|
19705
|
-
return false;
|
|
19706
|
-
}
|
|
19707
|
-
|
|
19708
|
-
/**
|
|
19709
|
-
* ### .compatibleMessage(thrown, errMatcher)
|
|
19710
|
-
*
|
|
19711
|
-
* Checks if an error's message is compatible with a matcher (String or RegExp).
|
|
19712
|
-
* If the message contains the String or passes the RegExp test,
|
|
19713
|
-
* it is considered compatible.
|
|
19714
|
-
*
|
|
19715
|
-
* @name compatibleMessage
|
|
19716
|
-
* @param {Error} thrown error
|
|
19717
|
-
* @param {String|RegExp} errMatcher to look for into the message
|
|
19718
|
-
* @namespace Utils
|
|
19719
|
-
* @api public
|
|
19720
|
-
*/
|
|
19721
|
-
|
|
19722
|
-
function compatibleMessage(thrown, errMatcher) {
|
|
19723
|
-
var comparisonString = typeof thrown === 'string' ? thrown : thrown.message;
|
|
19724
|
-
if (errMatcher instanceof RegExp) {
|
|
19725
|
-
return errMatcher.test(comparisonString);
|
|
19726
|
-
} else if (typeof errMatcher === 'string') {
|
|
19727
|
-
return comparisonString.indexOf(errMatcher) !== -1; // eslint-disable-line no-magic-numbers
|
|
19728
|
-
}
|
|
19729
|
-
|
|
19730
|
-
return false;
|
|
19731
|
-
}
|
|
19732
|
-
|
|
19733
|
-
/**
|
|
19734
|
-
* ### .getFunctionName(constructorFn)
|
|
19735
|
-
*
|
|
19736
|
-
* Returns the name of a function.
|
|
19737
|
-
* This also includes a polyfill function if `constructorFn.name` is not defined.
|
|
19738
|
-
*
|
|
19739
|
-
* @name getFunctionName
|
|
19740
|
-
* @param {Function} constructorFn
|
|
19741
|
-
* @namespace Utils
|
|
19742
|
-
* @api private
|
|
19743
|
-
*/
|
|
19744
|
-
|
|
19745
|
-
var functionNameMatch = /\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\(\/]+)/;
|
|
19746
|
-
function getFunctionName(constructorFn) {
|
|
19747
|
-
var name = '';
|
|
19748
|
-
if (typeof constructorFn.name === 'undefined') {
|
|
19749
|
-
// Here we run a polyfill if constructorFn.name is not defined
|
|
19750
|
-
var match = String(constructorFn).match(functionNameMatch);
|
|
19751
|
-
if (match) {
|
|
19752
|
-
name = match[1];
|
|
19753
|
-
}
|
|
19754
|
-
} else {
|
|
19755
|
-
name = constructorFn.name;
|
|
19756
|
-
}
|
|
19757
|
-
|
|
19758
|
-
return name;
|
|
19759
|
-
}
|
|
19760
|
-
|
|
19761
|
-
/**
|
|
19762
|
-
* ### .getConstructorName(errorLike)
|
|
19763
|
-
*
|
|
19764
|
-
* Gets the constructor name for an Error instance or constructor itself.
|
|
19765
|
-
*
|
|
19766
|
-
* @name getConstructorName
|
|
19767
|
-
* @param {Error|ErrorConstructor} errorLike
|
|
19768
|
-
* @namespace Utils
|
|
19769
|
-
* @api public
|
|
19770
|
-
*/
|
|
19771
|
-
|
|
19772
|
-
function getConstructorName(errorLike) {
|
|
19773
|
-
var constructorName = errorLike;
|
|
19774
|
-
if (errorLike instanceof Error) {
|
|
19775
|
-
constructorName = getFunctionName(errorLike.constructor);
|
|
19776
|
-
} else if (typeof errorLike === 'function') {
|
|
19777
|
-
// If `err` is not an instance of Error it is an error constructor itself or another function.
|
|
19778
|
-
// If we've got a common function we get its name, otherwise we may need to create a new instance
|
|
19779
|
-
// of the error just in case it's a poorly-constructed error. Please see chaijs/chai/issues/45 to know more.
|
|
19780
|
-
constructorName = getFunctionName(errorLike).trim() ||
|
|
19781
|
-
getFunctionName(new errorLike()); // eslint-disable-line new-cap
|
|
19782
|
-
}
|
|
19783
|
-
|
|
19784
|
-
return constructorName;
|
|
19785
|
-
}
|
|
19786
|
-
|
|
19787
|
-
/**
|
|
19788
|
-
* ### .getMessage(errorLike)
|
|
19789
|
-
*
|
|
19790
|
-
* Gets the error message from an error.
|
|
19791
|
-
* If `err` is a String itself, we return it.
|
|
19792
|
-
* If the error has no message, we return an empty string.
|
|
19793
|
-
*
|
|
19794
|
-
* @name getMessage
|
|
19795
|
-
* @param {Error|String} errorLike
|
|
19796
|
-
* @namespace Utils
|
|
19797
|
-
* @api public
|
|
19798
|
-
*/
|
|
19799
|
-
|
|
19800
|
-
function getMessage(errorLike) {
|
|
19801
|
-
var msg = '';
|
|
19802
|
-
if (errorLike && errorLike.message) {
|
|
19803
|
-
msg = errorLike.message;
|
|
19804
|
-
} else if (typeof errorLike === 'string') {
|
|
19805
|
-
msg = errorLike;
|
|
19806
|
-
}
|
|
19807
|
-
|
|
19808
|
-
return msg;
|
|
19809
|
-
}
|
|
19810
|
-
|
|
19811
|
-
module.exports = {
|
|
19812
|
-
compatibleInstance: compatibleInstance,
|
|
19813
|
-
compatibleConstructor: compatibleConstructor,
|
|
19814
|
-
compatibleMessage: compatibleMessage,
|
|
19815
|
-
getMessage: getMessage,
|
|
19816
|
-
getConstructorName: getConstructorName,
|
|
19817
|
-
};
|
|
19818
|
-
|
|
19819
|
-
|
|
19820
19637
|
/***/ }),
|
|
19821
19638
|
|
|
19822
19639
|
/***/ "../../common/temp/node_modules/.pnpm/check-error@1.0.3/node_modules/check-error/index.js":
|
|
@@ -21138,8 +20955,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
21138
20955
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
21139
20956
|
/* harmony export */ "default": () => (/* binding */ Browser)
|
|
21140
20957
|
/* harmony export */ });
|
|
21141
|
-
/* 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.
|
|
21142
|
-
/* 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.
|
|
20958
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
|
|
20959
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/createClass.js");
|
|
21143
20960
|
|
|
21144
20961
|
|
|
21145
20962
|
|
|
@@ -21654,9 +21471,9 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
|
|
|
21654
21471
|
|
|
21655
21472
|
/***/ }),
|
|
21656
21473
|
|
|
21657
|
-
/***/ "../../common/temp/node_modules/.pnpm/loupe@2.3.
|
|
21474
|
+
/***/ "../../common/temp/node_modules/.pnpm/loupe@2.3.7/node_modules/loupe/loupe.js":
|
|
21658
21475
|
/*!************************************************************************************!*\
|
|
21659
|
-
!*** ../../common/temp/node_modules/.pnpm/loupe@2.3.
|
|
21476
|
+
!*** ../../common/temp/node_modules/.pnpm/loupe@2.3.7/node_modules/loupe/loupe.js ***!
|
|
21660
21477
|
\************************************************************************************/
|
|
21661
21478
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
21662
21479
|
|
|
@@ -21970,6 +21787,7 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
|
|
|
21970
21787
|
|
|
21971
21788
|
var toString = Function.prototype.toString;
|
|
21972
21789
|
var functionNameMatch = /\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\s\(\/]+)/;
|
|
21790
|
+
var maxFunctionSourceLength = 512;
|
|
21973
21791
|
function getFuncName(aFunc) {
|
|
21974
21792
|
if (typeof aFunc !== 'function') {
|
|
21975
21793
|
return null;
|
|
@@ -21977,8 +21795,15 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
|
|
|
21977
21795
|
|
|
21978
21796
|
var name = '';
|
|
21979
21797
|
if (typeof Function.prototype.name === 'undefined' && typeof aFunc.name === 'undefined') {
|
|
21798
|
+
// eslint-disable-next-line prefer-reflect
|
|
21799
|
+
var functionSource = toString.call(aFunc);
|
|
21800
|
+
// To avoid unconstrained resource consumption due to pathalogically large function names,
|
|
21801
|
+
// we limit the available return value to be less than 512 characters.
|
|
21802
|
+
if (functionSource.indexOf('(') > maxFunctionSourceLength) {
|
|
21803
|
+
return name;
|
|
21804
|
+
}
|
|
21980
21805
|
// Here we run a polyfill if Function does not support the `name` property and if aFunc.name is not defined
|
|
21981
|
-
var match =
|
|
21806
|
+
var match = functionSource.match(functionNameMatch);
|
|
21982
21807
|
if (match) {
|
|
21983
21808
|
name = match[1];
|
|
21984
21809
|
}
|
|
@@ -22338,7 +22163,7 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
|
|
|
22338
22163
|
|
|
22339
22164
|
try {
|
|
22340
22165
|
// eslint-disable-next-line global-require
|
|
22341
|
-
var nodeUtil = __webpack_require__(/*! util */ "?
|
|
22166
|
+
var nodeUtil = __webpack_require__(/*! util */ "?088e");
|
|
22342
22167
|
|
|
22343
22168
|
nodeInspect = nodeUtil.inspect ? nodeUtil.inspect.custom : false;
|
|
22344
22169
|
} catch (noNodeInspect) {
|
|
@@ -32756,6 +32581,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
32756
32581
|
/* harmony export */ DbValueFormat: () => (/* binding */ DbValueFormat),
|
|
32757
32582
|
/* harmony export */ QueryBinder: () => (/* binding */ QueryBinder),
|
|
32758
32583
|
/* harmony export */ QueryOptionsBuilder: () => (/* binding */ QueryOptionsBuilder),
|
|
32584
|
+
/* harmony export */ QueryParamType: () => (/* binding */ QueryParamType),
|
|
32759
32585
|
/* harmony export */ QueryRowFormat: () => (/* binding */ QueryRowFormat)
|
|
32760
32586
|
/* harmony export */ });
|
|
32761
32587
|
/* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
|
|
@@ -33010,11 +32836,10 @@ class QueryBinder {
|
|
|
33010
32836
|
if (typeof indexOrName === "number") {
|
|
33011
32837
|
if (indexOrName < 1)
|
|
33012
32838
|
throw new Error("expect index to be >= 1");
|
|
32839
|
+
return;
|
|
33013
32840
|
}
|
|
33014
|
-
if (
|
|
33015
|
-
|
|
33016
|
-
throw new Error("expect named parameter to meet identifier specification");
|
|
33017
|
-
}
|
|
32841
|
+
if (!/^[a-zA-Z_]+\w*$/i.test(indexOrName)) {
|
|
32842
|
+
throw new Error("expect named parameter to meet identifier specification");
|
|
33018
32843
|
}
|
|
33019
32844
|
}
|
|
33020
32845
|
/**
|
|
@@ -33245,12 +33070,12 @@ class QueryBinder {
|
|
|
33245
33070
|
else if (val instanceof Array && val.length > 0 && typeof val[0] === "string" && _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValidId64(val[0])) {
|
|
33246
33071
|
params.bindIdSet(nameOrId, val);
|
|
33247
33072
|
}
|
|
33248
|
-
else if (typeof val === "object" && !Array.isArray(val)) {
|
|
33249
|
-
params.bindStruct(nameOrId, val);
|
|
33250
|
-
}
|
|
33251
33073
|
else if (typeof val === "undefined" || val === null) {
|
|
33252
33074
|
params.bindNull(nameOrId);
|
|
33253
33075
|
}
|
|
33076
|
+
else if (typeof val === "object" && !Array.isArray(val)) {
|
|
33077
|
+
params.bindStruct(nameOrId, val);
|
|
33078
|
+
}
|
|
33254
33079
|
else {
|
|
33255
33080
|
throw new Error("unsupported type");
|
|
33256
33081
|
}
|
|
@@ -47346,6 +47171,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
47346
47171
|
/* harmony export */ Quantization: () => (/* reexport safe */ _QPoint__WEBPACK_IMPORTED_MODULE_86__.Quantization),
|
|
47347
47172
|
/* harmony export */ QueryBinder: () => (/* reexport safe */ _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_80__.QueryBinder),
|
|
47348
47173
|
/* harmony export */ QueryOptionsBuilder: () => (/* reexport safe */ _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_80__.QueryOptionsBuilder),
|
|
47174
|
+
/* harmony export */ QueryParamType: () => (/* reexport safe */ _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_80__.QueryParamType),
|
|
47349
47175
|
/* harmony export */ QueryRowFormat: () => (/* reexport safe */ _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_80__.QueryRowFormat),
|
|
47350
47176
|
/* harmony export */ REGISTRY: () => (/* reexport safe */ _rpc_core_RpcRegistry__WEBPACK_IMPORTED_MODULE_122__.REGISTRY),
|
|
47351
47177
|
/* harmony export */ Rank: () => (/* reexport safe */ _ElementProps__WEBPACK_IMPORTED_MODULE_24__.Rank),
|
|
@@ -76822,6 +76648,34 @@ class BackgroundMapGeometry {
|
|
|
76822
76648
|
});
|
|
76823
76649
|
return Promise.all(promises);
|
|
76824
76650
|
}
|
|
76651
|
+
async cartographicToDbFromWgs84Gcs(cartographic) {
|
|
76652
|
+
let db;
|
|
76653
|
+
if (this.globeMode === _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GlobeMode.Plane) {
|
|
76654
|
+
const fraction = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Point2d.create(0, 0);
|
|
76655
|
+
db = cartographic.map((p) => {
|
|
76656
|
+
this._mercatorTilingScheme.cartographicToFraction(p.latitude, p.longitude, fraction);
|
|
76657
|
+
return this._mercatorFractionToDb.multiplyXYZ(fraction.x, fraction.y, p.height);
|
|
76658
|
+
});
|
|
76659
|
+
}
|
|
76660
|
+
else {
|
|
76661
|
+
db = cartographic.map((p) => this._ecefToDb.multiplyPoint3d(p.toEcef()));
|
|
76662
|
+
}
|
|
76663
|
+
if (this._iModel.noGcsDefined)
|
|
76664
|
+
return db;
|
|
76665
|
+
const toReprojectCoords = [];
|
|
76666
|
+
const toReprojectIdx = [];
|
|
76667
|
+
db.forEach(async (p, i) => {
|
|
76668
|
+
if (this.cartesianRange.containsPoint(p)) {
|
|
76669
|
+
toReprojectCoords.push({ x: cartographic[i].longitudeDegrees, y: cartographic[i].latitudeDegrees, z: cartographic[i].height });
|
|
76670
|
+
toReprojectIdx.push(i);
|
|
76671
|
+
}
|
|
76672
|
+
});
|
|
76673
|
+
const spatialPoints = await this._iModel.toSpatialFromGcs(toReprojectCoords, { horizontalCRS: { epsg: 4326 }, verticalCRS: { id: "ELLIPSOID" } });
|
|
76674
|
+
return db.map((p, i) => {
|
|
76675
|
+
const reprojectedIdx = toReprojectIdx.findIndex((value) => value === i);
|
|
76676
|
+
return (reprojectedIdx === -1 ? p : spatialPoints[reprojectedIdx]);
|
|
76677
|
+
});
|
|
76678
|
+
}
|
|
76825
76679
|
cartographicToDb(cartographic, result) {
|
|
76826
76680
|
if (this.globeMode === _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GlobeMode.Plane) {
|
|
76827
76681
|
const fraction = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Point2d.create(0, 0);
|
|
@@ -87514,7 +87368,7 @@ class RealityDataSourceTilesetUrlImpl {
|
|
|
87514
87368
|
return (0,_request_Request__WEBPACK_IMPORTED_MODULE_2__.request)(tileUrl, "json");
|
|
87515
87369
|
}
|
|
87516
87370
|
getTileContentType(url) {
|
|
87517
|
-
return url.endsWith("json") ? "tileset" : "tile";
|
|
87371
|
+
return new URL(url, "https://localhost/").pathname.toLowerCase().endsWith("json") ? "tileset" : "tile";
|
|
87518
87372
|
}
|
|
87519
87373
|
/**
|
|
87520
87374
|
* Gets spatial location and extents of this reality data source
|
|
@@ -98303,7 +98157,7 @@ class GltfParser {
|
|
|
98303
98157
|
if (dracoMeshes.length === 0)
|
|
98304
98158
|
return;
|
|
98305
98159
|
try {
|
|
98306
|
-
const dracoLoader = (await
|
|
98160
|
+
const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_14_node_modules_loaders_gl_draco_d-aa4ff5").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.14/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
98307
98161
|
await Promise.all(dracoMeshes.map(async (x) => this.decodeDracoMesh(x, dracoLoader)));
|
|
98308
98162
|
}
|
|
98309
98163
|
catch (err) {
|
|
@@ -103416,6 +103270,7 @@ const UNIT_DATA = [
|
|
|
103416
103270
|
{ name: "Units.SQ_FT", phenomenon: "Units.AREA", system: "Units.USCUSTOM", conversion: { numerator: 1.0, denominator: .09290304, offset: 0.0 }, displayLabel: "ft²" },
|
|
103417
103271
|
{ name: "Units.SQ_US_SURVEY_FT", phenomenon: "Units.AREA", system: "Units.USCUSTOM", conversion: { numerator: 15499969.0, denominator: 1440000, offset: 0.0 }, displayLabel: "ft² (US Survey)" },
|
|
103418
103272
|
{ name: "Units.SQ_M", phenomenon: "Units.AREA", system: "Units.SI", conversion: { numerator: 1.0, denominator: 1.0, offset: 0.0 }, displayLabel: "m²" },
|
|
103273
|
+
{ name: "Units.SQ_KM", phenomenon: "Units.AREA", system: "Units.SI", conversion: { numerator: 1.0, denominator: 1000000.0, offset: 0.0 }, displayLabel: "km²" },
|
|
103419
103274
|
// conversion => specified unit to base unit m³
|
|
103420
103275
|
{ name: "Units.CUB_FT", phenomenon: "Units.VOLUME", system: "Units.USCUSTOM", conversion: { numerator: 1.0, denominator: 0.028316847, offset: 0.0 }, displayLabel: "ft³" },
|
|
103421
103276
|
{ name: "Units.CUB_US_SURVEY_FT", phenomenon: "Units.VOLUME", system: "Units.USSURVEY", conversion: { numerator: 1, denominator: 0.0283170164937591, offset: 0.0 }, displayLabel: "ft³" },
|
|
@@ -139644,8 +139499,8 @@ class ContextShareProvider {
|
|
|
139644
139499
|
// Not a valid URL for Context share
|
|
139645
139500
|
return false;
|
|
139646
139501
|
}
|
|
139647
|
-
// If api.bentley.com/realitydata is used, it is context share
|
|
139648
|
-
if (tilesetUrl.toLowerCase().includes("api.bentley.com/realitydata"))
|
|
139502
|
+
// If api.bentley.com/realitydata or api.bentley.com/reality-management is used, it is context share
|
|
139503
|
+
if (tilesetUrl.toLowerCase().includes("api.bentley.com/realitydata") || tilesetUrl.toLowerCase().includes("api.bentley.com/reality-management/reality-data"))
|
|
139649
139504
|
return true;
|
|
139650
139505
|
// detect if it is a RDS url
|
|
139651
139506
|
const formattedUrl1 = attUrl.pathname.replace(/~2F/g, "/").replace(/\\/g, "/");
|
|
@@ -139675,16 +139530,24 @@ class ContextShareProvider {
|
|
|
139675
139530
|
// Not a valid URL and not equal, probably $cesiumAsset
|
|
139676
139531
|
return invalidUrlInfo;
|
|
139677
139532
|
}
|
|
139678
|
-
// If api.bentley.com/realitydata is used, it is context share
|
|
139679
|
-
if (tilesetUrl.toLowerCase().includes("api.bentley.com/realitydata")) {
|
|
139533
|
+
// If api.bentley.com/realitydata or api.bentley.com/reality-management is used, it is context share
|
|
139534
|
+
if (tilesetUrl.toLowerCase().includes("api.bentley.com/realitydata") || tilesetUrl.toLowerCase().includes("api.bentley.com/reality-management/reality-data")) {
|
|
139680
139535
|
const lcTilesetUrl = tilesetUrl.toLowerCase();
|
|
139681
139536
|
// NOTICE: We assume it is a ThreeDTile BUT this could technically be a point cloud (OPC).
|
|
139682
139537
|
// This method was used in typical workflow where format was always ThreeDTile and is here for legacy support.
|
|
139683
139538
|
// We don't want to make a call to RDS to resolve format since this method must not be async (it is used in workflow that are not async)
|
|
139684
139539
|
const format = _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.RealityDataFormat.ThreeDTile;
|
|
139685
|
-
|
|
139540
|
+
let indexId = -1;
|
|
139541
|
+
let indexProjectId = -1;
|
|
139542
|
+
if (tilesetUrl.toLowerCase().includes("reality-management/reality-data")) {
|
|
139543
|
+
indexId = lcTilesetUrl.indexOf("reality-management/reality-data/") + 32; // length of "reality-management/reality-data/" = 32;
|
|
139544
|
+
indexProjectId = lcTilesetUrl.indexOf("itwinid=") + 8; // length of "itwinid=" = 8;
|
|
139545
|
+
}
|
|
139546
|
+
else if (tilesetUrl.toLowerCase().includes("realitydata")) {
|
|
139547
|
+
indexId = lcTilesetUrl.indexOf("realitydata/") + 12; // length of "realitydata/" = 12;
|
|
139548
|
+
indexProjectId = lcTilesetUrl.indexOf("projectid=") + 10; // length of "projectid=" = 10;
|
|
139549
|
+
}
|
|
139686
139550
|
const id = lcTilesetUrl.substring(indexId, _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Guid.empty.length + indexId);
|
|
139687
|
-
const indexProjectId = lcTilesetUrl.indexOf("projectid=") + 10; // lenght of "projectid=" = 10;
|
|
139688
139551
|
let projectId;
|
|
139689
139552
|
if (indexProjectId && indexProjectId > 0)
|
|
139690
139553
|
projectId = lcTilesetUrl.substring(indexProjectId, _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Guid.empty.length + indexProjectId);
|
|
@@ -141417,7 +141280,7 @@ class GltfReader {
|
|
|
141417
141280
|
if (dracoMeshes.length === 0)
|
|
141418
141281
|
return;
|
|
141419
141282
|
try {
|
|
141420
|
-
const dracoLoader = (await
|
|
141283
|
+
const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_14_node_modules_loaders_gl_draco_d-aa4ff5").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.14/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
141421
141284
|
await Promise.all(dracoMeshes.map(async (x) => this.decodeDracoMesh(x, dracoLoader)));
|
|
141422
141285
|
}
|
|
141423
141286
|
catch (err) {
|
|
@@ -144295,7 +144158,7 @@ function readPnts(stream, dataOffset, pnts) {
|
|
|
144295
144158
|
}
|
|
144296
144159
|
async function decodeDracoPointCloud(buf) {
|
|
144297
144160
|
try {
|
|
144298
|
-
const dracoLoader = (await
|
|
144161
|
+
const dracoLoader = (await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_loaders_gl_draco_3_4_14_node_modules_loaders_gl_draco_d-aa4ff5").then(__webpack_require__.bind(__webpack_require__, /*! @loaders.gl/draco */ "../../common/temp/node_modules/.pnpm/@loaders.gl+draco@3.4.14/node_modules/@loaders.gl/draco/dist/esm/index.js"))).DracoLoader;
|
|
144299
144162
|
const mesh = await dracoLoader.parse(buf, {});
|
|
144300
144163
|
if (mesh.topology !== "point-list")
|
|
144301
144164
|
return undefined;
|
|
@@ -149893,7 +149756,8 @@ var TileGraphicType;
|
|
|
149893
149756
|
*/
|
|
149894
149757
|
class TileTreeReference /* implements RenderMemory.Consumer */ {
|
|
149895
149758
|
/** Force a new tree owner / tile tree to be created for the current tile tree reference
|
|
149896
|
-
|
|
149759
|
+
* @internal
|
|
149760
|
+
*/
|
|
149897
149761
|
resetTreeOwner() { }
|
|
149898
149762
|
/** Disclose *all* TileTrees use by this reference. This may include things like map tiles used for draping on terrain.
|
|
149899
149763
|
* Override this and call super if you have such auxiliary trees.
|
|
@@ -151019,7 +150883,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
151019
150883
|
/** @packageDocumentation
|
|
151020
150884
|
* @module Tiles
|
|
151021
150885
|
*/
|
|
151022
|
-
/**
|
|
150886
|
+
/**
|
|
150887
|
+
* Class representing an ArcGIS error code.
|
|
150888
|
+
* @internal
|
|
150889
|
+
*/
|
|
151023
150890
|
var ArcGisErrorCode;
|
|
151024
150891
|
(function (ArcGisErrorCode) {
|
|
151025
150892
|
ArcGisErrorCode[ArcGisErrorCode["InvalidCredentials"] = 401] = "InvalidCredentials";
|
|
@@ -151028,7 +150895,10 @@ var ArcGisErrorCode;
|
|
|
151028
150895
|
ArcGisErrorCode[ArcGisErrorCode["UnknownError"] = 1000] = "UnknownError";
|
|
151029
150896
|
ArcGisErrorCode[ArcGisErrorCode["NoTokenService"] = 1001] = "NoTokenService";
|
|
151030
150897
|
})(ArcGisErrorCode || (ArcGisErrorCode = {}));
|
|
151031
|
-
/**
|
|
150898
|
+
/**
|
|
150899
|
+
* Class containing utilities relating to ArcGIS services and coordinate systems.
|
|
150900
|
+
* @internal
|
|
150901
|
+
*/
|
|
151032
150902
|
class ArcGisUtilities {
|
|
151033
150903
|
static getBBoxString(range) {
|
|
151034
150904
|
if (!range)
|
|
@@ -151086,6 +150956,12 @@ class ArcGisUtilities {
|
|
|
151086
150956
|
}
|
|
151087
150957
|
return sources;
|
|
151088
150958
|
}
|
|
150959
|
+
/**
|
|
150960
|
+
* Get map layer sources from an ArcGIS query.
|
|
150961
|
+
* @param range Range for the query.
|
|
150962
|
+
* @param url URL for the query.
|
|
150963
|
+
* @returns List of map layer sources.
|
|
150964
|
+
*/
|
|
151089
150965
|
static async getSourcesFromQuery(range, url = "https://usgs.maps.arcgis.com/sharing/rest/search") {
|
|
151090
150966
|
const sources = new Array();
|
|
151091
150967
|
for (let start = 1; start > 0;) {
|
|
@@ -151105,11 +150981,11 @@ class ArcGisUtilities {
|
|
|
151105
150981
|
return sources;
|
|
151106
150982
|
}
|
|
151107
150983
|
/**
|
|
151108
|
-
* Parse the URL to check if it
|
|
150984
|
+
* Parse the URL to check if it represents a valid ArcGIS service
|
|
151109
150985
|
* @param url URL to validate.
|
|
151110
150986
|
* @param serviceType Service type to validate (i.e FeatureServer, MapServer)
|
|
151111
150987
|
* @return Validation Status.
|
|
151112
|
-
|
|
150988
|
+
*/
|
|
151113
150989
|
static validateUrl(url, serviceType) {
|
|
151114
150990
|
const urlObj = new URL(url.toLowerCase());
|
|
151115
150991
|
if (urlObj.pathname.includes("/rest/services/")) {
|
|
@@ -151132,10 +151008,10 @@ class ArcGisUtilities {
|
|
|
151132
151008
|
* @param capabilitiesFilter List of capabilities 'keyword' that needs to be advertised in the service's metadata
|
|
151133
151009
|
* in order to be valid. For example: 'Map', 'Query', etc
|
|
151134
151010
|
* @param userName Username to use for legacy token based security.
|
|
151135
|
-
* @param password
|
|
151011
|
+
* @param password Password to use for legacy token based security.
|
|
151136
151012
|
* @param ignoreCache Flag to skip cache lookup (i.e. force a new server request)
|
|
151137
151013
|
* @return Validation Status. If successful, a list of available sub-layers will also be returned.
|
|
151138
|
-
|
|
151014
|
+
*/
|
|
151139
151015
|
static async validateSource(url, formatId, capabilitiesFilter, userName, password, ignoreCache) {
|
|
151140
151016
|
const metadata = await this.getServiceJson(url, formatId, userName, password, ignoreCache);
|
|
151141
151017
|
const json = metadata?.content;
|
|
@@ -151179,9 +151055,7 @@ class ArcGisUtilities {
|
|
|
151179
151055
|
}
|
|
151180
151056
|
return { status: _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.Valid, subLayers };
|
|
151181
151057
|
}
|
|
151182
|
-
/**
|
|
151183
|
-
* Validate MapService tiling metadata and checks if the tile tree is 'Google Maps' compatible.
|
|
151184
|
-
*/
|
|
151058
|
+
/** Validate MapService tiling metadata and checks if the tile tree is 'Google Maps' compatible. */
|
|
151185
151059
|
static isEpsg3857Compatible(tileInfo) {
|
|
151186
151060
|
if (tileInfo.spatialReference?.latestWkid !== 3857 || !Array.isArray(tileInfo.lods))
|
|
151187
151061
|
return false;
|
|
@@ -151189,11 +151063,17 @@ class ArcGisUtilities {
|
|
|
151189
151063
|
return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;
|
|
151190
151064
|
}
|
|
151191
151065
|
/**
|
|
151192
|
-
*
|
|
151066
|
+
* Fetches an ArcGIS service metadata, and returns its JSON representation.
|
|
151193
151067
|
* If an access client has been configured for the specified formatId,
|
|
151194
151068
|
* it will be used to apply required security token.
|
|
151195
151069
|
* By default, response for each URL are cached.
|
|
151196
|
-
|
|
151070
|
+
* @param url URL of the ArcGIS service
|
|
151071
|
+
* @param formatId Format ID of the service
|
|
151072
|
+
* @param userName Username to use for legacy token based security
|
|
151073
|
+
* @param password Password to use for legacy token based security
|
|
151074
|
+
* @param ignoreCache Flag to skip cache lookup (i.e. force a new server request)
|
|
151075
|
+
* @param requireToken Flag to indicate if a token is required
|
|
151076
|
+
*/
|
|
151197
151077
|
static async getServiceJson(url, formatId, userName, password, ignoreCache, requireToken) {
|
|
151198
151078
|
if (!ignoreCache) {
|
|
151199
151079
|
const cached = ArcGisUtilities._serviceCache.get(url);
|
|
@@ -151240,8 +151120,7 @@ class ArcGisUtilities {
|
|
|
151240
151120
|
return undefined;
|
|
151241
151121
|
}
|
|
151242
151122
|
}
|
|
151243
|
-
/** Read a response from ArcGIS server and check for error code in the response.
|
|
151244
|
-
*/
|
|
151123
|
+
/** Read a response from ArcGIS server and check for error code in the response. */
|
|
151245
151124
|
static async checkForResponseErrorCode(response) {
|
|
151246
151125
|
const tmpResponse = response;
|
|
151247
151126
|
if (response.headers && tmpResponse.headers.get("content-type")?.toLowerCase().includes("json")) {
|
|
@@ -151282,8 +151161,7 @@ class ArcGisUtilities {
|
|
|
151282
151161
|
* @param latitude Latitude in degrees to use to compute scales (i.e 0 for Equator)
|
|
151283
151162
|
* @param tileSize Size of a tile in pixels (i.e 256)
|
|
151284
151163
|
* @param screenDpi Monitor resolution in dots per inch (i.e. typically 96dpi is used by Google Maps)
|
|
151285
|
-
*
|
|
151286
|
-
* @returns An array containing resolution and scale values for each requested zoom level
|
|
151164
|
+
* @returns An array containing resolution and scale values for each requested zoom level
|
|
151287
151165
|
*/
|
|
151288
151166
|
static computeZoomLevelsScales(startZoom = 0, endZoom = 20, latitude = 0, tileSize = 256, screenDpi = 96) {
|
|
151289
151167
|
// Note: There is probably a more direct way to compute this, but I prefer to go for a simple and well documented approach.
|
|
@@ -151302,12 +151180,12 @@ class ArcGisUtilities {
|
|
|
151302
151180
|
return results;
|
|
151303
151181
|
}
|
|
151304
151182
|
/**
|
|
151305
|
-
* Match the provided minScale,maxScale values to corresponding wgs84 zoom levels
|
|
151183
|
+
* Match the provided minScale, maxScale values to corresponding wgs84 zoom levels
|
|
151306
151184
|
* @param defaultMaxLod Value of the last LOD (i.e 22)
|
|
151307
151185
|
* @param tileSize Size of a tile in pixels (i.e 256)
|
|
151308
151186
|
* @param minScale Minimum scale value that needs to be matched to a LOD level
|
|
151309
151187
|
* @param maxScale Maximum scale value that needs to be matched to a LOD level
|
|
151310
|
-
|
|
151188
|
+
* @returns minLod: LOD value matching minScale, maxLod: LOD value matching maxScale
|
|
151311
151189
|
*/
|
|
151312
151190
|
static getZoomLevelsScales(defaultMaxLod, tileSize, minScale, maxScale, tolerance = 0) {
|
|
151313
151191
|
let minLod, maxLod;
|
|
@@ -152324,9 +152202,9 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
|
|
|
152324
152202
|
return undefined;
|
|
152325
152203
|
}
|
|
152326
152204
|
}
|
|
152327
|
-
_generateChildIds(
|
|
152328
|
-
const childIds = this.getPotentialChildIds(
|
|
152329
|
-
if (
|
|
152205
|
+
_generateChildIds(quadId, resolveChildren) {
|
|
152206
|
+
const childIds = this.getPotentialChildIds(quadId);
|
|
152207
|
+
if (quadId.level < Math.max(1, this.minimumZoomLevel - 1)) {
|
|
152330
152208
|
resolveChildren(childIds);
|
|
152331
152209
|
return;
|
|
152332
152210
|
}
|
|
@@ -152495,7 +152373,7 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
|
|
|
152495
152373
|
const tolerancePixel = options?.tolerance ?? 7;
|
|
152496
152374
|
const json = await this.getIdentifyData(quadId, carto, tolerancePixel, true, maxAllowableOffset);
|
|
152497
152375
|
if (json && Array.isArray(json.results)) {
|
|
152498
|
-
const renderer = new _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisGraphicsRenderer(hit.
|
|
152376
|
+
const renderer = new _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisGraphicsRenderer({ viewport: hit.viewport });
|
|
152499
152377
|
const layerInfo = { layerName: this._settings.name, subLayerInfos: [] };
|
|
152500
152378
|
// The 'identify' service returns us a flat/unordered list of records..
|
|
152501
152379
|
// results may represent features for the a common subLayer.
|
|
@@ -152816,12 +152694,13 @@ const loggerCategory = "MapLayerImageryProvider.ArcGisGraphicsRenderer";
|
|
|
152816
152694
|
*/
|
|
152817
152695
|
class ArcGisGraphicsRenderer extends _internal__WEBPACK_IMPORTED_MODULE_3__.ArcGisGeometryBaseRenderer {
|
|
152818
152696
|
get attributeSymbology() { return undefined; } // No symbology is applied in this renderer
|
|
152819
|
-
constructor(
|
|
152697
|
+
constructor(props) {
|
|
152820
152698
|
super();
|
|
152821
152699
|
this._scratchPointsArray = new _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.GrowableXYZArray();
|
|
152822
152700
|
this._scratchPaths = [];
|
|
152823
152701
|
this._graphics = [];
|
|
152824
|
-
this.
|
|
152702
|
+
this._viewport = props.viewport;
|
|
152703
|
+
this._iModel = props.viewport.iModel;
|
|
152825
152704
|
}
|
|
152826
152705
|
moveGraphics() {
|
|
152827
152706
|
const graphics = this._graphics;
|
|
@@ -152851,20 +152730,13 @@ class ArcGisGraphicsRenderer extends _internal__WEBPACK_IMPORTED_MODULE_3__.ArcG
|
|
|
152851
152730
|
async fill() {
|
|
152852
152731
|
if (this._scratchPaths.length > 0) {
|
|
152853
152732
|
const loops = [];
|
|
152854
|
-
|
|
152855
|
-
|
|
152856
|
-
|
|
152857
|
-
}
|
|
152733
|
+
const pathPromises = [];
|
|
152734
|
+
for (const points of this._scratchPaths) {
|
|
152735
|
+
pathPromises.push(this.toSpatial(points));
|
|
152858
152736
|
}
|
|
152859
|
-
|
|
152860
|
-
|
|
152861
|
-
|
|
152862
|
-
pathPromises.push(this.toSpatialFromGcs(points));
|
|
152863
|
-
}
|
|
152864
|
-
const pathsArray = await Promise.all(pathPromises);
|
|
152865
|
-
for (const pointsArray of pathsArray) {
|
|
152866
|
-
loops.push(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Loop.create(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.LineString3d.create(pointsArray)));
|
|
152867
|
-
}
|
|
152737
|
+
const pathsArray = await Promise.all(pathPromises);
|
|
152738
|
+
for (const pointsArray of pathsArray) {
|
|
152739
|
+
loops.push(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Loop.create(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.LineString3d.create(pointsArray)));
|
|
152868
152740
|
}
|
|
152869
152741
|
const mergedLoops = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.RegionOps.constructAllXYRegionLoops(loops);
|
|
152870
152742
|
for (const loop of mergedLoops) {
|
|
@@ -152880,20 +152752,13 @@ class ArcGisGraphicsRenderer extends _internal__WEBPACK_IMPORTED_MODULE_3__.ArcG
|
|
|
152880
152752
|
this._scratchPaths.push(this._scratchPointsArray.getArray());
|
|
152881
152753
|
this._scratchPointsArray.clear();
|
|
152882
152754
|
}
|
|
152883
|
-
|
|
152884
|
-
|
|
152885
|
-
|
|
152886
|
-
}
|
|
152755
|
+
const pathPromises = [];
|
|
152756
|
+
for (const geoPt of this._scratchPaths) {
|
|
152757
|
+
pathPromises.push(this.toSpatial(geoPt));
|
|
152887
152758
|
}
|
|
152888
|
-
|
|
152889
|
-
|
|
152890
|
-
|
|
152891
|
-
pathPromises.push(this.toSpatialFromGcs(noGcsDefined));
|
|
152892
|
-
}
|
|
152893
|
-
const reprojectedPaths = await Promise.all(pathPromises);
|
|
152894
|
-
for (const path of reprojectedPaths) {
|
|
152895
|
-
this._graphics.push({ type: "linestring", points: _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3dArray.clonePoint3dArray(path) });
|
|
152896
|
-
}
|
|
152759
|
+
const reprojectedPaths = await Promise.all(pathPromises);
|
|
152760
|
+
for (const path of reprojectedPaths) {
|
|
152761
|
+
this._graphics.push({ type: "linestring", points: _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3dArray.clonePoint3dArray(path) });
|
|
152897
152762
|
}
|
|
152898
152763
|
this._scratchPaths = [];
|
|
152899
152764
|
}
|
|
@@ -152902,33 +152767,25 @@ class ArcGisGraphicsRenderer extends _internal__WEBPACK_IMPORTED_MODULE_3__.ArcG
|
|
|
152902
152767
|
}
|
|
152903
152768
|
async finishPoints() {
|
|
152904
152769
|
if (this._scratchPointsArray.length > 0) {
|
|
152905
|
-
|
|
152906
|
-
|
|
152770
|
+
// Backend reprojection
|
|
152771
|
+
const pointsArray = this._scratchPointsArray.getArray();
|
|
152772
|
+
try {
|
|
152773
|
+
const spatialPoints = await this.toSpatial(pointsArray);
|
|
152774
|
+
this._graphics.push({ type: "pointstring", points: spatialPoints });
|
|
152907
152775
|
}
|
|
152908
|
-
|
|
152909
|
-
|
|
152910
|
-
const pointsArray = this._scratchPointsArray.getArray();
|
|
152911
|
-
try {
|
|
152912
|
-
const spatialPoints = await this.toSpatialFromGcs(pointsArray);
|
|
152913
|
-
this._graphics.push({ type: "pointstring", points: spatialPoints });
|
|
152914
|
-
}
|
|
152915
|
-
catch (error) {
|
|
152916
|
-
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(loggerCategory, "ArcGisFeatureGraphicsRenderer: Could not reproject points");
|
|
152917
|
-
}
|
|
152776
|
+
catch (error) {
|
|
152777
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(loggerCategory, "ArcGisFeatureGraphicsRenderer: Could not reproject points");
|
|
152918
152778
|
}
|
|
152919
152779
|
this._scratchPointsArray.clear();
|
|
152920
152780
|
}
|
|
152921
152781
|
}
|
|
152922
|
-
async
|
|
152923
|
-
|
|
152924
|
-
|
|
152925
|
-
|
|
152926
|
-
|
|
152927
|
-
for (const pt of geoPoints) {
|
|
152928
|
-
const carto = { longitude: _internal__WEBPACK_IMPORTED_MODULE_3__.WebMercator.getEPSG4326Lon(pt.x), latitude: _internal__WEBPACK_IMPORTED_MODULE_3__.WebMercator.getEPSG4326Lat(pt.y), height: pt.z };
|
|
152929
|
-
spatials.push(this._iModel.cartographicToSpatialFromEcef(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.Cartographic.fromDegrees(carto)));
|
|
152782
|
+
async toSpatial(geoPoints) {
|
|
152783
|
+
const bgMapGeom = this._viewport.displayStyle.getBackgroundMapGeometry();
|
|
152784
|
+
if (bgMapGeom) {
|
|
152785
|
+
const cartoPts = geoPoints.map((pt) => _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.Cartographic.fromDegrees({ longitude: _internal__WEBPACK_IMPORTED_MODULE_3__.WebMercator.getEPSG4326Lon(pt.x), latitude: _internal__WEBPACK_IMPORTED_MODULE_3__.WebMercator.getEPSG4326Lat(pt.y), height: pt.z }));
|
|
152786
|
+
return bgMapGeom.cartographicToDbFromWgs84Gcs(cartoPts);
|
|
152930
152787
|
}
|
|
152931
|
-
return
|
|
152788
|
+
return [];
|
|
152932
152789
|
}
|
|
152933
152790
|
}
|
|
152934
152791
|
|
|
@@ -153625,14 +153482,14 @@ class WmtsMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2__
|
|
|
153625
153482
|
getDisplayedTileMatrixSetAndLimits() {
|
|
153626
153483
|
return this._preferredLayerTileMatrixSet.get(this.displayedLayerName);
|
|
153627
153484
|
}
|
|
153628
|
-
_generateChildIds(
|
|
153629
|
-
const childIds = this.getPotentialChildIds(
|
|
153485
|
+
_generateChildIds(quadId, resolveChildren) {
|
|
153486
|
+
const childIds = this.getPotentialChildIds(quadId);
|
|
153630
153487
|
const matrixSetAndLimits = this.getDisplayedTileMatrixSetAndLimits();
|
|
153631
153488
|
if (!matrixSetAndLimits) {
|
|
153632
153489
|
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false); // Must always hava a matrix set.
|
|
153633
153490
|
return;
|
|
153634
153491
|
}
|
|
153635
|
-
const limits = matrixSetAndLimits.limits?.[
|
|
153492
|
+
const limits = matrixSetAndLimits.limits?.[quadId.level + 1]?.limits;
|
|
153636
153493
|
if (!limits) {
|
|
153637
153494
|
resolveChildren(childIds);
|
|
153638
153495
|
return;
|
|
@@ -154012,17 +153869,24 @@ class ImageryMapLayerTreeSupplier {
|
|
|
154012
153869
|
}
|
|
154013
153870
|
const imageryTreeSupplier = new ImageryMapLayerTreeSupplier();
|
|
154014
153871
|
/** A reference to one of our tile trees. The specific TileTree drawn may change when the desired imagery type or target iModel changes.
|
|
154015
|
-
* @
|
|
153872
|
+
* @beta
|
|
154016
153873
|
*/
|
|
154017
153874
|
class ImageryMapLayerTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_4__.MapLayerTileTreeReference {
|
|
154018
|
-
|
|
154019
|
-
|
|
153875
|
+
/**
|
|
153876
|
+
* Constructor for an ImageryMapLayerTreeReference.
|
|
153877
|
+
* @param layerSettings Map layer settings that are applied to the ImageryMapLayerTreeReference.
|
|
153878
|
+
* @param layerIndex The index of the associated map layer. Usually passed in through [[createMapLayerTreeReference]] in [[MapTileTree]]'s constructor.
|
|
153879
|
+
* @param iModel The iModel containing the ImageryMapLayerTreeReference.
|
|
153880
|
+
*/
|
|
153881
|
+
constructor(args) {
|
|
153882
|
+
super(args.layerSettings, args.layerIndex, args.iModel);
|
|
154020
153883
|
}
|
|
154021
153884
|
get castsShadows() { return false; }
|
|
154022
153885
|
/** Return the owner of the TileTree to draw. */
|
|
154023
153886
|
get treeOwner() {
|
|
154024
153887
|
return this.iModel.tiles.getTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);
|
|
154025
153888
|
}
|
|
153889
|
+
/* @internal */
|
|
154026
153890
|
resetTreeOwner() {
|
|
154027
153891
|
return this.iModel.tiles.resetTileTreeOwner({ settings: this._layerSettings }, imageryTreeSupplier);
|
|
154028
153892
|
}
|
|
@@ -154289,32 +154153,52 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
154289
154153
|
|
|
154290
154154
|
|
|
154291
154155
|
const loggerCategory = "ArcGISFeatureProvider";
|
|
154292
|
-
/**
|
|
154156
|
+
/**
|
|
154157
|
+
* Class representing a map-layer format.
|
|
154293
154158
|
* Each format has it's unique 'formatId' string, used to uniquely identify a format in the [[MapLayerFormatRegistry]].
|
|
154294
154159
|
* When creating an [[ImageMapLayerSettings]] object, a format needs to be specified this 'formatId'.
|
|
154295
154160
|
* The MapLayerFormat object can later be used to validate a source, or create a provider.
|
|
154296
154161
|
*
|
|
154297
|
-
* Subclasses should override formatId and [[MapLayerFormat.
|
|
154162
|
+
* Subclasses should override formatId, [[MapLayerFormat.createImageryProvider]], and [[MapLayerFormat.createMapLayerTree]].
|
|
154298
154163
|
* @public
|
|
154299
154164
|
*/
|
|
154300
154165
|
class MapLayerFormat {
|
|
154301
|
-
/** Register the current format in the [[MapLayerFormatRegistry]].
|
|
154302
|
-
*/
|
|
154166
|
+
/** Register the current format in the [[MapLayerFormatRegistry]]. */
|
|
154303
154167
|
static register() { _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.mapLayerFormatRegistry.register(this); }
|
|
154304
|
-
/**
|
|
154305
|
-
|
|
154168
|
+
/**
|
|
154169
|
+
* Allow a source of a specific format to be validated before being attached as a map-layer.
|
|
154170
|
+
* @param _url The URL of the source.
|
|
154171
|
+
* @param _userName The username to access the source if needed.
|
|
154172
|
+
* @param _password The password to access the source if needed.
|
|
154173
|
+
* @param _ignoreCache Flag to skip cache lookup (i.e. force a new server request).
|
|
154174
|
+
* @returns Validation Status. If successful, a list of available sub-layers may also be returned.
|
|
154175
|
+
*/
|
|
154306
154176
|
static async validateSource(_url, _userName, _password, _ignoreCache) { return { status: _internal__WEBPACK_IMPORTED_MODULE_2__.MapLayerSourceStatus.Valid }; }
|
|
154307
|
-
/**
|
|
154308
|
-
*
|
|
154309
|
-
|
|
154310
|
-
|
|
154311
|
-
|
|
154177
|
+
/**
|
|
154178
|
+
* Create a [[MapLayerImageryProvider]] that will be used to feed data in a map-layer tile tree.
|
|
154179
|
+
* @param _settings The map layer settings to be applied to the imagery provider.
|
|
154180
|
+
* @returns Returns the new imagery provider.
|
|
154181
|
+
* @beta
|
|
154182
|
+
*/
|
|
154183
|
+
static createImageryProvider(_settings) {
|
|
154184
|
+
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false, "Subclasses must override this method.");
|
|
154185
|
+
return undefined;
|
|
154186
|
+
}
|
|
154187
|
+
/**
|
|
154188
|
+
* Creates a MapLayerTileTreeReference for this map layer format.
|
|
154189
|
+
* @param _layerSettings Map layer settings that are applied to the MapLayerTileTreeReference.
|
|
154190
|
+
* @param _layerIndex The index of the associated map layer.
|
|
154191
|
+
* @param _iModel The iModel containing the MapLayerTileTreeReference.
|
|
154192
|
+
* @returns Returns the new tile tree reference.
|
|
154193
|
+
* @beta
|
|
154194
|
+
*/
|
|
154312
154195
|
static createMapLayerTree(_layerSettings, _layerIndex, _iModel) {
|
|
154313
|
-
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false);
|
|
154196
|
+
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false, "Subclasses must override this method.");
|
|
154314
154197
|
return undefined;
|
|
154315
154198
|
}
|
|
154316
154199
|
}
|
|
154317
|
-
/**
|
|
154200
|
+
/**
|
|
154201
|
+
* A registry of MapLayerFormats identified by their unique format IDs. The registry can be accessed via [[IModelApp.mapLayerFormatRegistry]].
|
|
154318
154202
|
* @public
|
|
154319
154203
|
*/
|
|
154320
154204
|
class MapLayerFormatRegistry {
|
|
@@ -154357,7 +154241,8 @@ class MapLayerFormatRegistry {
|
|
|
154357
154241
|
}
|
|
154358
154242
|
return format.createMapLayerTree(layerSettings, layerIndex, iModel);
|
|
154359
154243
|
}
|
|
154360
|
-
/**
|
|
154244
|
+
/**
|
|
154245
|
+
* Returns a [[MapLayerImageryProvider]] based on the provided [[ImageMapLayerSettings]] object.
|
|
154361
154246
|
* @internal
|
|
154362
154247
|
*/
|
|
154363
154248
|
createImageryProvider(layerSettings) {
|
|
@@ -154402,7 +154287,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
154402
154287
|
class ImageryMapLayerFormat extends _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerFormat {
|
|
154403
154288
|
/** @internal */
|
|
154404
154289
|
static createMapLayerTree(layerSettings, layerIndex, iModel) {
|
|
154405
|
-
return new _internal__WEBPACK_IMPORTED_MODULE_0__.ImageryMapLayerTreeReference(layerSettings, layerIndex, iModel);
|
|
154290
|
+
return new _internal__WEBPACK_IMPORTED_MODULE_0__.ImageryMapLayerTreeReference({ layerSettings, layerIndex, iModel });
|
|
154406
154291
|
}
|
|
154407
154292
|
}
|
|
154408
154293
|
class WmsMapLayerFormat extends ImageryMapLayerFormat {
|
|
@@ -154634,15 +154519,23 @@ class MapLayerImageryProvider {
|
|
|
154634
154519
|
this._geographicTilingScheme = new _internal__WEBPACK_IMPORTED_MODULE_5__.GeographicTilingScheme();
|
|
154635
154520
|
/** @internal */
|
|
154636
154521
|
this._status = MapLayerImageryProviderStatus.Valid;
|
|
154637
|
-
|
|
154638
|
-
|
|
154522
|
+
/**
|
|
154523
|
+
* This value is used internally for various computations, this should not get overriden.
|
|
154524
|
+
* @internal
|
|
154525
|
+
*/
|
|
154639
154526
|
this.defaultMinimumZoomLevel = 0;
|
|
154640
|
-
/**
|
|
154527
|
+
/**
|
|
154528
|
+
* This value is used internally for various computations, this should not get overriden.
|
|
154529
|
+
* @internal
|
|
154530
|
+
*/
|
|
154641
154531
|
this.defaultMaximumZoomLevel = 22;
|
|
154642
154532
|
this._mercatorTilingScheme = new _internal__WEBPACK_IMPORTED_MODULE_5__.WebMercatorTilingScheme();
|
|
154643
154533
|
this._geographicTilingScheme = new _internal__WEBPACK_IMPORTED_MODULE_5__.GeographicTilingScheme(2, 1, true);
|
|
154644
154534
|
}
|
|
154645
|
-
/**
|
|
154535
|
+
/**
|
|
154536
|
+
* Initialize the provider by loading the first tile at its default maximum zoom level.
|
|
154537
|
+
* @beta
|
|
154538
|
+
*/
|
|
154646
154539
|
async initialize() {
|
|
154647
154540
|
this.loadTile(0, 0, this.defaultMaximumZoomLevel).then((tileData) => {
|
|
154648
154541
|
if (tileData !== undefined)
|
|
@@ -154650,20 +154543,31 @@ class MapLayerImageryProvider {
|
|
|
154650
154543
|
});
|
|
154651
154544
|
}
|
|
154652
154545
|
get tilingScheme() { return this.useGeographicTilingScheme ? this._geographicTilingScheme : this._mercatorTilingScheme; }
|
|
154653
|
-
/**
|
|
154546
|
+
/**
|
|
154547
|
+
* Add attribution logo cards for the data supplied by this provider to the [[Viewport]]'s logo div.
|
|
154548
|
+
* @param _cards Logo cards HTML element that may contain custom data attributes.
|
|
154549
|
+
* @param _viewport Viewport to add logo cards to.
|
|
154550
|
+
* @beta
|
|
154551
|
+
*/
|
|
154654
154552
|
addLogoCards(_cards, _viewport) { }
|
|
154655
154553
|
/** @internal */
|
|
154656
154554
|
get transparentBackgroundString() { return this._settings.transparentBackground ? "true" : "false"; }
|
|
154657
154555
|
/** @internal */
|
|
154658
154556
|
async _areChildrenAvailable(_tile) { return true; }
|
|
154659
154557
|
/** @internal */
|
|
154660
|
-
getPotentialChildIds(
|
|
154661
|
-
const childLevel =
|
|
154662
|
-
return
|
|
154558
|
+
getPotentialChildIds(quadId) {
|
|
154559
|
+
const childLevel = quadId.level + 1;
|
|
154560
|
+
return quadId.getChildIds(this.tilingScheme.getNumberOfXChildrenAtLevel(childLevel), this.tilingScheme.getNumberOfYChildrenAtLevel(childLevel));
|
|
154663
154561
|
}
|
|
154664
|
-
/**
|
|
154665
|
-
|
|
154666
|
-
|
|
154562
|
+
/**
|
|
154563
|
+
* Get child IDs of a quad and generate tiles based on these child IDs.
|
|
154564
|
+
* See [[ImageryTileTree._loadChildren]] for the definition of `resolveChildren` where this function is commonly called.
|
|
154565
|
+
* @param quadId quad to generate child IDs for.
|
|
154566
|
+
* @param resolveChildren Function that creates tiles from child IDs.
|
|
154567
|
+
* @beta
|
|
154568
|
+
*/
|
|
154569
|
+
_generateChildIds(quadId, resolveChildren) {
|
|
154570
|
+
resolveChildren(this.getPotentialChildIds(quadId));
|
|
154667
154571
|
}
|
|
154668
154572
|
/** @internal */
|
|
154669
154573
|
generateChildIds(tile, resolveChildren) {
|
|
@@ -154671,9 +154575,16 @@ class MapLayerImageryProvider {
|
|
|
154671
154575
|
tile.setLeaf();
|
|
154672
154576
|
return;
|
|
154673
154577
|
}
|
|
154674
|
-
this._generateChildIds(tile, resolveChildren);
|
|
154578
|
+
this._generateChildIds(tile.quadId, resolveChildren);
|
|
154675
154579
|
}
|
|
154676
|
-
/**
|
|
154580
|
+
/**
|
|
154581
|
+
* Get tooltip text for a specific quad and cartographic position.
|
|
154582
|
+
* @param strings List of strings to contain tooltip text.
|
|
154583
|
+
* @param quadId Quad ID to get tooltip for.
|
|
154584
|
+
* @param _carto Cartographic that may be used to retrieve and/or format tooltip text.
|
|
154585
|
+
* @param tree Tree associated with the quad to get the tooltip for.
|
|
154586
|
+
* @internal
|
|
154587
|
+
*/
|
|
154677
154588
|
async getToolTip(strings, quadId, _carto, tree) {
|
|
154678
154589
|
if (doDebugToolTips) {
|
|
154679
154590
|
const range = quadId.getLatLongRangeDegrees(tree.tilingScheme);
|
|
@@ -154708,7 +154619,8 @@ class MapLayerImageryProvider {
|
|
|
154708
154619
|
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false, "Invalid tile content type");
|
|
154709
154620
|
return undefined;
|
|
154710
154621
|
}
|
|
154711
|
-
/**
|
|
154622
|
+
/**
|
|
154623
|
+
* Change the status of this provider.
|
|
154712
154624
|
* Sub-classes should override 'onStatusUpdated' instead of this method.
|
|
154713
154625
|
* @internal
|
|
154714
154626
|
*/
|
|
@@ -154791,31 +154703,49 @@ class MapLayerImageryProvider {
|
|
|
154791
154703
|
}
|
|
154792
154704
|
return true;
|
|
154793
154705
|
}
|
|
154794
|
-
/**
|
|
154795
|
-
|
|
154706
|
+
/**
|
|
154707
|
+
* Calculates the projected x cartesian coordinate in EPSG:3857 from the longitude in EPSG:4326 (WGS84)
|
|
154708
|
+
* @param longitude Longitude in EPSG:4326 (WGS84)
|
|
154709
|
+
* @internal
|
|
154710
|
+
*/
|
|
154796
154711
|
getEPSG3857X(longitude) {
|
|
154797
154712
|
return longitude * 20037508.34 / 180.0;
|
|
154798
154713
|
}
|
|
154799
|
-
/**
|
|
154800
|
-
|
|
154714
|
+
/**
|
|
154715
|
+
* Calculates the projected y cartesian coordinate in EPSG:3857 from the latitude in EPSG:4326 (WGS84)
|
|
154716
|
+
* @param latitude Latitude in EPSG:4326 (WGS84)
|
|
154717
|
+
* @internal
|
|
154718
|
+
*/
|
|
154801
154719
|
getEPSG3857Y(latitude) {
|
|
154802
154720
|
const y = Math.log(Math.tan((90.0 + latitude) * Math.PI / 360.0)) / (Math.PI / 180.0);
|
|
154803
154721
|
return y * 20037508.34 / 180.0;
|
|
154804
154722
|
}
|
|
154805
|
-
/**
|
|
154806
|
-
|
|
154723
|
+
/**
|
|
154724
|
+
* Calculates the longitude in EPSG:4326 (WGS84) from the projected x cartesian coordinate in EPSG:3857
|
|
154725
|
+
* @param x3857 Projected x cartesian coordinate in EPSG:3857
|
|
154726
|
+
* @internal
|
|
154727
|
+
*/
|
|
154807
154728
|
getEPSG4326Lon(x3857) {
|
|
154808
154729
|
return _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Angle.radiansToDegrees(x3857 / earthRadius);
|
|
154809
154730
|
}
|
|
154810
|
-
/**
|
|
154811
|
-
|
|
154731
|
+
/**
|
|
154732
|
+
* Calculates the latitude in EPSG:4326 (WGS84) from the projected y cartesian coordinate in EPSG:3857
|
|
154733
|
+
* @param y3857 Projected y cartesian coordinate in EPSG:3857
|
|
154734
|
+
* @internal
|
|
154735
|
+
*/
|
|
154812
154736
|
getEPSG4326Lat(y3857) {
|
|
154813
154737
|
const y = 2 * Math.atan(Math.exp(y3857 / earthRadius)) - (Math.PI / 2);
|
|
154814
154738
|
return _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Angle.radiansToDegrees(y);
|
|
154815
154739
|
}
|
|
154816
|
-
/**
|
|
154817
|
-
|
|
154818
|
-
|
|
154740
|
+
/**
|
|
154741
|
+
* Get the bounding box/extents of a tile in EPSG:4326 (WGS84) format.
|
|
154742
|
+
* Map tile providers like Bing and Mapbox allow the URL to be constructed directly from the zoom level and tile coordinates.
|
|
154743
|
+
* However, WMS-based servers take a bounding box instead. This method can help get that bounding box from a tile.
|
|
154744
|
+
* @param row Row of the tile
|
|
154745
|
+
* @param column Column of the tile
|
|
154746
|
+
* @param zoomLevel Desired zoom level of the tile
|
|
154747
|
+
* @internal
|
|
154748
|
+
*/
|
|
154819
154749
|
getEPSG4326Extent(row, column, zoomLevel) {
|
|
154820
154750
|
// Shift left (this.tileSize << zoomLevel) overflow when using 512 pixels tile at higher resolution,
|
|
154821
154751
|
// so use Math.pow instead (I assume the performance lost to be minimal)
|
|
@@ -154830,7 +154760,13 @@ class MapLayerImageryProvider {
|
|
|
154830
154760
|
const latitudeTop = 90.0 - 360.0 * Math.atan(Math.exp(-y1 * 2 * Math.PI)) / Math.PI;
|
|
154831
154761
|
return { longitudeLeft, longitudeRight, latitudeTop, latitudeBottom };
|
|
154832
154762
|
}
|
|
154833
|
-
/**
|
|
154763
|
+
/**
|
|
154764
|
+
* Get the bounding box/extents of a tile in EPSG:3857 format.
|
|
154765
|
+
* @param row Row of the tile
|
|
154766
|
+
* @param column Column of the tile
|
|
154767
|
+
* @param zoomLevel Desired zoom level of the tile
|
|
154768
|
+
* @internal
|
|
154769
|
+
*/
|
|
154834
154770
|
getEPSG3857Extent(row, column, zoomLevel) {
|
|
154835
154771
|
const epsg4326Extent = this.getEPSG4326Extent(row, column, zoomLevel);
|
|
154836
154772
|
const left = this.getEPSG3857X(epsg4326Extent.longitudeLeft);
|
|
@@ -155107,24 +155043,45 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
155107
155043
|
|
|
155108
155044
|
|
|
155109
155045
|
|
|
155110
|
-
/**
|
|
155046
|
+
/**
|
|
155047
|
+
* A [[TileTreeReference]] to be used specifically for [[MapTileTree]]s.
|
|
155048
|
+
* The reference refers to its MapTileTree by way of the tree's [[TileTreeOwner]].
|
|
155049
|
+
* Multiple MapLayerTileTreeReferences can refer to the same TileTree if the map layer settings are equivalent, meaning
|
|
155050
|
+
* they have identical format IDs, URLs, credentials, etc.
|
|
155051
|
+
* @beta
|
|
155052
|
+
*/
|
|
155111
155053
|
class MapLayerTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_3__.TileTreeReference {
|
|
155054
|
+
/**
|
|
155055
|
+
* Constructor for a MapLayerTileTreeReference.
|
|
155056
|
+
* @param _layerSettings Map layer settings that are applied to the MapLayerTileTreeReference.
|
|
155057
|
+
* @param _layerIndex The index of the associated map layer.
|
|
155058
|
+
* @param iModel The iModel containing the MapLayerTileTreeReference.
|
|
155059
|
+
* @internal
|
|
155060
|
+
*/
|
|
155112
155061
|
constructor(_layerSettings, _layerIndex, iModel) {
|
|
155113
155062
|
super();
|
|
155114
155063
|
this._layerSettings = _layerSettings;
|
|
155115
155064
|
this._layerIndex = _layerIndex;
|
|
155116
155065
|
this.iModel = iModel;
|
|
155117
155066
|
}
|
|
155067
|
+
/* @internal */
|
|
155118
155068
|
get _transparency() { return this._layerSettings.transparency ? this._layerSettings.transparency : undefined; }
|
|
155069
|
+
/** Returns true if the associated map layer, including its sublayers, is opaque. */
|
|
155119
155070
|
get isOpaque() {
|
|
155120
155071
|
return this._layerSettings.visible && (!this._layerSettings.allSubLayersInvisible) && !this._layerSettings.transparentBackground && 0 === this._layerSettings.transparency;
|
|
155121
155072
|
}
|
|
155073
|
+
/* Returns the map layer name. */
|
|
155122
155074
|
get layerName() { return this._layerSettings.name; }
|
|
155075
|
+
/** Returns the imagery provider for the tile tree. */
|
|
155123
155076
|
get imageryProvider() { return undefined; }
|
|
155124
155077
|
set layerSettings(layerSettings) { this._layerSettings = layerSettings; }
|
|
155078
|
+
/** Returns the layer settings for the map layer. */
|
|
155125
155079
|
get layerSettings() { return this._layerSettings; }
|
|
155080
|
+
/** Returns the index of the map layer associated with the tile tree. */
|
|
155126
155081
|
get layerIndex() { return this._layerIndex; }
|
|
155082
|
+
/** Returns the transparency value of the map layer. */
|
|
155127
155083
|
get transparency() { return this._transparency; }
|
|
155084
|
+
/* Returns a tooltip describing the hit with the map layer name. */
|
|
155128
155085
|
async getToolTip(hit) {
|
|
155129
155086
|
const tree = this.treeOwner.tileTree;
|
|
155130
155087
|
if (undefined === tree || hit.iModel !== tree.iModel || tree.modelId !== hit.sourceId)
|
|
@@ -155136,7 +155093,14 @@ class MapLayerTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_3__.T
|
|
|
155136
155093
|
return div;
|
|
155137
155094
|
}
|
|
155138
155095
|
}
|
|
155139
|
-
/**
|
|
155096
|
+
/**
|
|
155097
|
+
* Creates a MapLayerTileTreeReference.
|
|
155098
|
+
* @param layerSettings Model or image map layer settings that are applied to the MapLayerTileTreeReference.
|
|
155099
|
+
* @param layerIndex The index of the associated map layer.
|
|
155100
|
+
* @param iModel The iModel containing the new MapLayerTileTreeReference.
|
|
155101
|
+
* @returns Returns the new tile tree reference, either a ModelMapLayerTileTreeReference or an ImageryMapLayerTreeReference.
|
|
155102
|
+
* @internal
|
|
155103
|
+
*/
|
|
155140
155104
|
function createMapLayerTreeReference(layerSettings, layerIndex, iModel) {
|
|
155141
155105
|
if (layerSettings instanceof _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ModelMapLayerSettings) {
|
|
155142
155106
|
return (0,_internal__WEBPACK_IMPORTED_MODULE_3__.createModelMapLayerTileTreeReference)(layerSettings, layerIndex, iModel);
|
|
@@ -173082,10 +173046,8 @@ class Geometry {
|
|
|
173082
173046
|
* Return `undefined` if `(fTarget - f0) / (f1 - f0)` exceeds `Geometry.largeFractionResult`
|
|
173083
173047
|
*/
|
|
173084
173048
|
static inverseInterpolate01(f0, f1, fTarget = 0) {
|
|
173085
|
-
|
|
173086
|
-
|
|
173087
|
-
*/
|
|
173088
|
-
return Geometry.conditionalDivideFraction(fTarget - f0, f1 - f0); // x = (fTarget-f0)/(f1-f0)
|
|
173049
|
+
// Line equation is fTarget-f0 = (f1-f0)*x so x = (fTarget-f0)/(f1-f0)
|
|
173050
|
+
return Geometry.conditionalDivideFraction(fTarget - f0, f1 - f0);
|
|
173089
173051
|
}
|
|
173090
173052
|
/**
|
|
173091
173053
|
* Return `true` if `json` is an array with at least `minEntries` entries and all entries are numbers (including
|
|
@@ -186139,11 +186101,28 @@ class CurveChainWithDistanceIndex extends _curve_CurvePrimitive__WEBPACK_IMPORTE
|
|
|
186139
186101
|
curveLengthBetweenFractions(fraction0, fraction1) {
|
|
186140
186102
|
return Math.abs(fraction1 - fraction0) * this._totalLength;
|
|
186141
186103
|
}
|
|
186104
|
+
/** Flatten CurveChainWithDistanceIndex children in the input chain.
|
|
186105
|
+
* @return cloned flattened CurveChain, or reference to the input chain if no nesting
|
|
186106
|
+
*/
|
|
186107
|
+
static flattenNestedChains(chain) {
|
|
186108
|
+
if (-1 === chain.children.findIndex((child) => { return child instanceof CurveChainWithDistanceIndex; }))
|
|
186109
|
+
return chain;
|
|
186110
|
+
const flatChain = chain.clone();
|
|
186111
|
+
const flatChildren = flatChain.children.flatMap((child) => {
|
|
186112
|
+
if (child instanceof CurveChainWithDistanceIndex)
|
|
186113
|
+
return child.path.children;
|
|
186114
|
+
else
|
|
186115
|
+
return [child];
|
|
186116
|
+
});
|
|
186117
|
+
flatChain.children.splice(0, Infinity, ...flatChildren);
|
|
186118
|
+
return flatChain;
|
|
186119
|
+
}
|
|
186142
186120
|
/**
|
|
186143
186121
|
* Capture (not clone) a path into a new `CurveChainWithDistanceIndex`
|
|
186144
186122
|
* @param path primitive array to be CAPTURED (not cloned)
|
|
186145
186123
|
*/
|
|
186146
186124
|
static createCapture(path, options) {
|
|
186125
|
+
path = this.flattenNestedChains(path); // nested chains not allowed
|
|
186147
186126
|
const fragments = DistanceIndexConstructionContext.createPathFragmentIndex(path, options);
|
|
186148
186127
|
const result = new CurveChainWithDistanceIndex(path, fragments);
|
|
186149
186128
|
return result;
|
|
@@ -186479,6 +186458,36 @@ class CurveChainWithDistanceIndex extends _curve_CurvePrimitive__WEBPACK_IMPORTE
|
|
|
186479
186458
|
}
|
|
186480
186459
|
return undefined;
|
|
186481
186460
|
}
|
|
186461
|
+
/**
|
|
186462
|
+
* Given a parent chain, convert the corresponding child details in the specified pairs.
|
|
186463
|
+
* * Converted details refer to the chain's global parameterization instead of the child's.
|
|
186464
|
+
* * It is assumed that for all i >= index0, `pairs[i].detailA.curve` is a child of chainA (similarly for chainB).
|
|
186465
|
+
* @param pairs array to mutate
|
|
186466
|
+
* @param index0 convert details of pairs in the tail of the array, starting at index0
|
|
186467
|
+
* @param chainA convert each specified detailA to the global parameterization of chainA
|
|
186468
|
+
* @param chainB convert each specified detailB to the global parameterization of chainB
|
|
186469
|
+
* @param compressAdjacent whether to remove adjacent duplicate pairs after conversion
|
|
186470
|
+
* @return the converted array
|
|
186471
|
+
* @internal
|
|
186472
|
+
*/
|
|
186473
|
+
static convertChildDetailToChainDetail(pairs, index0, chainA, chainB, compressAdjacent) {
|
|
186474
|
+
for (let i = index0; i < pairs.length; ++i) {
|
|
186475
|
+
const childDetailPair = pairs[i];
|
|
186476
|
+
if (chainA) {
|
|
186477
|
+
const chainDetail = chainA.computeChainDetail(childDetailPair.detailA);
|
|
186478
|
+
if (chainDetail)
|
|
186479
|
+
childDetailPair.detailA = chainDetail;
|
|
186480
|
+
}
|
|
186481
|
+
if (chainB) {
|
|
186482
|
+
const chainDetail = chainB.computeChainDetail(childDetailPair.detailB);
|
|
186483
|
+
if (chainDetail)
|
|
186484
|
+
childDetailPair.detailB = chainDetail;
|
|
186485
|
+
}
|
|
186486
|
+
}
|
|
186487
|
+
if (compressAdjacent)
|
|
186488
|
+
pairs = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_8__.CurveLocationDetailPair.removeAdjacentDuplicates(pairs, index0);
|
|
186489
|
+
return pairs;
|
|
186490
|
+
}
|
|
186482
186491
|
}
|
|
186483
186492
|
CurveChainWithDistanceIndex._numCalls = 0;
|
|
186484
186493
|
CurveChainWithDistanceIndex._numTested = 0;
|
|
@@ -186537,15 +186546,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
186537
186546
|
|
|
186538
186547
|
/**
|
|
186539
186548
|
* A `CurveCollection` is an abstract (non-instantiable) class for various sets of curves with particular structures:
|
|
186540
|
-
* -
|
|
186541
|
-
* The two instantiable forms of `CurveChain` are
|
|
186542
|
-
* -
|
|
186543
|
-
*
|
|
186544
|
-
*
|
|
186545
|
-
*
|
|
186546
|
-
* -
|
|
186547
|
-
* - `UnionRegion` -- a collection of coplanar `Loop` and/or `ParityRegion`, with "in/out" classification by union rules.
|
|
186548
|
-
* - `BagOfCurves` -- a collection of `AnyCurve` with no implied structure.
|
|
186549
|
+
* - [[CurveChain]] - a non-instantiable intermediate class for a sequence of [[CurvePrimitive]] joining head-to-tail.
|
|
186550
|
+
* The two instantiable forms of `CurveChain` are:
|
|
186551
|
+
* - [[Path]] - a chain of curves. Does not have to be closed or planar. A closed `Path` is not treated as bounding a surface.
|
|
186552
|
+
* - [[Loop]] - a closed and planar chain of curves. A `Loop` is treated as bounding a planar area.
|
|
186553
|
+
* - [[ParityRegion]] - a collection of coplanar `Loop`, with "in/out" classification by parity rules.
|
|
186554
|
+
* - [[UnionRegion]] - a collection of coplanar `Loop` and/or `ParityRegion`, with "in/out" classification by union rules.
|
|
186555
|
+
* - [[BagOfCurves]] - a collection of [[AnyCurve]] with no implied structure.
|
|
186549
186556
|
*
|
|
186550
186557
|
* @see [Curve Collections]($docs/learning/geometry/CurveCollection.md) learning article.
|
|
186551
186558
|
* @public
|
|
@@ -186555,7 +186562,6 @@ class CurveCollection extends _GeometryQuery__WEBPACK_IMPORTED_MODULE_0__.Geomet
|
|
|
186555
186562
|
super(...arguments);
|
|
186556
186563
|
/** String name for schema properties */
|
|
186557
186564
|
this.geometryCategory = "curveCollection";
|
|
186558
|
-
/* eslint-disable @typescript-eslint/naming-convention, no-empty */
|
|
186559
186565
|
/** Flag for inner loop status. Only used by `Loop`. */
|
|
186560
186566
|
this.isInner = false;
|
|
186561
186567
|
}
|
|
@@ -186932,11 +186938,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
186932
186938
|
/* harmony export */ CurveCurve: () => (/* binding */ CurveCurve)
|
|
186933
186939
|
/* harmony export */ });
|
|
186934
186940
|
/* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
|
|
186935
|
-
/* harmony import */ var
|
|
186936
|
-
/* harmony import */ var _CurvePrimitive__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CurvePrimitive */ "../../core/geometry/lib/esm/curve/CurvePrimitive.js");
|
|
186937
|
-
/* harmony import */ var _internalContexts_CurveCurveCloseApproachXY__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./internalContexts/CurveCurveCloseApproachXY */ "../../core/geometry/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js");
|
|
186941
|
+
/* harmony import */ var _internalContexts_CurveCurveCloseApproachXY__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./internalContexts/CurveCurveCloseApproachXY */ "../../core/geometry/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js");
|
|
186938
186942
|
/* harmony import */ var _internalContexts_CurveCurveIntersectXY__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./internalContexts/CurveCurveIntersectXY */ "../../core/geometry/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js");
|
|
186939
|
-
/* harmony import */ var
|
|
186943
|
+
/* harmony import */ var _internalContexts_CurveCurveIntersectXYZ__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./internalContexts/CurveCurveIntersectXYZ */ "../../core/geometry/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js");
|
|
186940
186944
|
/*---------------------------------------------------------------------------------------------
|
|
186941
186945
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
186942
186946
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -186948,8 +186952,6 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
186948
186952
|
|
|
186949
186953
|
|
|
186950
186954
|
|
|
186951
|
-
|
|
186952
|
-
|
|
186953
186955
|
/**
|
|
186954
186956
|
* `CurveCurve` has static method for various computations that work on a pair of curves or curve collections.
|
|
186955
186957
|
* @public
|
|
@@ -186964,22 +186966,11 @@ class CurveCurve {
|
|
|
186964
186966
|
* @param tolerance optional distance tolerance for coincidence
|
|
186965
186967
|
*/
|
|
186966
186968
|
static intersectionXYPairs(curveA, extendA, curveB, extendB, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
|
|
186967
|
-
|
|
186968
|
-
if (curveB instanceof _CurvePrimitive__WEBPACK_IMPORTED_MODULE_2__.CurvePrimitive) {
|
|
186969
|
-
curveA.dispatchToGeometryHandler(handler);
|
|
186970
|
-
}
|
|
186971
|
-
else if (curveB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_3__.CurveCollection) {
|
|
186972
|
-
const allCurves = curveB.collectCurvePrimitives();
|
|
186973
|
-
for (const child of allCurves) {
|
|
186974
|
-
handler.resetGeometry(false, child, false);
|
|
186975
|
-
curveA.dispatchToGeometryHandler(handler);
|
|
186976
|
-
}
|
|
186977
|
-
}
|
|
186978
|
-
return handler.grabPairedResults();
|
|
186969
|
+
return CurveCurve.intersectionProjectedXYPairs(undefined, curveA, extendA, curveB, extendB, tolerance);
|
|
186979
186970
|
}
|
|
186980
186971
|
/**
|
|
186981
186972
|
* Return xy intersections of 2 projected curves.
|
|
186982
|
-
* @param worldToLocal transform (possibly perspective) defining the local coordinates in which to compute xy intersections
|
|
186973
|
+
* @param worldToLocal transform (possibly perspective) defining the local coordinates in which to compute xy intersections
|
|
186983
186974
|
* @param curveA first curve
|
|
186984
186975
|
* @param extendA true to allow curveA to extend
|
|
186985
186976
|
* @param curveB second curve
|
|
@@ -187003,7 +186994,7 @@ class CurveCurve {
|
|
|
187003
186994
|
* @returns array of intersections structured as CurveLocationDetailPair[]
|
|
187004
186995
|
*/
|
|
187005
186996
|
static intersectionXYZPairs(curveA, extendA, curveB, extendB) {
|
|
187006
|
-
const handler = new
|
|
186997
|
+
const handler = new _internalContexts_CurveCurveIntersectXYZ__WEBPACK_IMPORTED_MODULE_2__.CurveCurveIntersectXYZ(extendA, curveB, extendB);
|
|
187007
186998
|
curveA.dispatchToGeometryHandler(handler);
|
|
187008
186999
|
return handler.grabPairedResults();
|
|
187009
187000
|
}
|
|
@@ -187017,7 +187008,7 @@ class CurveCurve {
|
|
|
187017
187008
|
for (let i = 0; i < primitives.length; i++) {
|
|
187018
187009
|
const curveA = primitives[i];
|
|
187019
187010
|
for (let j = i + 1; j < primitives.length; j++) {
|
|
187020
|
-
handler.resetGeometry(
|
|
187011
|
+
handler.resetGeometry(primitives[j]);
|
|
187021
187012
|
curveA.dispatchToGeometryHandler(handler);
|
|
187022
187013
|
}
|
|
187023
187014
|
}
|
|
@@ -187037,7 +187028,7 @@ class CurveCurve {
|
|
|
187037
187028
|
* Close approaches further than this xy-distance are not returned.
|
|
187038
187029
|
*/
|
|
187039
187030
|
static closeApproachProjectedXYPairs(curveA, curveB, maxDistance) {
|
|
187040
|
-
const handler = new
|
|
187031
|
+
const handler = new _internalContexts_CurveCurveCloseApproachXY__WEBPACK_IMPORTED_MODULE_3__.CurveCurveCloseApproachXY(curveB);
|
|
187041
187032
|
handler.maxDistanceToAccept = maxDistance;
|
|
187042
187033
|
curveA.dispatchToGeometryHandler(handler);
|
|
187043
187034
|
return handler.grabPairedResults();
|
|
@@ -187939,19 +187930,13 @@ class CurveLocationDetail {
|
|
|
187939
187930
|
* * No action if undefined.
|
|
187940
187931
|
*/
|
|
187941
187932
|
collapseToEnd() {
|
|
187942
|
-
if (this.fraction1 !== undefined)
|
|
187933
|
+
if (this.fraction1 !== undefined)
|
|
187943
187934
|
this.fraction = this.fraction1;
|
|
187944
|
-
|
|
187945
|
-
}
|
|
187946
|
-
if (this.point1) {
|
|
187935
|
+
if (this.point1)
|
|
187947
187936
|
this.point = this.point1;
|
|
187948
|
-
|
|
187949
|
-
}
|
|
187937
|
+
this.collapseToStart();
|
|
187950
187938
|
}
|
|
187951
|
-
/**
|
|
187952
|
-
* Make (fraction, point) the primary (and only) data.
|
|
187953
|
-
* * No action if undefined.
|
|
187954
|
-
*/
|
|
187939
|
+
/** Make (fraction, point) the primary (and only) data. */
|
|
187955
187940
|
collapseToStart() {
|
|
187956
187941
|
this.fraction1 = undefined;
|
|
187957
187942
|
this.point1 = undefined;
|
|
@@ -188171,6 +188156,10 @@ class CurveLocationDetail {
|
|
|
188171
188156
|
}
|
|
188172
188157
|
return detailB;
|
|
188173
188158
|
}
|
|
188159
|
+
/** Compare only the curve and fraction of this detail with `other`. */
|
|
188160
|
+
isSameCurveAndFraction(other) {
|
|
188161
|
+
return this.curve === other.curve && _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isAlmostEqualNumber(this.fraction, other.fraction);
|
|
188162
|
+
}
|
|
188174
188163
|
}
|
|
188175
188164
|
/**
|
|
188176
188165
|
* Enumeration of configurations for intersections and min/max distance-between-curve
|
|
@@ -188233,6 +188222,30 @@ class CurveLocationDetailPair {
|
|
|
188233
188222
|
this.detailA = this.detailB;
|
|
188234
188223
|
this.detailB = q;
|
|
188235
188224
|
}
|
|
188225
|
+
/**
|
|
188226
|
+
* Mutate the input array by removing the second of two adjacent duplicate pairs.
|
|
188227
|
+
* * Ignores details representing coincident intervals (e.g., for which `fraction1` is defined).
|
|
188228
|
+
* * Comparison is performed by [[CurveLocationDetail.isSameCurveAndFraction]].
|
|
188229
|
+
* * No sorting is performed.
|
|
188230
|
+
* @param pairs array to de-duplicate in place
|
|
188231
|
+
* @param index0 look for duplicates in the tail of the array starting at index0
|
|
188232
|
+
* @return reference to input array
|
|
188233
|
+
* @internal
|
|
188234
|
+
*/
|
|
188235
|
+
static removeAdjacentDuplicates(pairs, index0 = 0) {
|
|
188236
|
+
return pairs.flatMap((pair, i, arr) => {
|
|
188237
|
+
if (i >= index0 && i > 0) {
|
|
188238
|
+
if (!pair.detailA.hasFraction1 && !pair.detailB.hasFraction1) {
|
|
188239
|
+
if (pair.detailA.isSameCurveAndFraction(arr[i - 1].detailA)) {
|
|
188240
|
+
if (pair.detailB.isSameCurveAndFraction(arr[i - 1].detailB)) {
|
|
188241
|
+
return []; // remove the i_th pair
|
|
188242
|
+
}
|
|
188243
|
+
}
|
|
188244
|
+
}
|
|
188245
|
+
}
|
|
188246
|
+
return [pair]; // preserve the i_th pair
|
|
188247
|
+
});
|
|
188248
|
+
}
|
|
188236
188249
|
}
|
|
188237
188250
|
/**
|
|
188238
188251
|
* Data bundle for a pair of arrays of CurveLocationDetail structures.
|
|
@@ -189283,10 +189296,8 @@ class CurveWireMomentsXYZ {
|
|
|
189283
189296
|
if (root instanceof _CurvePrimitive__WEBPACK_IMPORTED_MODULE_3__.CurvePrimitive)
|
|
189284
189297
|
root.emitStrokableParts(this);
|
|
189285
189298
|
else if (root instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_4__.CurveCollection) {
|
|
189286
|
-
|
|
189287
|
-
|
|
189288
|
-
this.visitLeaves(child);
|
|
189289
|
-
}
|
|
189299
|
+
for (const child of root.children)
|
|
189300
|
+
this.visitLeaves(child);
|
|
189290
189301
|
}
|
|
189291
189302
|
}
|
|
189292
189303
|
}
|
|
@@ -190675,10 +190686,7 @@ class LineString3d extends _CurvePrimitive__WEBPACK_IMPORTED_MODULE_0__.CurvePri
|
|
|
190675
190686
|
isInPlane(plane) {
|
|
190676
190687
|
return this._points.isCloseToPlane(plane, _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance);
|
|
190677
190688
|
}
|
|
190678
|
-
/**
|
|
190679
|
-
* Push a hit, fixing up the prior entry if needed.
|
|
190680
|
-
* Return the incremented counter.
|
|
190681
|
-
*/
|
|
190689
|
+
/** Push a hit, fixing up the prior entry if needed. */
|
|
190682
190690
|
static pushVertexHit(result, counter, cp, fraction, point) {
|
|
190683
190691
|
const detail = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_12__.CurveLocationDetail.createCurveFractionPoint(cp, fraction, point);
|
|
190684
190692
|
result.push(detail);
|
|
@@ -193859,7 +193867,8 @@ class RegionOps {
|
|
|
193859
193867
|
return halfDistTol * (range.xLength() + range.yLength() + halfDistTol);
|
|
193860
193868
|
}
|
|
193861
193869
|
/**
|
|
193862
|
-
* Return
|
|
193870
|
+
* Return a (signed) xy area for a region.
|
|
193871
|
+
* * The area is negative if and only if the region is oriented clockwise with respect to the positive z-axis.
|
|
193863
193872
|
* @param root any Loop, ParityRegion, or UnionRegion.
|
|
193864
193873
|
*/
|
|
193865
193874
|
static computeXYArea(root) {
|
|
@@ -196498,10 +196507,6 @@ class CurveCurveCloseApproachXY extends _geometry3d_GeometryHandler__WEBPACK_IMP
|
|
|
196498
196507
|
this._results = [];
|
|
196499
196508
|
return result;
|
|
196500
196509
|
}
|
|
196501
|
-
/** Returns `true` if `detail` has same curve and fraction. */
|
|
196502
|
-
sameCurveAndFraction(cp, fraction, detail) {
|
|
196503
|
-
return cp === detail.curve && _Geometry__WEBPACK_IMPORTED_MODULE_3__.Geometry.isAlmostEqualNumber(fraction, detail.fraction);
|
|
196504
|
-
}
|
|
196505
196510
|
/**
|
|
196506
196511
|
* If distance between pointA and pointB is less than maxDistance, record CurveLocationDetailPair which is
|
|
196507
196512
|
* the approach from pointA to pointB.
|
|
@@ -196552,13 +196557,13 @@ class CurveCurveCloseApproachXY extends _geometry3d_GeometryHandler__WEBPACK_IMP
|
|
|
196552
196557
|
const oldDetailA = this._results[numPrevious - 1].detailA;
|
|
196553
196558
|
const oldDetailB = this._results[numPrevious - 1].detailB;
|
|
196554
196559
|
if (reversed) {
|
|
196555
|
-
if (
|
|
196556
|
-
|
|
196560
|
+
if (oldDetailB.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
196561
|
+
oldDetailA.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
196557
196562
|
return;
|
|
196558
196563
|
}
|
|
196559
196564
|
else {
|
|
196560
|
-
if (
|
|
196561
|
-
|
|
196565
|
+
if (oldDetailA.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
196566
|
+
oldDetailB.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
196562
196567
|
return;
|
|
196563
196568
|
}
|
|
196564
196569
|
}
|
|
@@ -196604,13 +196609,13 @@ class CurveCurveCloseApproachXY extends _geometry3d_GeometryHandler__WEBPACK_IMP
|
|
|
196604
196609
|
const oldDetailA = this._results[numPrevious - 1].detailA;
|
|
196605
196610
|
const oldDetailB = this._results[numPrevious - 1].detailB;
|
|
196606
196611
|
if (reversed) {
|
|
196607
|
-
if (
|
|
196608
|
-
|
|
196612
|
+
if (oldDetailB.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
196613
|
+
oldDetailA.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
196609
196614
|
return;
|
|
196610
196615
|
}
|
|
196611
196616
|
else {
|
|
196612
|
-
if (
|
|
196613
|
-
|
|
196617
|
+
if (oldDetailA.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
196618
|
+
oldDetailB.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
196614
196619
|
return;
|
|
196615
196620
|
}
|
|
196616
196621
|
}
|
|
@@ -196996,38 +197001,22 @@ class CurveCurveCloseApproachXY extends _geometry3d_GeometryHandler__WEBPACK_IMP
|
|
|
196996
197001
|
}
|
|
196997
197002
|
this._geometryB = geomB; // restore
|
|
196998
197003
|
}
|
|
196999
|
-
/**
|
|
197000
|
-
* Given a parent chain, convert the corresponding child details so that they refer to the chain's global parameterization.
|
|
197001
|
-
* * It is assumed that `this._results[i].detailA.curve` is a child of chainA, and similarly for detailB/chainB.
|
|
197002
|
-
* @param chainA convert each detailA to the global parameterization of chainA
|
|
197003
|
-
* @param chainB convert each detailB to the global parameterization of chainB
|
|
197004
|
-
*/
|
|
197005
|
-
convertChildDetailToChainDetail(chainA, chainB) {
|
|
197006
|
-
for (const childDetailPair of this._results) {
|
|
197007
|
-
if (chainA) {
|
|
197008
|
-
const chainDetail = chainA.computeChainDetail(childDetailPair.detailA);
|
|
197009
|
-
if (chainDetail)
|
|
197010
|
-
childDetailPair.detailA = chainDetail;
|
|
197011
|
-
}
|
|
197012
|
-
if (chainB) {
|
|
197013
|
-
const chainDetail = chainB.computeChainDetail(childDetailPair.detailB);
|
|
197014
|
-
if (chainDetail)
|
|
197015
|
-
childDetailPair.detailB = chainDetail;
|
|
197016
|
-
}
|
|
197017
|
-
}
|
|
197018
|
-
}
|
|
197019
197004
|
/** Low level dispatch to geomA given a CurveChainWithDistanceIndex in geometryB. */
|
|
197020
197005
|
dispatchCurveChainWithDistanceIndex(geomA, geomAHandler) {
|
|
197021
197006
|
if (!this._geometryB || !(this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_10__.CurveChainWithDistanceIndex))
|
|
197022
197007
|
return;
|
|
197008
|
+
if (geomA instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_10__.CurveChainWithDistanceIndex) {
|
|
197009
|
+
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(!!"call handleCurveChainWithDistanceIndex(geomA) instead");
|
|
197010
|
+
return;
|
|
197011
|
+
}
|
|
197012
|
+
const index0 = this._results.length;
|
|
197023
197013
|
const geomB = this._geometryB; // save
|
|
197024
197014
|
for (const child of geomB.path.children) {
|
|
197025
197015
|
this.resetGeometry(child);
|
|
197026
197016
|
geomAHandler(geomA);
|
|
197027
197017
|
}
|
|
197028
197018
|
this.resetGeometry(geomB); // restore
|
|
197029
|
-
|
|
197030
|
-
this.convertChildDetailToChainDetail(undefined, geomB);
|
|
197019
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_10__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, index0, undefined, geomB, true);
|
|
197031
197020
|
}
|
|
197032
197021
|
/** Double dispatch handler for strongly typed segment. */
|
|
197033
197022
|
handleLineSegment3d(segmentA) {
|
|
@@ -197198,7 +197187,8 @@ class CurveCurveCloseApproachXY extends _geometry3d_GeometryHandler__WEBPACK_IMP
|
|
|
197198
197187
|
/** Double dispatch handler for strongly typed CurveChainWithDistanceIndex. */
|
|
197199
197188
|
handleCurveChainWithDistanceIndex(chain) {
|
|
197200
197189
|
super.handleCurveChainWithDistanceIndex(chain);
|
|
197201
|
-
|
|
197190
|
+
// if _geometryB is also a CurveChainWithDistanceIndex, it will already have been converted by dispatchCurveChainWithDistanceIndex
|
|
197191
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_10__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, 0, chain, undefined, true);
|
|
197202
197192
|
}
|
|
197203
197193
|
/** Double dispatch handler for strongly typed homogeneous bspline curve .. */
|
|
197204
197194
|
handleBSplineCurve3dH(_curve) {
|
|
@@ -197240,27 +197230,36 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
197240
197230
|
/* harmony export */ BezierBezierIntersectionXYRRToRRD: () => (/* binding */ BezierBezierIntersectionXYRRToRRD),
|
|
197241
197231
|
/* harmony export */ CurveCurveIntersectXY: () => (/* binding */ CurveCurveIntersectXY)
|
|
197242
197232
|
/* harmony export */ });
|
|
197243
|
-
/* harmony import */ var
|
|
197244
|
-
/* harmony import */ var
|
|
197245
|
-
/* harmony import */ var
|
|
197246
|
-
/* harmony import */ var
|
|
197247
|
-
/* harmony import */ var
|
|
197248
|
-
/* harmony import */ var
|
|
197249
|
-
/* harmony import */ var
|
|
197250
|
-
/* harmony import */ var
|
|
197251
|
-
/* harmony import */ var
|
|
197252
|
-
/* harmony import */ var
|
|
197253
|
-
/* harmony import */ var
|
|
197254
|
-
/* harmony import */ var
|
|
197255
|
-
/* harmony import */ var
|
|
197256
|
-
/* harmony import */ var
|
|
197257
|
-
/* harmony import */ var
|
|
197258
|
-
/* harmony import */ var
|
|
197259
|
-
/* harmony import */ var
|
|
197233
|
+
/* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
|
|
197234
|
+
/* harmony import */ var _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../bspline/BSplineCurve */ "../../core/geometry/lib/esm/bspline/BSplineCurve.js");
|
|
197235
|
+
/* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
|
|
197236
|
+
/* harmony import */ var _geometry3d_CoincidentGeometryOps__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../geometry3d/CoincidentGeometryOps */ "../../core/geometry/lib/esm/geometry3d/CoincidentGeometryOps.js");
|
|
197237
|
+
/* harmony import */ var _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../geometry3d/GeometryHandler */ "../../core/geometry/lib/esm/geometry3d/GeometryHandler.js");
|
|
197238
|
+
/* harmony import */ var _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../geometry3d/GrowableFloat64Array */ "../../core/geometry/lib/esm/geometry3d/GrowableFloat64Array.js");
|
|
197239
|
+
/* harmony import */ var _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../geometry3d/Matrix3d */ "../../core/geometry/lib/esm/geometry3d/Matrix3d.js");
|
|
197240
|
+
/* harmony import */ var _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../geometry3d/Point2dVector2d */ "../../core/geometry/lib/esm/geometry3d/Point2dVector2d.js");
|
|
197241
|
+
/* harmony import */ var _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../geometry3d/Point3dVector3d */ "../../core/geometry/lib/esm/geometry3d/Point3dVector3d.js");
|
|
197242
|
+
/* harmony import */ var _geometry3d_Ray3d__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../geometry3d/Ray3d */ "../../core/geometry/lib/esm/geometry3d/Ray3d.js");
|
|
197243
|
+
/* harmony import */ var _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../geometry4d/Point4d */ "../../core/geometry/lib/esm/geometry4d/Point4d.js");
|
|
197244
|
+
/* harmony import */ var _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../numerics/BezierPolynomials */ "../../core/geometry/lib/esm/numerics/BezierPolynomials.js");
|
|
197245
|
+
/* harmony import */ var _numerics_Newton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../numerics/Newton */ "../../core/geometry/lib/esm/numerics/Newton.js");
|
|
197246
|
+
/* harmony import */ var _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../numerics/Polynomials */ "../../core/geometry/lib/esm/numerics/Polynomials.js");
|
|
197247
|
+
/* harmony import */ var _Arc3d__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../Arc3d */ "../../core/geometry/lib/esm/curve/Arc3d.js");
|
|
197248
|
+
/* harmony import */ var _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../CurveChainWithDistanceIndex */ "../../core/geometry/lib/esm/curve/CurveChainWithDistanceIndex.js");
|
|
197249
|
+
/* harmony import */ var _CurveCollection__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../CurveCollection */ "../../core/geometry/lib/esm/curve/CurveCollection.js");
|
|
197250
|
+
/* harmony import */ var _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
|
|
197251
|
+
/* harmony import */ var _LineSegment3d__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../LineSegment3d */ "../../core/geometry/lib/esm/curve/LineSegment3d.js");
|
|
197252
|
+
/* harmony import */ var _LineString3d__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../LineString3d */ "../../core/geometry/lib/esm/curve/LineString3d.js");
|
|
197260
197253
|
/*---------------------------------------------------------------------------------------------
|
|
197261
197254
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
197262
197255
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
197263
197256
|
*--------------------------------------------------------------------------------------------*/
|
|
197257
|
+
/** @packageDocumentation
|
|
197258
|
+
* @module Curve
|
|
197259
|
+
*/
|
|
197260
|
+
|
|
197261
|
+
|
|
197262
|
+
|
|
197264
197263
|
|
|
197265
197264
|
|
|
197266
197265
|
|
|
@@ -197284,13 +197283,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
197284
197283
|
* * The inputs are assumed pre-transformed so that the target condition is to match x and y coordinates.
|
|
197285
197284
|
* @internal
|
|
197286
197285
|
*/
|
|
197287
|
-
class BezierBezierIntersectionXYRRToRRD extends
|
|
197286
|
+
class BezierBezierIntersectionXYRRToRRD extends _numerics_Newton__WEBPACK_IMPORTED_MODULE_1__.NewtonEvaluatorRRtoRRD {
|
|
197288
197287
|
constructor(curveA, curveB) {
|
|
197289
197288
|
super();
|
|
197290
197289
|
this._curveA = curveA;
|
|
197291
197290
|
this._curveB = curveB;
|
|
197292
|
-
this._rayA =
|
|
197293
|
-
this._rayB =
|
|
197291
|
+
this._rayA = _geometry3d_Ray3d__WEBPACK_IMPORTED_MODULE_2__.Ray3d.createZero();
|
|
197292
|
+
this._rayB = _geometry3d_Ray3d__WEBPACK_IMPORTED_MODULE_2__.Ray3d.createZero();
|
|
197294
197293
|
}
|
|
197295
197294
|
evaluate(fractionA, fractionB) {
|
|
197296
197295
|
this._curveA.fractionToPointAndDerivative(fractionA, this._rayA);
|
|
@@ -197305,7 +197304,7 @@ class BezierBezierIntersectionXYRRToRRD extends _numerics_Newton__WEBPACK_IMPORT
|
|
|
197305
197304
|
* * geometryB is saved for later reference.
|
|
197306
197305
|
* @internal
|
|
197307
197306
|
*/
|
|
197308
|
-
class CurveCurveIntersectXY extends
|
|
197307
|
+
class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_3__.RecurseToCurvesGeometryHandler {
|
|
197309
197308
|
/**
|
|
197310
197309
|
* The constructor.
|
|
197311
197310
|
* @param worldToLocal optional transform (possibly perspective) to project to xy plane for intersection.
|
|
@@ -197314,7 +197313,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197314
197313
|
* @param extendB flag for extension of geometryB.
|
|
197315
197314
|
* @param tolerance optional distance tolerance for coincidence.
|
|
197316
197315
|
*/
|
|
197317
|
-
constructor(worldToLocal, extendA, geometryB, extendB, tolerance =
|
|
197316
|
+
constructor(worldToLocal, extendA, geometryB, extendB, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.smallMetricDistance) {
|
|
197318
197317
|
super();
|
|
197319
197318
|
this._extendA = extendA;
|
|
197320
197319
|
this._geometryB = geometryB;
|
|
@@ -197326,14 +197325,12 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197326
197325
|
if (!this._worldToLocalAffine)
|
|
197327
197326
|
this._worldToLocalPerspective = worldToLocal.clone();
|
|
197328
197327
|
}
|
|
197329
|
-
this._coincidentGeometryContext =
|
|
197328
|
+
this._coincidentGeometryContext = _geometry3d_CoincidentGeometryOps__WEBPACK_IMPORTED_MODULE_5__.CoincidentGeometryQuery.create(tolerance);
|
|
197330
197329
|
this._results = [];
|
|
197331
197330
|
}
|
|
197332
|
-
/** Reset the geometry
|
|
197333
|
-
resetGeometry(
|
|
197334
|
-
this._extendA = extendA;
|
|
197331
|
+
/** Reset the geometry, leaving all other parts unchanged (and preserving accumulated intersections). */
|
|
197332
|
+
resetGeometry(geometryB) {
|
|
197335
197333
|
this._geometryB = geometryB;
|
|
197336
|
-
this._extendB = extendB;
|
|
197337
197334
|
}
|
|
197338
197335
|
acceptFraction(extend0, fraction, extend1, fractionTol = 1.0e-12) {
|
|
197339
197336
|
if (!extend0 && fraction < -fractionTol)
|
|
@@ -197343,12 +197340,12 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197343
197340
|
return true;
|
|
197344
197341
|
}
|
|
197345
197342
|
/** Test the fraction by strict parameter, but allow toleranced distance test at ends. */
|
|
197346
|
-
acceptFractionOnLine(extend0, fraction, extend1, pointA, pointB, tolerance =
|
|
197343
|
+
acceptFractionOnLine(extend0, fraction, extend1, pointA, pointB, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.smallMetricDistance) {
|
|
197347
197344
|
if (!extend0 && fraction < 0) {
|
|
197348
|
-
return
|
|
197345
|
+
return _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.isDistanceWithinTol(fraction * pointA.distanceXY(pointB), tolerance);
|
|
197349
197346
|
}
|
|
197350
197347
|
else if (!extend1 && fraction > 1.0)
|
|
197351
|
-
return
|
|
197348
|
+
return _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.isDistanceWithinTol((fraction - 1.0) * pointA.distanceXY(pointB), tolerance);
|
|
197352
197349
|
return true;
|
|
197353
197350
|
}
|
|
197354
197351
|
/**
|
|
@@ -197361,9 +197358,6 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197361
197358
|
this._results = [];
|
|
197362
197359
|
return result;
|
|
197363
197360
|
}
|
|
197364
|
-
sameCurveAndFraction(cp, fraction, detail) {
|
|
197365
|
-
return cp === detail.curve && _Geometry__WEBPACK_IMPORTED_MODULE_3__.Geometry.isAlmostEqualNumber(fraction, detail.fraction);
|
|
197366
|
-
}
|
|
197367
197361
|
/**
|
|
197368
197362
|
* Record the pre-computed intersection between two curves. Filter by extension rules. Record with fraction mapping.
|
|
197369
197363
|
* @param localFractionA intersection fraction local to the subcurve of cpA between fractionA0 and fractionA1
|
|
@@ -197384,14 +197378,14 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197384
197378
|
intervalDetails.detailA.hasFraction1 &&
|
|
197385
197379
|
intervalDetails.detailB.hasFraction1;
|
|
197386
197380
|
if (isInterval) {
|
|
197387
|
-
globalFractionA =
|
|
197388
|
-
globalFractionB =
|
|
197389
|
-
globalFractionA1 =
|
|
197390
|
-
globalFractionB1 =
|
|
197381
|
+
globalFractionA = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionA0, intervalDetails.detailA.fraction, fractionA1);
|
|
197382
|
+
globalFractionB = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionB0, intervalDetails.detailB.fraction, fractionB1);
|
|
197383
|
+
globalFractionA1 = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionA0, intervalDetails.detailA.fraction1, fractionA1);
|
|
197384
|
+
globalFractionB1 = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionB0, intervalDetails.detailB.fraction1, fractionB1);
|
|
197391
197385
|
}
|
|
197392
197386
|
else {
|
|
197393
|
-
globalFractionA = globalFractionA1 =
|
|
197394
|
-
globalFractionB = globalFractionB1 =
|
|
197387
|
+
globalFractionA = globalFractionA1 = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionA0, localFractionA, fractionA1);
|
|
197388
|
+
globalFractionB = globalFractionB1 = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(fractionB0, localFractionB, fractionB1);
|
|
197395
197389
|
}
|
|
197396
197390
|
// ignore duplicate of most recent pair
|
|
197397
197391
|
const numPrevious = this._results.length;
|
|
@@ -197399,31 +197393,31 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197399
197393
|
const oldDetailA = this._results[numPrevious - 1].detailA;
|
|
197400
197394
|
const oldDetailB = this._results[numPrevious - 1].detailB;
|
|
197401
197395
|
if (reversed) {
|
|
197402
|
-
if (
|
|
197403
|
-
|
|
197396
|
+
if (oldDetailB.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
197397
|
+
oldDetailA.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
197404
197398
|
return;
|
|
197405
197399
|
}
|
|
197406
197400
|
else {
|
|
197407
|
-
if (
|
|
197408
|
-
|
|
197401
|
+
if (oldDetailA.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
197402
|
+
oldDetailB.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
197409
197403
|
return;
|
|
197410
197404
|
}
|
|
197411
197405
|
}
|
|
197412
|
-
const detailA =
|
|
197413
|
-
const detailB =
|
|
197406
|
+
const detailA = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveLocationDetail.createCurveFractionPoint(cpA, globalFractionA, cpA.fractionToPoint(globalFractionA));
|
|
197407
|
+
const detailB = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveLocationDetail.createCurveFractionPoint(cpB, globalFractionB, cpB.fractionToPoint(globalFractionB));
|
|
197414
197408
|
if (isInterval) {
|
|
197415
197409
|
detailA.captureFraction1Point1(globalFractionA1, cpA.fractionToPoint(globalFractionA1));
|
|
197416
197410
|
detailB.captureFraction1Point1(globalFractionB1, cpB.fractionToPoint(globalFractionB1));
|
|
197417
197411
|
}
|
|
197418
197412
|
else {
|
|
197419
|
-
detailA.setIntervalRole(
|
|
197420
|
-
detailB.setIntervalRole(
|
|
197413
|
+
detailA.setIntervalRole(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveIntervalRole.isolated);
|
|
197414
|
+
detailB.setIntervalRole(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveIntervalRole.isolated);
|
|
197421
197415
|
}
|
|
197422
197416
|
if (reversed) {
|
|
197423
|
-
this._results.push(new
|
|
197417
|
+
this._results.push(new _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveLocationDetailPair(detailB, detailA));
|
|
197424
197418
|
}
|
|
197425
197419
|
else {
|
|
197426
|
-
this._results.push(new
|
|
197420
|
+
this._results.push(new _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_6__.CurveLocationDetailPair(detailA, detailB));
|
|
197427
197421
|
}
|
|
197428
197422
|
}
|
|
197429
197423
|
/**
|
|
@@ -197447,11 +197441,13 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197447
197441
|
// But the transverse intersector notion of coincidence is based on the determinant ratios, which are hard
|
|
197448
197442
|
// to relate to physical tolerance.
|
|
197449
197443
|
// So do the overlap first. This should do a quick exit in non-coincident case.
|
|
197450
|
-
const overlap = this._coincidentGeometryContext.coincidentSegmentRangeXY(pointA0, pointA1, pointB0, pointB1);
|
|
197451
|
-
if (overlap) {
|
|
197452
|
-
this.
|
|
197444
|
+
const overlap = this._coincidentGeometryContext.coincidentSegmentRangeXY(pointA0, pointA1, pointB0, pointB1, false);
|
|
197445
|
+
if (overlap) { // the lines are coincident
|
|
197446
|
+
if (this._coincidentGeometryContext.clampCoincidentOverlapToSegmentBounds(overlap, pointA0, pointA1, pointB0, pointB1, extendA0, extendA1, extendB0, extendB1)) {
|
|
197447
|
+
this.recordPointWithLocalFractions(overlap.detailA.fraction, cpA, fractionA0, fractionA1, overlap.detailB.fraction, cpB, fractionB0, fractionB1, reversed, overlap);
|
|
197448
|
+
}
|
|
197453
197449
|
}
|
|
197454
|
-
else if (
|
|
197450
|
+
else if (_numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dXYTransverseIntersectionUnbounded(pointA0, pointA1, pointB0, pointB1, uv)) {
|
|
197455
197451
|
if (this.acceptFractionOnLine(extendA0, uv.x, extendA1, pointA0, pointA1, this._coincidentGeometryContext.tolerance) &&
|
|
197456
197452
|
this.acceptFractionOnLine(extendB0, uv.y, extendB1, pointB0, pointB1, this._coincidentGeometryContext.tolerance)) {
|
|
197457
197453
|
this.recordPointWithLocalFractions(uv.x, cpA, fractionA0, fractionA1, uv.y, cpB, fractionB0, fractionB1, reversed);
|
|
@@ -197471,7 +197467,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197471
197467
|
this._worldToLocalPerspective.multiplyPoint3d(pointA1, 1, hA1);
|
|
197472
197468
|
this._worldToLocalPerspective.multiplyPoint3d(pointB0, 1, hB0);
|
|
197473
197469
|
this._worldToLocalPerspective.multiplyPoint3d(pointB1, 1, hB1);
|
|
197474
|
-
const fractionAB =
|
|
197470
|
+
const fractionAB = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dHXYTransverseIntersectionUnbounded(hA0, hA1, hB0, hB1);
|
|
197475
197471
|
if (fractionAB !== undefined) {
|
|
197476
197472
|
const fractionA = fractionAB.x;
|
|
197477
197473
|
const fractionB = fractionAB.y;
|
|
@@ -197514,17 +197510,17 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197514
197510
|
const data = arc.toTransformedPoint4d(this._worldToLocalPerspective);
|
|
197515
197511
|
const pointA0H = this._worldToLocalPerspective.multiplyPoint3d(pointA0, 1);
|
|
197516
197512
|
const pointA1H = this._worldToLocalPerspective.multiplyPoint3d(pointA1, 1);
|
|
197517
|
-
const alpha =
|
|
197518
|
-
const beta =
|
|
197519
|
-
const gamma =
|
|
197520
|
-
const cosines = new
|
|
197521
|
-
const sines = new
|
|
197522
|
-
const radians = new
|
|
197523
|
-
const numRoots =
|
|
197513
|
+
const alpha = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductPoint4dXYW(pointA0H, pointA1H, data.center);
|
|
197514
|
+
const beta = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductPoint4dXYW(pointA0H, pointA1H, data.vector0);
|
|
197515
|
+
const gamma = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductPoint4dXYW(pointA0H, pointA1H, data.vector90);
|
|
197516
|
+
const cosines = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197517
|
+
const sines = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197518
|
+
const radians = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197519
|
+
const numRoots = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.AnalyticRoots.appendImplicitLineUnitCircleIntersections(alpha, beta, gamma, cosines, sines, radians);
|
|
197524
197520
|
for (let i = 0; i < numRoots; i++) {
|
|
197525
197521
|
const arcPoint = data.center.plus2Scaled(data.vector0, cosines.atUncheckedIndex(i), data.vector90, sines.atUncheckedIndex(i));
|
|
197526
197522
|
const arcFraction = data.sweep.radiansToSignedPeriodicFraction(radians.atUncheckedIndex(i));
|
|
197527
|
-
const lineFraction =
|
|
197523
|
+
const lineFraction = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dHXYClosestPointUnbounded(pointA0H, pointA1H, arcPoint);
|
|
197528
197524
|
if (lineFraction !== undefined &&
|
|
197529
197525
|
this.acceptFraction(extendA0, lineFraction, extendA1) &&
|
|
197530
197526
|
this.acceptFraction(extendB0, arcFraction, extendB1)) {
|
|
@@ -197540,19 +197536,19 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197540
197536
|
pointA0Local = this._worldToLocalAffine.multiplyPoint3d(pointA0);
|
|
197541
197537
|
pointA1Local = this._worldToLocalAffine.multiplyPoint3d(pointA1);
|
|
197542
197538
|
}
|
|
197543
|
-
const alpha =
|
|
197544
|
-
const beta =
|
|
197545
|
-
const gamma =
|
|
197546
|
-
const cosines = new
|
|
197547
|
-
const sines = new
|
|
197548
|
-
const radians = new
|
|
197549
|
-
const numRoots =
|
|
197539
|
+
const alpha = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductXYW(pointA0Local, 1, pointA1Local, 1, data.center, 1);
|
|
197540
|
+
const beta = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductXYW(pointA0Local, 1, pointA1Local, 1, data.vector0, 0);
|
|
197541
|
+
const gamma = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.tripleProductXYW(pointA0Local, 1, pointA1Local, 1, data.vector90, 0);
|
|
197542
|
+
const cosines = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197543
|
+
const sines = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197544
|
+
const radians = new _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_8__.GrowableFloat64Array(2);
|
|
197545
|
+
const numRoots = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.AnalyticRoots.appendImplicitLineUnitCircleIntersections(alpha, beta, gamma, cosines, sines, radians);
|
|
197550
197546
|
const lineFractionTol = 1.0e-10;
|
|
197551
197547
|
const arcFractionTol = 1.0e-7;
|
|
197552
197548
|
for (let i = 0; i < numRoots; i++) {
|
|
197553
197549
|
const arcPoint = data.center.plus2Scaled(data.vector0, cosines.atUncheckedIndex(i), data.vector90, sines.atUncheckedIndex(i));
|
|
197554
197550
|
const arcFraction = data.sweep.radiansToSignedPeriodicFraction(radians.atUncheckedIndex(i));
|
|
197555
|
-
const lineFraction =
|
|
197551
|
+
const lineFraction = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dXYClosestPointUnbounded(pointA0Local, pointA1Local, arcPoint);
|
|
197556
197552
|
if (lineFraction !== undefined &&
|
|
197557
197553
|
this.acceptFraction(extendA0, lineFraction, extendA1, lineFractionTol) &&
|
|
197558
197554
|
this.acceptFraction(extendB0, arcFraction, extendB1, arcFractionTol)) {
|
|
@@ -197573,7 +197569,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197573
197569
|
const localB = inverseA.multiplyMatrixMatrix(matrixB); // localB->localA transform
|
|
197574
197570
|
const ellipseRadians = [];
|
|
197575
197571
|
const circleRadians = [];
|
|
197576
|
-
|
|
197572
|
+
_numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.TrigPolynomial.solveUnitCircleHomogeneousEllipseIntersection(localB.coffs[2], localB.coffs[5], localB.coffs[8], // center xyw
|
|
197577
197573
|
localB.coffs[0], localB.coffs[3], localB.coffs[6], // vector0 xyw
|
|
197578
197574
|
localB.coffs[1], localB.coffs[4], localB.coffs[7], // vector90 xyw
|
|
197579
197575
|
ellipseRadians, circleRadians);
|
|
@@ -197604,14 +197600,14 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197604
197600
|
if (this._worldToLocalPerspective) {
|
|
197605
197601
|
const dataA = cpA.toTransformedPoint4d(this._worldToLocalPerspective);
|
|
197606
197602
|
const dataB = cpB.toTransformedPoint4d(this._worldToLocalPerspective);
|
|
197607
|
-
matrixA =
|
|
197608
|
-
matrixB =
|
|
197603
|
+
matrixA = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataA.vector0, dataA.vector0.w, dataA.vector90, dataA.vector90.w, dataA.center, dataA.center.w);
|
|
197604
|
+
matrixB = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataB.vector0, dataB.vector0.w, dataB.vector90, dataA.vector90.w, dataB.center, dataB.center.w);
|
|
197609
197605
|
}
|
|
197610
197606
|
else {
|
|
197611
197607
|
const dataA = cpA.toTransformedVectors(this._worldToLocalAffine);
|
|
197612
197608
|
const dataB = cpB.toTransformedVectors(this._worldToLocalAffine);
|
|
197613
|
-
matrixA =
|
|
197614
|
-
matrixB =
|
|
197609
|
+
matrixA = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataA.vector0, 0, dataA.vector90, 0, dataA.center, 1);
|
|
197610
|
+
matrixB = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataB.vector0, 0, dataB.vector90, 0, dataB.center, 1);
|
|
197615
197611
|
}
|
|
197616
197612
|
const conditionA = matrixA.conditionNumber();
|
|
197617
197613
|
const conditionB = matrixB.conditionNumber();
|
|
@@ -197641,11 +197637,11 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197641
197637
|
let matrixA;
|
|
197642
197638
|
if (this._worldToLocalPerspective) {
|
|
197643
197639
|
const dataA = cpA.toTransformedPoint4d(this._worldToLocalPerspective);
|
|
197644
|
-
matrixA =
|
|
197640
|
+
matrixA = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataA.vector0, dataA.vector0.w, dataA.vector90, dataA.vector90.w, dataA.center, dataA.center.w);
|
|
197645
197641
|
}
|
|
197646
197642
|
else {
|
|
197647
197643
|
const dataA = cpA.toTransformedVectors(this._worldToLocalAffine);
|
|
197648
|
-
matrixA =
|
|
197644
|
+
matrixA = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_9__.Matrix3d.createColumnsXYW(dataA.vector0, 0, dataA.vector90, 0, dataA.center, 1);
|
|
197649
197645
|
}
|
|
197650
197646
|
// The worldToLocal has moved the arc vectors into local space.
|
|
197651
197647
|
// matrixA captures the xyw parts (ignoring z)
|
|
@@ -197656,7 +197652,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197656
197652
|
const orderF = cpB.order; // order of the beziers for simple coordinates
|
|
197657
197653
|
const orderG = 2 * orderF - 1; // order of the (single) bezier for squared coordinates.
|
|
197658
197654
|
const coffF = new Float64Array(orderF);
|
|
197659
|
-
const univariateBezierG = new
|
|
197655
|
+
const univariateBezierG = new _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_10__.UnivariateBezier(orderG);
|
|
197660
197656
|
const axx = matrixAInverse.at(0, 0);
|
|
197661
197657
|
const axy = matrixAInverse.at(0, 1);
|
|
197662
197658
|
const axz = 0.0;
|
|
@@ -197727,13 +197723,13 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197727
197723
|
dispatchBezierBezierStrokeFirst(bezierA, bcurveA, strokeCountA, bezierB, bcurveB, _strokeCountB, univariateBezierB, // caller-allocated for univariate coefficients.
|
|
197728
197724
|
reversed) {
|
|
197729
197725
|
if (!this._xyzwA0)
|
|
197730
|
-
this._xyzwA0 =
|
|
197726
|
+
this._xyzwA0 = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
197731
197727
|
if (!this._xyzwA1)
|
|
197732
|
-
this._xyzwA1 =
|
|
197728
|
+
this._xyzwA1 = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
197733
197729
|
if (!this._xyzwPlane)
|
|
197734
|
-
this._xyzwPlane =
|
|
197730
|
+
this._xyzwPlane = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
197735
197731
|
if (!this._xyzwB)
|
|
197736
|
-
this._xyzwB =
|
|
197732
|
+
this._xyzwB = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
197737
197733
|
/*
|
|
197738
197734
|
const roots = univariateBezierG.roots(0.0, true);
|
|
197739
197735
|
if (roots) {
|
|
@@ -197759,7 +197755,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197759
197755
|
for (let i = 1; i <= strokeCountA; i++, f0 = f1, this._xyzwA0.setFrom(this._xyzwA1)) {
|
|
197760
197756
|
f1 = i * df;
|
|
197761
197757
|
bezierA.fractionToPoint4d(f1, this._xyzwA1);
|
|
197762
|
-
|
|
197758
|
+
_geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.createPlanePointPointZ(this._xyzwA0, this._xyzwA1, this._xyzwPlane);
|
|
197763
197759
|
bezierB.poleProductsXYZW(univariateBezierB.coffs, this._xyzwPlane.x, this._xyzwPlane.y, this._xyzwPlane.z, this._xyzwPlane.w);
|
|
197764
197760
|
let errors = 0;
|
|
197765
197761
|
const roots = univariateBezierB.roots(0.0, true);
|
|
@@ -197767,11 +197763,11 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197767
197763
|
for (const r of roots) {
|
|
197768
197764
|
let bezierBFraction = r;
|
|
197769
197765
|
bezierB.fractionToPoint4d(bezierBFraction, this._xyzwB);
|
|
197770
|
-
const segmentAFraction =
|
|
197771
|
-
if (segmentAFraction &&
|
|
197772
|
-
let bezierAFraction =
|
|
197766
|
+
const segmentAFraction = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dHXYClosestPointUnbounded(this._xyzwA0, this._xyzwA1, this._xyzwB);
|
|
197767
|
+
if (segmentAFraction && _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.isIn01WithTolerance(segmentAFraction, intervalTolerance)) {
|
|
197768
|
+
let bezierAFraction = _Geometry__WEBPACK_IMPORTED_MODULE_4__.Geometry.interpolate(f0, segmentAFraction, f1);
|
|
197773
197769
|
const xyMatchingFunction = new BezierBezierIntersectionXYRRToRRD(bezierA, bezierB);
|
|
197774
|
-
const newtonSearcher = new
|
|
197770
|
+
const newtonSearcher = new _numerics_Newton__WEBPACK_IMPORTED_MODULE_1__.Newton2dUnboundedWithDerivative(xyMatchingFunction);
|
|
197775
197771
|
newtonSearcher.setUV(bezierAFraction, bezierBFraction);
|
|
197776
197772
|
if (newtonSearcher.runIterations()) {
|
|
197777
197773
|
bezierAFraction = newtonSearcher.getU();
|
|
@@ -197814,8 +197810,8 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197814
197810
|
const rangeB = this.getRanges(bezierSpanB);
|
|
197815
197811
|
const orderA = bcurveA.order;
|
|
197816
197812
|
const orderB = bcurveB.order;
|
|
197817
|
-
const univariateCoffsA = new
|
|
197818
|
-
const univariateCoffsB = new
|
|
197813
|
+
const univariateCoffsA = new _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_10__.UnivariateBezier(orderA);
|
|
197814
|
+
const univariateCoffsB = new _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_10__.UnivariateBezier(orderB);
|
|
197819
197815
|
for (let a = 0; a < numA; a++) {
|
|
197820
197816
|
for (let b = 0; b < numB; b++) {
|
|
197821
197817
|
if (rangeA[a].intersectsRangeXY(rangeB[b])) {
|
|
@@ -197839,7 +197835,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197839
197835
|
return this._worldToLocalPerspective.multiplyPoint3d(xyz, w);
|
|
197840
197836
|
if (this._worldToLocalAffine)
|
|
197841
197837
|
return this._worldToLocalAffine.multiplyXYZW(xyz.x, xyz.y, xyz.z, w);
|
|
197842
|
-
return
|
|
197838
|
+
return _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.createFromPointAndWeight(xyz, w);
|
|
197843
197839
|
}
|
|
197844
197840
|
mapNPCPlaneToWorld(npcPlane, worldPlane) {
|
|
197845
197841
|
// for NPC pointY, Y^ * H = 0 is "on" plane H. (Hat is transpose)
|
|
@@ -197863,7 +197859,7 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197863
197859
|
dispatchSegmentBsplineCurve(cpA, extendA0, pointA0, fractionA0, pointA1, fractionA1, extendA1, bcurve, extendB, reversed) {
|
|
197864
197860
|
const pointA0H = this.projectPoint(pointA0);
|
|
197865
197861
|
const pointA1H = this.projectPoint(pointA1);
|
|
197866
|
-
const planeCoffs =
|
|
197862
|
+
const planeCoffs = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.createPlanePointPointZ(pointA0H, pointA1H);
|
|
197867
197863
|
this.mapNPCPlaneToWorld(planeCoffs, planeCoffs);
|
|
197868
197864
|
// NOW .. we have a plane in world space. Intersect it with the bspline:
|
|
197869
197865
|
const intersections = [];
|
|
@@ -197875,10 +197871,11 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197875
197871
|
const fractionB = detail.fraction;
|
|
197876
197872
|
const curvePoint = detail.point;
|
|
197877
197873
|
const curvePointH = this.projectPoint(curvePoint);
|
|
197878
|
-
const lineFraction =
|
|
197879
|
-
if (lineFraction !== undefined
|
|
197880
|
-
this.acceptFraction(extendB, fractionB, extendB)) {
|
|
197881
|
-
|
|
197874
|
+
const lineFraction = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_7__.SmallSystem.lineSegment3dHXYClosestPointUnbounded(pointA0H, pointA1H, curvePointH);
|
|
197875
|
+
if (lineFraction !== undefined) {
|
|
197876
|
+
if (this.acceptFraction(extendA0, lineFraction, extendA1) && this.acceptFraction(extendB, fractionB, extendB)) {
|
|
197877
|
+
this.recordPointWithLocalFractions(lineFraction, cpA, fractionA0, fractionA1, fractionB, bcurve, 0, 1, reversed);
|
|
197878
|
+
}
|
|
197882
197879
|
}
|
|
197883
197880
|
}
|
|
197884
197881
|
}
|
|
@@ -197979,72 +197976,130 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
197979
197976
|
transform.multiplyPoint3d(pointB0, this._workPointB0);
|
|
197980
197977
|
transform.multiplyPoint3d(pointB1, this._workPointB1);
|
|
197981
197978
|
}
|
|
197979
|
+
/** Low level dispatch of curve collection. */
|
|
197980
|
+
dispatchCurveCollection(geomA, geomAHandler) {
|
|
197981
|
+
const geomB = this._geometryB; // save
|
|
197982
|
+
if (!geomB || !geomB.children || !(geomB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_12__.CurveCollection))
|
|
197983
|
+
return;
|
|
197984
|
+
for (const child of geomB.children) {
|
|
197985
|
+
this.resetGeometry(child);
|
|
197986
|
+
geomAHandler(geomA);
|
|
197987
|
+
}
|
|
197988
|
+
this._geometryB = geomB; // restore
|
|
197989
|
+
}
|
|
197990
|
+
/** Low level dispatch to geomA given a CurveChainWithDistanceIndex in geometryB. */
|
|
197991
|
+
dispatchCurveChainWithDistanceIndex(geomA, geomAHandler) {
|
|
197992
|
+
if (!this._geometryB || !(this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex))
|
|
197993
|
+
return;
|
|
197994
|
+
if (geomA instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex) {
|
|
197995
|
+
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(!!"call handleCurveChainWithDistanceIndex(geomA) instead");
|
|
197996
|
+
return;
|
|
197997
|
+
}
|
|
197998
|
+
const index0 = this._results.length;
|
|
197999
|
+
const geomB = this._geometryB; // save
|
|
198000
|
+
for (const child of geomB.path.children) {
|
|
198001
|
+
this.resetGeometry(child);
|
|
198002
|
+
geomAHandler(geomA);
|
|
198003
|
+
}
|
|
198004
|
+
this.resetGeometry(geomB); // restore
|
|
198005
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, index0, undefined, geomB, true);
|
|
198006
|
+
}
|
|
197982
198007
|
/** Double dispatch handler for strongly typed segment. */
|
|
197983
198008
|
handleLineSegment3d(segmentA) {
|
|
197984
|
-
if (this._geometryB instanceof
|
|
198009
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_14__.LineSegment3d) {
|
|
197985
198010
|
const segmentB = this._geometryB;
|
|
197986
198011
|
this.dispatchSegmentSegment(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, segmentB, this._extendB, segmentB.point0Ref, 0.0, segmentB.point1Ref, 1.0, this._extendB, false);
|
|
197987
198012
|
}
|
|
197988
|
-
else if (this._geometryB instanceof
|
|
198013
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_15__.LineString3d) {
|
|
197989
198014
|
this.computeSegmentLineString(segmentA, this._extendA, this._geometryB, this._extendB, false);
|
|
197990
198015
|
}
|
|
197991
|
-
else if (this._geometryB instanceof
|
|
198016
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_16__.Arc3d) {
|
|
197992
198017
|
this.dispatchSegmentArc(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, this._geometryB, this._extendB, this._extendB, false);
|
|
197993
198018
|
}
|
|
197994
|
-
else if (this._geometryB instanceof
|
|
198019
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_17__.BSplineCurve3d) {
|
|
197995
198020
|
this.dispatchSegmentBsplineCurve(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, this._geometryB, this._extendB, false);
|
|
197996
198021
|
}
|
|
198022
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_12__.CurveCollection) {
|
|
198023
|
+
this.dispatchCurveCollection(segmentA, this.handleLineSegment3d.bind(this));
|
|
198024
|
+
}
|
|
198025
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex) {
|
|
198026
|
+
this.dispatchCurveChainWithDistanceIndex(segmentA, this.handleLineSegment3d.bind(this));
|
|
198027
|
+
}
|
|
197997
198028
|
return undefined;
|
|
197998
198029
|
}
|
|
197999
198030
|
/** Double dispatch handler for strongly typed linestring. */
|
|
198000
198031
|
handleLineString3d(lsA) {
|
|
198001
|
-
if (this._geometryB instanceof
|
|
198032
|
+
if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_15__.LineString3d) {
|
|
198002
198033
|
const lsB = this._geometryB;
|
|
198003
198034
|
this.computeLineStringLineString(lsA, lsB, false);
|
|
198004
198035
|
}
|
|
198005
|
-
else if (this._geometryB instanceof
|
|
198036
|
+
else if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_14__.LineSegment3d) {
|
|
198006
198037
|
this.computeSegmentLineString(this._geometryB, this._extendB, lsA, this._extendA, true);
|
|
198007
198038
|
}
|
|
198008
|
-
else if (this._geometryB instanceof
|
|
198039
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_16__.Arc3d) {
|
|
198009
198040
|
this.computeArcLineString(this._geometryB, this._extendB, lsA, this._extendA, true);
|
|
198010
198041
|
}
|
|
198011
|
-
else if (this._geometryB instanceof
|
|
198042
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_17__.BSplineCurve3d) {
|
|
198012
198043
|
this.dispatchLineStringBSplineCurve(lsA, this._extendA, this._geometryB, this._extendB, false);
|
|
198013
198044
|
}
|
|
198045
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_12__.CurveCollection) {
|
|
198046
|
+
this.dispatchCurveCollection(lsA, this.handleLineString3d.bind(this));
|
|
198047
|
+
}
|
|
198048
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex) {
|
|
198049
|
+
this.dispatchCurveChainWithDistanceIndex(lsA, this.handleLineString3d.bind(this));
|
|
198050
|
+
}
|
|
198014
198051
|
return undefined;
|
|
198015
198052
|
}
|
|
198016
198053
|
/** Double dispatch handler for strongly typed arc. */
|
|
198017
198054
|
handleArc3d(arc0) {
|
|
198018
|
-
if (this._geometryB instanceof
|
|
198055
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_14__.LineSegment3d) {
|
|
198019
198056
|
this.dispatchSegmentArc(this._geometryB, this._extendB, this._geometryB.point0Ref, 0.0, this._geometryB.point1Ref, 1.0, this._extendB, arc0, this._extendA, this._extendA, true);
|
|
198020
198057
|
}
|
|
198021
|
-
else if (this._geometryB instanceof
|
|
198058
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_15__.LineString3d) {
|
|
198022
198059
|
this.computeArcLineString(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198023
198060
|
}
|
|
198024
|
-
else if (this._geometryB instanceof
|
|
198061
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_16__.Arc3d) {
|
|
198025
198062
|
this.dispatchArcArc(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198026
198063
|
}
|
|
198027
|
-
else if (this._geometryB instanceof
|
|
198064
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_17__.BSplineCurve3d) {
|
|
198028
198065
|
this.dispatchArcBsplineCurve3d(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198029
198066
|
}
|
|
198067
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_12__.CurveCollection) {
|
|
198068
|
+
this.dispatchCurveCollection(arc0, this.handleArc3d.bind(this));
|
|
198069
|
+
}
|
|
198070
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex) {
|
|
198071
|
+
this.dispatchCurveChainWithDistanceIndex(arc0, this.handleArc3d.bind(this));
|
|
198072
|
+
}
|
|
198030
198073
|
return undefined;
|
|
198031
198074
|
}
|
|
198032
198075
|
/** Double dispatch handler for strongly typed bspline curve. */
|
|
198033
198076
|
handleBSplineCurve3d(curve) {
|
|
198034
|
-
if (this._geometryB instanceof
|
|
198077
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_14__.LineSegment3d) {
|
|
198035
198078
|
this.dispatchSegmentBsplineCurve(this._geometryB, this._extendB, this._geometryB.point0Ref, 0.0, this._geometryB.point1Ref, 1.0, this._extendB, curve, this._extendA, true);
|
|
198036
198079
|
}
|
|
198037
|
-
else if (this._geometryB instanceof
|
|
198080
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_15__.LineString3d) {
|
|
198038
198081
|
this.dispatchLineStringBSplineCurve(this._geometryB, this._extendB, curve, this._extendA, true);
|
|
198039
198082
|
}
|
|
198040
|
-
else if (this._geometryB instanceof
|
|
198083
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_16__.Arc3d) {
|
|
198041
198084
|
this.dispatchArcBsplineCurve3d(this._geometryB, this._extendB, curve, this._extendA, true);
|
|
198042
198085
|
}
|
|
198043
|
-
else if (this._geometryB instanceof
|
|
198086
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_17__.BSplineCurve3dBase) {
|
|
198044
198087
|
this.dispatchBSplineCurve3dBSplineCurve3d(curve, this._geometryB, false);
|
|
198045
198088
|
}
|
|
198089
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_12__.CurveCollection) {
|
|
198090
|
+
this.dispatchCurveCollection(curve, this.handleBSplineCurve3d.bind(this));
|
|
198091
|
+
}
|
|
198092
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex) {
|
|
198093
|
+
this.dispatchCurveChainWithDistanceIndex(curve, this.handleBSplineCurve3d.bind(this));
|
|
198094
|
+
}
|
|
198046
198095
|
return undefined;
|
|
198047
198096
|
}
|
|
198097
|
+
/** Double dispatch handler for strongly typed CurveChainWithDistanceIndex. */
|
|
198098
|
+
handleCurveChainWithDistanceIndex(chain) {
|
|
198099
|
+
super.handleCurveChainWithDistanceIndex(chain);
|
|
198100
|
+
// if _geometryB is also a CurveChainWithDistanceIndex, it will already have been converted by dispatchCurveChainWithDistanceIndex
|
|
198101
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_13__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, 0, chain, undefined, true);
|
|
198102
|
+
}
|
|
198048
198103
|
/** Double dispatch handler for strongly typed homogeneous bspline curve .. */
|
|
198049
198104
|
handleBSplineCurve3dH(_curve) {
|
|
198050
198105
|
/*
|
|
@@ -198063,19 +198118,19 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
|
|
|
198063
198118
|
return undefined;
|
|
198064
198119
|
}
|
|
198065
198120
|
}
|
|
198066
|
-
CurveCurveIntersectXY._workVector2dA =
|
|
198067
|
-
CurveCurveIntersectXY._workPointA0H =
|
|
198068
|
-
CurveCurveIntersectXY._workPointA1H =
|
|
198069
|
-
CurveCurveIntersectXY._workPointB0H =
|
|
198070
|
-
CurveCurveIntersectXY._workPointB1H =
|
|
198071
|
-
CurveCurveIntersectXY._workPointAA0 =
|
|
198072
|
-
CurveCurveIntersectXY._workPointAA1 =
|
|
198073
|
-
CurveCurveIntersectXY._workPointBB0 =
|
|
198074
|
-
CurveCurveIntersectXY._workPointBB1 =
|
|
198075
|
-
CurveCurveIntersectXY._workPointA0 =
|
|
198076
|
-
CurveCurveIntersectXY._workPointA1 =
|
|
198077
|
-
CurveCurveIntersectXY._workPointB0 =
|
|
198078
|
-
CurveCurveIntersectXY._workPointB1 =
|
|
198121
|
+
CurveCurveIntersectXY._workVector2dA = _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_18__.Vector2d.create();
|
|
198122
|
+
CurveCurveIntersectXY._workPointA0H = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
198123
|
+
CurveCurveIntersectXY._workPointA1H = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
198124
|
+
CurveCurveIntersectXY._workPointB0H = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
198125
|
+
CurveCurveIntersectXY._workPointB1H = _geometry4d_Point4d__WEBPACK_IMPORTED_MODULE_11__.Point4d.create();
|
|
198126
|
+
CurveCurveIntersectXY._workPointAA0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198127
|
+
CurveCurveIntersectXY._workPointAA1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198128
|
+
CurveCurveIntersectXY._workPointBB0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198129
|
+
CurveCurveIntersectXY._workPointBB1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198130
|
+
CurveCurveIntersectXY._workPointA0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198131
|
+
CurveCurveIntersectXY._workPointA1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198132
|
+
CurveCurveIntersectXY._workPointB0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198133
|
+
CurveCurveIntersectXY._workPointB1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_19__.Point3d.create();
|
|
198079
198134
|
|
|
198080
198135
|
|
|
198081
198136
|
|
|
@@ -198092,17 +198147,20 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
198092
198147
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
198093
198148
|
/* harmony export */ CurveCurveIntersectXYZ: () => (/* binding */ CurveCurveIntersectXYZ)
|
|
198094
198149
|
/* harmony export */ });
|
|
198095
|
-
/* harmony import */ var
|
|
198096
|
-
/* harmony import */ var
|
|
198097
|
-
/* harmony import */ var
|
|
198098
|
-
/* harmony import */ var
|
|
198099
|
-
/* harmony import */ var
|
|
198100
|
-
/* harmony import */ var
|
|
198101
|
-
/* harmony import */ var
|
|
198102
|
-
/* harmony import */ var
|
|
198103
|
-
/* harmony import */ var
|
|
198104
|
-
/* harmony import */ var
|
|
198105
|
-
/* harmony import */ var
|
|
198150
|
+
/* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
|
|
198151
|
+
/* harmony import */ var _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../bspline/BSplineCurve */ "../../core/geometry/lib/esm/bspline/BSplineCurve.js");
|
|
198152
|
+
/* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
|
|
198153
|
+
/* harmony import */ var _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../geometry3d/GeometryHandler */ "../../core/geometry/lib/esm/geometry3d/GeometryHandler.js");
|
|
198154
|
+
/* harmony import */ var _geometry3d_Plane3dByOriginAndUnitNormal__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../geometry3d/Plane3dByOriginAndUnitNormal */ "../../core/geometry/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js");
|
|
198155
|
+
/* harmony import */ var _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../geometry3d/Point2dVector2d */ "../../core/geometry/lib/esm/geometry3d/Point2dVector2d.js");
|
|
198156
|
+
/* harmony import */ var _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../geometry3d/Point3dVector3d */ "../../core/geometry/lib/esm/geometry3d/Point3dVector3d.js");
|
|
198157
|
+
/* harmony import */ var _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../numerics/Polynomials */ "../../core/geometry/lib/esm/numerics/Polynomials.js");
|
|
198158
|
+
/* harmony import */ var _Arc3d__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../Arc3d */ "../../core/geometry/lib/esm/curve/Arc3d.js");
|
|
198159
|
+
/* harmony import */ var _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../CurveChainWithDistanceIndex */ "../../core/geometry/lib/esm/curve/CurveChainWithDistanceIndex.js");
|
|
198160
|
+
/* harmony import */ var _CurveCollection__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../CurveCollection */ "../../core/geometry/lib/esm/curve/CurveCollection.js");
|
|
198161
|
+
/* harmony import */ var _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
|
|
198162
|
+
/* harmony import */ var _LineSegment3d__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../LineSegment3d */ "../../core/geometry/lib/esm/curve/LineSegment3d.js");
|
|
198163
|
+
/* harmony import */ var _LineString3d__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../LineString3d */ "../../core/geometry/lib/esm/curve/LineString3d.js");
|
|
198106
198164
|
/*---------------------------------------------------------------------------------------------
|
|
198107
198165
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
198108
198166
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -198121,6 +198179,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
198121
198179
|
|
|
198122
198180
|
|
|
198123
198181
|
|
|
198182
|
+
|
|
198183
|
+
|
|
198184
|
+
|
|
198124
198185
|
// cspell:word XYRR
|
|
198125
198186
|
/**
|
|
198126
198187
|
* Handler class for XYZ intersections between _geometryB and another geometry.
|
|
@@ -198128,7 +198189,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
198128
198189
|
* * geometryB is saved for later reference.
|
|
198129
198190
|
* @internal
|
|
198130
198191
|
*/
|
|
198131
|
-
class CurveCurveIntersectXYZ extends
|
|
198192
|
+
class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_1__.RecurseToCurvesGeometryHandler {
|
|
198132
198193
|
/**
|
|
198133
198194
|
* @param extendA flag to enable using extension of the other geometry.
|
|
198134
198195
|
* @param geometryB second curve for intersection. Saved for reference by specific handler methods.
|
|
@@ -198141,6 +198202,10 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198141
198202
|
this._extendB = extendB;
|
|
198142
198203
|
this._results = [];
|
|
198143
198204
|
}
|
|
198205
|
+
/** Reset the geometry, leaving all other parts unchanged (and preserving accumulated intersections). */
|
|
198206
|
+
resetGeometry(geometryB) {
|
|
198207
|
+
this._geometryB = geometryB;
|
|
198208
|
+
}
|
|
198144
198209
|
/**
|
|
198145
198210
|
* Return the results structure for the intersection calculation, structured as an array of CurveLocationDetailPair.
|
|
198146
198211
|
* @param reinitialize if true, a new results structure is created for use by later calls.
|
|
@@ -198165,21 +198230,21 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198165
198230
|
* Record with fraction mapping.
|
|
198166
198231
|
*/
|
|
198167
198232
|
recordPointWithLocalFractions(localFractionA, cpA, fractionA0, fractionA1, localFractionB, cpB, fractionB0, fractionB1, reversed) {
|
|
198168
|
-
const globalFractionA =
|
|
198169
|
-
const globalFractionB =
|
|
198170
|
-
// ignore duplicate of most recent point
|
|
198233
|
+
const globalFractionA = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.interpolate(fractionA0, localFractionA, fractionA1);
|
|
198234
|
+
const globalFractionB = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.interpolate(fractionB0, localFractionB, fractionB1);
|
|
198235
|
+
// ignore duplicate of most recent point
|
|
198171
198236
|
const numPrevious = this._results.length;
|
|
198172
198237
|
if (numPrevious > 0) {
|
|
198173
|
-
const
|
|
198174
|
-
const
|
|
198238
|
+
const oldDetailA = this._results[numPrevious - 1].detailA;
|
|
198239
|
+
const oldDetailB = this._results[numPrevious - 1].detailB;
|
|
198175
198240
|
if (reversed) {
|
|
198176
|
-
if (
|
|
198177
|
-
|
|
198241
|
+
if (oldDetailB.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
198242
|
+
oldDetailA.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
198178
198243
|
return;
|
|
198179
198244
|
}
|
|
198180
198245
|
else {
|
|
198181
|
-
if (
|
|
198182
|
-
|
|
198246
|
+
if (oldDetailA.isSameCurveAndFraction({ curve: cpA, fraction: globalFractionA }) &&
|
|
198247
|
+
oldDetailB.isSameCurveAndFraction({ curve: cpB, fraction: globalFractionB }))
|
|
198183
198248
|
return;
|
|
198184
198249
|
}
|
|
198185
198250
|
}
|
|
@@ -198187,16 +198252,16 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198187
198252
|
const pointB = cpB.fractionToPoint(globalFractionB);
|
|
198188
198253
|
if (!pointA.isAlmostEqualMetric(pointB))
|
|
198189
198254
|
return;
|
|
198190
|
-
const detailA =
|
|
198191
|
-
detailA.setIntervalRole(
|
|
198192
|
-
const detailB =
|
|
198193
|
-
detailB.setIntervalRole(
|
|
198255
|
+
const detailA = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(cpA, globalFractionA, pointA);
|
|
198256
|
+
detailA.setIntervalRole(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveIntervalRole.isolated);
|
|
198257
|
+
const detailB = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(cpB, globalFractionB, pointB);
|
|
198258
|
+
detailB.setIntervalRole(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveIntervalRole.isolated);
|
|
198194
198259
|
if (reversed) {
|
|
198195
|
-
const pair = new
|
|
198260
|
+
const pair = new _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair(detailB, detailA);
|
|
198196
198261
|
this._results.push(pair);
|
|
198197
198262
|
}
|
|
198198
198263
|
else {
|
|
198199
|
-
const pair = new
|
|
198264
|
+
const pair = new _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair(detailA, detailB);
|
|
198200
198265
|
this._results.push(pair);
|
|
198201
198266
|
}
|
|
198202
198267
|
}
|
|
@@ -198207,7 +198272,7 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198207
198272
|
*/
|
|
198208
198273
|
computeSegmentSegment3D(cpA, extendA0, pointA0, fractionA0, pointA1, fractionA1, extendA1, cpB, extendB0, pointB0, fractionB0, pointB1, fractionB1, extendB1, reversed) {
|
|
198209
198274
|
const uv = CurveCurveIntersectXYZ._workVector2dA;
|
|
198210
|
-
if (
|
|
198275
|
+
if (_numerics_Polynomials__WEBPACK_IMPORTED_MODULE_4__.SmallSystem.lineSegment3dClosestApproachUnbounded(pointA0, pointA1, pointB0, pointB1, uv) &&
|
|
198211
198276
|
this.acceptFraction(extendA0, uv.x, extendA1) && this.acceptFraction(extendB0, uv.y, extendB1)) {
|
|
198212
198277
|
this.recordPointWithLocalFractions(uv.x, cpA, fractionA0, fractionA1, uv.y, cpB, fractionB0, fractionB1, reversed);
|
|
198213
198278
|
}
|
|
@@ -198234,20 +198299,20 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198234
198299
|
* @param vectorC second candidate for additional in-plane vector
|
|
198235
198300
|
*/
|
|
198236
198301
|
createPlaneWithPreferredPerpendicular(origin, vectorA, cosineValue, vectorB, vectorC) {
|
|
198237
|
-
cosineValue =
|
|
198302
|
+
cosineValue = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.restrictToInterval(Math.abs(cosineValue), 0.0, 1.0 - _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallFraction);
|
|
198238
198303
|
const dotAA = vectorA.magnitudeSquared();
|
|
198239
198304
|
const dotBB = vectorB.magnitudeSquared();
|
|
198240
198305
|
const dotAB = Math.abs(vectorA.dotProduct(vectorB));
|
|
198241
198306
|
const cross = vectorA.unitCrossProduct(dotAB * dotAB <= cosineValue * cosineValue * dotAA * dotBB ? vectorB : vectorC);
|
|
198242
198307
|
if (cross)
|
|
198243
|
-
return
|
|
198308
|
+
return _geometry3d_Plane3dByOriginAndUnitNormal__WEBPACK_IMPORTED_MODULE_5__.Plane3dByOriginAndUnitNormal.create(origin, cross);
|
|
198244
198309
|
return undefined;
|
|
198245
198310
|
}
|
|
198246
198311
|
// Caller accesses data from a linestring or segment and passes it here.
|
|
198247
198312
|
// The line segment in question might be (a) a full line segment or (b) a fragment within a linestring.
|
|
198248
198313
|
// The fraction and extend parameters allow all combinations to be passed in.
|
|
198249
198314
|
dispatchSegmentArc(cpA, extendA0, pointA0, fractionA0, pointA1, fractionA1, extendA1, arc, extendB0, extendB1, reversed) {
|
|
198250
|
-
const lineVector =
|
|
198315
|
+
const lineVector = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__.Vector3d.createStartEnd(pointA0, pointA1);
|
|
198251
198316
|
const plane = this.createPlaneWithPreferredPerpendicular(pointA0, lineVector, 0.94, arc.perpendicularVector, arc.vector0);
|
|
198252
198317
|
if (plane !== undefined) {
|
|
198253
198318
|
const candidates = [];
|
|
@@ -198256,7 +198321,7 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198256
198321
|
let linePoint;
|
|
198257
198322
|
for (const c of candidates) {
|
|
198258
198323
|
if (this.acceptFraction(extendB0, c.fraction, extendB1)) {
|
|
198259
|
-
lineFraction =
|
|
198324
|
+
lineFraction = _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_4__.SmallSystem.lineSegment3dClosestPointUnbounded(pointA0, pointA1, c.point);
|
|
198260
198325
|
if (lineFraction !== undefined) {
|
|
198261
198326
|
linePoint = pointA0.interpolate(lineFraction, pointA1, linePoint);
|
|
198262
198327
|
if (linePoint.isAlmostEqualMetric(c.point)
|
|
@@ -198277,7 +198342,7 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198277
198342
|
if (otherVectors !== undefined) {
|
|
198278
198343
|
const ellipseRadians = [];
|
|
198279
198344
|
const circleRadians = [];
|
|
198280
|
-
|
|
198345
|
+
_numerics_Polynomials__WEBPACK_IMPORTED_MODULE_4__.TrigPolynomial.solveUnitCircleHomogeneousEllipseIntersection(otherVectors.center.x, otherVectors.center.y, 1.0, otherVectors.vector0.x, otherVectors.vector0.y, 0.0, otherVectors.vector90.x, otherVectors.vector90.y, 0.0, ellipseRadians, circleRadians);
|
|
198281
198346
|
for (let i = 0; i < ellipseRadians.length; i++) {
|
|
198282
198347
|
const fractionA = cpA.sweep.radiansToSignedPeriodicFraction(circleRadians[i]);
|
|
198283
198348
|
const fractionB = cpB.sweep.radiansToSignedPeriodicFraction(ellipseRadians[i]);
|
|
@@ -198297,8 +198362,8 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198297
198362
|
// 2) accept points that appear in both intersection sets.
|
|
198298
198363
|
// If arcs are in parallel planes -- no intersections.
|
|
198299
198364
|
// If arcs are in the same plane -- xy intersection in that plane.
|
|
198300
|
-
const planeA =
|
|
198301
|
-
const planeB =
|
|
198365
|
+
const planeA = _geometry3d_Plane3dByOriginAndUnitNormal__WEBPACK_IMPORTED_MODULE_5__.Plane3dByOriginAndUnitNormal.create(cpA.center, cpA.perpendicularVector);
|
|
198366
|
+
const planeB = _geometry3d_Plane3dByOriginAndUnitNormal__WEBPACK_IMPORTED_MODULE_5__.Plane3dByOriginAndUnitNormal.create(cpB.center, cpB.perpendicularVector);
|
|
198302
198367
|
if (planeA === undefined || planeB === undefined)
|
|
198303
198368
|
return;
|
|
198304
198369
|
if (planeA.getNormalRef().isParallelTo(planeB.getNormalRef())) {
|
|
@@ -198699,72 +198764,130 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198699
198764
|
}
|
|
198700
198765
|
}
|
|
198701
198766
|
}
|
|
198767
|
+
/** Low level dispatch of curve collection. */
|
|
198768
|
+
dispatchCurveCollection(geomA, geomAHandler) {
|
|
198769
|
+
const geomB = this._geometryB; // save
|
|
198770
|
+
if (!geomB || !geomB.children || !(geomB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_7__.CurveCollection))
|
|
198771
|
+
return;
|
|
198772
|
+
for (const child of geomB.children) {
|
|
198773
|
+
this.resetGeometry(child);
|
|
198774
|
+
geomAHandler(geomA);
|
|
198775
|
+
}
|
|
198776
|
+
this._geometryB = geomB; // restore
|
|
198777
|
+
}
|
|
198778
|
+
/** Low level dispatch to geomA given a CurveChainWithDistanceIndex in geometryB. */
|
|
198779
|
+
dispatchCurveChainWithDistanceIndex(geomA, geomAHandler) {
|
|
198780
|
+
if (!this._geometryB || !(this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex))
|
|
198781
|
+
return;
|
|
198782
|
+
if (geomA instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex) {
|
|
198783
|
+
(0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(!!"call handleCurveChainWithDistanceIndex(geomA) instead");
|
|
198784
|
+
return;
|
|
198785
|
+
}
|
|
198786
|
+
const index0 = this._results.length;
|
|
198787
|
+
const geomB = this._geometryB; // save
|
|
198788
|
+
for (const child of geomB.path.children) {
|
|
198789
|
+
this.resetGeometry(child);
|
|
198790
|
+
geomAHandler(geomA);
|
|
198791
|
+
}
|
|
198792
|
+
this.resetGeometry(geomB); // restore
|
|
198793
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, index0, undefined, geomB, true);
|
|
198794
|
+
}
|
|
198702
198795
|
/** Double dispatch handler for strongly typed segment. */
|
|
198703
198796
|
handleLineSegment3d(segmentA) {
|
|
198704
|
-
if (this._geometryB instanceof
|
|
198797
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_9__.LineSegment3d) {
|
|
198705
198798
|
const segmentB = this._geometryB;
|
|
198706
198799
|
this.dispatchSegmentSegment(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, segmentB, this._extendB, segmentB.point0Ref, 0.0, segmentB.point1Ref, 1.0, this._extendB, false);
|
|
198707
198800
|
}
|
|
198708
|
-
else if (this._geometryB instanceof
|
|
198801
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_10__.LineString3d) {
|
|
198709
198802
|
this.computeSegmentLineString(segmentA, this._extendA, this._geometryB, this._extendB, false);
|
|
198710
198803
|
}
|
|
198711
|
-
else if (this._geometryB instanceof
|
|
198804
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_11__.Arc3d) {
|
|
198712
198805
|
this.dispatchSegmentArc(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, this._geometryB, this._extendB, this._extendB, false);
|
|
198713
198806
|
}
|
|
198714
|
-
else if (this._geometryB instanceof
|
|
198807
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_12__.BSplineCurve3d) {
|
|
198715
198808
|
this.dispatchSegmentBsplineCurve(segmentA, this._extendA, segmentA.point0Ref, 0.0, segmentA.point1Ref, 1.0, this._extendA, this._geometryB, this._extendB, false);
|
|
198716
198809
|
}
|
|
198810
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_7__.CurveCollection) {
|
|
198811
|
+
this.dispatchCurveCollection(segmentA, this.handleLineSegment3d.bind(this));
|
|
198812
|
+
}
|
|
198813
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex) {
|
|
198814
|
+
this.dispatchCurveChainWithDistanceIndex(segmentA, this.handleLineSegment3d.bind(this));
|
|
198815
|
+
}
|
|
198717
198816
|
return undefined;
|
|
198718
198817
|
}
|
|
198719
198818
|
/** double dispatch handler for strongly typed linestring. */
|
|
198720
198819
|
handleLineString3d(lsA) {
|
|
198721
|
-
if (this._geometryB instanceof
|
|
198820
|
+
if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_10__.LineString3d) {
|
|
198722
198821
|
const lsB = this._geometryB;
|
|
198723
198822
|
this.computeLineStringLineString(lsA, lsB, false);
|
|
198724
198823
|
}
|
|
198725
|
-
else if (this._geometryB instanceof
|
|
198824
|
+
else if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_9__.LineSegment3d) {
|
|
198726
198825
|
this.computeSegmentLineString(this._geometryB, this._extendB, lsA, this._extendA, true);
|
|
198727
198826
|
}
|
|
198728
|
-
else if (this._geometryB instanceof
|
|
198827
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_11__.Arc3d) {
|
|
198729
198828
|
this.computeArcLineString(this._geometryB, this._extendB, lsA, this._extendA, true);
|
|
198730
198829
|
}
|
|
198731
|
-
else if (this._geometryB instanceof
|
|
198830
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_12__.BSplineCurve3d) {
|
|
198732
198831
|
this.dispatchLineStringBSplineCurve(lsA, this._extendA, this._geometryB, this._extendB, false);
|
|
198733
198832
|
}
|
|
198833
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_7__.CurveCollection) {
|
|
198834
|
+
this.dispatchCurveCollection(lsA, this.handleLineString3d.bind(this));
|
|
198835
|
+
}
|
|
198836
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex) {
|
|
198837
|
+
this.dispatchCurveChainWithDistanceIndex(lsA, this.handleLineString3d.bind(this));
|
|
198838
|
+
}
|
|
198734
198839
|
return undefined;
|
|
198735
198840
|
}
|
|
198736
198841
|
/** Double dispatch handler for strongly typed arc. */
|
|
198737
198842
|
handleArc3d(arc0) {
|
|
198738
|
-
if (this._geometryB instanceof
|
|
198843
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_9__.LineSegment3d) {
|
|
198739
198844
|
this.dispatchSegmentArc(this._geometryB, this._extendB, this._geometryB.point0Ref, 0.0, this._geometryB.point1Ref, 1.0, this._extendB, arc0, this._extendA, this._extendA, true);
|
|
198740
198845
|
}
|
|
198741
|
-
else if (this._geometryB instanceof
|
|
198846
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_10__.LineString3d) {
|
|
198742
198847
|
this.computeArcLineString(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198743
198848
|
}
|
|
198744
|
-
else if (this._geometryB instanceof
|
|
198849
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_11__.Arc3d) {
|
|
198745
198850
|
this.dispatchArcArc(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198746
198851
|
}
|
|
198747
|
-
else if (this._geometryB instanceof
|
|
198852
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_12__.BSplineCurve3d) {
|
|
198748
198853
|
this.dispatchArcBsplineCurve3d(arc0, this._extendA, this._geometryB, this._extendB, false);
|
|
198749
198854
|
}
|
|
198855
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_7__.CurveCollection) {
|
|
198856
|
+
this.dispatchCurveCollection(arc0, this.handleArc3d.bind(this));
|
|
198857
|
+
}
|
|
198858
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex) {
|
|
198859
|
+
this.dispatchCurveChainWithDistanceIndex(arc0, this.handleArc3d.bind(this));
|
|
198860
|
+
}
|
|
198750
198861
|
return undefined;
|
|
198751
198862
|
}
|
|
198752
198863
|
/** Double dispatch handler for strongly typed bspline curve. */
|
|
198753
198864
|
handleBSplineCurve3d(curve) {
|
|
198754
|
-
if (this._geometryB instanceof
|
|
198865
|
+
if (this._geometryB instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_9__.LineSegment3d) {
|
|
198755
198866
|
this.dispatchSegmentBsplineCurve(this._geometryB, this._extendB, this._geometryB.point0Ref, 0.0, this._geometryB.point1Ref, 1.0, this._extendB, curve, this._extendA, true);
|
|
198756
198867
|
}
|
|
198757
|
-
else if (this._geometryB instanceof
|
|
198868
|
+
else if (this._geometryB instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_10__.LineString3d) {
|
|
198758
198869
|
this.dispatchLineStringBSplineCurve(this._geometryB, this._extendB, curve, this._extendA, true);
|
|
198759
198870
|
}
|
|
198760
|
-
else if (this._geometryB instanceof
|
|
198871
|
+
else if (this._geometryB instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_11__.Arc3d) {
|
|
198761
198872
|
this.dispatchArcBsplineCurve3d(this._geometryB, this._extendB, curve, this._extendA, true);
|
|
198762
198873
|
}
|
|
198763
|
-
else if (this._geometryB instanceof
|
|
198874
|
+
else if (this._geometryB instanceof _bspline_BSplineCurve__WEBPACK_IMPORTED_MODULE_12__.BSplineCurve3dBase) {
|
|
198764
198875
|
this.dispatchBSplineCurve3dBSplineCurve3d(curve, this._geometryB, false);
|
|
198765
198876
|
}
|
|
198877
|
+
else if (this._geometryB instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_7__.CurveCollection) {
|
|
198878
|
+
this.dispatchCurveCollection(curve, this.handleBSplineCurve3d.bind(this));
|
|
198879
|
+
}
|
|
198880
|
+
else if (this._geometryB instanceof _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex) {
|
|
198881
|
+
this.dispatchCurveChainWithDistanceIndex(curve, this.handleBSplineCurve3d.bind(this));
|
|
198882
|
+
}
|
|
198766
198883
|
return undefined;
|
|
198767
198884
|
}
|
|
198885
|
+
/** Double dispatch handler for strongly typed CurveChainWithDistanceIndex. */
|
|
198886
|
+
handleCurveChainWithDistanceIndex(chain) {
|
|
198887
|
+
super.handleCurveChainWithDistanceIndex(chain);
|
|
198888
|
+
// if _geometryB is also a CurveChainWithDistanceIndex, it will already have been converted by dispatchCurveChainWithDistanceIndex
|
|
198889
|
+
this._results = _CurveChainWithDistanceIndex__WEBPACK_IMPORTED_MODULE_8__.CurveChainWithDistanceIndex.convertChildDetailToChainDetail(this._results, 0, chain, undefined, true);
|
|
198890
|
+
}
|
|
198768
198891
|
/** Double dispatch handler for strongly typed homogeneous bspline curve. */
|
|
198769
198892
|
handleBSplineCurve3dH(_curve) {
|
|
198770
198893
|
/*
|
|
@@ -198783,11 +198906,11 @@ class CurveCurveIntersectXYZ extends _geometry3d_GeometryHandler__WEBPACK_IMPORT
|
|
|
198783
198906
|
return undefined;
|
|
198784
198907
|
}
|
|
198785
198908
|
}
|
|
198786
|
-
CurveCurveIntersectXYZ._workVector2dA =
|
|
198787
|
-
CurveCurveIntersectXYZ._workPointAA0 =
|
|
198788
|
-
CurveCurveIntersectXYZ._workPointAA1 =
|
|
198789
|
-
CurveCurveIntersectXYZ._workPointBB0 =
|
|
198790
|
-
CurveCurveIntersectXYZ._workPointBB1 =
|
|
198909
|
+
CurveCurveIntersectXYZ._workVector2dA = _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_13__.Vector2d.create();
|
|
198910
|
+
CurveCurveIntersectXYZ._workPointAA0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__.Point3d.create();
|
|
198911
|
+
CurveCurveIntersectXYZ._workPointAA1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__.Point3d.create();
|
|
198912
|
+
CurveCurveIntersectXYZ._workPointBB0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__.Point3d.create();
|
|
198913
|
+
CurveCurveIntersectXYZ._workPointBB1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_6__.Point3d.create();
|
|
198791
198914
|
|
|
198792
198915
|
|
|
198793
198916
|
|
|
@@ -199152,10 +199275,9 @@ class MultiChainCollector {
|
|
|
199152
199275
|
captureCurve(candidate) {
|
|
199153
199276
|
if (candidate instanceof _CurvePrimitive__WEBPACK_IMPORTED_MODULE_1__.CurvePrimitive)
|
|
199154
199277
|
this.captureCurvePrimitive(candidate);
|
|
199155
|
-
else if (candidate instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_2__.CurveCollection
|
|
199156
|
-
for (const c of candidate.children)
|
|
199278
|
+
else if (candidate instanceof _CurveCollection__WEBPACK_IMPORTED_MODULE_2__.CurveCollection) {
|
|
199279
|
+
for (const c of candidate.children)
|
|
199157
199280
|
this.captureCurve(c);
|
|
199158
|
-
}
|
|
199159
199281
|
}
|
|
199160
199282
|
}
|
|
199161
199283
|
/** If allowed by the geometry type, move an endpoint. */
|
|
@@ -204786,9 +204908,7 @@ class CoincidentGeometryQuery {
|
|
|
204786
204908
|
detail.point = pointA.interpolate(detail.fraction, pointB, detail.point);
|
|
204787
204909
|
detail.point1 = pointA.interpolate(detail.fraction1, pointB, detail.point1);
|
|
204788
204910
|
}
|
|
204789
|
-
/** Return a curve location detail with projection of a `spacePoint` to the line segment with `pointA` and `pointB`
|
|
204790
|
-
*
|
|
204791
|
-
*/
|
|
204911
|
+
/** Return a curve location detail with projection of a `spacePoint` to the line segment with `pointA` and `pointB` */
|
|
204792
204912
|
projectPointToSegmentXY(spacePoint, pointA, pointB) {
|
|
204793
204913
|
this._vectorU = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.createStartEnd(pointA, pointB, this._vectorU);
|
|
204794
204914
|
this._vectorV = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.createStartEnd(pointA, spacePoint, this._vectorV);
|
|
@@ -204798,12 +204918,78 @@ class CoincidentGeometryQuery {
|
|
|
204798
204918
|
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(undefined, fraction, pointA.interpolate(fraction, pointB));
|
|
204799
204919
|
}
|
|
204800
204920
|
/**
|
|
204801
|
-
*
|
|
204802
|
-
*
|
|
204921
|
+
* Given a detail pair representing the projection of each of two colinear line segments onto the other,
|
|
204922
|
+
* clamp the details (in place) to the line segments' endpoints according to the given flags.
|
|
204923
|
+
* @param overlap segment overlap as returned by [[coincidentSegmentRangeXY]], modified on return
|
|
204803
204924
|
* @param pointA0 start point of segment A
|
|
204804
204925
|
* @param pointA1 end point of segment A
|
|
204805
204926
|
* @param pointB0 start point of segment B
|
|
204806
204927
|
* @param pointB1 end point of segment B
|
|
204928
|
+
* @param extendA0 whether to extend segment A beyond its start
|
|
204929
|
+
* @param extendA1 whether to extend segment A beyond its end
|
|
204930
|
+
* @param extendB0 whether to extend segment B beyond its start
|
|
204931
|
+
* @param extendB1 whether to extend segment B beyond its end
|
|
204932
|
+
* @return reference to the input clamped in place, or undefined (leaving interval untouched) if clamping would result in empty interval.
|
|
204933
|
+
*/
|
|
204934
|
+
clampCoincidentOverlapToSegmentBounds(overlap, pointA0, pointA1, pointB0, pointB1, extendA0 = false, extendA1 = false, extendB0 = false, extendB1 = false) {
|
|
204935
|
+
const rangeA = _Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(overlap.detailA.fraction, overlap.detailA.hasFraction1 ? overlap.detailA.fraction1 : overlap.detailA.fraction);
|
|
204936
|
+
const rangeB = _Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(overlap.detailB.fraction, overlap.detailB.hasFraction1 ? overlap.detailB.fraction1 : overlap.detailB.fraction);
|
|
204937
|
+
const reversed = rangeA.signedDelta() < 0.0;
|
|
204938
|
+
const updateIntervalFromRangesAndInterpolatedPoints = () => {
|
|
204939
|
+
const a0 = rangeA.x0;
|
|
204940
|
+
const a1 = rangeA.x1;
|
|
204941
|
+
const b0 = rangeB.x0;
|
|
204942
|
+
const b1 = rangeB.x1;
|
|
204943
|
+
CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(overlap.detailA, a0, a1, pointA0, pointA1, a0 > a1);
|
|
204944
|
+
CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(overlap.detailB, b0, b1, pointB0, pointB1, b0 > b1);
|
|
204945
|
+
return overlap;
|
|
204946
|
+
};
|
|
204947
|
+
const haveIntervalA = rangeA.clampDirectedTo01(!extendA0, !extendA1, false);
|
|
204948
|
+
const haveIntervalB = rangeB.clampDirectedTo01(!extendB0, !extendB1, false);
|
|
204949
|
+
if (haveIntervalA && haveIntervalB) {
|
|
204950
|
+
if (_Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isAlmostEqualNumber(rangeA.absoluteDelta(), rangeB.absoluteDelta(), _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.smallFraction))
|
|
204951
|
+
return updateIntervalFromRangesAndInterpolatedPoints(); // intersection of partially clamped ranges
|
|
204952
|
+
else if (rangeA.clampDirectedTo01(true, true, false) && rangeB.clampDirectedTo01(true, true, false))
|
|
204953
|
+
return updateIntervalFromRangesAndInterpolatedPoints(); // intersection of fully clamped ranges
|
|
204954
|
+
}
|
|
204955
|
+
const collapseToSingleton = (pointA, pointB, atStartA, atStartB) => {
|
|
204956
|
+
pointA.clone(overlap.detailA.point);
|
|
204957
|
+
pointB.clone(overlap.detailB.point);
|
|
204958
|
+
overlap.detailA.fraction = atStartA ? 0.0 : 1.0;
|
|
204959
|
+
overlap.detailB.fraction = atStartB ? 0.0 : 1.0;
|
|
204960
|
+
overlap.detailA.collapseToStart();
|
|
204961
|
+
overlap.detailB.collapseToStart();
|
|
204962
|
+
return overlap;
|
|
204963
|
+
};
|
|
204964
|
+
const haveSingletonA = rangeA.clampDirectedTo01(true, true, true);
|
|
204965
|
+
const haveSingletonB = rangeB.clampDirectedTo01(true, true, true);
|
|
204966
|
+
if (haveSingletonA && haveSingletonB) { // intersection is a single point
|
|
204967
|
+
const point1 = overlap.detailA.point1 ?? overlap.detailA.point;
|
|
204968
|
+
if (reversed) {
|
|
204969
|
+
if (overlap.detailA.point.isAlmostEqual(pointA0, this.tolerance))
|
|
204970
|
+
return collapseToSingleton(pointA0, pointB0, true, true);
|
|
204971
|
+
else if (point1.isAlmostEqual(pointA1, this.tolerance))
|
|
204972
|
+
return collapseToSingleton(pointA1, pointB1, false, false);
|
|
204973
|
+
}
|
|
204974
|
+
else {
|
|
204975
|
+
if (point1.isAlmostEqual(pointA0, this.tolerance))
|
|
204976
|
+
return collapseToSingleton(pointA0, pointB1, true, false);
|
|
204977
|
+
else if (overlap.detailA.point.isAlmostEqual(pointA1, this.tolerance))
|
|
204978
|
+
return collapseToSingleton(pointA1, pointB0, false, true);
|
|
204979
|
+
}
|
|
204980
|
+
}
|
|
204981
|
+
return undefined; // no intersection
|
|
204982
|
+
}
|
|
204983
|
+
/**
|
|
204984
|
+
* Compute whether two line segments have a coincident overlap in xy.
|
|
204985
|
+
* * Project `pointA0` and `pointA1` onto the line formed by `pointB0` and `pointB1` and vice versa
|
|
204986
|
+
* * If all projection distances are sufficiently small, return a detail pair recording the coincident interval, optionally clipped to segment bounds.
|
|
204987
|
+
* @param pointA0 start point of segment A
|
|
204988
|
+
* @param pointA1 end point of segment A
|
|
204989
|
+
* @param pointB0 start point of segment B
|
|
204990
|
+
* @param pointB1 end point of segment B
|
|
204991
|
+
* @param restrictToBounds whether to clip the coincident segment details to the segment bounds
|
|
204992
|
+
* @return detail pair for the coincident interval (`detailA` has fractions along segment A, and `detailB` has fractions along segment B), or undefined if no coincidence
|
|
204807
204993
|
*/
|
|
204808
204994
|
coincidentSegmentRangeXY(pointA0, pointA1, pointB0, pointB1, restrictToBounds = true) {
|
|
204809
204995
|
const detailA0OnB = this.projectPointToSegmentXY(pointA0, pointB0, pointB1);
|
|
@@ -204822,46 +205008,8 @@ class CoincidentGeometryQuery {
|
|
|
204822
205008
|
detailA0OnB.point1 = detailA1OnB.point; // capture -- detailA1OnB is not reused.
|
|
204823
205009
|
detailB0OnA.fraction1 = detailB1OnA.fraction;
|
|
204824
205010
|
detailB0OnA.point1 = detailB1OnA.point;
|
|
204825
|
-
|
|
204826
|
-
|
|
204827
|
-
const segment = _Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(detailB0OnA.fraction, detailB0OnA.fraction1);
|
|
204828
|
-
if (segment.clampDirectedTo01()) {
|
|
204829
|
-
const f0 = segment.x0;
|
|
204830
|
-
const f1 = segment.x1;
|
|
204831
|
-
const h0 = detailB0OnA.inverseInterpolateFraction(f0);
|
|
204832
|
-
const h1 = detailB0OnA.inverseInterpolateFraction(f1);
|
|
204833
|
-
// recompute fractions and points..
|
|
204834
|
-
CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailB0OnA, f0, f1, pointA0, pointA1, f0 > f1);
|
|
204835
|
-
CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailA0OnB, h0, h1, pointB0, pointB1, h0 > h1);
|
|
204836
|
-
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
204837
|
-
}
|
|
204838
|
-
else {
|
|
204839
|
-
if (segment.signedDelta() < 0.0) {
|
|
204840
|
-
if (detailB0OnA.point.isAlmostEqual(pointA0, this.tolerance)) {
|
|
204841
|
-
detailB0OnA.collapseToStart();
|
|
204842
|
-
detailA0OnB.collapseToStart();
|
|
204843
|
-
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
204844
|
-
}
|
|
204845
|
-
if (detailB0OnA.point1.isAlmostEqual(pointA1, this.tolerance)) {
|
|
204846
|
-
detailB0OnA.collapseToEnd();
|
|
204847
|
-
detailA0OnB.collapseToEnd();
|
|
204848
|
-
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
204849
|
-
}
|
|
204850
|
-
}
|
|
204851
|
-
else {
|
|
204852
|
-
if (detailB0OnA.point.isAlmostEqual(pointA1, this.tolerance)) {
|
|
204853
|
-
detailB0OnA.collapseToStart();
|
|
204854
|
-
detailA0OnB.collapseToEnd();
|
|
204855
|
-
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
204856
|
-
}
|
|
204857
|
-
if (detailB0OnA.point1.isAlmostEqual(pointA0, this.tolerance)) {
|
|
204858
|
-
detailB0OnA.collapseToEnd();
|
|
204859
|
-
detailA0OnB.collapseToStart();
|
|
204860
|
-
return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
204861
|
-
}
|
|
204862
|
-
}
|
|
204863
|
-
}
|
|
204864
|
-
return undefined;
|
|
205011
|
+
const interval = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
|
|
205012
|
+
return restrictToBounds ? this.clampCoincidentOverlapToSegmentBounds(interval, pointA0, pointA1, pointB0, pointB1) : interval;
|
|
204865
205013
|
}
|
|
204866
205014
|
/**
|
|
204867
205015
|
* Create a CurveLocationDetailPair for a coincident interval of two overlapping curves
|
|
@@ -221953,24 +222101,28 @@ class Segment1d {
|
|
|
221953
222101
|
* * On output, it is restricted to (0,1) while maintaining direction
|
|
221954
222102
|
* * If the clip leaves nothing, leave this segment alone and return false.
|
|
221955
222103
|
* * If the clip leaves something, update this segment and return true.
|
|
222104
|
+
* @param clamp0 whether to clamp the smaller number to 0. Default value is true.
|
|
222105
|
+
* @param clamp1 whether to clamp the larger number to 1. Default value is true.
|
|
222106
|
+
* @param allowSingleton whether to return true for an interval clipped to a single number (x0 === x1). Default value is false.
|
|
222107
|
+
* @return whether this interval was clipped
|
|
221956
222108
|
*/
|
|
221957
|
-
clampDirectedTo01() {
|
|
222109
|
+
clampDirectedTo01(clamp0 = true, clamp1 = true, allowSingleton = false) {
|
|
221958
222110
|
let x0 = this.x0;
|
|
221959
222111
|
let x1 = this.x1;
|
|
221960
222112
|
if (x1 > x0) {
|
|
221961
|
-
if (x0 < 0)
|
|
222113
|
+
if (x0 < 0 && clamp0)
|
|
221962
222114
|
x0 = 0;
|
|
221963
|
-
if (x1 > 1)
|
|
222115
|
+
if (x1 > 1 && clamp1)
|
|
221964
222116
|
x1 = 1;
|
|
221965
|
-
if (x0
|
|
222117
|
+
if (x0 > x1 || (x0 === x1 && !allowSingleton))
|
|
221966
222118
|
return false;
|
|
221967
222119
|
}
|
|
221968
222120
|
else {
|
|
221969
|
-
if (x0 > 1)
|
|
222121
|
+
if (x0 > 1 && clamp1)
|
|
221970
222122
|
x0 = 1;
|
|
221971
|
-
if (x1 < 0)
|
|
222123
|
+
if (x1 < 0 && clamp0)
|
|
221972
222124
|
x1 = 0;
|
|
221973
|
-
if (x0
|
|
222125
|
+
if (x0 < x1 || (x0 === x1 && !allowSingleton))
|
|
221974
222126
|
return false;
|
|
221975
222127
|
}
|
|
221976
222128
|
this.set(x0, x1);
|
|
@@ -225358,7 +225510,7 @@ class Point4d extends _geometry3d_Plane3d__WEBPACK_IMPORTED_MODULE_0__.Plane3d {
|
|
|
225358
225510
|
return undefined;
|
|
225359
225511
|
}
|
|
225360
225512
|
/**
|
|
225361
|
-
* * Return xyz projection of spacePoint to the plane
|
|
225513
|
+
* * Return xyz projection of spacePoint to the plane (this Point4d is understood as plane coefficients, not point coordinates)
|
|
225362
225514
|
* * If the xyz part of `this` are all zero, (a clone of) `spacePoint` is returned.
|
|
225363
225515
|
*/
|
|
225364
225516
|
projectPointToPlane(spacePoint, result) {
|
|
@@ -225878,14 +226030,15 @@ class BezierCoffs {
|
|
|
225878
226030
|
for (let i = 0; i < this.coffs.length; i++)
|
|
225879
226031
|
this.coffs[i] += a;
|
|
225880
226032
|
}
|
|
225881
|
-
/** Compute parameter values where the bezier value matches
|
|
226033
|
+
/** Compute parameter values where the bezier value matches targetValue.
|
|
225882
226034
|
* * The base class finds roots only in 01. (i.e. ignores _restrictTo01)
|
|
225883
|
-
* * Order-specific implementations apply special case
|
|
226035
|
+
* * Order-specific implementations apply special case analytic logic, e.g. for degree 1,2,3,4.
|
|
225884
226036
|
*/
|
|
225885
226037
|
roots(targetValue, _restrictTo01) {
|
|
225886
226038
|
const bezier = UnivariateBezier.create(this);
|
|
225887
226039
|
bezier.addInPlace(-targetValue);
|
|
225888
|
-
|
|
226040
|
+
const roots = UnivariateBezier.deflateRoots(bezier);
|
|
226041
|
+
return this.filter01(roots, true);
|
|
225889
226042
|
}
|
|
225890
226043
|
/** Given an array of numbers, optionally remove those not in the 0..1 interval.
|
|
225891
226044
|
* @param roots candidate values
|
|
@@ -225913,7 +226066,9 @@ class BezierCoffs {
|
|
|
225913
226066
|
return undefined;
|
|
225914
226067
|
}
|
|
225915
226068
|
/** zero out all coefficients. */
|
|
225916
|
-
zero() {
|
|
226069
|
+
zero() {
|
|
226070
|
+
this.coffs.fill(0);
|
|
226071
|
+
}
|
|
225917
226072
|
/** Subdivide -- write results into caller-supplied bezier coffs (which must be of the same order) */
|
|
225918
226073
|
subdivide(u, left, right) {
|
|
225919
226074
|
const order = this.order;
|
|
@@ -226436,11 +226591,10 @@ class UnivariateBezier extends BezierCoffs {
|
|
|
226436
226591
|
// first c0*b0 = a0
|
|
226437
226592
|
// last c[orderC-1]*b1 = a[orderA-1]
|
|
226438
226593
|
/** Find roots of a bezier polynomial
|
|
226439
|
-
* * Only look for roots in 0..1
|
|
226440
226594
|
* * As roots are found, deflate the polynomial.
|
|
226441
226595
|
* * bezier coffs are changed (and order reduced) at each step.
|
|
226442
226596
|
*/
|
|
226443
|
-
static
|
|
226597
|
+
static deflateRoots(bezier) {
|
|
226444
226598
|
const roots = [];
|
|
226445
226599
|
const coffs = bezier.coffs;
|
|
226446
226600
|
let a0, a1, segmentFraction, globalStartFraction, newtonFraction;
|
|
@@ -236019,7 +236173,7 @@ class PolyfaceClip {
|
|
|
236019
236173
|
* * This method computes the portion of the input mesh that lies inside the clipper generated from sweeping the input region in the given direction.
|
|
236020
236174
|
* @param mesh input mesh, untouched
|
|
236021
236175
|
* @param region planar region to drape onto mesh
|
|
236022
|
-
* @param sweepVector optional sweep direction for region
|
|
236176
|
+
* @param sweepVector optional sweep direction for region, magnitude unused. If undefined, sweep is along the region normal.
|
|
236023
236177
|
* @param options how to stroke the region boundary
|
|
236024
236178
|
* @returns clipped facets. No other mesh data but vertices appear in output.
|
|
236025
236179
|
*/
|
|
@@ -236029,10 +236183,13 @@ class PolyfaceClip {
|
|
|
236029
236183
|
const contour = _solid_SweepContour__WEBPACK_IMPORTED_MODULE_15__.SweepContour.createForLinearSweep(region);
|
|
236030
236184
|
if (!contour)
|
|
236031
236185
|
return undefined;
|
|
236032
|
-
|
|
236186
|
+
let sweep = sweepVector;
|
|
236187
|
+
if (sweepVector && contour.localToWorld.matrix.dotColumnZ(sweepVector) < 0.0)
|
|
236188
|
+
sweep = sweepVector.scale(-1); // avoid inverted clipper
|
|
236189
|
+
const clipper = contour.sweepToUnionOfConvexClipPlaneSets(sweep, false, false, options);
|
|
236033
236190
|
if (!clipper)
|
|
236034
236191
|
return undefined;
|
|
236035
|
-
const builders = ClippedPolyfaceBuilders.create(true);
|
|
236192
|
+
const builders = ClippedPolyfaceBuilders.create(true); // we want only the facets inside the clipper
|
|
236036
236193
|
this.clipPolyfaceUnionOfConvexClipPlaneSetsToBuilders(mesh, clipper, builders, 1);
|
|
236037
236194
|
return builders.claimPolyface(0, true);
|
|
236038
236195
|
}
|
|
@@ -236883,7 +237040,7 @@ class PolyfaceQuery {
|
|
|
236883
237040
|
return result;
|
|
236884
237041
|
}
|
|
236885
237042
|
/** Return the sum of all facet areas.
|
|
236886
|
-
* @param vectorToEye compute facet
|
|
237043
|
+
* @param vectorToEye compute sum of *signed* facet areas projected to a view plane perpendicular to this vector
|
|
236887
237044
|
*/
|
|
236888
237045
|
static sumFacetAreas(source, vectorToEye) {
|
|
236889
237046
|
let s = 0;
|
|
@@ -253598,9 +253755,11 @@ class SweepContour {
|
|
|
253598
253755
|
}
|
|
253599
253756
|
/**
|
|
253600
253757
|
* Create a UnionOfConvexClipPlaneSets that clips to the swept faceted contour region.
|
|
253601
|
-
* @param sweepVector the sweep direction
|
|
253758
|
+
* @param sweepVector the sweep direction and distance:
|
|
253759
|
+
* * If undefined, the sweep direction is along the contour normal and no caps are constructed (the sweep is infinite in both directions).
|
|
253760
|
+
* * If defined, the returned clipper is inverted if and only if sweepVector is in the opposite half-space as the computed contour normal.
|
|
253602
253761
|
* @param cap0 construct a clip plane equal to the contour plane. Note that `sweepVector` must be defined.
|
|
253603
|
-
* @param cap1 construct a clip plane parallel to the contour plane at the end of `sweepVector`.
|
|
253762
|
+
* @param cap1 construct a clip plane parallel to the contour plane at the end of `sweepVector`.
|
|
253604
253763
|
* @param options how to stroke the contour
|
|
253605
253764
|
* @returns clipper defined by faceting then sweeping the contour region
|
|
253606
253765
|
*/
|
|
@@ -280415,7 +280574,7 @@ const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../c
|
|
|
280415
280574
|
const itwins_client_1 = __webpack_require__(/*! @itwin/itwins-client */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js");
|
|
280416
280575
|
const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
|
|
280417
280576
|
const imodels_client_management_1 = __webpack_require__(/*! @itwin/imodels-client-management */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-client-management@3.1.0/node_modules/@itwin/imodels-client-management/lib/esm/index.js");
|
|
280418
|
-
const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
280577
|
+
const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js");
|
|
280419
280578
|
class IModelSession {
|
|
280420
280579
|
constructor(iTwinId, imodelId, changesetId) {
|
|
280421
280580
|
this.iTwinId = iTwinId;
|
|
@@ -280507,7 +280666,7 @@ const core_bentley_1 = __webpack_require__(/*! @itwin/core-bentley */ "../../cor
|
|
|
280507
280666
|
const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
|
|
280508
280667
|
const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
|
|
280509
280668
|
const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@3.6.1_mdtbcqczpmeuv6yjzfaigjndwi/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
|
|
280510
|
-
const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.
|
|
280669
|
+
const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@3.1.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js");
|
|
280511
280670
|
const imodels_client_management_1 = __webpack_require__(/*! @itwin/imodels-client-management */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-client-management@3.1.0/node_modules/@itwin/imodels-client-management/lib/esm/index.js");
|
|
280512
280671
|
const Settings_1 = __webpack_require__(/*! ../../common/Settings */ "./lib/common/Settings.js");
|
|
280513
280672
|
const SideChannels_1 = __webpack_require__(/*! ../../common/SideChannels */ "./lib/common/SideChannels.js");
|
|
@@ -280555,7 +280714,7 @@ class TestContext {
|
|
|
280555
280714
|
this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
|
|
280556
280715
|
const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
|
|
280557
280716
|
await core_frontend_1.NoRenderApp.startup({
|
|
280558
|
-
applicationVersion: "4.3.0-dev.
|
|
280717
|
+
applicationVersion: "4.3.0-dev.10",
|
|
280559
280718
|
applicationId: this.settings.gprid,
|
|
280560
280719
|
authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
|
|
280561
280720
|
hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
|
|
@@ -294621,7 +294780,7 @@ var WidgetState;
|
|
|
294621
294780
|
|
|
294622
294781
|
/***/ }),
|
|
294623
294782
|
|
|
294624
|
-
/***/ "?
|
|
294783
|
+
/***/ "?088e":
|
|
294625
294784
|
/*!**********************!*\
|
|
294626
294785
|
!*** util (ignored) ***!
|
|
294627
294786
|
\**********************/
|
|
@@ -296263,9 +296422,9 @@ const gBase64 = {
|
|
|
296263
296422
|
|
|
296264
296423
|
/***/ }),
|
|
296265
296424
|
|
|
296266
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296425
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js":
|
|
296267
296426
|
/*!******************************************************************************************************************************!*\
|
|
296268
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296427
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***!
|
|
296269
296428
|
\******************************************************************************************************************************/
|
|
296270
296429
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296271
296430
|
|
|
@@ -296282,9 +296441,9 @@ function _arrayLikeToArray(arr, len) {
|
|
|
296282
296441
|
|
|
296283
296442
|
/***/ }),
|
|
296284
296443
|
|
|
296285
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296444
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js":
|
|
296286
296445
|
/*!****************************************************************************************************************************!*\
|
|
296287
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296446
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js ***!
|
|
296288
296447
|
\****************************************************************************************************************************/
|
|
296289
296448
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296290
296449
|
|
|
@@ -296299,9 +296458,9 @@ function _arrayWithHoles(arr) {
|
|
|
296299
296458
|
|
|
296300
296459
|
/***/ }),
|
|
296301
296460
|
|
|
296302
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296461
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js":
|
|
296303
296462
|
/*!***********************************************************************************************************************************!*\
|
|
296304
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296463
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js ***!
|
|
296305
296464
|
\***********************************************************************************************************************************/
|
|
296306
296465
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296307
296466
|
|
|
@@ -296319,9 +296478,9 @@ function _assertThisInitialized(self) {
|
|
|
296319
296478
|
|
|
296320
296479
|
/***/ }),
|
|
296321
296480
|
|
|
296322
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296481
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js":
|
|
296323
296482
|
/*!****************************************************************************************************************************!*\
|
|
296324
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296483
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***!
|
|
296325
296484
|
\****************************************************************************************************************************/
|
|
296326
296485
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296327
296486
|
|
|
@@ -296338,9 +296497,9 @@ function _classCallCheck(instance, Constructor) {
|
|
|
296338
296497
|
|
|
296339
296498
|
/***/ }),
|
|
296340
296499
|
|
|
296341
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296500
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/createClass.js":
|
|
296342
296501
|
/*!*************************************************************************************************************************!*\
|
|
296343
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296502
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/createClass.js ***!
|
|
296344
296503
|
\*************************************************************************************************************************/
|
|
296345
296504
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296346
296505
|
|
|
@@ -296349,7 +296508,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296349
296508
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296350
296509
|
/* harmony export */ "default": () => (/* binding */ _createClass)
|
|
296351
296510
|
/* harmony export */ });
|
|
296352
|
-
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296511
|
+
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
|
296353
296512
|
|
|
296354
296513
|
function _defineProperties(target, props) {
|
|
296355
296514
|
for (var i = 0; i < props.length; i++) {
|
|
@@ -296371,9 +296530,9 @@ function _createClass(Constructor, protoProps, staticProps) {
|
|
|
296371
296530
|
|
|
296372
296531
|
/***/ }),
|
|
296373
296532
|
|
|
296374
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296533
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/defineProperty.js":
|
|
296375
296534
|
/*!****************************************************************************************************************************!*\
|
|
296376
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296535
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***!
|
|
296377
296536
|
\****************************************************************************************************************************/
|
|
296378
296537
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296379
296538
|
|
|
@@ -296382,7 +296541,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296382
296541
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296383
296542
|
/* harmony export */ "default": () => (/* binding */ _defineProperty)
|
|
296384
296543
|
/* harmony export */ });
|
|
296385
|
-
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296544
|
+
/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js");
|
|
296386
296545
|
|
|
296387
296546
|
function _defineProperty(obj, key, value) {
|
|
296388
296547
|
key = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(key);
|
|
@@ -296401,9 +296560,9 @@ function _defineProperty(obj, key, value) {
|
|
|
296401
296560
|
|
|
296402
296561
|
/***/ }),
|
|
296403
296562
|
|
|
296404
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296563
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js":
|
|
296405
296564
|
/*!****************************************************************************************************************************!*\
|
|
296406
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296565
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js ***!
|
|
296407
296566
|
\****************************************************************************************************************************/
|
|
296408
296567
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296409
296568
|
|
|
@@ -296421,9 +296580,9 @@ function _getPrototypeOf(o) {
|
|
|
296421
296580
|
|
|
296422
296581
|
/***/ }),
|
|
296423
296582
|
|
|
296424
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296583
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/inherits.js":
|
|
296425
296584
|
/*!**********************************************************************************************************************!*\
|
|
296426
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296585
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/inherits.js ***!
|
|
296427
296586
|
\**********************************************************************************************************************/
|
|
296428
296587
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296429
296588
|
|
|
@@ -296432,7 +296591,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296432
296591
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296433
296592
|
/* harmony export */ "default": () => (/* binding */ _inherits)
|
|
296434
296593
|
/* harmony export */ });
|
|
296435
|
-
/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296594
|
+
/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js");
|
|
296436
296595
|
|
|
296437
296596
|
function _inherits(subClass, superClass) {
|
|
296438
296597
|
if (typeof superClass !== "function" && superClass !== null) {
|
|
@@ -296453,9 +296612,9 @@ function _inherits(subClass, superClass) {
|
|
|
296453
296612
|
|
|
296454
296613
|
/***/ }),
|
|
296455
296614
|
|
|
296456
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296615
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/iterableToArray.js":
|
|
296457
296616
|
/*!*****************************************************************************************************************************!*\
|
|
296458
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296617
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***!
|
|
296459
296618
|
\*****************************************************************************************************************************/
|
|
296460
296619
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296461
296620
|
|
|
@@ -296470,9 +296629,9 @@ function _iterableToArray(iter) {
|
|
|
296470
296629
|
|
|
296471
296630
|
/***/ }),
|
|
296472
296631
|
|
|
296473
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296632
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js":
|
|
296474
296633
|
/*!*****************************************************************************************************************************!*\
|
|
296475
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296634
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js ***!
|
|
296476
296635
|
\*****************************************************************************************************************************/
|
|
296477
296636
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296478
296637
|
|
|
@@ -296487,9 +296646,9 @@ function _nonIterableRest() {
|
|
|
296487
296646
|
|
|
296488
296647
|
/***/ }),
|
|
296489
296648
|
|
|
296490
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296649
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js":
|
|
296491
296650
|
/*!***************************************************************************************************************************************!*\
|
|
296492
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296651
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js ***!
|
|
296493
296652
|
\***************************************************************************************************************************************/
|
|
296494
296653
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296495
296654
|
|
|
@@ -296498,8 +296657,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296498
296657
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296499
296658
|
/* harmony export */ "default": () => (/* binding */ _possibleConstructorReturn)
|
|
296500
296659
|
/* harmony export */ });
|
|
296501
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296502
|
-
/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296660
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
296661
|
+
/* harmony import */ var _assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./assertThisInitialized.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js");
|
|
296503
296662
|
|
|
296504
296663
|
|
|
296505
296664
|
function _possibleConstructorReturn(self, call) {
|
|
@@ -296513,9 +296672,9 @@ function _possibleConstructorReturn(self, call) {
|
|
|
296513
296672
|
|
|
296514
296673
|
/***/ }),
|
|
296515
296674
|
|
|
296516
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296675
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js":
|
|
296517
296676
|
/*!****************************************************************************************************************************!*\
|
|
296518
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296677
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***!
|
|
296519
296678
|
\****************************************************************************************************************************/
|
|
296520
296679
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296521
296680
|
|
|
@@ -296534,9 +296693,9 @@ function _setPrototypeOf(o, p) {
|
|
|
296534
296693
|
|
|
296535
296694
|
/***/ }),
|
|
296536
296695
|
|
|
296537
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296696
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toArray.js":
|
|
296538
296697
|
/*!*********************************************************************************************************************!*\
|
|
296539
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296698
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toArray.js ***!
|
|
296540
296699
|
\*********************************************************************************************************************/
|
|
296541
296700
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296542
296701
|
|
|
@@ -296545,10 +296704,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296545
296704
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296546
296705
|
/* harmony export */ "default": () => (/* binding */ _toArray)
|
|
296547
296706
|
/* harmony export */ });
|
|
296548
|
-
/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296549
|
-
/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296550
|
-
/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296551
|
-
/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296707
|
+
/* harmony import */ var _arrayWithHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithHoles.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js");
|
|
296708
|
+
/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/iterableToArray.js");
|
|
296709
|
+
/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js");
|
|
296710
|
+
/* harmony import */ var _nonIterableRest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableRest.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js");
|
|
296552
296711
|
|
|
296553
296712
|
|
|
296554
296713
|
|
|
@@ -296559,9 +296718,9 @@ function _toArray(arr) {
|
|
|
296559
296718
|
|
|
296560
296719
|
/***/ }),
|
|
296561
296720
|
|
|
296562
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296721
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPrimitive.js":
|
|
296563
296722
|
/*!*************************************************************************************************************************!*\
|
|
296564
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296723
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***!
|
|
296565
296724
|
\*************************************************************************************************************************/
|
|
296566
296725
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296567
296726
|
|
|
@@ -296570,7 +296729,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296570
296729
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296571
296730
|
/* harmony export */ "default": () => (/* binding */ _toPrimitive)
|
|
296572
296731
|
/* harmony export */ });
|
|
296573
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296732
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
296574
296733
|
|
|
296575
296734
|
function _toPrimitive(input, hint) {
|
|
296576
296735
|
if ((0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(input) !== "object" || input === null) return input;
|
|
@@ -296585,9 +296744,9 @@ function _toPrimitive(input, hint) {
|
|
|
296585
296744
|
|
|
296586
296745
|
/***/ }),
|
|
296587
296746
|
|
|
296588
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296747
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js":
|
|
296589
296748
|
/*!***************************************************************************************************************************!*\
|
|
296590
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296749
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***!
|
|
296591
296750
|
\***************************************************************************************************************************/
|
|
296592
296751
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296593
296752
|
|
|
@@ -296596,8 +296755,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296596
296755
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296597
296756
|
/* harmony export */ "default": () => (/* binding */ _toPropertyKey)
|
|
296598
296757
|
/* harmony export */ });
|
|
296599
|
-
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296600
|
-
/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296758
|
+
/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
296759
|
+
/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/toPrimitive.js");
|
|
296601
296760
|
|
|
296602
296761
|
|
|
296603
296762
|
function _toPropertyKey(arg) {
|
|
@@ -296607,9 +296766,9 @@ function _toPropertyKey(arg) {
|
|
|
296607
296766
|
|
|
296608
296767
|
/***/ }),
|
|
296609
296768
|
|
|
296610
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296769
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js":
|
|
296611
296770
|
/*!********************************************************************************************************************!*\
|
|
296612
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296771
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js ***!
|
|
296613
296772
|
\********************************************************************************************************************/
|
|
296614
296773
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296615
296774
|
|
|
@@ -296618,21 +296777,21 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296618
296777
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296619
296778
|
/* harmony export */ "default": () => (/* binding */ _typeof)
|
|
296620
296779
|
/* harmony export */ });
|
|
296621
|
-
function _typeof(
|
|
296780
|
+
function _typeof(o) {
|
|
296622
296781
|
"@babel/helpers - typeof";
|
|
296623
296782
|
|
|
296624
|
-
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (
|
|
296625
|
-
return typeof
|
|
296626
|
-
} : function (
|
|
296627
|
-
return
|
|
296628
|
-
}, _typeof(
|
|
296783
|
+
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
|
|
296784
|
+
return typeof o;
|
|
296785
|
+
} : function (o) {
|
|
296786
|
+
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
|
|
296787
|
+
}, _typeof(o);
|
|
296629
296788
|
}
|
|
296630
296789
|
|
|
296631
296790
|
/***/ }),
|
|
296632
296791
|
|
|
296633
|
-
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296792
|
+
/***/ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js":
|
|
296634
296793
|
/*!****************************************************************************************************************************************!*\
|
|
296635
|
-
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296794
|
+
!*** ../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***!
|
|
296636
296795
|
\****************************************************************************************************************************************/
|
|
296637
296796
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
296638
296797
|
|
|
@@ -296641,7 +296800,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
296641
296800
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
296642
296801
|
/* harmony export */ "default": () => (/* binding */ _unsupportedIterableToArray)
|
|
296643
296802
|
/* harmony export */ });
|
|
296644
|
-
/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.
|
|
296803
|
+
/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "../../common/temp/node_modules/.pnpm/@babel+runtime@7.23.2/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js");
|
|
296645
296804
|
|
|
296646
296805
|
function _unsupportedIterableToArray(o, minLen) {
|
|
296647
296806
|
if (!o) return;
|
|
@@ -297075,15 +297234,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
297075
297234
|
/* harmony export */ t: () => (/* binding */ t),
|
|
297076
297235
|
/* harmony export */ use: () => (/* binding */ use)
|
|
297077
297236
|
/* harmony export */ });
|
|
297078
|
-
/* 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.
|
|
297079
|
-
/* 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.
|
|
297080
|
-
/* 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.
|
|
297081
|
-
/* 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.
|
|
297082
|
-
/* 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.
|
|
297083
|
-
/* 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.
|
|
297084
|
-
/* 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.
|
|
297085
|
-
/* 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.
|
|
297086
|
-
/* 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.
|
|
297237
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/typeof.js");
|
|
297238
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
|
|
297239
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/createClass.js");
|
|
297240
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js");
|
|
297241
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/inherits.js");
|
|
297242
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js");
|
|
297243
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js");
|
|
297244
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/defineProperty.js");
|
|
297245
|
+
/* 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.23.2/node_modules/@babel/runtime/helpers/esm/toArray.js");
|
|
297087
297246
|
|
|
297088
297247
|
|
|
297089
297248
|
|
|
@@ -299963,7 +300122,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
|
|
|
299963
300122
|
/***/ ((module) => {
|
|
299964
300123
|
|
|
299965
300124
|
"use strict";
|
|
299966
|
-
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.3.0-dev.
|
|
300125
|
+
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.3.0-dev.10","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.3.0-dev.10","@itwin/core-bentley":"workspace:^4.3.0-dev.10","@itwin/core-common":"workspace:^4.3.0-dev.10","@itwin/core-geometry":"workspace:^4.3.0-dev.10","@itwin/core-orbitgt":"workspace:^4.3.0-dev.10","@itwin/core-quantity":"workspace:^4.3.0-dev.10"},"//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.3.10","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","typemoq":"^2.1.0","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.1.0","@itwin/object-storage-core":"^2.1.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"}}');
|
|
299967
300126
|
|
|
299968
300127
|
/***/ }),
|
|
299969
300128
|
|