@itwin/core-geometry 5.2.0-dev.29 → 5.2.0-dev.30

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.
Files changed (737) hide show
  1. package/lib/cjs/Constant.js.map +1 -1
  2. package/lib/cjs/Geometry.d.ts +30 -10
  3. package/lib/cjs/Geometry.d.ts.map +1 -1
  4. package/lib/cjs/Geometry.js +74 -10
  5. package/lib/cjs/Geometry.js.map +1 -1
  6. package/lib/cjs/bspline/AkimaCurve3d.d.ts +19 -6
  7. package/lib/cjs/bspline/AkimaCurve3d.d.ts.map +1 -1
  8. package/lib/cjs/bspline/AkimaCurve3d.js +21 -5
  9. package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -1
  10. package/lib/cjs/bspline/BSpline1dNd.js.map +1 -1
  11. package/lib/cjs/bspline/BSplineCurve.d.ts +3 -3
  12. package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -1
  13. package/lib/cjs/bspline/BSplineCurve.js +6 -6
  14. package/lib/cjs/bspline/BSplineCurve.js.map +1 -1
  15. package/lib/cjs/bspline/BSplineCurve3dH.js.map +1 -1
  16. package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -1
  17. package/lib/cjs/bspline/BSplineCurveOps.js +1 -1
  18. package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -1
  19. package/lib/cjs/bspline/BSplineSurface.js.map +1 -1
  20. package/lib/cjs/bspline/Bezier1dNd.js.map +1 -1
  21. package/lib/cjs/bspline/BezierCurve3d.js.map +1 -1
  22. package/lib/cjs/bspline/BezierCurve3dH.js.map +1 -1
  23. package/lib/cjs/bspline/BezierCurveBase.d.ts +2 -2
  24. package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -1
  25. package/lib/cjs/bspline/BezierCurveBase.js +4 -6
  26. package/lib/cjs/bspline/BezierCurveBase.js.map +1 -1
  27. package/lib/cjs/bspline/InterpolationCurve3d.d.ts +27 -17
  28. package/lib/cjs/bspline/InterpolationCurve3d.d.ts.map +1 -1
  29. package/lib/cjs/bspline/InterpolationCurve3d.js +17 -7
  30. package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -1
  31. package/lib/cjs/bspline/KnotVector.js.map +1 -1
  32. package/lib/cjs/bspline/SurfaceLocationDetail.js.map +1 -1
  33. package/lib/cjs/clipping/AlternatingConvexClipTree.js.map +1 -1
  34. package/lib/cjs/clipping/BooleanClipFactory.js.map +1 -1
  35. package/lib/cjs/clipping/BooleanClipNode.js.map +1 -1
  36. package/lib/cjs/clipping/ClipPlane.d.ts +9 -3
  37. package/lib/cjs/clipping/ClipPlane.d.ts.map +1 -1
  38. package/lib/cjs/clipping/ClipPlane.js +8 -0
  39. package/lib/cjs/clipping/ClipPlane.js.map +1 -1
  40. package/lib/cjs/clipping/ClipPrimitive.js.map +1 -1
  41. package/lib/cjs/clipping/ClipUtils.d.ts +14 -1
  42. package/lib/cjs/clipping/ClipUtils.d.ts.map +1 -1
  43. package/lib/cjs/clipping/ClipUtils.js +21 -3
  44. package/lib/cjs/clipping/ClipUtils.js.map +1 -1
  45. package/lib/cjs/clipping/ClipVector.js.map +1 -1
  46. package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts +2 -2
  47. package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
  48. package/lib/cjs/clipping/ConvexClipPlaneSet.js +6 -4
  49. package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -1
  50. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  51. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  52. package/lib/cjs/core-geometry.js.map +1 -1
  53. package/lib/cjs/curve/Arc3d.d.ts +27 -17
  54. package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
  55. package/lib/cjs/curve/Arc3d.js +61 -35
  56. package/lib/cjs/curve/Arc3d.js.map +1 -1
  57. package/lib/cjs/curve/ConstructCurveBetweenCurves.js.map +1 -1
  58. package/lib/cjs/curve/CoordinateXYZ.js.map +1 -1
  59. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
  60. package/lib/cjs/curve/CurveCollection.d.ts +1 -0
  61. package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
  62. package/lib/cjs/curve/CurveCollection.js +1 -0
  63. package/lib/cjs/curve/CurveCollection.js.map +1 -1
  64. package/lib/cjs/curve/CurveCurve.js.map +1 -1
  65. package/lib/cjs/curve/CurveExtendMode.js.map +1 -1
  66. package/lib/cjs/curve/CurveFactory.js.map +1 -1
  67. package/lib/cjs/curve/CurveLocationDetail.d.ts +8 -7
  68. package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -1
  69. package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
  70. package/lib/cjs/curve/CurveOps.d.ts +51 -1
  71. package/lib/cjs/curve/CurveOps.d.ts.map +1 -1
  72. package/lib/cjs/curve/CurveOps.js +97 -3
  73. package/lib/cjs/curve/CurveOps.js.map +1 -1
  74. package/lib/cjs/curve/CurvePrimitive.js.map +1 -1
  75. package/lib/cjs/curve/CurveProcessor.js.map +1 -1
  76. package/lib/cjs/curve/CurveTypes.js.map +1 -1
  77. package/lib/cjs/curve/CurveWireMomentsXYZ.js.map +1 -1
  78. package/lib/cjs/curve/GeometryQuery.js.map +1 -1
  79. package/lib/cjs/curve/LineSegment3d.js.map +1 -1
  80. package/lib/cjs/curve/LineString3d.d.ts +4 -4
  81. package/lib/cjs/curve/LineString3d.d.ts.map +1 -1
  82. package/lib/cjs/curve/LineString3d.js +8 -8
  83. package/lib/cjs/curve/LineString3d.js.map +1 -1
  84. package/lib/cjs/curve/Loop.js.map +1 -1
  85. package/lib/cjs/curve/OffsetOptions.js.map +1 -1
  86. package/lib/cjs/curve/ParityRegion.js.map +1 -1
  87. package/lib/cjs/curve/Path.js.map +1 -1
  88. package/lib/cjs/curve/PointString3d.js.map +1 -1
  89. package/lib/cjs/curve/ProxyCurve.js.map +1 -1
  90. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js +3 -3
  91. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  92. package/lib/cjs/curve/Query/CurveSplitContext.js.map +1 -1
  93. package/lib/cjs/curve/Query/CylindricalRange.js.map +1 -1
  94. package/lib/cjs/curve/Query/InOutTests.js.map +1 -1
  95. package/lib/cjs/curve/Query/PlanarSubdivision.d.ts +6 -2
  96. package/lib/cjs/curve/Query/PlanarSubdivision.d.ts.map +1 -1
  97. package/lib/cjs/curve/Query/PlanarSubdivision.js +12 -7
  98. package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -1
  99. package/lib/cjs/curve/Query/StrokeCountChain.js.map +1 -1
  100. package/lib/cjs/curve/Query/StrokeCountMap.js.map +1 -1
  101. package/lib/cjs/curve/RegionMomentsXY.js.map +1 -1
  102. package/lib/cjs/curve/RegionOps.d.ts +9 -4
  103. package/lib/cjs/curve/RegionOps.d.ts.map +1 -1
  104. package/lib/cjs/curve/RegionOps.js +10 -5
  105. package/lib/cjs/curve/RegionOps.js.map +1 -1
  106. package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -1
  107. package/lib/cjs/curve/StrokeOptions.js.map +1 -1
  108. package/lib/cjs/curve/UnionRegion.js.map +1 -1
  109. package/lib/cjs/curve/internalContexts/AnnounceTangentStrokeHandler.js.map +1 -1
  110. package/lib/cjs/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  111. package/lib/cjs/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  112. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  113. package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -1
  114. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  115. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  116. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  117. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  118. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +2 -1
  119. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  120. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  121. package/lib/cjs/curve/internalContexts/CurveLengthContext.js.map +1 -1
  122. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  123. package/lib/cjs/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  124. package/lib/cjs/curve/internalContexts/GapSearchContext.js.map +1 -1
  125. package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts +4 -4
  126. package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
  127. package/lib/cjs/curve/internalContexts/MultiChainCollector.js +21 -18
  128. package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -1
  129. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  130. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  131. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  132. package/lib/cjs/curve/internalContexts/SumLengthsContext.js.map +1 -1
  133. package/lib/cjs/curve/internalContexts/TransferWithSplitArcs.js.map +1 -1
  134. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  135. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  136. package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -1
  137. package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -1
  138. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  139. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  140. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts +2 -2
  141. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
  142. package/lib/cjs/curve/spiral/DirectSpiral3d.js +6 -2
  143. package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -1
  144. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts +2 -2
  145. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
  146. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +6 -2
  147. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  148. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  149. package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -1
  150. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  151. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  152. package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts +5 -1
  153. package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
  154. package/lib/cjs/curve/spiral/TransitionSpiral3d.js +0 -3
  155. package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -1
  156. package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -1
  157. package/lib/cjs/geometry3d/Angle.js.map +1 -1
  158. package/lib/cjs/geometry3d/AngleSweep.d.ts +6 -2
  159. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
  160. package/lib/cjs/geometry3d/AngleSweep.js +12 -3
  161. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
  162. package/lib/cjs/geometry3d/BarycentricTriangle.js.map +1 -1
  163. package/lib/cjs/geometry3d/BilinearPatch.js.map +1 -1
  164. package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -1
  165. package/lib/cjs/geometry3d/Ellipsoid.js.map +1 -1
  166. package/lib/cjs/geometry3d/FrameBuilder.d.ts +2 -1
  167. package/lib/cjs/geometry3d/FrameBuilder.d.ts.map +1 -1
  168. package/lib/cjs/geometry3d/FrameBuilder.js +14 -18
  169. package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -1
  170. package/lib/cjs/geometry3d/FrustumAnimation.js.map +1 -1
  171. package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -1
  172. package/lib/cjs/geometry3d/GrowableBlockedArray.js.map +1 -1
  173. package/lib/cjs/geometry3d/GrowableFloat64Array.js.map +1 -1
  174. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
  175. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -1
  176. package/lib/cjs/geometry3d/IndexedCollectionInterval.js.map +1 -1
  177. package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -1
  178. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -1
  179. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  180. package/lib/cjs/geometry3d/Matrix3d.d.ts +1 -1
  181. package/lib/cjs/geometry3d/Matrix3d.js +1 -1
  182. package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
  183. package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -1
  184. package/lib/cjs/geometry3d/Plane3d.js.map +1 -1
  185. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  186. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  187. package/lib/cjs/geometry3d/Point2dArrayCarrier.js.map +1 -1
  188. package/lib/cjs/geometry3d/Point2dVector2d.d.ts +18 -2
  189. package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -1
  190. package/lib/cjs/geometry3d/Point2dVector2d.js +37 -4
  191. package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
  192. package/lib/cjs/geometry3d/Point3dArrayCarrier.js.map +1 -1
  193. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +1 -1
  194. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  195. package/lib/cjs/geometry3d/Point3dVector3d.js +1 -0
  196. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  197. package/lib/cjs/geometry3d/PointHelpers.js.map +1 -1
  198. package/lib/cjs/geometry3d/PointStreaming.d.ts +8 -0
  199. package/lib/cjs/geometry3d/PointStreaming.d.ts.map +1 -1
  200. package/lib/cjs/geometry3d/PointStreaming.js +18 -2
  201. package/lib/cjs/geometry3d/PointStreaming.js.map +1 -1
  202. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
  203. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts +8 -2
  204. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
  205. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js +10 -4
  206. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  207. package/lib/cjs/geometry3d/PolylineOps.d.ts +14 -3
  208. package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -1
  209. package/lib/cjs/geometry3d/PolylineOps.js +20 -4
  210. package/lib/cjs/geometry3d/PolylineOps.js.map +1 -1
  211. package/lib/cjs/geometry3d/Range.d.ts +34 -32
  212. package/lib/cjs/geometry3d/Range.d.ts.map +1 -1
  213. package/lib/cjs/geometry3d/Range.js +28 -21
  214. package/lib/cjs/geometry3d/Range.js.map +1 -1
  215. package/lib/cjs/geometry3d/Ray2d.d.ts +16 -6
  216. package/lib/cjs/geometry3d/Ray2d.d.ts.map +1 -1
  217. package/lib/cjs/geometry3d/Ray2d.js +28 -4
  218. package/lib/cjs/geometry3d/Ray2d.js.map +1 -1
  219. package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
  220. package/lib/cjs/geometry3d/Ray3d.js +3 -4
  221. package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
  222. package/lib/cjs/geometry3d/ReusableObjectCache.js.map +1 -1
  223. package/lib/cjs/geometry3d/Segment1d.js.map +1 -1
  224. package/lib/cjs/geometry3d/SortablePolygon.js.map +1 -1
  225. package/lib/cjs/geometry3d/Transform.d.ts +1 -1
  226. package/lib/cjs/geometry3d/Transform.js +1 -1
  227. package/lib/cjs/geometry3d/Transform.js.map +1 -1
  228. package/lib/cjs/geometry3d/UVSurfaceOps.js.map +1 -1
  229. package/lib/cjs/geometry3d/XYZProps.d.ts +12 -1
  230. package/lib/cjs/geometry3d/XYZProps.d.ts.map +1 -1
  231. package/lib/cjs/geometry3d/XYZProps.js +17 -2
  232. package/lib/cjs/geometry3d/XYZProps.js.map +1 -1
  233. package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -1
  234. package/lib/cjs/geometry4d/Map4d.js.map +1 -1
  235. package/lib/cjs/geometry4d/Matrix4d.js.map +1 -1
  236. package/lib/cjs/geometry4d/MomentData.js.map +1 -1
  237. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  238. package/lib/cjs/geometry4d/Point4d.js.map +1 -1
  239. package/lib/cjs/numerics/BandedSystem.js.map +1 -1
  240. package/lib/cjs/numerics/BezierPolynomials.d.ts.map +1 -1
  241. package/lib/cjs/numerics/BezierPolynomials.js +5 -9
  242. package/lib/cjs/numerics/BezierPolynomials.js.map +1 -1
  243. package/lib/cjs/numerics/ClusterableArray.js.map +1 -1
  244. package/lib/cjs/numerics/Complex.js.map +1 -1
  245. package/lib/cjs/numerics/ConvexPolygon2d.js.map +1 -1
  246. package/lib/cjs/numerics/Newton.js.map +1 -1
  247. package/lib/cjs/numerics/PascalCoefficients.js.map +1 -1
  248. package/lib/cjs/numerics/PolarData.js.map +1 -1
  249. package/lib/cjs/numerics/Polynomials.js.map +1 -1
  250. package/lib/cjs/numerics/Quadrature.js.map +1 -1
  251. package/lib/cjs/numerics/Range1dArray.js.map +1 -1
  252. package/lib/cjs/numerics/SmallSystem.d.ts +13 -7
  253. package/lib/cjs/numerics/SmallSystem.d.ts.map +1 -1
  254. package/lib/cjs/numerics/SmallSystem.js +13 -7
  255. package/lib/cjs/numerics/SmallSystem.js.map +1 -1
  256. package/lib/cjs/numerics/TriDiagonalSystem.js.map +1 -1
  257. package/lib/cjs/numerics/UnionFind.js.map +1 -1
  258. package/lib/cjs/numerics/UsageSums.js.map +1 -1
  259. package/lib/cjs/polyface/AuxData.js.map +1 -1
  260. package/lib/cjs/polyface/BoxTopology.js.map +1 -1
  261. package/lib/cjs/polyface/FacetFaceData.js.map +1 -1
  262. package/lib/cjs/polyface/FacetLocationDetail.js.map +1 -1
  263. package/lib/cjs/polyface/FacetOrientation.js.map +1 -1
  264. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  265. package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -1
  266. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  267. package/lib/cjs/polyface/IndexedPolyfaceWalker.js.map +1 -1
  268. package/lib/cjs/polyface/Polyface.js.map +1 -1
  269. package/lib/cjs/polyface/PolyfaceBuilder.d.ts +25 -6
  270. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  271. package/lib/cjs/polyface/PolyfaceBuilder.js +59 -8
  272. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  273. package/lib/cjs/polyface/PolyfaceClip.js.map +1 -1
  274. package/lib/cjs/polyface/PolyfaceData.js.map +1 -1
  275. package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
  276. package/lib/cjs/polyface/PolyfaceQuery.js +8 -10
  277. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  278. package/lib/cjs/polyface/RangeLengthData.js.map +1 -1
  279. package/lib/cjs/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  280. package/lib/cjs/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  281. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts +8 -5
  282. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts.map +1 -1
  283. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js +8 -4
  284. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  285. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts +3 -3
  286. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts.map +1 -1
  287. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js +1 -1
  288. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  289. package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts +4 -2
  290. package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
  291. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js +9 -12
  292. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  293. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.d.ts +8 -3
  294. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.d.ts.map +1 -1
  295. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js +13 -6
  296. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  297. package/lib/cjs/polyface/TaggedNumericData.js.map +1 -1
  298. package/lib/cjs/polyface/TriangleCandidate.js.map +1 -1
  299. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  300. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  301. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  302. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  303. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  304. package/lib/cjs/polyface/multiclip/Range2dSearchInterface.js.map +1 -1
  305. package/lib/cjs/polyface/multiclip/RangeSearch.js.map +1 -1
  306. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  307. package/lib/cjs/polyface/multiclip/XYPointBuckets.js.map +1 -1
  308. package/lib/cjs/serialization/BGFBAccessors.js.map +1 -1
  309. package/lib/cjs/serialization/BGFBReader.js.map +1 -1
  310. package/lib/cjs/serialization/BGFBWriter.js.map +1 -1
  311. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  312. package/lib/cjs/serialization/DeepCompare.js +1 -1
  313. package/lib/cjs/serialization/DeepCompare.js.map +1 -1
  314. package/lib/cjs/serialization/GeometrySamples.d.ts +2 -1
  315. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  316. package/lib/cjs/serialization/GeometrySamples.js +2 -1
  317. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  318. package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -1
  319. package/lib/cjs/serialization/SerializationHelpers.js.map +1 -1
  320. package/lib/cjs/solid/Box.js.map +1 -1
  321. package/lib/cjs/solid/Cone.js.map +1 -1
  322. package/lib/cjs/solid/LinearSweep.js.map +1 -1
  323. package/lib/cjs/solid/RotationalSweep.js.map +1 -1
  324. package/lib/cjs/solid/RuledSweep.js.map +1 -1
  325. package/lib/cjs/solid/SolidPrimitive.js.map +1 -1
  326. package/lib/cjs/solid/Sphere.js.map +1 -1
  327. package/lib/cjs/solid/SweepContour.js.map +1 -1
  328. package/lib/cjs/solid/TorusPipe.js.map +1 -1
  329. package/lib/cjs/topology/ChainMerge.js.map +1 -1
  330. package/lib/cjs/topology/Graph.d.ts +38 -12
  331. package/lib/cjs/topology/Graph.d.ts.map +1 -1
  332. package/lib/cjs/topology/Graph.js +91 -23
  333. package/lib/cjs/topology/Graph.js.map +1 -1
  334. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +5 -4
  335. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -1
  336. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +6 -5
  337. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  338. package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts +20 -11
  339. package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts.map +1 -1
  340. package/lib/cjs/topology/HalfEdgeGraphSearch.js +43 -39
  341. package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -1
  342. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  343. package/lib/cjs/topology/HalfEdgeGraphValidation.js.map +1 -1
  344. package/lib/cjs/topology/HalfEdgeMarkSet.js.map +1 -1
  345. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  346. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  347. package/lib/cjs/topology/HalfEdgePositionDetail.js.map +1 -1
  348. package/lib/cjs/topology/HalfEdgePriorityQueue.js.map +1 -1
  349. package/lib/cjs/topology/InsertAndRetriangulateContext.js.map +1 -1
  350. package/lib/cjs/topology/MaskManager.js.map +1 -1
  351. package/lib/cjs/topology/Merging.d.ts +7 -4
  352. package/lib/cjs/topology/Merging.d.ts.map +1 -1
  353. package/lib/cjs/topology/Merging.js +16 -11
  354. package/lib/cjs/topology/Merging.js.map +1 -1
  355. package/lib/cjs/topology/RegularizeFace.js.map +1 -1
  356. package/lib/cjs/topology/SignedDataSummary.js.map +1 -1
  357. package/lib/cjs/topology/SpaceTriangulation.js.map +1 -1
  358. package/lib/cjs/topology/Triangulation.d.ts +13 -11
  359. package/lib/cjs/topology/Triangulation.d.ts.map +1 -1
  360. package/lib/cjs/topology/Triangulation.js +40 -36
  361. package/lib/cjs/topology/Triangulation.js.map +1 -1
  362. package/lib/cjs/topology/Voronoi.d.ts +195 -0
  363. package/lib/cjs/topology/Voronoi.d.ts.map +1 -0
  364. package/lib/cjs/topology/Voronoi.js +700 -0
  365. package/lib/cjs/topology/Voronoi.js.map +1 -0
  366. package/lib/cjs/topology/XYParitySearchContext.d.ts +1 -1
  367. package/lib/cjs/topology/XYParitySearchContext.d.ts.map +1 -1
  368. package/lib/cjs/topology/XYParitySearchContext.js.map +1 -1
  369. package/lib/esm/Constant.js.map +1 -1
  370. package/lib/esm/Geometry.d.ts +30 -10
  371. package/lib/esm/Geometry.d.ts.map +1 -1
  372. package/lib/esm/Geometry.js +74 -10
  373. package/lib/esm/Geometry.js.map +1 -1
  374. package/lib/esm/bspline/AkimaCurve3d.d.ts +19 -6
  375. package/lib/esm/bspline/AkimaCurve3d.d.ts.map +1 -1
  376. package/lib/esm/bspline/AkimaCurve3d.js +21 -5
  377. package/lib/esm/bspline/AkimaCurve3d.js.map +1 -1
  378. package/lib/esm/bspline/BSpline1dNd.js.map +1 -1
  379. package/lib/esm/bspline/BSplineCurve.d.ts +3 -3
  380. package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -1
  381. package/lib/esm/bspline/BSplineCurve.js +6 -6
  382. package/lib/esm/bspline/BSplineCurve.js.map +1 -1
  383. package/lib/esm/bspline/BSplineCurve3dH.js.map +1 -1
  384. package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -1
  385. package/lib/esm/bspline/BSplineCurveOps.js +1 -1
  386. package/lib/esm/bspline/BSplineCurveOps.js.map +1 -1
  387. package/lib/esm/bspline/BSplineSurface.js.map +1 -1
  388. package/lib/esm/bspline/Bezier1dNd.js.map +1 -1
  389. package/lib/esm/bspline/BezierCurve3d.js.map +1 -1
  390. package/lib/esm/bspline/BezierCurve3dH.js.map +1 -1
  391. package/lib/esm/bspline/BezierCurveBase.d.ts +2 -2
  392. package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -1
  393. package/lib/esm/bspline/BezierCurveBase.js +4 -6
  394. package/lib/esm/bspline/BezierCurveBase.js.map +1 -1
  395. package/lib/esm/bspline/InterpolationCurve3d.d.ts +27 -17
  396. package/lib/esm/bspline/InterpolationCurve3d.d.ts.map +1 -1
  397. package/lib/esm/bspline/InterpolationCurve3d.js +17 -7
  398. package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -1
  399. package/lib/esm/bspline/KnotVector.js.map +1 -1
  400. package/lib/esm/bspline/SurfaceLocationDetail.js.map +1 -1
  401. package/lib/esm/clipping/AlternatingConvexClipTree.js.map +1 -1
  402. package/lib/esm/clipping/BooleanClipFactory.js.map +1 -1
  403. package/lib/esm/clipping/BooleanClipNode.js.map +1 -1
  404. package/lib/esm/clipping/ClipPlane.d.ts +9 -3
  405. package/lib/esm/clipping/ClipPlane.d.ts.map +1 -1
  406. package/lib/esm/clipping/ClipPlane.js +8 -0
  407. package/lib/esm/clipping/ClipPlane.js.map +1 -1
  408. package/lib/esm/clipping/ClipPrimitive.js.map +1 -1
  409. package/lib/esm/clipping/ClipUtils.d.ts +14 -1
  410. package/lib/esm/clipping/ClipUtils.d.ts.map +1 -1
  411. package/lib/esm/clipping/ClipUtils.js +21 -3
  412. package/lib/esm/clipping/ClipUtils.js.map +1 -1
  413. package/lib/esm/clipping/ClipVector.js.map +1 -1
  414. package/lib/esm/clipping/ConvexClipPlaneSet.d.ts +2 -2
  415. package/lib/esm/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
  416. package/lib/esm/clipping/ConvexClipPlaneSet.js +6 -4
  417. package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -1
  418. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  419. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  420. package/lib/esm/core-geometry.js.map +1 -1
  421. package/lib/esm/curve/Arc3d.d.ts +27 -17
  422. package/lib/esm/curve/Arc3d.d.ts.map +1 -1
  423. package/lib/esm/curve/Arc3d.js +61 -35
  424. package/lib/esm/curve/Arc3d.js.map +1 -1
  425. package/lib/esm/curve/ConstructCurveBetweenCurves.js.map +1 -1
  426. package/lib/esm/curve/CoordinateXYZ.js.map +1 -1
  427. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
  428. package/lib/esm/curve/CurveCollection.d.ts +1 -0
  429. package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
  430. package/lib/esm/curve/CurveCollection.js +1 -0
  431. package/lib/esm/curve/CurveCollection.js.map +1 -1
  432. package/lib/esm/curve/CurveCurve.js.map +1 -1
  433. package/lib/esm/curve/CurveExtendMode.js.map +1 -1
  434. package/lib/esm/curve/CurveFactory.js.map +1 -1
  435. package/lib/esm/curve/CurveLocationDetail.d.ts +8 -7
  436. package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -1
  437. package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
  438. package/lib/esm/curve/CurveOps.d.ts +51 -1
  439. package/lib/esm/curve/CurveOps.d.ts.map +1 -1
  440. package/lib/esm/curve/CurveOps.js +98 -4
  441. package/lib/esm/curve/CurveOps.js.map +1 -1
  442. package/lib/esm/curve/CurvePrimitive.js.map +1 -1
  443. package/lib/esm/curve/CurveProcessor.js.map +1 -1
  444. package/lib/esm/curve/CurveTypes.js.map +1 -1
  445. package/lib/esm/curve/CurveWireMomentsXYZ.js.map +1 -1
  446. package/lib/esm/curve/GeometryQuery.js.map +1 -1
  447. package/lib/esm/curve/LineSegment3d.js.map +1 -1
  448. package/lib/esm/curve/LineString3d.d.ts +4 -4
  449. package/lib/esm/curve/LineString3d.d.ts.map +1 -1
  450. package/lib/esm/curve/LineString3d.js +8 -8
  451. package/lib/esm/curve/LineString3d.js.map +1 -1
  452. package/lib/esm/curve/Loop.js.map +1 -1
  453. package/lib/esm/curve/OffsetOptions.js.map +1 -1
  454. package/lib/esm/curve/ParityRegion.js.map +1 -1
  455. package/lib/esm/curve/Path.js.map +1 -1
  456. package/lib/esm/curve/PointString3d.js.map +1 -1
  457. package/lib/esm/curve/ProxyCurve.js.map +1 -1
  458. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +3 -3
  459. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  460. package/lib/esm/curve/Query/CurveSplitContext.js.map +1 -1
  461. package/lib/esm/curve/Query/CylindricalRange.js.map +1 -1
  462. package/lib/esm/curve/Query/InOutTests.js.map +1 -1
  463. package/lib/esm/curve/Query/PlanarSubdivision.d.ts +6 -2
  464. package/lib/esm/curve/Query/PlanarSubdivision.d.ts.map +1 -1
  465. package/lib/esm/curve/Query/PlanarSubdivision.js +12 -7
  466. package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -1
  467. package/lib/esm/curve/Query/StrokeCountChain.js.map +1 -1
  468. package/lib/esm/curve/Query/StrokeCountMap.js.map +1 -1
  469. package/lib/esm/curve/RegionMomentsXY.js.map +1 -1
  470. package/lib/esm/curve/RegionOps.d.ts +9 -4
  471. package/lib/esm/curve/RegionOps.d.ts.map +1 -1
  472. package/lib/esm/curve/RegionOps.js +10 -5
  473. package/lib/esm/curve/RegionOps.js.map +1 -1
  474. package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -1
  475. package/lib/esm/curve/StrokeOptions.js.map +1 -1
  476. package/lib/esm/curve/UnionRegion.js.map +1 -1
  477. package/lib/esm/curve/internalContexts/AnnounceTangentStrokeHandler.js.map +1 -1
  478. package/lib/esm/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  479. package/lib/esm/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  480. package/lib/esm/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  481. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -1
  482. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  483. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  484. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  485. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  486. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +2 -1
  487. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  488. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  489. package/lib/esm/curve/internalContexts/CurveLengthContext.js.map +1 -1
  490. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  491. package/lib/esm/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  492. package/lib/esm/curve/internalContexts/GapSearchContext.js.map +1 -1
  493. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts +4 -4
  494. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
  495. package/lib/esm/curve/internalContexts/MultiChainCollector.js +21 -18
  496. package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -1
  497. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  498. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  499. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  500. package/lib/esm/curve/internalContexts/SumLengthsContext.js.map +1 -1
  501. package/lib/esm/curve/internalContexts/TransferWithSplitArcs.js.map +1 -1
  502. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  503. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  504. package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -1
  505. package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -1
  506. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  507. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  508. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts +2 -2
  509. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
  510. package/lib/esm/curve/spiral/DirectSpiral3d.js +6 -2
  511. package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -1
  512. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts +2 -2
  513. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
  514. package/lib/esm/curve/spiral/IntegratedSpiral3d.js +6 -2
  515. package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  516. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  517. package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -1
  518. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  519. package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  520. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts +5 -1
  521. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
  522. package/lib/esm/curve/spiral/TransitionSpiral3d.js +0 -3
  523. package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -1
  524. package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -1
  525. package/lib/esm/geometry3d/Angle.js.map +1 -1
  526. package/lib/esm/geometry3d/AngleSweep.d.ts +6 -2
  527. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
  528. package/lib/esm/geometry3d/AngleSweep.js +12 -3
  529. package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
  530. package/lib/esm/geometry3d/BarycentricTriangle.js.map +1 -1
  531. package/lib/esm/geometry3d/BilinearPatch.js.map +1 -1
  532. package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -1
  533. package/lib/esm/geometry3d/Ellipsoid.js.map +1 -1
  534. package/lib/esm/geometry3d/FrameBuilder.d.ts +2 -1
  535. package/lib/esm/geometry3d/FrameBuilder.d.ts.map +1 -1
  536. package/lib/esm/geometry3d/FrameBuilder.js +14 -18
  537. package/lib/esm/geometry3d/FrameBuilder.js.map +1 -1
  538. package/lib/esm/geometry3d/FrustumAnimation.js.map +1 -1
  539. package/lib/esm/geometry3d/GeometryHandler.js.map +1 -1
  540. package/lib/esm/geometry3d/GrowableBlockedArray.js.map +1 -1
  541. package/lib/esm/geometry3d/GrowableFloat64Array.js.map +1 -1
  542. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
  543. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -1
  544. package/lib/esm/geometry3d/IndexedCollectionInterval.js.map +1 -1
  545. package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -1
  546. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -1
  547. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  548. package/lib/esm/geometry3d/Matrix3d.d.ts +1 -1
  549. package/lib/esm/geometry3d/Matrix3d.js +1 -1
  550. package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
  551. package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -1
  552. package/lib/esm/geometry3d/Plane3d.js.map +1 -1
  553. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  554. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  555. package/lib/esm/geometry3d/Point2dArrayCarrier.js.map +1 -1
  556. package/lib/esm/geometry3d/Point2dVector2d.d.ts +18 -2
  557. package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -1
  558. package/lib/esm/geometry3d/Point2dVector2d.js +37 -4
  559. package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
  560. package/lib/esm/geometry3d/Point3dArrayCarrier.js.map +1 -1
  561. package/lib/esm/geometry3d/Point3dVector3d.d.ts +1 -1
  562. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  563. package/lib/esm/geometry3d/Point3dVector3d.js +1 -0
  564. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  565. package/lib/esm/geometry3d/PointHelpers.js.map +1 -1
  566. package/lib/esm/geometry3d/PointStreaming.d.ts +8 -0
  567. package/lib/esm/geometry3d/PointStreaming.d.ts.map +1 -1
  568. package/lib/esm/geometry3d/PointStreaming.js +18 -2
  569. package/lib/esm/geometry3d/PointStreaming.js.map +1 -1
  570. package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
  571. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts +8 -2
  572. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
  573. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +10 -4
  574. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  575. package/lib/esm/geometry3d/PolylineOps.d.ts +14 -3
  576. package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -1
  577. package/lib/esm/geometry3d/PolylineOps.js +20 -4
  578. package/lib/esm/geometry3d/PolylineOps.js.map +1 -1
  579. package/lib/esm/geometry3d/Range.d.ts +34 -32
  580. package/lib/esm/geometry3d/Range.d.ts.map +1 -1
  581. package/lib/esm/geometry3d/Range.js +28 -21
  582. package/lib/esm/geometry3d/Range.js.map +1 -1
  583. package/lib/esm/geometry3d/Ray2d.d.ts +16 -6
  584. package/lib/esm/geometry3d/Ray2d.d.ts.map +1 -1
  585. package/lib/esm/geometry3d/Ray2d.js +28 -4
  586. package/lib/esm/geometry3d/Ray2d.js.map +1 -1
  587. package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
  588. package/lib/esm/geometry3d/Ray3d.js +3 -4
  589. package/lib/esm/geometry3d/Ray3d.js.map +1 -1
  590. package/lib/esm/geometry3d/ReusableObjectCache.js.map +1 -1
  591. package/lib/esm/geometry3d/Segment1d.js.map +1 -1
  592. package/lib/esm/geometry3d/SortablePolygon.js.map +1 -1
  593. package/lib/esm/geometry3d/Transform.d.ts +1 -1
  594. package/lib/esm/geometry3d/Transform.js +1 -1
  595. package/lib/esm/geometry3d/Transform.js.map +1 -1
  596. package/lib/esm/geometry3d/UVSurfaceOps.js.map +1 -1
  597. package/lib/esm/geometry3d/XYZProps.d.ts +12 -1
  598. package/lib/esm/geometry3d/XYZProps.d.ts.map +1 -1
  599. package/lib/esm/geometry3d/XYZProps.js +16 -1
  600. package/lib/esm/geometry3d/XYZProps.js.map +1 -1
  601. package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -1
  602. package/lib/esm/geometry4d/Map4d.js.map +1 -1
  603. package/lib/esm/geometry4d/Matrix4d.js.map +1 -1
  604. package/lib/esm/geometry4d/MomentData.js.map +1 -1
  605. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  606. package/lib/esm/geometry4d/Point4d.js.map +1 -1
  607. package/lib/esm/numerics/BandedSystem.js.map +1 -1
  608. package/lib/esm/numerics/BezierPolynomials.d.ts.map +1 -1
  609. package/lib/esm/numerics/BezierPolynomials.js +5 -9
  610. package/lib/esm/numerics/BezierPolynomials.js.map +1 -1
  611. package/lib/esm/numerics/ClusterableArray.js.map +1 -1
  612. package/lib/esm/numerics/Complex.js.map +1 -1
  613. package/lib/esm/numerics/ConvexPolygon2d.js.map +1 -1
  614. package/lib/esm/numerics/Newton.js.map +1 -1
  615. package/lib/esm/numerics/PascalCoefficients.js.map +1 -1
  616. package/lib/esm/numerics/PolarData.js.map +1 -1
  617. package/lib/esm/numerics/Polynomials.js.map +1 -1
  618. package/lib/esm/numerics/Quadrature.js.map +1 -1
  619. package/lib/esm/numerics/Range1dArray.js.map +1 -1
  620. package/lib/esm/numerics/SmallSystem.d.ts +13 -7
  621. package/lib/esm/numerics/SmallSystem.d.ts.map +1 -1
  622. package/lib/esm/numerics/SmallSystem.js +13 -7
  623. package/lib/esm/numerics/SmallSystem.js.map +1 -1
  624. package/lib/esm/numerics/TriDiagonalSystem.js.map +1 -1
  625. package/lib/esm/numerics/UnionFind.js.map +1 -1
  626. package/lib/esm/numerics/UsageSums.js.map +1 -1
  627. package/lib/esm/polyface/AuxData.js.map +1 -1
  628. package/lib/esm/polyface/BoxTopology.js.map +1 -1
  629. package/lib/esm/polyface/FacetFaceData.js.map +1 -1
  630. package/lib/esm/polyface/FacetLocationDetail.js.map +1 -1
  631. package/lib/esm/polyface/FacetOrientation.js.map +1 -1
  632. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  633. package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -1
  634. package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  635. package/lib/esm/polyface/IndexedPolyfaceWalker.js.map +1 -1
  636. package/lib/esm/polyface/Polyface.js.map +1 -1
  637. package/lib/esm/polyface/PolyfaceBuilder.d.ts +25 -6
  638. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  639. package/lib/esm/polyface/PolyfaceBuilder.js +59 -8
  640. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  641. package/lib/esm/polyface/PolyfaceClip.js.map +1 -1
  642. package/lib/esm/polyface/PolyfaceData.js.map +1 -1
  643. package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
  644. package/lib/esm/polyface/PolyfaceQuery.js +8 -10
  645. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  646. package/lib/esm/polyface/RangeLengthData.js.map +1 -1
  647. package/lib/esm/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  648. package/lib/esm/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  649. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts +8 -5
  650. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts.map +1 -1
  651. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js +8 -4
  652. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  653. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts +3 -3
  654. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts.map +1 -1
  655. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js +1 -1
  656. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  657. package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts +4 -2
  658. package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
  659. package/lib/esm/polyface/RangeTree/RangeTreeNode.js +9 -12
  660. package/lib/esm/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  661. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.d.ts +8 -3
  662. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.d.ts.map +1 -1
  663. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js +13 -6
  664. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  665. package/lib/esm/polyface/TaggedNumericData.js.map +1 -1
  666. package/lib/esm/polyface/TriangleCandidate.js.map +1 -1
  667. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  668. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  669. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  670. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  671. package/lib/esm/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  672. package/lib/esm/polyface/multiclip/Range2dSearchInterface.js.map +1 -1
  673. package/lib/esm/polyface/multiclip/RangeSearch.js.map +1 -1
  674. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  675. package/lib/esm/polyface/multiclip/XYPointBuckets.js.map +1 -1
  676. package/lib/esm/serialization/BGFBAccessors.js.map +1 -1
  677. package/lib/esm/serialization/BGFBReader.js.map +1 -1
  678. package/lib/esm/serialization/BGFBWriter.js.map +1 -1
  679. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  680. package/lib/esm/serialization/DeepCompare.js +1 -1
  681. package/lib/esm/serialization/DeepCompare.js.map +1 -1
  682. package/lib/esm/serialization/GeometrySamples.d.ts +2 -1
  683. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  684. package/lib/esm/serialization/GeometrySamples.js +2 -1
  685. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  686. package/lib/esm/serialization/IModelJsonSchema.js.map +1 -1
  687. package/lib/esm/serialization/SerializationHelpers.js.map +1 -1
  688. package/lib/esm/solid/Box.js.map +1 -1
  689. package/lib/esm/solid/Cone.js.map +1 -1
  690. package/lib/esm/solid/LinearSweep.js.map +1 -1
  691. package/lib/esm/solid/RotationalSweep.js.map +1 -1
  692. package/lib/esm/solid/RuledSweep.js.map +1 -1
  693. package/lib/esm/solid/SolidPrimitive.js.map +1 -1
  694. package/lib/esm/solid/Sphere.js.map +1 -1
  695. package/lib/esm/solid/SweepContour.js.map +1 -1
  696. package/lib/esm/solid/TorusPipe.js.map +1 -1
  697. package/lib/esm/topology/ChainMerge.js.map +1 -1
  698. package/lib/esm/topology/Graph.d.ts +38 -12
  699. package/lib/esm/topology/Graph.d.ts.map +1 -1
  700. package/lib/esm/topology/Graph.js +92 -24
  701. package/lib/esm/topology/Graph.js.map +1 -1
  702. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +5 -4
  703. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -1
  704. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +6 -5
  705. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  706. package/lib/esm/topology/HalfEdgeGraphSearch.d.ts +20 -11
  707. package/lib/esm/topology/HalfEdgeGraphSearch.d.ts.map +1 -1
  708. package/lib/esm/topology/HalfEdgeGraphSearch.js +43 -39
  709. package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -1
  710. package/lib/esm/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  711. package/lib/esm/topology/HalfEdgeGraphValidation.js.map +1 -1
  712. package/lib/esm/topology/HalfEdgeMarkSet.js.map +1 -1
  713. package/lib/esm/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  714. package/lib/esm/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  715. package/lib/esm/topology/HalfEdgePositionDetail.js.map +1 -1
  716. package/lib/esm/topology/HalfEdgePriorityQueue.js.map +1 -1
  717. package/lib/esm/topology/InsertAndRetriangulateContext.js.map +1 -1
  718. package/lib/esm/topology/MaskManager.js.map +1 -1
  719. package/lib/esm/topology/Merging.d.ts +7 -4
  720. package/lib/esm/topology/Merging.d.ts.map +1 -1
  721. package/lib/esm/topology/Merging.js +17 -12
  722. package/lib/esm/topology/Merging.js.map +1 -1
  723. package/lib/esm/topology/RegularizeFace.js.map +1 -1
  724. package/lib/esm/topology/SignedDataSummary.js.map +1 -1
  725. package/lib/esm/topology/SpaceTriangulation.js.map +1 -1
  726. package/lib/esm/topology/Triangulation.d.ts +13 -11
  727. package/lib/esm/topology/Triangulation.d.ts.map +1 -1
  728. package/lib/esm/topology/Triangulation.js +40 -36
  729. package/lib/esm/topology/Triangulation.js.map +1 -1
  730. package/lib/esm/topology/Voronoi.d.ts +195 -0
  731. package/lib/esm/topology/Voronoi.d.ts.map +1 -0
  732. package/lib/esm/topology/Voronoi.js +696 -0
  733. package/lib/esm/topology/Voronoi.js.map +1 -0
  734. package/lib/esm/topology/XYParitySearchContext.d.ts +1 -1
  735. package/lib/esm/topology/XYParitySearchContext.d.ts.map +1 -1
  736. package/lib/esm/topology/XYParitySearchContext.js.map +1 -1
  737. package/package.json +3 -3
@@ -5,7 +5,7 @@
5
5
  /** @packageDocumentation
6
6
  * @module Topology
7
7
  */
8
- import { OrderedSet } from "@itwin/core-bentley";
8
+ import { assert, OrderedSet } from "@itwin/core-bentley";
9
9
  import { LineSegment3d } from "../curve/LineSegment3d";
10
10
  import { Geometry } from "../Geometry";
11
11
  import { Angle } from "../geometry3d/Angle";
@@ -135,9 +135,12 @@ export class HalfEdge {
135
135
  get edgeMate() {
136
136
  return this._edgeMate;
137
137
  }
138
+ /** HalfEdge ids are sequentially assigned per session (not per graph!). */
138
139
  static _totalNodesCreated = 0;
139
140
  constructor(x = 0, y = 0, z = 0, i = 0) {
140
141
  this._id = HalfEdge._totalNodesCreated++;
142
+ if (!Number.isSafeInteger(HalfEdge._totalNodesCreated))
143
+ HalfEdge._totalNodesCreated = 0;
141
144
  this.i = i;
142
145
  this.maskBits = 0x00000000;
143
146
  this.x = x;
@@ -367,6 +370,16 @@ export class HalfEdge {
367
370
  clearMask(mask) {
368
371
  this.maskBits &= ~mask;
369
372
  }
373
+ /** Set or clear mask bits from this HalfEdge.
374
+ * @param mask mask bits
375
+ * @param clear whether to clear the mask. Default is false (set the mask).
376
+ */
377
+ applyMask(mask, clear = false) {
378
+ if (clear)
379
+ this.clearMask(mask);
380
+ else
381
+ this.setMask(mask);
382
+ }
370
383
  /**
371
384
  * Set a mask at all nodes around a vertex.
372
385
  * @param mask mask to apply to the half edges around this HalfEdge's vertex loop.
@@ -642,21 +655,17 @@ export class HalfEdge {
642
655
  }
643
656
  /**
644
657
  * Create an edge with initial id,x,y at each end.
645
- * @param id0 id for first node.
646
658
  * @param x0 x coordinate for first node.
647
659
  * @param y0 y coordinate for first node.
648
- * @param id1 id for second node.
649
660
  * @param x1 x coordinate for second node.
650
661
  * @param y1 y coordinate for second node.
651
662
  * @returns the reference to the new node at (x0,y0).
652
663
  */
653
- static createEdgeXYXY(id0, x0, y0, id1, x1, y1) {
664
+ static createEdgeXYXY(x0, y0, x1, y1) {
654
665
  const node0 = new HalfEdge(x0, y0);
655
666
  const node1 = new HalfEdge(x1, y1);
656
667
  node0._faceSuccessor = node0._facePredecessor = node0._edgeMate = node1;
657
668
  node1._faceSuccessor = node1._facePredecessor = node1._edgeMate = node0;
658
- node0._id = id0;
659
- node1._id = id1;
660
669
  return node0;
661
670
  }
662
671
  /**
@@ -970,18 +979,19 @@ export class HalfEdge {
970
979
  /**
971
980
  * Announce edges in the super face loop, starting with the instance.
972
981
  * * A super face admits a `faceSuccessor` traversal, where the next edge at the far vertex is the first one lacking `skipMask` in a `vertexPredecessor` traversal.
973
- * @param skipMask mask on edges to skip.
974
- * @param announceEdge function to call at each edge that is not skipped.
975
- * @param announceSkipped optional function to call at each edge that is skipped.
976
- * @return whether a super face was found. Specifically, if a vertex loop has all edges with `skipMask` set, the return value is `false`.
982
+ * @param skipEdge mask preset on edges to skip, or a function that is called to decide whether to skip an edge.
983
+ * @param announceEdge function that is called at each edge that is not skipped.
984
+ * @param announceSkipped optional function that is called at each edge that is skipped.
985
+ * @return whether a super face was found, or `false` if the traversal fails to return to the instance vertex.
977
986
  */
978
- announceEdgesInSuperFace(skipMask, announceEdge, announceSkipped) {
979
- const maxIter = 1000; // safeguard against infinite loops
987
+ announceEdgesInSuperFace(skipEdge, announceEdge, announceSkipped) {
988
+ const maxIter = 10000; // safeguard against infinite loops
980
989
  let iter = 0;
990
+ const mySkipEdge = skipEdge instanceof Function ? skipEdge : (he) => he.isMaskSet(skipEdge);
981
991
  const findNextNodeAroundVertex = (he) => {
982
992
  let vNode = he;
983
993
  do {
984
- if (!vNode.isMaskSet(skipMask))
994
+ if (!mySkipEdge(vNode))
985
995
  return vNode;
986
996
  announceSkipped?.(vNode);
987
997
  vNode = vNode.vertexPredecessor;
@@ -998,6 +1008,7 @@ export class HalfEdge {
998
1008
  if (!node)
999
1009
  return false;
1000
1010
  } while (node !== firstNode && iter++ < maxIter);
1011
+ assert(iter < maxIter, "Infinite loop detected in HalfEdge.announceEdgesInSuperFace");
1001
1012
  return iter < maxIter;
1002
1013
  }
1003
1014
  /**
@@ -1048,6 +1059,17 @@ export class HalfEdge {
1048
1059
  } while (node !== this);
1049
1060
  return nodes;
1050
1061
  }
1062
+ /**
1063
+ * Announce edges in the vertex loop, starting with the instance and proceeding in a `vertexSuccessor` traversal.
1064
+ * @param announceEdge function to call at each edge
1065
+ */
1066
+ announceEdgesAroundVertex(announceEdge) {
1067
+ let node = this;
1068
+ do {
1069
+ announceEdge(node);
1070
+ node = node.vertexSuccessor;
1071
+ } while (node !== this);
1072
+ }
1051
1073
  /**
1052
1074
  * Evaluate `f(node)` at each node around `this` node's face loop. Sum the function values.
1053
1075
  * @param f node to number function.
@@ -1320,7 +1342,6 @@ export class HalfEdgeGraph {
1320
1342
  /** Simple array with pointers to all the half edges in the graph. */
1321
1343
  allHalfEdges;
1322
1344
  _maskManager;
1323
- _numNodesCreated = 0;
1324
1345
  constructor() {
1325
1346
  this.allHalfEdges = [];
1326
1347
  this._maskManager = MaskManager.create(HalfEdgeMask.ALL_GRAB_DROP_MASKS);
@@ -1447,13 +1468,24 @@ export class HalfEdgeGraph {
1447
1468
  }
1448
1469
  /**
1449
1470
  * Create two nodes of a new edge.
1471
+ * @param x0 x-coordinate of the start node.
1472
+ * @param y0 y-coordinate of the start node.
1473
+ * @param x1 x-coordinate of the end node.
1474
+ * @param y1 y-coordinate of the end node.
1475
+ * @param edgeTag0 (optional) edge tag for the start node.
1476
+ * @param edgeTag1 (optional) edge tag for the end node.
1477
+ * @param faceTag0 (optional) face tag for the start node.
1478
+ * @param faceTag1 (optional) face tag for the end node.
1450
1479
  * @returns the reference to the new node at (x0,y0).
1451
1480
  */
1452
- addEdgeXY(x0, y0, x1, y1) {
1453
- const baseNode = HalfEdge.createEdgeXYXY(this._numNodesCreated, x0, y0, this._numNodesCreated + 1, x1, y1);
1454
- this._numNodesCreated += 2;
1455
- this.allHalfEdges.push(baseNode);
1456
- this.allHalfEdges.push(baseNode.faceSuccessor);
1481
+ addEdgeXY(x0, y0, x1, y1, edgeTag0, edgeTag1, faceTag0, faceTag1) {
1482
+ const baseNode = HalfEdge.createEdgeXYXY(x0, y0, x1, y1);
1483
+ const farNode = baseNode.faceSuccessor;
1484
+ baseNode.edgeTag = edgeTag0;
1485
+ baseNode.faceTag = faceTag0;
1486
+ farNode.edgeTag = edgeTag1;
1487
+ farNode.faceTag = faceTag1;
1488
+ this.allHalfEdges.push(baseNode, farNode);
1457
1489
  return baseNode;
1458
1490
  }
1459
1491
  /** Clear selected `mask` bits in all nodes of the graph. */
@@ -1468,9 +1500,8 @@ export class HalfEdgeGraph {
1468
1500
  }
1469
1501
  /** Toggle selected `mask` bits in all nodes of the graph. */
1470
1502
  reverseMask(mask) {
1471
- for (const node of this.allHalfEdges) {
1503
+ for (const node of this.allHalfEdges)
1472
1504
  node.maskBits ^= mask;
1473
- }
1474
1505
  }
1475
1506
  /**
1476
1507
  * Return the number of nodes that have a specified mask bit set.
@@ -1491,10 +1522,9 @@ export class HalfEdgeGraph {
1491
1522
  */
1492
1523
  collectSegments() {
1493
1524
  const segments = [];
1494
- for (const node of this.allHalfEdges) {
1525
+ for (const node of this.allHalfEdges)
1495
1526
  if (node.id < node.edgeMate.id)
1496
- segments.push(LineSegment3d.create(Point3d.create(node.x, node.y), Point3d.create(node.faceSuccessor.x, node.faceSuccessor.y)));
1497
- }
1527
+ segments.push(LineSegment3d.createXYXY(node.x, node.y, node.faceSuccessor.x, node.faceSuccessor.y));
1498
1528
  return segments;
1499
1529
  }
1500
1530
  /** Returns the number of vertex loops in a graph structure. */
@@ -1656,5 +1686,43 @@ export class HalfEdgeGraph {
1656
1686
  this.allHalfEdges.length = numAccepted;
1657
1687
  return numDeleted;
1658
1688
  }
1689
+ /**
1690
+ * Construct a map from id to vertex index.
1691
+ * * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the vertex loop of `e`.
1692
+ */
1693
+ constructIdToVertexIndexMap() {
1694
+ const idToIndexMap = new Map();
1695
+ this.allHalfEdges.forEach((e, i) => idToIndexMap.set(e.id, i));
1696
+ this.announceVertexLoops((_g, vertex) => {
1697
+ let minIndex = this.allHalfEdges.length;
1698
+ vertex.announceEdgesAroundVertex((e) => {
1699
+ const index = idToIndexMap.get(e.id);
1700
+ if (index !== undefined && index < minIndex)
1701
+ minIndex = index;
1702
+ });
1703
+ vertex.announceEdgesAroundVertex((e) => idToIndexMap.set(e.id, minIndex));
1704
+ return true;
1705
+ });
1706
+ return idToIndexMap;
1707
+ }
1708
+ /**
1709
+ * Construct a map from id to face index.
1710
+ * * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the face loop of `e`.
1711
+ */
1712
+ constructIdToFaceIndexMap() {
1713
+ const idToIndexMap = new Map();
1714
+ this.allHalfEdges.forEach((e, i) => idToIndexMap.set(e.id, i));
1715
+ this.announceFaceLoops((_g, face) => {
1716
+ let minIndex = this.allHalfEdges.length;
1717
+ face.announceEdgesInFace((e) => {
1718
+ const index = idToIndexMap.get(e.id);
1719
+ if (index !== undefined && index < minIndex)
1720
+ minIndex = index;
1721
+ });
1722
+ face.announceEdgesInFace((e) => idToIndexMap.set(e.id, minIndex));
1723
+ return true;
1724
+ });
1725
+ return idToIndexMap;
1726
+ }
1659
1727
  }
1660
1728
  //# sourceMappingURL=Graph.js.map