@itwin/rpcinterface-full-stack-tests 4.1.0-dev.73 → 4.1.0-dev.75
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 +248 -110
- package/lib/dist/bundled-tests.js.map +1 -1
- package/package.json +13 -13
|
@@ -153274,6 +153274,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
153274
153274
|
|
|
153275
153275
|
|
|
153276
153276
|
|
|
153277
|
+
const loggerCategory = "ImageryMapTileTree";
|
|
153277
153278
|
/** @internal */
|
|
153278
153279
|
class ImageryMapTile extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityTile {
|
|
153279
153280
|
constructor(params, imageryTree, quadId, rectangle) {
|
|
@@ -153564,9 +153565,17 @@ class ImageryMapLayerTreeSupplier {
|
|
|
153564
153565
|
/** The first time a tree of a particular imagery type is requested, this function creates it. */
|
|
153565
153566
|
async createTileTree(id, iModel) {
|
|
153566
153567
|
const imageryProvider = _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.mapLayerFormatRegistry.createImageryProvider(id.settings);
|
|
153567
|
-
if (undefined === imageryProvider)
|
|
153568
|
+
if (undefined === imageryProvider) {
|
|
153569
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(loggerCategory, `Failed to create imagery provider for format '${id.settings.formatId}'`);
|
|
153568
153570
|
return undefined;
|
|
153569
|
-
|
|
153571
|
+
}
|
|
153572
|
+
try {
|
|
153573
|
+
await imageryProvider.initialize();
|
|
153574
|
+
}
|
|
153575
|
+
catch (e) {
|
|
153576
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logError(loggerCategory, `Could not initialize imagery provider for map layer '${id.settings.name}' : ${e}`);
|
|
153577
|
+
throw e;
|
|
153578
|
+
}
|
|
153570
153579
|
const modelId = iModel.transientIds.getNext();
|
|
153571
153580
|
const tilingScheme = imageryProvider.tilingScheme;
|
|
153572
153581
|
const rootLevel = (1 === tilingScheme.numberOfLevelZeroTilesX && 1 === tilingScheme.numberOfLevelZeroTilesY) ? 0 : -1;
|
|
@@ -183366,7 +183375,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183366
183375
|
/* harmony export */ BSplineWrapMode: () => (/* reexport safe */ _bspline_KnotVector__WEBPACK_IMPORTED_MODULE_111__.BSplineWrapMode),
|
|
183367
183376
|
/* harmony export */ BagOfCurves: () => (/* reexport safe */ _curve_CurveCollection__WEBPACK_IMPORTED_MODULE_65__.BagOfCurves),
|
|
183368
183377
|
/* harmony export */ BarycentricTriangle: () => (/* reexport safe */ _geometry3d_BarycentricTriangle__WEBPACK_IMPORTED_MODULE_3__.BarycentricTriangle),
|
|
183369
|
-
/* harmony export */ BentleyGeometryFlatBuffer: () => (/* reexport safe */
|
|
183378
|
+
/* harmony export */ BentleyGeometryFlatBuffer: () => (/* reexport safe */ _serialization_BentleyGeometryFlatBuffer__WEBPACK_IMPORTED_MODULE_131__.BentleyGeometryFlatBuffer),
|
|
183370
183379
|
/* harmony export */ Bezier1dNd: () => (/* reexport safe */ _bspline_Bezier1dNd__WEBPACK_IMPORTED_MODULE_101__.Bezier1dNd),
|
|
183371
183380
|
/* harmony export */ BezierBezierIntersectionXYRRToRRD: () => (/* reexport safe */ _curve_CurveCurveIntersectXY__WEBPACK_IMPORTED_MODULE_67__.BezierBezierIntersectionXYRRToRRD),
|
|
183372
183381
|
/* harmony export */ BezierCoffs: () => (/* reexport safe */ _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_51__.BezierCoffs),
|
|
@@ -183388,7 +183397,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183388
183397
|
/* harmony export */ ClipStepAction: () => (/* reexport safe */ _clipping_ClipUtils__WEBPACK_IMPORTED_MODULE_44__.ClipStepAction),
|
|
183389
183398
|
/* harmony export */ ClipUtilities: () => (/* reexport safe */ _clipping_ClipUtils__WEBPACK_IMPORTED_MODULE_44__.ClipUtilities),
|
|
183390
183399
|
/* harmony export */ ClipVector: () => (/* reexport safe */ _clipping_ClipVector__WEBPACK_IMPORTED_MODULE_43__.ClipVector),
|
|
183391
|
-
/* harmony export */ ClippedPolyfaceBuilders: () => (/* reexport safe */
|
|
183400
|
+
/* harmony export */ ClippedPolyfaceBuilders: () => (/* reexport safe */ _polyface_PolyfaceClip__WEBPACK_IMPORTED_MODULE_123__.ClippedPolyfaceBuilders),
|
|
183392
183401
|
/* harmony export */ ClusterableArray: () => (/* reexport safe */ _numerics_ClusterableArray__WEBPACK_IMPORTED_MODULE_52__.ClusterableArray),
|
|
183393
183402
|
/* harmony export */ Complex: () => (/* reexport safe */ _numerics_Complex__WEBPACK_IMPORTED_MODULE_54__.Complex),
|
|
183394
183403
|
/* harmony export */ Cone: () => (/* reexport safe */ _solid_Cone__WEBPACK_IMPORTED_MODULE_92__.Cone),
|
|
@@ -183418,12 +183427,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183418
183427
|
/* harmony export */ CurveSearchStatus: () => (/* reexport safe */ _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_69__.CurveSearchStatus),
|
|
183419
183428
|
/* harmony export */ CutLoop: () => (/* reexport safe */ _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_27__.CutLoop),
|
|
183420
183429
|
/* harmony export */ CutLoopMergeContext: () => (/* reexport safe */ _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_27__.CutLoopMergeContext),
|
|
183421
|
-
/* harmony export */ DeepCompare: () => (/* reexport safe */
|
|
183430
|
+
/* harmony export */ DeepCompare: () => (/* reexport safe */ _serialization_DeepCompare__WEBPACK_IMPORTED_MODULE_129__.DeepCompare),
|
|
183422
183431
|
/* harmony export */ Degree2PowerPolynomial: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.Degree2PowerPolynomial),
|
|
183423
183432
|
/* harmony export */ Degree3PowerPolynomial: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.Degree3PowerPolynomial),
|
|
183424
183433
|
/* harmony export */ Degree4PowerPolynomial: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.Degree4PowerPolynomial),
|
|
183425
183434
|
/* harmony export */ DirectSpiral3d: () => (/* reexport safe */ _curve_spiral_DirectSpiral3d__WEBPACK_IMPORTED_MODULE_88__.DirectSpiral3d),
|
|
183426
|
-
/* harmony export */ DuplicateFacetClusterSelector: () => (/* reexport safe */
|
|
183435
|
+
/* harmony export */ DuplicateFacetClusterSelector: () => (/* reexport safe */ _polyface_PolyfaceQuery__WEBPACK_IMPORTED_MODULE_122__.DuplicateFacetClusterSelector),
|
|
183427
183436
|
/* harmony export */ Ellipsoid: () => (/* reexport safe */ _geometry3d_Ellipsoid__WEBPACK_IMPORTED_MODULE_5__.Ellipsoid),
|
|
183428
183437
|
/* harmony export */ EllipsoidPatch: () => (/* reexport safe */ _geometry3d_Ellipsoid__WEBPACK_IMPORTED_MODULE_5__.EllipsoidPatch),
|
|
183429
183438
|
/* harmony export */ FacetFaceData: () => (/* reexport safe */ _polyface_FacetFaceData__WEBPACK_IMPORTED_MODULE_114__.FacetFaceData),
|
|
@@ -183435,14 +183444,16 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183435
183444
|
/* harmony export */ Geometry: () => (/* reexport safe */ _Geometry__WEBPACK_IMPORTED_MODULE_36__.Geometry),
|
|
183436
183445
|
/* harmony export */ GeometryHandler: () => (/* reexport safe */ _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_8__.GeometryHandler),
|
|
183437
183446
|
/* harmony export */ GeometryQuery: () => (/* reexport safe */ _curve_GeometryQuery__WEBPACK_IMPORTED_MODULE_74__.GeometryQuery),
|
|
183447
|
+
/* harmony export */ GriddedRaggedRange2dSet: () => (/* reexport safe */ _polyface_multiclip_GriddedRaggedRange2dSet__WEBPACK_IMPORTED_MODULE_118__.GriddedRaggedRange2dSet),
|
|
183448
|
+
/* harmony export */ GriddedRaggedRange2dSetWithOverflow: () => (/* reexport safe */ _polyface_multiclip_GriddedRaggedRange2dSetWithOverflow__WEBPACK_IMPORTED_MODULE_119__.GriddedRaggedRange2dSetWithOverflow),
|
|
183438
183449
|
/* harmony export */ GrowableBlockedArray: () => (/* reexport safe */ _geometry3d_GrowableBlockedArray__WEBPACK_IMPORTED_MODULE_9__.GrowableBlockedArray),
|
|
183439
183450
|
/* harmony export */ GrowableFloat64Array: () => (/* reexport safe */ _geometry3d_GrowableFloat64Array__WEBPACK_IMPORTED_MODULE_10__.GrowableFloat64Array),
|
|
183440
183451
|
/* harmony export */ GrowableXYArray: () => (/* reexport safe */ _geometry3d_GrowableXYArray__WEBPACK_IMPORTED_MODULE_11__.GrowableXYArray),
|
|
183441
183452
|
/* harmony export */ GrowableXYZArray: () => (/* reexport safe */ _geometry3d_GrowableXYZArray__WEBPACK_IMPORTED_MODULE_12__.GrowableXYZArray),
|
|
183442
|
-
/* harmony export */ HalfEdge: () => (/* reexport safe */
|
|
183443
|
-
/* harmony export */ HalfEdgeGraph: () => (/* reexport safe */
|
|
183444
|
-
/* harmony export */ HalfEdgeMask: () => (/* reexport safe */
|
|
183445
|
-
/* harmony export */ IModelJson: () => (/* reexport safe */
|
|
183453
|
+
/* harmony export */ HalfEdge: () => (/* reexport safe */ _topology_Graph__WEBPACK_IMPORTED_MODULE_125__.HalfEdge),
|
|
183454
|
+
/* harmony export */ HalfEdgeGraph: () => (/* reexport safe */ _topology_Graph__WEBPACK_IMPORTED_MODULE_125__.HalfEdgeGraph),
|
|
183455
|
+
/* harmony export */ HalfEdgeMask: () => (/* reexport safe */ _topology_Graph__WEBPACK_IMPORTED_MODULE_125__.HalfEdgeMask),
|
|
183456
|
+
/* harmony export */ IModelJson: () => (/* reexport safe */ _serialization_IModelJsonSchema__WEBPACK_IMPORTED_MODULE_128__.IModelJson),
|
|
183446
183457
|
/* harmony export */ ImplicitLineXY: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.ImplicitLineXY),
|
|
183447
183458
|
/* harmony export */ IndexedCollectionInterval: () => (/* reexport safe */ _geometry3d_IndexedCollectionInterval__WEBPACK_IMPORTED_MODULE_13__.IndexedCollectionInterval),
|
|
183448
183459
|
/* harmony export */ IndexedPolyface: () => (/* reexport safe */ _polyface_Polyface__WEBPACK_IMPORTED_MODULE_115__.IndexedPolyface),
|
|
@@ -183479,7 +183490,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183479
183490
|
/* harmony export */ NonConvexFacetLocationDetail: () => (/* reexport safe */ _polyface_FacetLocationDetail__WEBPACK_IMPORTED_MODULE_116__.NonConvexFacetLocationDetail),
|
|
183480
183491
|
/* harmony export */ NullGeometryHandler: () => (/* reexport safe */ _geometry3d_GeometryHandler__WEBPACK_IMPORTED_MODULE_8__.NullGeometryHandler),
|
|
183481
183492
|
/* harmony export */ NumberArray: () => (/* reexport safe */ _geometry3d_PointHelpers__WEBPACK_IMPORTED_MODULE_24__.NumberArray),
|
|
183482
|
-
/* harmony export */ OffsetMeshOptions: () => (/* reexport safe */
|
|
183493
|
+
/* harmony export */ OffsetMeshOptions: () => (/* reexport safe */ _polyface_PolyfaceQuery__WEBPACK_IMPORTED_MODULE_122__.OffsetMeshOptions),
|
|
183483
183494
|
/* harmony export */ OffsetOptions: () => (/* reexport safe */ _curve_OffsetOptions__WEBPACK_IMPORTED_MODULE_78__.OffsetOptions),
|
|
183484
183495
|
/* harmony export */ Order2Bezier: () => (/* reexport safe */ _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_51__.Order2Bezier),
|
|
183485
183496
|
/* harmony export */ Order3Bezier: () => (/* reexport safe */ _numerics_BezierPolynomials__WEBPACK_IMPORTED_MODULE_51__.Order3Bezier),
|
|
@@ -183507,10 +183518,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183507
183518
|
/* harmony export */ PointString3d: () => (/* reexport safe */ _curve_PointString3d__WEBPACK_IMPORTED_MODULE_83__.PointString3d),
|
|
183508
183519
|
/* harmony export */ Polyface: () => (/* reexport safe */ _polyface_Polyface__WEBPACK_IMPORTED_MODULE_115__.Polyface),
|
|
183509
183520
|
/* harmony export */ PolyfaceAuxData: () => (/* reexport safe */ _polyface_AuxData__WEBPACK_IMPORTED_MODULE_112__.PolyfaceAuxData),
|
|
183510
|
-
/* harmony export */ PolyfaceBuilder: () => (/* reexport safe */
|
|
183511
|
-
/* harmony export */ PolyfaceClip: () => (/* reexport safe */
|
|
183512
|
-
/* harmony export */ PolyfaceData: () => (/* reexport safe */
|
|
183513
|
-
/* harmony export */ PolyfaceQuery: () => (/* reexport safe */
|
|
183521
|
+
/* harmony export */ PolyfaceBuilder: () => (/* reexport safe */ _polyface_PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_120__.PolyfaceBuilder),
|
|
183522
|
+
/* harmony export */ PolyfaceClip: () => (/* reexport safe */ _polyface_PolyfaceClip__WEBPACK_IMPORTED_MODULE_123__.PolyfaceClip),
|
|
183523
|
+
/* harmony export */ PolyfaceData: () => (/* reexport safe */ _polyface_PolyfaceData__WEBPACK_IMPORTED_MODULE_121__.PolyfaceData),
|
|
183524
|
+
/* harmony export */ PolyfaceQuery: () => (/* reexport safe */ _polyface_PolyfaceQuery__WEBPACK_IMPORTED_MODULE_122__.PolyfaceQuery),
|
|
183514
183525
|
/* harmony export */ PolygonLocation: () => (/* reexport safe */ _Geometry__WEBPACK_IMPORTED_MODULE_36__.PolygonLocation),
|
|
183515
183526
|
/* harmony export */ PolygonLocationDetail: () => (/* reexport safe */ _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_27__.PolygonLocationDetail),
|
|
183516
183527
|
/* harmony export */ PolygonOps: () => (/* reexport safe */ _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_27__.PolygonOps),
|
|
@@ -183533,25 +183544,25 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183533
183544
|
/* harmony export */ RegionOps: () => (/* reexport safe */ _curve_RegionOps__WEBPACK_IMPORTED_MODULE_82__.RegionOps),
|
|
183534
183545
|
/* harmony export */ RotationalSweep: () => (/* reexport safe */ _solid_RotationalSweep__WEBPACK_IMPORTED_MODULE_94__.RotationalSweep),
|
|
183535
183546
|
/* harmony export */ RuledSweep: () => (/* reexport safe */ _solid_RuledSweep__WEBPACK_IMPORTED_MODULE_95__.RuledSweep),
|
|
183536
|
-
/* harmony export */ Sample: () => (/* reexport safe */
|
|
183547
|
+
/* harmony export */ Sample: () => (/* reexport safe */ _serialization_GeometrySamples__WEBPACK_IMPORTED_MODULE_130__.Sample),
|
|
183537
183548
|
/* harmony export */ Segment1d: () => (/* reexport safe */ _geometry3d_Segment1d__WEBPACK_IMPORTED_MODULE_31__.Segment1d),
|
|
183538
183549
|
/* harmony export */ SimpleNewton: () => (/* reexport safe */ _numerics_Newton__WEBPACK_IMPORTED_MODULE_53__.SimpleNewton),
|
|
183539
183550
|
/* harmony export */ SineCosinePolynomial: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.SineCosinePolynomial),
|
|
183540
183551
|
/* harmony export */ SmallSystem: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.SmallSystem),
|
|
183541
183552
|
/* harmony export */ SmoothTransformBetweenFrusta: () => (/* reexport safe */ _geometry3d_FrustumAnimation__WEBPACK_IMPORTED_MODULE_7__.SmoothTransformBetweenFrusta),
|
|
183542
183553
|
/* harmony export */ SolidPrimitive: () => (/* reexport safe */ _solid_SolidPrimitive__WEBPACK_IMPORTED_MODULE_96__.SolidPrimitive),
|
|
183543
|
-
/* harmony export */ SpacePolygonTriangulation: () => (/* reexport safe */
|
|
183554
|
+
/* harmony export */ SpacePolygonTriangulation: () => (/* reexport safe */ _topology_SpaceTriangulation__WEBPACK_IMPORTED_MODULE_127__.SpacePolygonTriangulation),
|
|
183544
183555
|
/* harmony export */ Sphere: () => (/* reexport safe */ _solid_Sphere__WEBPACK_IMPORTED_MODULE_97__.Sphere),
|
|
183545
183556
|
/* harmony export */ SphereImplicit: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.SphereImplicit),
|
|
183546
183557
|
/* harmony export */ StandardViewIndex: () => (/* reexport safe */ _Geometry__WEBPACK_IMPORTED_MODULE_36__.StandardViewIndex),
|
|
183547
|
-
/* harmony export */ SteppedIndexFunctionFactory: () => (/* reexport safe */
|
|
183558
|
+
/* harmony export */ SteppedIndexFunctionFactory: () => (/* reexport safe */ _serialization_GeometrySamples__WEBPACK_IMPORTED_MODULE_130__.SteppedIndexFunctionFactory),
|
|
183548
183559
|
/* harmony export */ StringifiedClipVector: () => (/* reexport safe */ _clipping_ClipVector__WEBPACK_IMPORTED_MODULE_43__.StringifiedClipVector),
|
|
183549
183560
|
/* harmony export */ StrokeCountMap: () => (/* reexport safe */ _curve_Query_StrokeCountMap__WEBPACK_IMPORTED_MODULE_90__.StrokeCountMap),
|
|
183550
183561
|
/* harmony export */ StrokeOptions: () => (/* reexport safe */ _curve_StrokeOptions__WEBPACK_IMPORTED_MODULE_85__.StrokeOptions),
|
|
183551
183562
|
/* harmony export */ SweepContour: () => (/* reexport safe */ _solid_SweepContour__WEBPACK_IMPORTED_MODULE_98__.SweepContour),
|
|
183552
|
-
/* harmony export */ SweepLineStringToFacetsOptions: () => (/* reexport safe */
|
|
183553
|
-
/* harmony export */ TaggedNumericConstants: () => (/* reexport safe */
|
|
183554
|
-
/* harmony export */ TaggedNumericData: () => (/* reexport safe */
|
|
183563
|
+
/* harmony export */ SweepLineStringToFacetsOptions: () => (/* reexport safe */ _polyface_PolyfaceQuery__WEBPACK_IMPORTED_MODULE_122__.SweepLineStringToFacetsOptions),
|
|
183564
|
+
/* harmony export */ TaggedNumericConstants: () => (/* reexport safe */ _polyface_TaggedNumericData__WEBPACK_IMPORTED_MODULE_124__.TaggedNumericConstants),
|
|
183565
|
+
/* harmony export */ TaggedNumericData: () => (/* reexport safe */ _polyface_TaggedNumericData__WEBPACK_IMPORTED_MODULE_124__.TaggedNumericData),
|
|
183555
183566
|
/* harmony export */ TorusImplicit: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.TorusImplicit),
|
|
183556
183567
|
/* harmony export */ TorusPipe: () => (/* reexport safe */ _solid_TorusPipe__WEBPACK_IMPORTED_MODULE_99__.TorusPipe),
|
|
183557
183568
|
/* harmony export */ Transform: () => (/* reexport safe */ _geometry3d_Transform__WEBPACK_IMPORTED_MODULE_32__.Transform),
|
|
@@ -183559,7 +183570,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183559
183570
|
/* harmony export */ TriDiagonalSystem: () => (/* reexport safe */ _numerics_TriDiagonalSystem__WEBPACK_IMPORTED_MODULE_59__.TriDiagonalSystem),
|
|
183560
183571
|
/* harmony export */ TriangleLocationDetail: () => (/* reexport safe */ _geometry3d_BarycentricTriangle__WEBPACK_IMPORTED_MODULE_3__.TriangleLocationDetail),
|
|
183561
183572
|
/* harmony export */ TriangularFacetLocationDetail: () => (/* reexport safe */ _polyface_FacetLocationDetail__WEBPACK_IMPORTED_MODULE_116__.TriangularFacetLocationDetail),
|
|
183562
|
-
/* harmony export */ Triangulator: () => (/* reexport safe */
|
|
183573
|
+
/* harmony export */ Triangulator: () => (/* reexport safe */ _topology_Triangulation__WEBPACK_IMPORTED_MODULE_126__.Triangulator),
|
|
183563
183574
|
/* harmony export */ TrigPolynomial: () => (/* reexport safe */ _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_56__.TrigPolynomial),
|
|
183564
183575
|
/* harmony export */ UVSelect: () => (/* reexport safe */ _bspline_BSplineSurface__WEBPACK_IMPORTED_MODULE_109__.UVSelect),
|
|
183565
183576
|
/* harmony export */ UVSurfaceOps: () => (/* reexport safe */ _geometry3d_UVSurfaceOps__WEBPACK_IMPORTED_MODULE_33__.UVSurfaceOps),
|
|
@@ -183695,18 +183706,20 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183695
183706
|
/* harmony import */ var _polyface_Polyface__WEBPACK_IMPORTED_MODULE_115__ = __webpack_require__(/*! ./polyface/Polyface */ "../../core/geometry/lib/esm/polyface/Polyface.js");
|
|
183696
183707
|
/* harmony import */ var _polyface_FacetLocationDetail__WEBPACK_IMPORTED_MODULE_116__ = __webpack_require__(/*! ./polyface/FacetLocationDetail */ "../../core/geometry/lib/esm/polyface/FacetLocationDetail.js");
|
|
183697
183708
|
/* harmony import */ var _polyface_IndexedPolyfaceVisitor__WEBPACK_IMPORTED_MODULE_117__ = __webpack_require__(/*! ./polyface/IndexedPolyfaceVisitor */ "../../core/geometry/lib/esm/polyface/IndexedPolyfaceVisitor.js");
|
|
183698
|
-
/* harmony import */ var
|
|
183699
|
-
/* harmony import */ var
|
|
183700
|
-
/* harmony import */ var
|
|
183701
|
-
/* harmony import */ var
|
|
183702
|
-
/* harmony import */ var
|
|
183703
|
-
/* harmony import */ var
|
|
183704
|
-
/* harmony import */ var
|
|
183705
|
-
/* harmony import */ var
|
|
183706
|
-
/* harmony import */ var
|
|
183707
|
-
/* harmony import */ var
|
|
183708
|
-
/* harmony import */ var
|
|
183709
|
-
/* harmony import */ var
|
|
183709
|
+
/* harmony import */ var _polyface_multiclip_GriddedRaggedRange2dSet__WEBPACK_IMPORTED_MODULE_118__ = __webpack_require__(/*! ./polyface/multiclip/GriddedRaggedRange2dSet */ "../../core/geometry/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js");
|
|
183710
|
+
/* harmony import */ var _polyface_multiclip_GriddedRaggedRange2dSetWithOverflow__WEBPACK_IMPORTED_MODULE_119__ = __webpack_require__(/*! ./polyface/multiclip/GriddedRaggedRange2dSetWithOverflow */ "../../core/geometry/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js");
|
|
183711
|
+
/* harmony import */ var _polyface_PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_120__ = __webpack_require__(/*! ./polyface/PolyfaceBuilder */ "../../core/geometry/lib/esm/polyface/PolyfaceBuilder.js");
|
|
183712
|
+
/* harmony import */ var _polyface_PolyfaceData__WEBPACK_IMPORTED_MODULE_121__ = __webpack_require__(/*! ./polyface/PolyfaceData */ "../../core/geometry/lib/esm/polyface/PolyfaceData.js");
|
|
183713
|
+
/* harmony import */ var _polyface_PolyfaceQuery__WEBPACK_IMPORTED_MODULE_122__ = __webpack_require__(/*! ./polyface/PolyfaceQuery */ "../../core/geometry/lib/esm/polyface/PolyfaceQuery.js");
|
|
183714
|
+
/* harmony import */ var _polyface_PolyfaceClip__WEBPACK_IMPORTED_MODULE_123__ = __webpack_require__(/*! ./polyface/PolyfaceClip */ "../../core/geometry/lib/esm/polyface/PolyfaceClip.js");
|
|
183715
|
+
/* harmony import */ var _polyface_TaggedNumericData__WEBPACK_IMPORTED_MODULE_124__ = __webpack_require__(/*! ./polyface/TaggedNumericData */ "../../core/geometry/lib/esm/polyface/TaggedNumericData.js");
|
|
183716
|
+
/* harmony import */ var _topology_Graph__WEBPACK_IMPORTED_MODULE_125__ = __webpack_require__(/*! ./topology/Graph */ "../../core/geometry/lib/esm/topology/Graph.js");
|
|
183717
|
+
/* harmony import */ var _topology_Triangulation__WEBPACK_IMPORTED_MODULE_126__ = __webpack_require__(/*! ./topology/Triangulation */ "../../core/geometry/lib/esm/topology/Triangulation.js");
|
|
183718
|
+
/* harmony import */ var _topology_SpaceTriangulation__WEBPACK_IMPORTED_MODULE_127__ = __webpack_require__(/*! ./topology/SpaceTriangulation */ "../../core/geometry/lib/esm/topology/SpaceTriangulation.js");
|
|
183719
|
+
/* harmony import */ var _serialization_IModelJsonSchema__WEBPACK_IMPORTED_MODULE_128__ = __webpack_require__(/*! ./serialization/IModelJsonSchema */ "../../core/geometry/lib/esm/serialization/IModelJsonSchema.js");
|
|
183720
|
+
/* harmony import */ var _serialization_DeepCompare__WEBPACK_IMPORTED_MODULE_129__ = __webpack_require__(/*! ./serialization/DeepCompare */ "../../core/geometry/lib/esm/serialization/DeepCompare.js");
|
|
183721
|
+
/* harmony import */ var _serialization_GeometrySamples__WEBPACK_IMPORTED_MODULE_130__ = __webpack_require__(/*! ./serialization/GeometrySamples */ "../../core/geometry/lib/esm/serialization/GeometrySamples.js");
|
|
183722
|
+
/* harmony import */ var _serialization_BentleyGeometryFlatBuffer__WEBPACK_IMPORTED_MODULE_131__ = __webpack_require__(/*! ./serialization/BentleyGeometryFlatBuffer */ "../../core/geometry/lib/esm/serialization/BentleyGeometryFlatBuffer.js");
|
|
183710
183723
|
/*---------------------------------------------------------------------------------------------
|
|
183711
183724
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
183712
183725
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -183958,6 +183971,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
183958
183971
|
|
|
183959
183972
|
|
|
183960
183973
|
|
|
183974
|
+
|
|
183975
|
+
|
|
183961
183976
|
|
|
183962
183977
|
|
|
183963
183978
|
|
|
@@ -217498,6 +217513,33 @@ class IndexedXYZCollectionPolygonOps {
|
|
|
217498
217513
|
work.clear();
|
|
217499
217514
|
return numCrossings;
|
|
217500
217515
|
}
|
|
217516
|
+
/** Return an array containing
|
|
217517
|
+
* * All points that are exactly on the plane.
|
|
217518
|
+
* * Crossing points between adjacent points that are (strictly) on opposite sides.
|
|
217519
|
+
*/
|
|
217520
|
+
static polygonPlaneCrossings(plane, xyz, crossings) {
|
|
217521
|
+
crossings.length = 0;
|
|
217522
|
+
if (xyz.length >= 2) {
|
|
217523
|
+
const xyz0 = this._xyz0Work;
|
|
217524
|
+
xyz.getPoint3dAtUncheckedPointIndex(xyz.length - 1, xyz0);
|
|
217525
|
+
let a0 = plane.altitude(xyz0);
|
|
217526
|
+
const xyz1 = this._xyz1Work;
|
|
217527
|
+
for (let i = 0; i < xyz.length; i++) {
|
|
217528
|
+
xyz.getPoint3dAtUncheckedPointIndex(i, xyz1);
|
|
217529
|
+
const a1 = plane.altitude(xyz1);
|
|
217530
|
+
if (a0 * a1 < 0.0) {
|
|
217531
|
+
// simple crossing. . .
|
|
217532
|
+
const f = -a0 / (a1 - a0);
|
|
217533
|
+
crossings.push(xyz0.interpolate(f, xyz1));
|
|
217534
|
+
}
|
|
217535
|
+
if (a1 === 0.0) { // IMPORTANT -- every point is directly tested here
|
|
217536
|
+
crossings.push(xyz1.clone());
|
|
217537
|
+
}
|
|
217538
|
+
xyz0.setFromPoint3d(xyz1);
|
|
217539
|
+
a0 = a1;
|
|
217540
|
+
}
|
|
217541
|
+
}
|
|
217542
|
+
}
|
|
217501
217543
|
/**
|
|
217502
217544
|
* * Input a "clipped" polygon (from clipConvexPolygonInPlace) with more than 2 crossings, i.e. is from a non-convex polygon with configurations like:
|
|
217503
217545
|
* * multiple distinct polygons
|
|
@@ -217637,25 +217679,8 @@ class Point3dArrayPolygonOps {
|
|
|
217637
217679
|
* * Crossing points between adjacent points that are (strictly) on opposite sides.
|
|
217638
217680
|
*/
|
|
217639
217681
|
static polygonPlaneCrossings(plane, xyz, crossings) {
|
|
217640
|
-
|
|
217641
|
-
|
|
217642
|
-
const xyz0 = this._xyz0Work;
|
|
217643
|
-
xyz0.setFromPoint3d(xyz[xyz.length - 1]);
|
|
217644
|
-
let a0 = plane.altitude(xyz0);
|
|
217645
|
-
for (const xyz1 of xyz) {
|
|
217646
|
-
const a1 = plane.altitude(xyz1);
|
|
217647
|
-
if (a0 * a1 < 0.0) {
|
|
217648
|
-
// simple crossing. . .
|
|
217649
|
-
const f = -a0 / (a1 - a0);
|
|
217650
|
-
crossings.push(xyz0.interpolate(f, xyz1));
|
|
217651
|
-
}
|
|
217652
|
-
if (a1 === 0.0) { // IMPORTANT -- every point is directly tested here
|
|
217653
|
-
crossings.push(xyz1.clone());
|
|
217654
|
-
}
|
|
217655
|
-
xyz0.setFromPoint3d(xyz1);
|
|
217656
|
-
a0 = a1;
|
|
217657
|
-
}
|
|
217658
|
-
}
|
|
217682
|
+
const xyzSource = new _Point3dArrayCarrier__WEBPACK_IMPORTED_MODULE_4__.Point3dArrayCarrier(xyz);
|
|
217683
|
+
return IndexedXYZCollectionPolygonOps.polygonPlaneCrossings(plane, xyzSource, crossings);
|
|
217659
217684
|
}
|
|
217660
217685
|
/**
|
|
217661
217686
|
* Clip a polygon, returning the clip result in the same object.
|
|
@@ -235562,32 +235587,33 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
235562
235587
|
/* harmony import */ var _curve_StrokeOptions__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../curve/StrokeOptions */ "../../core/geometry/lib/esm/curve/StrokeOptions.js");
|
|
235563
235588
|
/* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
|
|
235564
235589
|
/* harmony import */ var _geometry3d_Angle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../geometry3d/Angle */ "../../core/geometry/lib/esm/geometry3d/Angle.js");
|
|
235565
|
-
/* harmony import */ var
|
|
235590
|
+
/* harmony import */ var _geometry3d_BarycentricTriangle__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ../geometry3d/BarycentricTriangle */ "../../core/geometry/lib/esm/geometry3d/BarycentricTriangle.js");
|
|
235566
235591
|
/* harmony import */ var _geometry3d_FrameBuilder__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../geometry3d/FrameBuilder */ "../../core/geometry/lib/esm/geometry3d/FrameBuilder.js");
|
|
235592
|
+
/* harmony import */ var _geometry3d_Point3dArrayCarrier__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../geometry3d/Point3dArrayCarrier */ "../../core/geometry/lib/esm/geometry3d/Point3dArrayCarrier.js");
|
|
235567
235593
|
/* harmony import */ var _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../geometry3d/Point3dVector3d */ "../../core/geometry/lib/esm/geometry3d/Point3dVector3d.js");
|
|
235568
235594
|
/* harmony import */ var _geometry3d_PointHelpers__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../geometry3d/PointHelpers */ "../../core/geometry/lib/esm/geometry3d/PointHelpers.js");
|
|
235569
235595
|
/* harmony import */ var _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../geometry3d/PolygonOps */ "../../core/geometry/lib/esm/geometry3d/PolygonOps.js");
|
|
235570
|
-
/* harmony import */ var
|
|
235596
|
+
/* harmony import */ var _geometry3d_Range__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../geometry3d/Range */ "../../core/geometry/lib/esm/geometry3d/Range.js");
|
|
235571
235597
|
/* harmony import */ var _geometry4d_Matrix4d__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../geometry4d/Matrix4d */ "../../core/geometry/lib/esm/geometry4d/Matrix4d.js");
|
|
235572
235598
|
/* harmony import */ var _geometry4d_MomentData__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../geometry4d/MomentData */ "../../core/geometry/lib/esm/geometry4d/MomentData.js");
|
|
235573
235599
|
/* harmony import */ var _numerics_UnionFind__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../numerics/UnionFind */ "../../core/geometry/lib/esm/numerics/UnionFind.js");
|
|
235574
235600
|
/* harmony import */ var _topology_ChainMerge__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../topology/ChainMerge */ "../../core/geometry/lib/esm/topology/ChainMerge.js");
|
|
235575
235601
|
/* harmony import */ var _topology_Graph__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../topology/Graph */ "../../core/geometry/lib/esm/topology/Graph.js");
|
|
235576
|
-
/* harmony import */ var
|
|
235602
|
+
/* harmony import */ var _topology_HalfEdgeGraphFromIndexedLoopsContext__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../topology/HalfEdgeGraphFromIndexedLoopsContext */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js");
|
|
235577
235603
|
/* harmony import */ var _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../topology/HalfEdgeGraphSearch */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphSearch.js");
|
|
235578
235604
|
/* harmony import */ var _topology_Merging__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../topology/Merging */ "../../core/geometry/lib/esm/topology/Merging.js");
|
|
235579
235605
|
/* harmony import */ var _topology_SpaceTriangulation__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../topology/SpaceTriangulation */ "../../core/geometry/lib/esm/topology/SpaceTriangulation.js");
|
|
235580
|
-
/* harmony import */ var
|
|
235581
|
-
/* harmony import */ var
|
|
235606
|
+
/* harmony import */ var _FacetLocationDetail__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./FacetLocationDetail */ "../../core/geometry/lib/esm/polyface/FacetLocationDetail.js");
|
|
235607
|
+
/* harmony import */ var _FacetOrientation__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./FacetOrientation */ "../../core/geometry/lib/esm/polyface/FacetOrientation.js");
|
|
235582
235608
|
/* harmony import */ var _IndexedEdgeMatcher__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./IndexedEdgeMatcher */ "../../core/geometry/lib/esm/polyface/IndexedEdgeMatcher.js");
|
|
235583
235609
|
/* harmony import */ var _IndexedPolyfaceVisitor__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./IndexedPolyfaceVisitor */ "../../core/geometry/lib/esm/polyface/IndexedPolyfaceVisitor.js");
|
|
235584
|
-
/* harmony import */ var
|
|
235585
|
-
/* harmony import */ var
|
|
235610
|
+
/* harmony import */ var _multiclip_BuildAverageNormalsContext__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./multiclip/BuildAverageNormalsContext */ "../../core/geometry/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js");
|
|
235611
|
+
/* harmony import */ var _multiclip_OffsetMeshContext__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./multiclip/OffsetMeshContext */ "../../core/geometry/lib/esm/polyface/multiclip/OffsetMeshContext.js");
|
|
235586
235612
|
/* harmony import */ var _multiclip_SweepLineStringToFacetContext__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./multiclip/SweepLineStringToFacetContext */ "../../core/geometry/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js");
|
|
235587
|
-
/* harmony import */ var
|
|
235613
|
+
/* harmony import */ var _multiclip_XYPointBuckets__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./multiclip/XYPointBuckets */ "../../core/geometry/lib/esm/polyface/multiclip/XYPointBuckets.js");
|
|
235588
235614
|
/* harmony import */ var _Polyface__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Polyface */ "../../core/geometry/lib/esm/polyface/Polyface.js");
|
|
235589
235615
|
/* harmony import */ var _PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./PolyfaceBuilder */ "../../core/geometry/lib/esm/polyface/PolyfaceBuilder.js");
|
|
235590
|
-
/* harmony import */ var
|
|
235616
|
+
/* harmony import */ var _RangeLengthData__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./RangeLengthData */ "../../core/geometry/lib/esm/polyface/RangeLengthData.js");
|
|
235591
235617
|
/*---------------------------------------------------------------------------------------------
|
|
235592
235618
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
235593
235619
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -235629,6 +235655,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
235629
235655
|
|
|
235630
235656
|
|
|
235631
235657
|
|
|
235658
|
+
|
|
235632
235659
|
|
|
235633
235660
|
|
|
235634
235661
|
/**
|
|
@@ -236469,13 +236496,13 @@ class PolyfaceQuery {
|
|
|
236469
236496
|
matcher.sortAndCollectClusters(allEdges, allEdges, allEdges, allEdges);
|
|
236470
236497
|
return this.partitionFacetIndicesBySortableEdgeClusters(allEdges, numFacets);
|
|
236471
236498
|
}
|
|
236472
|
-
/** Find segments (within the
|
|
236473
|
-
* * Assemble each segment
|
|
236474
|
-
* *
|
|
236499
|
+
/** Find segments (within the line string) which project to facets.
|
|
236500
|
+
* * Assemble each input segment paired with its projected segment/point as a quad/triangle facet in a new polyface.
|
|
236501
|
+
* * Input facets are ASSUMED to be convex and planar, and not overlap in the z direction.
|
|
236475
236502
|
*/
|
|
236476
|
-
static sweepLineStringToFacetsXYReturnSweptFacets(
|
|
236503
|
+
static sweepLineStringToFacetsXYReturnSweptFacets(lineStringPoints, polyface) {
|
|
236477
236504
|
const builder = _PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_16__.PolyfaceBuilder.create();
|
|
236478
|
-
this.announceSweepLinestringToConvexPolyfaceXY(
|
|
236505
|
+
this.announceSweepLinestringToConvexPolyfaceXY(lineStringPoints, polyface, (_linestring, _segmentIndex, _polyface, _facetIndex, points) => {
|
|
236479
236506
|
if (points.length === 4)
|
|
236480
236507
|
builder.addQuadFacet(points);
|
|
236481
236508
|
else if (points.length === 3)
|
|
@@ -236488,13 +236515,13 @@ class PolyfaceQuery {
|
|
|
236488
236515
|
return this.sweepLineStringToFacetsXYReturnSweptFacets(linestringPoints, polyface);
|
|
236489
236516
|
}
|
|
236490
236517
|
/**
|
|
236491
|
-
*
|
|
236518
|
+
* Sweep the line string to intersections with a mesh.
|
|
236492
236519
|
* * Return collected line segments.
|
|
236493
236520
|
* * If no options are given, the default sweep direction is the z-axis, and chains are assembled and returned.
|
|
236494
236521
|
* * See [[SweepLineStringToFacetsOptions]] for input and output options, including filtering by forward/side/rear facets.
|
|
236495
236522
|
* * Facets are ASSUMED to be convex and planar, and not overlap in the sweep direction.
|
|
236496
236523
|
*/
|
|
236497
|
-
static sweepLineStringToFacets(linestringPoints,
|
|
236524
|
+
static sweepLineStringToFacets(linestringPoints, polyfaceOrVisitor, options) {
|
|
236498
236525
|
let result = [];
|
|
236499
236526
|
// setup default options:
|
|
236500
236527
|
if (options === undefined)
|
|
@@ -236506,7 +236533,11 @@ class PolyfaceQuery {
|
|
|
236506
236533
|
chainContext = _topology_ChainMerge__WEBPACK_IMPORTED_MODULE_25__.ChainMergeContext.create();
|
|
236507
236534
|
const context = _multiclip_SweepLineStringToFacetContext__WEBPACK_IMPORTED_MODULE_12__.ClipSweptLineStringContext.create(linestringPoints, options.vectorToEye);
|
|
236508
236535
|
if (context) {
|
|
236509
|
-
|
|
236536
|
+
let visitor;
|
|
236537
|
+
if (polyfaceOrVisitor instanceof _Polyface__WEBPACK_IMPORTED_MODULE_6__.Polyface)
|
|
236538
|
+
visitor = polyfaceOrVisitor.createVisitor(0);
|
|
236539
|
+
else
|
|
236540
|
+
visitor = polyfaceOrVisitor;
|
|
236510
236541
|
const workNormal = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Vector3d.createZero();
|
|
236511
236542
|
for (visitor.reset(); visitor.moveToNextFacet();) {
|
|
236512
236543
|
if (options.collectFromThisFacetNormal(_geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__.PolygonOps.areaNormalGo(visitor.point, workNormal))) {
|
|
@@ -236525,6 +236556,54 @@ class PolyfaceQuery {
|
|
|
236525
236556
|
}
|
|
236526
236557
|
return result;
|
|
236527
236558
|
}
|
|
236559
|
+
/**
|
|
236560
|
+
* Sweep the line string in the z-direction to intersections with a mesh, using a search object for speedup.
|
|
236561
|
+
* @param lineStringPoints input line string to drape on the mesh
|
|
236562
|
+
* @param polyfaceOrVisitor mesh, or mesh visitor to traverse only part of a mesh
|
|
236563
|
+
* @param searchByReadIndex object for searching facet 2D ranges tagged by mesh read index
|
|
236564
|
+
* @example Using a 5x5 indexed search grid:
|
|
236565
|
+
* ```
|
|
236566
|
+
* const xyRange = Range2d.createFrom(myPolyface.range());
|
|
236567
|
+
* const searcher = GriddedRaggedRange2dSetWithOverflow.create<number>(xyRange, 5, 5)!;
|
|
236568
|
+
* for (const visitor = myPolyface.createVisitor(0); visitor.moveToNextFacet();) {
|
|
236569
|
+
* searcher.addRange(visitor.point.getRange(), visitor.currentReadIndex());
|
|
236570
|
+
* }
|
|
236571
|
+
* const drapedLineStrings = PolyfaceQuery.sweepLineStringToFacetsXY(lineString, myPolyface, searcher);
|
|
236572
|
+
* ```
|
|
236573
|
+
* @returns collected line strings
|
|
236574
|
+
*/
|
|
236575
|
+
static sweepLineStringToFacetsXY(lineStringPoints, polyfaceOrVisitor, searchByReadIndex) {
|
|
236576
|
+
const chainContext = _topology_ChainMerge__WEBPACK_IMPORTED_MODULE_25__.ChainMergeContext.create();
|
|
236577
|
+
const sweepVector = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Vector3d.create(0, 0, 1);
|
|
236578
|
+
const searchRange = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_26__.Range3d.create();
|
|
236579
|
+
let visitor;
|
|
236580
|
+
if (polyfaceOrVisitor instanceof _Polyface__WEBPACK_IMPORTED_MODULE_6__.Polyface)
|
|
236581
|
+
visitor = polyfaceOrVisitor.createVisitor(0);
|
|
236582
|
+
else
|
|
236583
|
+
visitor = polyfaceOrVisitor;
|
|
236584
|
+
let lineStringSource;
|
|
236585
|
+
if (Array.isArray(lineStringPoints))
|
|
236586
|
+
lineStringSource = new _geometry3d_Point3dArrayCarrier__WEBPACK_IMPORTED_MODULE_27__.Point3dArrayCarrier(lineStringPoints);
|
|
236587
|
+
else
|
|
236588
|
+
lineStringSource = lineStringPoints;
|
|
236589
|
+
for (let i = 1; i < lineStringSource.length; i++) {
|
|
236590
|
+
const point0 = lineStringSource.getPoint3dAtUncheckedPointIndex(i - 1);
|
|
236591
|
+
const point1 = lineStringSource.getPoint3dAtUncheckedPointIndex(i);
|
|
236592
|
+
const edgeClipper = _multiclip_SweepLineStringToFacetContext__WEBPACK_IMPORTED_MODULE_12__.EdgeClipData.createPointPointSweep(point0, point1, sweepVector);
|
|
236593
|
+
if (edgeClipper !== undefined) {
|
|
236594
|
+
_geometry3d_Range__WEBPACK_IMPORTED_MODULE_26__.Range3d.createNull(searchRange);
|
|
236595
|
+
searchRange.extendPoint(point0);
|
|
236596
|
+
searchRange.extendPoint(point1);
|
|
236597
|
+
searchByReadIndex.searchRange2d(searchRange, (_facetRange, readIndex) => {
|
|
236598
|
+
if (visitor.moveToReadIndex(readIndex))
|
|
236599
|
+
edgeClipper.processPolygon(visitor.point, (pointA, pointB) => chainContext.addSegment(pointA, pointB));
|
|
236600
|
+
return true;
|
|
236601
|
+
});
|
|
236602
|
+
}
|
|
236603
|
+
}
|
|
236604
|
+
chainContext.clusterAndMergeVerticesXYZ();
|
|
236605
|
+
return chainContext.collectMaximalChains();
|
|
236606
|
+
}
|
|
236528
236607
|
/** Find segments (within the linestring) which project to facets.
|
|
236529
236608
|
* * Return collected line segments.
|
|
236530
236609
|
* * This calls [[sweepLineStringToFacets]] with options created by
|
|
@@ -236571,7 +236650,7 @@ class PolyfaceQuery {
|
|
|
236571
236650
|
if (polyface instanceof _Polyface__WEBPACK_IMPORTED_MODULE_6__.Polyface) {
|
|
236572
236651
|
return this.collectRangeLengthData(polyface.createVisitor(0));
|
|
236573
236652
|
}
|
|
236574
|
-
const rangeData = new
|
|
236653
|
+
const rangeData = new _RangeLengthData__WEBPACK_IMPORTED_MODULE_28__.RangeLengthData();
|
|
236575
236654
|
// polyface is a visitor ...
|
|
236576
236655
|
for (polyface.reset(); polyface.moveToNextFacet();)
|
|
236577
236656
|
rangeData.accumulateGrowableXYZArrayRange(polyface.point);
|
|
@@ -236583,9 +236662,9 @@ class PolyfaceQuery {
|
|
|
236583
236662
|
static cloneWithTVertexFixup(polyface) {
|
|
236584
236663
|
const oldFacetVisitor = polyface.createVisitor(1); // This is to visit the existing facets.
|
|
236585
236664
|
const newFacetVisitor = polyface.createVisitor(0); // This is to build the new facets.
|
|
236586
|
-
const rangeSearcher =
|
|
236665
|
+
const rangeSearcher = _multiclip_XYPointBuckets__WEBPACK_IMPORTED_MODULE_29__.XYPointBuckets.create(polyface.data.point, 30);
|
|
236587
236666
|
const builder = _PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_16__.PolyfaceBuilder.create();
|
|
236588
|
-
const edgeRange =
|
|
236667
|
+
const edgeRange = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_26__.Range3d.createNull();
|
|
236589
236668
|
const point0 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Point3d.create();
|
|
236590
236669
|
const point1 = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Point3d.create();
|
|
236591
236670
|
const spacePoint = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Point3d.create();
|
|
@@ -236950,7 +237029,7 @@ class PolyfaceQuery {
|
|
|
236950
237029
|
* @internal
|
|
236951
237030
|
*/
|
|
236952
237031
|
static convertToHalfEdgeGraph(mesh) {
|
|
236953
|
-
const builder = new
|
|
237032
|
+
const builder = new _topology_HalfEdgeGraphFromIndexedLoopsContext__WEBPACK_IMPORTED_MODULE_30__.HalfEdgeGraphFromIndexedLoopsContext();
|
|
236954
237033
|
const visitor = mesh.createVisitor(0);
|
|
236955
237034
|
for (visitor.reset(); visitor.moveToNextFacet();) {
|
|
236956
237035
|
builder.insertLoop(visitor.pointIndex);
|
|
@@ -236971,14 +237050,14 @@ class PolyfaceQuery {
|
|
|
236971
237050
|
* @param mesh
|
|
236972
237051
|
*/
|
|
236973
237052
|
static reorientVertexOrderAroundFacetsForConsistentOrientation(mesh) {
|
|
236974
|
-
return
|
|
237053
|
+
return _FacetOrientation__WEBPACK_IMPORTED_MODULE_31__.FacetOrientationFixup.doFixup(mesh);
|
|
236975
237054
|
}
|
|
236976
237055
|
/**
|
|
236977
237056
|
* Set up indexed normals with one normal in the plane of each facet of the mesh.
|
|
236978
237057
|
* @param polyface
|
|
236979
237058
|
*/
|
|
236980
237059
|
static buildPerFaceNormals(polyface) {
|
|
236981
|
-
|
|
237060
|
+
_multiclip_BuildAverageNormalsContext__WEBPACK_IMPORTED_MODULE_32__.BuildAverageNormalsContext.buildPerFaceNormals(polyface);
|
|
236982
237061
|
}
|
|
236983
237062
|
/**
|
|
236984
237063
|
* * At each vertex of the mesh
|
|
@@ -236991,7 +237070,7 @@ class PolyfaceQuery {
|
|
|
236991
237070
|
* @param toleranceAngle averaging is done between normals up to this angle.
|
|
236992
237071
|
*/
|
|
236993
237072
|
static buildAverageNormals(polyface, toleranceAngle = _geometry3d_Angle__WEBPACK_IMPORTED_MODULE_1__.Angle.createDegrees(31.0)) {
|
|
236994
|
-
|
|
237073
|
+
_multiclip_BuildAverageNormalsContext__WEBPACK_IMPORTED_MODULE_32__.BuildAverageNormalsContext.buildFastAverageNormals(polyface, toleranceAngle);
|
|
236995
237074
|
}
|
|
236996
237075
|
/**
|
|
236997
237076
|
* Offset the faces of the mesh.
|
|
@@ -237003,7 +237082,7 @@ class PolyfaceQuery {
|
|
|
237003
237082
|
static cloneOffset(source, signedOffsetDistance, offsetOptions = OffsetMeshOptions.create()) {
|
|
237004
237083
|
const strokeOptions = _curve_StrokeOptions__WEBPACK_IMPORTED_MODULE_24__.StrokeOptions.createForFacets();
|
|
237005
237084
|
const offsetBuilder = _PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_16__.PolyfaceBuilder.create(strokeOptions);
|
|
237006
|
-
|
|
237085
|
+
_multiclip_OffsetMeshContext__WEBPACK_IMPORTED_MODULE_33__.OffsetMeshContext.buildOffsetMeshWithEdgeChamfers(source, offsetBuilder, signedOffsetDistance, offsetOptions);
|
|
237007
237086
|
return offsetBuilder.claimPolyface();
|
|
237008
237087
|
}
|
|
237009
237088
|
/** Search facets for the first one that intersects the infinite line.
|
|
@@ -237027,17 +237106,17 @@ class PolyfaceQuery {
|
|
|
237027
237106
|
const numEdges = visitor.pointCount; // #vertices = #edges since numWrap is zero
|
|
237028
237107
|
const vertices = visitor.point;
|
|
237029
237108
|
if (3 === numEdges) {
|
|
237030
|
-
const tri = this._workTriangle =
|
|
237109
|
+
const tri = this._workTriangle = _geometry3d_BarycentricTriangle__WEBPACK_IMPORTED_MODULE_34__.BarycentricTriangle.create(vertices.getPoint3dAtUncheckedPointIndex(0), vertices.getPoint3dAtUncheckedPointIndex(1), vertices.getPoint3dAtUncheckedPointIndex(2), this._workTriangle);
|
|
237031
237110
|
const detail3 = this._workTriDetail = tri.intersectRay3d(ray, this._workTriDetail);
|
|
237032
237111
|
tri.snapLocationToEdge(detail3, options?.distanceTolerance, options?.parameterTolerance);
|
|
237033
|
-
detail = this._workFacetDetail3 =
|
|
237112
|
+
detail = this._workFacetDetail3 = _FacetLocationDetail__WEBPACK_IMPORTED_MODULE_35__.TriangularFacetLocationDetail.create(visitor.currentReadIndex(), detail3, this._workFacetDetail3);
|
|
237034
237113
|
}
|
|
237035
237114
|
else {
|
|
237036
237115
|
const detailN = this._workPolyDetail = _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__.PolygonOps.intersectRay3d(vertices, ray, options?.distanceTolerance, this._workPolyDetail);
|
|
237037
237116
|
if (_geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__.PolygonOps.isConvex(vertices))
|
|
237038
|
-
detail = this._workFacetDetailC =
|
|
237117
|
+
detail = this._workFacetDetailC = _FacetLocationDetail__WEBPACK_IMPORTED_MODULE_35__.ConvexFacetLocationDetail.create(visitor.currentReadIndex(), numEdges, detailN, this._workFacetDetailC);
|
|
237039
237118
|
else
|
|
237040
|
-
detail = this._workFacetDetailNC =
|
|
237119
|
+
detail = this._workFacetDetailNC = _FacetLocationDetail__WEBPACK_IMPORTED_MODULE_35__.NonConvexFacetLocationDetail.create(visitor.currentReadIndex(), numEdges, detailN, this._workFacetDetailNC);
|
|
237041
237120
|
}
|
|
237042
237121
|
if (detail.isInsideOrOn) { // set optional caches, process the intersection
|
|
237043
237122
|
if (options?.needNormal && visitor.normal)
|
|
@@ -237620,6 +237699,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
237620
237699
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
237621
237700
|
/* harmony export */ GriddedRaggedRange2dSet: () => (/* binding */ GriddedRaggedRange2dSet)
|
|
237622
237701
|
/* harmony export */ });
|
|
237702
|
+
/* harmony import */ var _geometry3d_Range__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../geometry3d/Range */ "../../core/geometry/lib/esm/geometry3d/Range.js");
|
|
237623
237703
|
/* harmony import */ var _LinearSearchRange2dArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LinearSearchRange2dArray */ "../../core/geometry/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js");
|
|
237624
237704
|
/*---------------------------------------------------------------------------------------------
|
|
237625
237705
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
@@ -237629,14 +237709,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
237629
237709
|
* @module RangeSearch
|
|
237630
237710
|
*/
|
|
237631
237711
|
|
|
237712
|
+
|
|
237632
237713
|
/**
|
|
237633
|
-
* A GriddedRaggedRange2dSet is
|
|
237634
|
-
* * A doubly dimensioned array of
|
|
237635
|
-
* * Each entry represents a block in a uniform grid within the master range
|
|
237714
|
+
* A GriddedRaggedRange2dSet is:
|
|
237715
|
+
* * A doubly dimensioned array of Range2dSearchInterface.
|
|
237716
|
+
* * Each entry represents a block in a uniform grid within the master range.
|
|
237636
237717
|
* * Member ranges are noted in the grid block containing the range's lower left corner.
|
|
237637
237718
|
* * Member ranges larger than twice the grid size are rejected by the insert method.
|
|
237638
237719
|
* * Hence a search involving a point in grid block (i,j) must examine ranges in grid blocks left and below, i.e. (i-1,j-1), (i-1,j), (i,j-1)
|
|
237639
|
-
* @
|
|
237720
|
+
* @public
|
|
237640
237721
|
*/
|
|
237641
237722
|
class GriddedRaggedRange2dSet {
|
|
237642
237723
|
constructor(range, numXEdge, numYEdge) {
|
|
@@ -237654,9 +237735,9 @@ class GriddedRaggedRange2dSet {
|
|
|
237654
237735
|
}
|
|
237655
237736
|
/**
|
|
237656
237737
|
* Create an (empty) set of ranges.
|
|
237657
|
-
* @param range
|
|
237658
|
-
* @param numXEdge
|
|
237659
|
-
* @param numYEdge
|
|
237738
|
+
* @param range master range
|
|
237739
|
+
* @param numXEdge size of grid in x direction
|
|
237740
|
+
* @param numYEdge size of grid in y direction
|
|
237660
237741
|
*/
|
|
237661
237742
|
static create(range, numXEdge, numYEdge) {
|
|
237662
237743
|
if (numXEdge < 1 || numYEdge < 1 || range.isNull || range.isSinglePoint)
|
|
@@ -237680,13 +237761,13 @@ class GriddedRaggedRange2dSet {
|
|
|
237680
237761
|
return undefined;
|
|
237681
237762
|
}
|
|
237682
237763
|
/** If possible, insert a range into the set.
|
|
237683
|
-
* * Decline to insert (and return false) if
|
|
237684
|
-
*
|
|
237685
|
-
*
|
|
237686
|
-
*
|
|
237764
|
+
* * Decline to insert (and return false) if:
|
|
237765
|
+
* * range is null
|
|
237766
|
+
* * range is not completely contained in the overall range of this set
|
|
237767
|
+
* * range x or y extent is larger than 2 grid blocks
|
|
237687
237768
|
*/
|
|
237688
237769
|
conditionalInsert(range, tag) {
|
|
237689
|
-
if (
|
|
237770
|
+
if (_geometry3d_Range__WEBPACK_IMPORTED_MODULE_1__.Range2d.isNull(range))
|
|
237690
237771
|
return false;
|
|
237691
237772
|
if (!this._range.containsRange(range))
|
|
237692
237773
|
return false;
|
|
@@ -237705,6 +237786,10 @@ class GriddedRaggedRange2dSet {
|
|
|
237705
237786
|
}
|
|
237706
237787
|
return false;
|
|
237707
237788
|
}
|
|
237789
|
+
/** Add a range to the search set. */
|
|
237790
|
+
addRange(range, tag) {
|
|
237791
|
+
this.conditionalInsert(range, tag);
|
|
237792
|
+
}
|
|
237708
237793
|
/**
|
|
237709
237794
|
* * Search a single block
|
|
237710
237795
|
* * Pass each range and tag to handler
|
|
@@ -237770,6 +237855,19 @@ class GriddedRaggedRange2dSet {
|
|
|
237770
237855
|
}
|
|
237771
237856
|
return true;
|
|
237772
237857
|
}
|
|
237858
|
+
/** Return the overall range of all members. */
|
|
237859
|
+
totalRange(result) {
|
|
237860
|
+
if (result)
|
|
237861
|
+
result.setNull();
|
|
237862
|
+
else
|
|
237863
|
+
result = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_1__.Range2d.createNull();
|
|
237864
|
+
this.visitChildren(0, (_depth, child) => {
|
|
237865
|
+
const childRange = GriddedRaggedRange2dSet._workRange = child.totalRange(GriddedRaggedRange2dSet._workRange);
|
|
237866
|
+
result.extendRange(childRange);
|
|
237867
|
+
});
|
|
237868
|
+
return result;
|
|
237869
|
+
}
|
|
237870
|
+
/** Call the handler on each defined block in the grid. */
|
|
237773
237871
|
visitChildren(initialDepth, handler) {
|
|
237774
237872
|
for (const row of this._rangesInBlock) {
|
|
237775
237873
|
for (const block of row) {
|
|
@@ -237794,6 +237892,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
237794
237892
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
237795
237893
|
/* harmony export */ GriddedRaggedRange2dSetWithOverflow: () => (/* binding */ GriddedRaggedRange2dSetWithOverflow)
|
|
237796
237894
|
/* harmony export */ });
|
|
237895
|
+
/* harmony import */ var _geometry3d_Range__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../geometry3d/Range */ "../../core/geometry/lib/esm/geometry3d/Range.js");
|
|
237797
237896
|
/* harmony import */ var _GriddedRaggedRange2dSet__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./GriddedRaggedRange2dSet */ "../../core/geometry/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js");
|
|
237798
237897
|
/* harmony import */ var _LinearSearchRange2dArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./LinearSearchRange2dArray */ "../../core/geometry/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js");
|
|
237799
237898
|
/*---------------------------------------------------------------------------------------------
|
|
@@ -237805,13 +237904,14 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
237805
237904
|
*/
|
|
237806
237905
|
|
|
237807
237906
|
|
|
237907
|
+
|
|
237808
237908
|
/**
|
|
237809
|
-
* Use GriddedRaggedRange2dSetWithOverflow for searching among many ranges for which
|
|
237909
|
+
* Use GriddedRaggedRange2dSetWithOverflow for searching among many ranges for which:
|
|
237810
237910
|
* * Most ranges are of somewhat consistent size.
|
|
237811
237911
|
* * A modest number of oversizes.
|
|
237812
237912
|
* * Maintain the smallish ones in a GriddedRaggedRange2dSet.
|
|
237813
|
-
* * Maintain the overflows in a
|
|
237814
|
-
* @
|
|
237913
|
+
* * Maintain the overflows in a Range2dSearchInterface.
|
|
237914
|
+
* @public
|
|
237815
237915
|
*/
|
|
237816
237916
|
class GriddedRaggedRange2dSetWithOverflow {
|
|
237817
237917
|
constructor(gridSet, overflowSet) {
|
|
@@ -237859,11 +237959,24 @@ class GriddedRaggedRange2dSetWithOverflow {
|
|
|
237859
237959
|
* * range x or y extent is larger than 2 grid blocks.
|
|
237860
237960
|
*/
|
|
237861
237961
|
addRange(range, tag) {
|
|
237862
|
-
if (!
|
|
237962
|
+
if (!_geometry3d_Range__WEBPACK_IMPORTED_MODULE_2__.Range2d.isNull(range)) {
|
|
237863
237963
|
if (!this._gridSet.conditionalInsert(range, tag))
|
|
237864
237964
|
this._overflowSet.addRange(range, tag);
|
|
237865
237965
|
}
|
|
237866
237966
|
}
|
|
237967
|
+
/** Return the overall range of all members. */
|
|
237968
|
+
totalRange(result) {
|
|
237969
|
+
if (result)
|
|
237970
|
+
result.setNull();
|
|
237971
|
+
else
|
|
237972
|
+
result = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_2__.Range2d.createNull();
|
|
237973
|
+
this.visitChildren(0, (_depth, child) => {
|
|
237974
|
+
const childRange = GriddedRaggedRange2dSetWithOverflow._workRange = child.totalRange(GriddedRaggedRange2dSetWithOverflow._workRange);
|
|
237975
|
+
result.extendRange(childRange);
|
|
237976
|
+
});
|
|
237977
|
+
return result;
|
|
237978
|
+
}
|
|
237979
|
+
/** Call the handler on the overflow set, and on each defined block in the grid. */
|
|
237867
237980
|
visitChildren(initialDepth, handler) {
|
|
237868
237981
|
handler(initialDepth, this._overflowSet);
|
|
237869
237982
|
this._gridSet.visitChildren(initialDepth + 1, handler);
|
|
@@ -237894,11 +238007,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
237894
238007
|
*/
|
|
237895
238008
|
|
|
237896
238009
|
/**
|
|
237897
|
-
*
|
|
237898
|
-
* *
|
|
238010
|
+
* An array of decorated Range2d.
|
|
238011
|
+
* * User data is attached to each range via `(myRange as any).tag = myTag`.
|
|
237899
238012
|
* * Search operations are simple linear.
|
|
237900
238013
|
* * This class can be used directly for "smallish" range sets, or as the leaf level of hierarchical structures for larger range sets.
|
|
237901
|
-
* *
|
|
237902
238014
|
* @internal
|
|
237903
238015
|
*/
|
|
237904
238016
|
class LinearSearchRange2dArray {
|
|
@@ -237911,9 +238023,8 @@ class LinearSearchRange2dArray {
|
|
|
237911
238023
|
updateForSearch() {
|
|
237912
238024
|
this._isDirty = false;
|
|
237913
238025
|
}
|
|
237914
|
-
/** Return the overall range of all
|
|
238026
|
+
/** Return the overall range of all members. */
|
|
237915
238027
|
totalRange(result) {
|
|
237916
|
-
result = result ? result : _geometry3d_Range__WEBPACK_IMPORTED_MODULE_0__.Range2d.createNull();
|
|
237917
238028
|
return this._compositeRange.clone(result);
|
|
237918
238029
|
}
|
|
237919
238030
|
/** Add a range to the search set. */
|
|
@@ -239104,6 +239215,7 @@ RangeSearch.defaultStandardDeviationAdjustment = 1.0;
|
|
|
239104
239215
|
__webpack_require__.r(__webpack_exports__);
|
|
239105
239216
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
239106
239217
|
/* harmony export */ ClipSweptLineStringContext: () => (/* binding */ ClipSweptLineStringContext),
|
|
239218
|
+
/* harmony export */ EdgeClipData: () => (/* binding */ EdgeClipData),
|
|
239107
239219
|
/* harmony export */ SweepLineStringToFacetContext: () => (/* binding */ SweepLineStringToFacetContext)
|
|
239108
239220
|
/* harmony export */ });
|
|
239109
239221
|
/* harmony import */ var _geometry3d_Transform__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../geometry3d/Transform */ "../../core/geometry/lib/esm/geometry3d/Transform.js");
|
|
@@ -239114,6 +239226,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
239114
239226
|
/* harmony import */ var _clipping_ClipPlane__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../clipping/ClipPlane */ "../../core/geometry/lib/esm/clipping/ClipPlane.js");
|
|
239115
239227
|
/* harmony import */ var _clipping_ConvexClipPlaneSet__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../clipping/ConvexClipPlaneSet */ "../../core/geometry/lib/esm/clipping/ConvexClipPlaneSet.js");
|
|
239116
239228
|
/* harmony import */ var _geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../geometry3d/PolygonOps */ "../../core/geometry/lib/esm/geometry3d/PolygonOps.js");
|
|
239229
|
+
/* harmony import */ var _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../geometry3d/Matrix3d */ "../../core/geometry/lib/esm/geometry3d/Matrix3d.js");
|
|
239117
239230
|
/*---------------------------------------------------------------------------------------------
|
|
239118
239231
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
239119
239232
|
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
@@ -239129,6 +239242,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
239129
239242
|
|
|
239130
239243
|
|
|
239131
239244
|
|
|
239245
|
+
|
|
239132
239246
|
class SweepLineStringToFacetContext {
|
|
239133
239247
|
constructor(spacePoints) {
|
|
239134
239248
|
// temporaries reused over multiple calls to process a single facet . ..
|
|
@@ -239234,10 +239348,13 @@ class EdgeClipData {
|
|
|
239234
239348
|
}
|
|
239235
239349
|
return undefined;
|
|
239236
239350
|
}
|
|
239351
|
+
/** Intersect this edge plane with the given convex polygon and announce the intersection segment to the callback. */
|
|
239237
239352
|
processPolygon(polygon, announceEdge) {
|
|
239238
239353
|
this._crossingPoints.length = 0;
|
|
239239
|
-
|
|
239240
|
-
|
|
239354
|
+
if (Array.isArray(polygon))
|
|
239355
|
+
_geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__.Point3dArrayPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);
|
|
239356
|
+
else
|
|
239357
|
+
_geometry3d_PolygonOps__WEBPACK_IMPORTED_MODULE_7__.IndexedXYZCollectionPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);
|
|
239241
239358
|
if (this._crossingPoints.length === 2) {
|
|
239242
239359
|
// use the end planes to clip the [0,1] swept edge to [f0,f1]
|
|
239243
239360
|
this.clip.announceClippedSegmentIntervals(0, 1, this._crossingPoints[0], this._crossingPoints[1], (f0, f1) => {
|
|
@@ -239251,8 +239368,13 @@ class EdgeClipData {
|
|
|
239251
239368
|
* @internal
|
|
239252
239369
|
*/
|
|
239253
239370
|
class ClipSweptLineStringContext {
|
|
239254
|
-
constructor(edgeData) {
|
|
239371
|
+
constructor(edgeData, localData) {
|
|
239255
239372
|
this._edgeClippers = edgeData;
|
|
239373
|
+
if (localData !== undefined) {
|
|
239374
|
+
this._localToWorld = localData.localToWorld;
|
|
239375
|
+
this._worldToLocal = localData.worldToLocal;
|
|
239376
|
+
this._localRange = localData.localRange;
|
|
239377
|
+
}
|
|
239256
239378
|
}
|
|
239257
239379
|
static create(xyz, sweepVector) {
|
|
239258
239380
|
if (sweepVector === undefined)
|
|
@@ -239262,6 +239384,12 @@ class ClipSweptLineStringContext {
|
|
|
239262
239384
|
const newPoint = _geometry3d_Point3dVector3d__WEBPACK_IMPORTED_MODULE_0__.Point3d.createZero();
|
|
239263
239385
|
const edgeData = [];
|
|
239264
239386
|
xyz.getPoint3dAtUncheckedPointIndex(0, point);
|
|
239387
|
+
let localToWorldMatrix = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_8__.Matrix3d.createRigidHeadsUp(sweepVector);
|
|
239388
|
+
if (localToWorldMatrix === undefined)
|
|
239389
|
+
localToWorldMatrix = _geometry3d_Matrix3d__WEBPACK_IMPORTED_MODULE_8__.Matrix3d.createIdentity();
|
|
239390
|
+
const localToWorld = _geometry3d_Transform__WEBPACK_IMPORTED_MODULE_2__.Transform.createOriginAndMatrix(point, localToWorldMatrix);
|
|
239391
|
+
const worldToLocal = localToWorld.inverse();
|
|
239392
|
+
const localRange = xyz.getRange(worldToLocal);
|
|
239265
239393
|
for (let i = 1; i < xyz.length; i++) {
|
|
239266
239394
|
xyz.getPoint3dAtUncheckedPointIndex(i, newPoint);
|
|
239267
239395
|
const clipper = EdgeClipData.createPointPointSweep(point, newPoint, sweepVector);
|
|
@@ -239270,11 +239398,20 @@ class ClipSweptLineStringContext {
|
|
|
239270
239398
|
edgeData.push(clipper);
|
|
239271
239399
|
}
|
|
239272
239400
|
}
|
|
239273
|
-
return new ClipSweptLineStringContext(edgeData);
|
|
239401
|
+
return new ClipSweptLineStringContext(edgeData, { localToWorld, worldToLocal, localRange });
|
|
239274
239402
|
}
|
|
239275
239403
|
return undefined;
|
|
239276
239404
|
}
|
|
239405
|
+
/**
|
|
239406
|
+
* Intersect a polygon with each of the edgeClippers.
|
|
239407
|
+
* * If transforms and local range are defined, test the polygon's local range to see if it offers a quick exit.
|
|
239408
|
+
*/
|
|
239277
239409
|
processPolygon(polygon, announceEdge) {
|
|
239410
|
+
if (this._worldToLocal !== undefined && this._localRange !== undefined) {
|
|
239411
|
+
const polygonRange = _geometry3d_Range__WEBPACK_IMPORTED_MODULE_3__.Range3d.createTransformedArray(this._worldToLocal, polygon);
|
|
239412
|
+
if (!polygonRange.intersectsRangeXY(this._localRange))
|
|
239413
|
+
return;
|
|
239414
|
+
}
|
|
239278
239415
|
for (const clipper of this._edgeClippers) {
|
|
239279
239416
|
clipper.processPolygon(polygon, announceEdge);
|
|
239280
239417
|
}
|
|
@@ -279131,7 +279268,7 @@ class TestContext {
|
|
|
279131
279268
|
this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
|
|
279132
279269
|
const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
|
|
279133
279270
|
await core_frontend_1.NoRenderApp.startup({
|
|
279134
|
-
applicationVersion: "4.1.0-dev.
|
|
279271
|
+
applicationVersion: "4.1.0-dev.75",
|
|
279135
279272
|
applicationId: this.settings.gprid,
|
|
279136
279273
|
authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
|
|
279137
279274
|
hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
|
|
@@ -282452,6 +282589,7 @@ class Descriptor {
|
|
|
282452
282589
|
this.filterExpression = source.fieldsFilterExpression ?? source.filterExpression; // eslint-disable-line deprecation/deprecation
|
|
282453
282590
|
this.fieldsFilterExpression = source.fieldsFilterExpression ?? source.filterExpression; // eslint-disable-line deprecation/deprecation
|
|
282454
282591
|
this.instanceFilter = source.instanceFilter;
|
|
282592
|
+
this.ruleset = source.ruleset;
|
|
282455
282593
|
}
|
|
282456
282594
|
/** Serialize [[Descriptor]] to JSON */
|
|
282457
282595
|
toJSON() {
|
|
@@ -282469,7 +282607,7 @@ class Descriptor {
|
|
|
282469
282607
|
// istanbul ignore next
|
|
282470
282608
|
this.contentOptions !== undefined && { contentOptions: this.contentOptions }, // eslint-disable-line deprecation/deprecation
|
|
282471
282609
|
this.sortingField !== undefined && { sortingFieldName: this.sortingField.name }, this.sortDirection !== undefined && { sortDirection: this.sortDirection }, this.filterExpression !== undefined && { filterExpression: this.filterExpression }, // eslint-disable-line deprecation/deprecation
|
|
282472
|
-
this.fieldsFilterExpression !== undefined && { fieldsFilterExpression: this.fieldsFilterExpression }, this.instanceFilter !== undefined && { instanceFilter: this.instanceFilter }, this.selectionInfo !== undefined && { selectionInfo: this.selectionInfo });
|
|
282610
|
+
this.fieldsFilterExpression !== undefined && { fieldsFilterExpression: this.fieldsFilterExpression }, this.instanceFilter !== undefined && { instanceFilter: this.instanceFilter }, this.selectionInfo !== undefined && { selectionInfo: this.selectionInfo }, this.ruleset !== undefined && { ruleset: this.ruleset });
|
|
282473
282611
|
}
|
|
282474
282612
|
/** Deserialize [[Descriptor]] from JSON */
|
|
282475
282613
|
static fromJSON(json) {
|
|
@@ -298503,7 +298641,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
|
|
|
298503
298641
|
/***/ ((module) => {
|
|
298504
298642
|
|
|
298505
298643
|
"use strict";
|
|
298506
|
-
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.
|
|
298644
|
+
module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.75","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run -s webpackTests && certa -r chrome","cover":"npm -s test","test:debug":"certa -r chrome --debug","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.1.0-dev.75","@itwin/core-bentley":"workspace:^4.1.0-dev.75","@itwin/core-common":"workspace:^4.1.0-dev.75","@itwin/core-geometry":"workspace:^4.1.0-dev.75","@itwin/core-orbitgt":"workspace:^4.1.0-dev.75","@itwin/core-quantity":"workspace:^4.1.0-dev.75"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/certa":"workspace:*","@itwin/eslint-plugin":"4.0.0-dev.44","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"18.16.1","@types/sinon":"^10.0.15","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^8.44.0","glob":"^7.1.2","mocha":"^10.0.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^15.0.4","source-map-loader":"^4.0.0","typescript":"~5.0.2","webpack":"^5.76.0"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.0.0","@itwin/object-storage-core":"^2.0.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"}}');
|
|
298507
298645
|
|
|
298508
298646
|
/***/ }),
|
|
298509
298647
|
|