@itwin/core-geometry 5.0.0-dev.11 → 5.0.0-dev.110

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 (1036) hide show
  1. package/CHANGELOG.md +61 -1
  2. package/lib/cjs/Constant.js +17 -17
  3. package/lib/cjs/Constant.js.map +1 -1
  4. package/lib/cjs/Geometry.d.ts +13 -4
  5. package/lib/cjs/Geometry.d.ts.map +1 -1
  6. package/lib/cjs/Geometry.js +51 -39
  7. package/lib/cjs/Geometry.js.map +1 -1
  8. package/lib/cjs/bspline/AkimaCurve3d.js +3 -1
  9. package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -1
  10. package/lib/cjs/bspline/BSpline1dNd.d.ts +90 -54
  11. package/lib/cjs/bspline/BSpline1dNd.d.ts.map +1 -1
  12. package/lib/cjs/bspline/BSpline1dNd.js +137 -84
  13. package/lib/cjs/bspline/BSpline1dNd.js.map +1 -1
  14. package/lib/cjs/bspline/BSplineCurve.d.ts +193 -155
  15. package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -1
  16. package/lib/cjs/bspline/BSplineCurve.js +249 -181
  17. package/lib/cjs/bspline/BSplineCurve.js.map +1 -1
  18. package/lib/cjs/bspline/BSplineCurve3dH.js +1 -0
  19. package/lib/cjs/bspline/BSplineCurve3dH.js.map +1 -1
  20. package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -1
  21. package/lib/cjs/bspline/BSplineCurveOps.js +18 -21
  22. package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -1
  23. package/lib/cjs/bspline/BSplineSurface.js +22 -2
  24. package/lib/cjs/bspline/BSplineSurface.js.map +1 -1
  25. package/lib/cjs/bspline/Bezier1dNd.js +6 -0
  26. package/lib/cjs/bspline/Bezier1dNd.js.map +1 -1
  27. package/lib/cjs/bspline/BezierCurve3d.d.ts +3 -1
  28. package/lib/cjs/bspline/BezierCurve3d.d.ts.map +1 -1
  29. package/lib/cjs/bspline/BezierCurve3d.js +5 -5
  30. package/lib/cjs/bspline/BezierCurve3d.js.map +1 -1
  31. package/lib/cjs/bspline/BezierCurve3dH.js +2 -0
  32. package/lib/cjs/bspline/BezierCurve3dH.js.map +1 -1
  33. package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -1
  34. package/lib/cjs/bspline/BezierCurveBase.js +21 -2
  35. package/lib/cjs/bspline/BezierCurveBase.js.map +1 -1
  36. package/lib/cjs/bspline/InterpolationCurve3d.js +12 -1
  37. package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -1
  38. package/lib/cjs/bspline/KnotVector.d.ts +82 -60
  39. package/lib/cjs/bspline/KnotVector.d.ts.map +1 -1
  40. package/lib/cjs/bspline/KnotVector.js +144 -84
  41. package/lib/cjs/bspline/KnotVector.js.map +1 -1
  42. package/lib/cjs/bspline/SurfaceLocationDetail.js +12 -0
  43. package/lib/cjs/bspline/SurfaceLocationDetail.js.map +1 -1
  44. package/lib/cjs/clipping/AlternatingConvexClipTree.js +14 -13
  45. package/lib/cjs/clipping/AlternatingConvexClipTree.js.map +1 -1
  46. package/lib/cjs/clipping/BooleanClipNode.js +4 -0
  47. package/lib/cjs/clipping/BooleanClipNode.js.map +1 -1
  48. package/lib/cjs/clipping/ClipPlane.js +10 -1
  49. package/lib/cjs/clipping/ClipPlane.js.map +1 -1
  50. package/lib/cjs/clipping/ClipPrimitive.js +19 -0
  51. package/lib/cjs/clipping/ClipPrimitive.js.map +1 -1
  52. package/lib/cjs/clipping/ClipUtils.js +5 -1
  53. package/lib/cjs/clipping/ClipUtils.js.map +1 -1
  54. package/lib/cjs/clipping/ClipVector.js +11 -8
  55. package/lib/cjs/clipping/ClipVector.js.map +1 -1
  56. package/lib/cjs/clipping/ConvexClipPlaneSet.js +5 -3
  57. package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -1
  58. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js +2 -1
  59. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  60. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js +3 -0
  61. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  62. package/lib/cjs/core-geometry.d.ts +1 -0
  63. package/lib/cjs/core-geometry.d.ts.map +1 -1
  64. package/lib/cjs/core-geometry.js +1 -0
  65. package/lib/cjs/core-geometry.js.map +1 -1
  66. package/lib/cjs/curve/Arc3d.d.ts +20 -4
  67. package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
  68. package/lib/cjs/curve/Arc3d.js +86 -21
  69. package/lib/cjs/curve/Arc3d.js.map +1 -1
  70. package/lib/cjs/curve/ConstructCurveBetweenCurves.js +3 -0
  71. package/lib/cjs/curve/ConstructCurveBetweenCurves.js.map +1 -1
  72. package/lib/cjs/curve/CoordinateXYZ.js +3 -2
  73. package/lib/cjs/curve/CoordinateXYZ.js.map +1 -1
  74. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts +0 -2
  75. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  76. package/lib/cjs/curve/CurveChainWithDistanceIndex.js +25 -10
  77. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
  78. package/lib/cjs/curve/CurveCollection.d.ts +10 -0
  79. package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
  80. package/lib/cjs/curve/CurveCollection.js +35 -9
  81. package/lib/cjs/curve/CurveCollection.js.map +1 -1
  82. package/lib/cjs/curve/CurveExtendMode.d.ts +13 -5
  83. package/lib/cjs/curve/CurveExtendMode.d.ts.map +1 -1
  84. package/lib/cjs/curve/CurveExtendMode.js +19 -15
  85. package/lib/cjs/curve/CurveExtendMode.js.map +1 -1
  86. package/lib/cjs/curve/CurveFactory.d.ts +87 -53
  87. package/lib/cjs/curve/CurveFactory.d.ts.map +1 -1
  88. package/lib/cjs/curve/CurveFactory.js +213 -135
  89. package/lib/cjs/curve/CurveFactory.js.map +1 -1
  90. package/lib/cjs/curve/CurveLocationDetail.js +44 -0
  91. package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
  92. package/lib/cjs/curve/CurvePrimitive.d.ts +74 -18
  93. package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -1
  94. package/lib/cjs/curve/CurvePrimitive.js +86 -18
  95. package/lib/cjs/curve/CurvePrimitive.js.map +1 -1
  96. package/lib/cjs/curve/CurveProcessor.js +2 -0
  97. package/lib/cjs/curve/CurveProcessor.js.map +1 -1
  98. package/lib/cjs/curve/CurveWireMomentsXYZ.js +2 -0
  99. package/lib/cjs/curve/CurveWireMomentsXYZ.js.map +1 -1
  100. package/lib/cjs/curve/LineSegment3d.js +6 -2
  101. package/lib/cjs/curve/LineSegment3d.js.map +1 -1
  102. package/lib/cjs/curve/LineString3d.d.ts +8 -7
  103. package/lib/cjs/curve/LineString3d.d.ts.map +1 -1
  104. package/lib/cjs/curve/LineString3d.js +52 -29
  105. package/lib/cjs/curve/LineString3d.js.map +1 -1
  106. package/lib/cjs/curve/Loop.js +12 -4
  107. package/lib/cjs/curve/Loop.js.map +1 -1
  108. package/lib/cjs/curve/OffsetOptions.js +25 -21
  109. package/lib/cjs/curve/OffsetOptions.js.map +1 -1
  110. package/lib/cjs/curve/ParityRegion.js +4 -2
  111. package/lib/cjs/curve/ParityRegion.js.map +1 -1
  112. package/lib/cjs/curve/Path.js +2 -2
  113. package/lib/cjs/curve/Path.js.map +1 -1
  114. package/lib/cjs/curve/PointString3d.js +3 -2
  115. package/lib/cjs/curve/PointString3d.js.map +1 -1
  116. package/lib/cjs/curve/ProxyCurve.js +1 -0
  117. package/lib/cjs/curve/ProxyCurve.js.map +1 -1
  118. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js +1 -0
  119. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  120. package/lib/cjs/curve/Query/CurveSplitContext.js +3 -0
  121. package/lib/cjs/curve/Query/CurveSplitContext.js.map +1 -1
  122. package/lib/cjs/curve/Query/CylindricalRange.js +6 -2
  123. package/lib/cjs/curve/Query/CylindricalRange.js.map +1 -1
  124. package/lib/cjs/curve/Query/PlanarSubdivision.js +4 -6
  125. package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -1
  126. package/lib/cjs/curve/Query/StrokeCountChain.js +12 -0
  127. package/lib/cjs/curve/Query/StrokeCountChain.js.map +1 -1
  128. package/lib/cjs/curve/Query/StrokeCountMap.js +14 -0
  129. package/lib/cjs/curve/Query/StrokeCountMap.js.map +1 -1
  130. package/lib/cjs/curve/RegionMomentsXY.js +4 -5
  131. package/lib/cjs/curve/RegionMomentsXY.js.map +1 -1
  132. package/lib/cjs/curve/RegionOps.js +9 -10
  133. package/lib/cjs/curve/RegionOps.js.map +1 -1
  134. package/lib/cjs/curve/RegionOpsClassificationSweeps.js +24 -1
  135. package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -1
  136. package/lib/cjs/curve/StrokeOptions.d.ts +10 -5
  137. package/lib/cjs/curve/StrokeOptions.d.ts.map +1 -1
  138. package/lib/cjs/curve/StrokeOptions.js +30 -8
  139. package/lib/cjs/curve/StrokeOptions.js.map +1 -1
  140. package/lib/cjs/curve/UnionRegion.js +4 -2
  141. package/lib/cjs/curve/UnionRegion.js.map +1 -1
  142. package/lib/cjs/curve/internalContexts/AnnounceTangentStrokeHandler.d.ts +71 -0
  143. package/lib/cjs/curve/internalContexts/AnnounceTangentStrokeHandler.d.ts.map +1 -0
  144. package/lib/cjs/curve/internalContexts/AnnounceTangentStrokeHandler.js +181 -0
  145. package/lib/cjs/curve/internalContexts/AnnounceTangentStrokeHandler.js.map +1 -0
  146. package/lib/cjs/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js +13 -7
  147. package/lib/cjs/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  148. package/lib/cjs/curve/internalContexts/ChainCollectorContext.js +6 -0
  149. package/lib/cjs/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  150. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js +2 -0
  151. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  152. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.d.ts +21 -5
  153. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.d.ts.map +1 -1
  154. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js +53 -20
  155. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  156. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js +3 -0
  157. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  158. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js +18 -5
  159. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  160. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +26 -13
  161. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  162. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js +11 -5
  163. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  164. package/lib/cjs/curve/internalContexts/CurveLengthContext.js +6 -0
  165. package/lib/cjs/curve/internalContexts/CurveLengthContext.js.map +1 -1
  166. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js +8 -6
  167. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  168. package/lib/cjs/curve/internalContexts/EllipticalArcApproximationContext.js +38 -5
  169. package/lib/cjs/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  170. package/lib/cjs/curve/internalContexts/GapSearchContext.js +1 -0
  171. package/lib/cjs/curve/internalContexts/GapSearchContext.js.map +1 -1
  172. package/lib/cjs/curve/internalContexts/MultiChainCollector.js +12 -0
  173. package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -1
  174. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.d.ts +5 -3
  175. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.d.ts.map +1 -1
  176. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.js +6 -3
  177. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  178. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js +7 -0
  179. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  180. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js +22 -4
  181. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  182. package/lib/cjs/curve/internalContexts/SumLengthsContext.js +1 -0
  183. package/lib/cjs/curve/internalContexts/SumLengthsContext.js.map +1 -1
  184. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js +3 -0
  185. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  186. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js +2 -0
  187. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  188. package/lib/cjs/curve/spiral/ClothoidSeries.js +4 -0
  189. package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -1
  190. package/lib/cjs/curve/spiral/CubicEvaluator.js +2 -0
  191. package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -1
  192. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js +4 -0
  193. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  194. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js +5 -0
  195. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  196. package/lib/cjs/curve/spiral/DirectSpiral3d.js +12 -2
  197. package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -1
  198. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +24 -4
  199. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  200. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +2 -0
  201. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  202. package/lib/cjs/curve/spiral/NormalizedTransition.js +5 -0
  203. package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -1
  204. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js +2 -0
  205. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  206. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js +10 -0
  207. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  208. package/lib/cjs/curve/spiral/TransitionSpiral3d.js +10 -0
  209. package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -1
  210. package/lib/cjs/curve/spiral/XYCurveEvaluator.js +6 -0
  211. package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -1
  212. package/lib/cjs/geometry3d/Angle.js +18 -16
  213. package/lib/cjs/geometry3d/Angle.js.map +1 -1
  214. package/lib/cjs/geometry3d/AngleSweep.d.ts +8 -3
  215. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
  216. package/lib/cjs/geometry3d/AngleSweep.js +22 -10
  217. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
  218. package/lib/cjs/geometry3d/BarycentricTriangle.js +25 -0
  219. package/lib/cjs/geometry3d/BarycentricTriangle.js.map +1 -1
  220. package/lib/cjs/geometry3d/BilinearPatch.js +8 -0
  221. package/lib/cjs/geometry3d/BilinearPatch.js.map +1 -1
  222. package/lib/cjs/geometry3d/CoincidentGeometryOps.js +5 -0
  223. package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -1
  224. package/lib/cjs/geometry3d/Ellipsoid.d.ts +8 -7
  225. package/lib/cjs/geometry3d/Ellipsoid.d.ts.map +1 -1
  226. package/lib/cjs/geometry3d/Ellipsoid.js +63 -14
  227. package/lib/cjs/geometry3d/Ellipsoid.js.map +1 -1
  228. package/lib/cjs/geometry3d/FrameBuilder.js +12 -4
  229. package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -1
  230. package/lib/cjs/geometry3d/FrustumAnimation.js +7 -0
  231. package/lib/cjs/geometry3d/FrustumAnimation.js.map +1 -1
  232. package/lib/cjs/geometry3d/GeometryHandler.d.ts +15 -16
  233. package/lib/cjs/geometry3d/GeometryHandler.d.ts.map +1 -1
  234. package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -1
  235. package/lib/cjs/geometry3d/GrowableBlockedArray.js +12 -0
  236. package/lib/cjs/geometry3d/GrowableBlockedArray.js.map +1 -1
  237. package/lib/cjs/geometry3d/GrowableFloat64Array.js +3 -0
  238. package/lib/cjs/geometry3d/GrowableFloat64Array.js.map +1 -1
  239. package/lib/cjs/geometry3d/GrowableXYArray.d.ts +0 -5
  240. package/lib/cjs/geometry3d/GrowableXYArray.d.ts.map +1 -1
  241. package/lib/cjs/geometry3d/GrowableXYArray.js +16 -7
  242. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
  243. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts +32 -10
  244. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  245. package/lib/cjs/geometry3d/GrowableXYZArray.js +70 -16
  246. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -1
  247. package/lib/cjs/geometry3d/IndexedCollectionInterval.js +6 -0
  248. package/lib/cjs/geometry3d/IndexedCollectionInterval.js.map +1 -1
  249. package/lib/cjs/geometry3d/IndexedXYCollection.js +1 -0
  250. package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -1
  251. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts +13 -2
  252. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  253. package/lib/cjs/geometry3d/IndexedXYZCollection.js +26 -11
  254. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -1
  255. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js +3 -0
  256. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  257. package/lib/cjs/geometry3d/Matrix3d.d.ts +13 -15
  258. package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -1
  259. package/lib/cjs/geometry3d/Matrix3d.js +47 -26
  260. package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
  261. package/lib/cjs/geometry3d/OrderedRotationAngles.js +10 -2
  262. package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -1
  263. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js +2 -0
  264. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  265. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js +7 -0
  266. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  267. package/lib/cjs/geometry3d/Point2dArrayCarrier.js +2 -0
  268. package/lib/cjs/geometry3d/Point2dArrayCarrier.js.map +1 -1
  269. package/lib/cjs/geometry3d/Point2dVector2d.js +4 -0
  270. package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
  271. package/lib/cjs/geometry3d/Point3dArrayCarrier.js +3 -1
  272. package/lib/cjs/geometry3d/Point3dArrayCarrier.js.map +1 -1
  273. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +7 -10
  274. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  275. package/lib/cjs/geometry3d/Point3dVector3d.js +16 -10
  276. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  277. package/lib/cjs/geometry3d/PointHelpers.d.ts +15 -4
  278. package/lib/cjs/geometry3d/PointHelpers.d.ts.map +1 -1
  279. package/lib/cjs/geometry3d/PointHelpers.js +29 -8
  280. package/lib/cjs/geometry3d/PointHelpers.js.map +1 -1
  281. package/lib/cjs/geometry3d/PointStreaming.js +12 -4
  282. package/lib/cjs/geometry3d/PointStreaming.js.map +1 -1
  283. package/lib/cjs/geometry3d/PolygonOps.d.ts +2 -2
  284. package/lib/cjs/geometry3d/PolygonOps.js +62 -25
  285. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
  286. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js +7 -3
  287. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  288. package/lib/cjs/geometry3d/PolylineOps.d.ts +9 -5
  289. package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -1
  290. package/lib/cjs/geometry3d/PolylineOps.js +12 -5
  291. package/lib/cjs/geometry3d/PolylineOps.js.map +1 -1
  292. package/lib/cjs/geometry3d/Range.js +21 -4
  293. package/lib/cjs/geometry3d/Range.js.map +1 -1
  294. package/lib/cjs/geometry3d/Ray2d.js +2 -0
  295. package/lib/cjs/geometry3d/Ray2d.js.map +1 -1
  296. package/lib/cjs/geometry3d/Ray3d.d.ts +2 -2
  297. package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
  298. package/lib/cjs/geometry3d/Ray3d.js +20 -11
  299. package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
  300. package/lib/cjs/geometry3d/ReusableObjectCache.js +4 -0
  301. package/lib/cjs/geometry3d/ReusableObjectCache.js.map +1 -1
  302. package/lib/cjs/geometry3d/Segment1d.js +4 -0
  303. package/lib/cjs/geometry3d/Segment1d.js.map +1 -1
  304. package/lib/cjs/geometry3d/SortablePolygon.js +11 -0
  305. package/lib/cjs/geometry3d/SortablePolygon.js.map +1 -1
  306. package/lib/cjs/geometry3d/Transform.d.ts +1 -1
  307. package/lib/cjs/geometry3d/Transform.js +4 -1
  308. package/lib/cjs/geometry3d/Transform.js.map +1 -1
  309. package/lib/cjs/geometry3d/YawPitchRollAngles.js +6 -0
  310. package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -1
  311. package/lib/cjs/geometry4d/Map4d.js +2 -0
  312. package/lib/cjs/geometry4d/Map4d.js.map +1 -1
  313. package/lib/cjs/geometry4d/Matrix4d.js +1 -0
  314. package/lib/cjs/geometry4d/Matrix4d.js.map +1 -1
  315. package/lib/cjs/geometry4d/MomentData.d.ts +72 -73
  316. package/lib/cjs/geometry4d/MomentData.d.ts.map +1 -1
  317. package/lib/cjs/geometry4d/MomentData.js +90 -66
  318. package/lib/cjs/geometry4d/MomentData.js.map +1 -1
  319. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js +6 -0
  320. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  321. package/lib/cjs/geometry4d/Point4d.js +2 -0
  322. package/lib/cjs/geometry4d/Point4d.js.map +1 -1
  323. package/lib/cjs/numerics/BezierPolynomials.js +8 -0
  324. package/lib/cjs/numerics/BezierPolynomials.js.map +1 -1
  325. package/lib/cjs/numerics/ClusterableArray.js +29 -13
  326. package/lib/cjs/numerics/ClusterableArray.js.map +1 -1
  327. package/lib/cjs/numerics/Complex.js +2 -0
  328. package/lib/cjs/numerics/Complex.js.map +1 -1
  329. package/lib/cjs/numerics/ConvexPolygon2d.js +3 -0
  330. package/lib/cjs/numerics/ConvexPolygon2d.js.map +1 -1
  331. package/lib/cjs/numerics/Newton.js +59 -4
  332. package/lib/cjs/numerics/Newton.js.map +1 -1
  333. package/lib/cjs/numerics/PascalCoefficients.js +1 -1
  334. package/lib/cjs/numerics/PascalCoefficients.js.map +1 -1
  335. package/lib/cjs/numerics/PolarData.js +13 -1
  336. package/lib/cjs/numerics/PolarData.js.map +1 -1
  337. package/lib/cjs/numerics/Polynomials.js +64 -26
  338. package/lib/cjs/numerics/Polynomials.js.map +1 -1
  339. package/lib/cjs/numerics/Quadrature.js +26 -20
  340. package/lib/cjs/numerics/Quadrature.js.map +1 -1
  341. package/lib/cjs/numerics/TriDiagonalSystem.js +11 -0
  342. package/lib/cjs/numerics/TriDiagonalSystem.js.map +1 -1
  343. package/lib/cjs/numerics/UnionFind.js +1 -0
  344. package/lib/cjs/numerics/UnionFind.js.map +1 -1
  345. package/lib/cjs/numerics/UsageSums.js +10 -0
  346. package/lib/cjs/numerics/UsageSums.js.map +1 -1
  347. package/lib/cjs/polyface/AuxData.js +16 -0
  348. package/lib/cjs/polyface/AuxData.js.map +1 -1
  349. package/lib/cjs/polyface/BoxTopology.js +67 -67
  350. package/lib/cjs/polyface/BoxTopology.js.map +1 -1
  351. package/lib/cjs/polyface/FacetFaceData.d.ts +1 -1
  352. package/lib/cjs/polyface/FacetFaceData.js +3 -1
  353. package/lib/cjs/polyface/FacetFaceData.js.map +1 -1
  354. package/lib/cjs/polyface/FacetLocationDetail.js +30 -0
  355. package/lib/cjs/polyface/FacetLocationDetail.js.map +1 -1
  356. package/lib/cjs/polyface/FacetOrientation.js +12 -1
  357. package/lib/cjs/polyface/FacetOrientation.js.map +1 -1
  358. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js +18 -2
  359. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  360. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts +33 -23
  361. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  362. package/lib/cjs/polyface/IndexedEdgeMatcher.js +63 -33
  363. package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -1
  364. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts +4 -3
  365. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  366. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js +16 -5
  367. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  368. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts +233 -0
  369. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts.map +1 -0
  370. package/lib/cjs/polyface/IndexedPolyfaceWalker.js +353 -0
  371. package/lib/cjs/polyface/IndexedPolyfaceWalker.js.map +1 -0
  372. package/lib/cjs/polyface/Polyface.d.ts +43 -14
  373. package/lib/cjs/polyface/Polyface.d.ts.map +1 -1
  374. package/lib/cjs/polyface/Polyface.js +90 -19
  375. package/lib/cjs/polyface/Polyface.js.map +1 -1
  376. package/lib/cjs/polyface/PolyfaceBuilder.d.ts +14 -27
  377. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  378. package/lib/cjs/polyface/PolyfaceBuilder.js +47 -79
  379. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  380. package/lib/cjs/polyface/PolyfaceClip.js +8 -0
  381. package/lib/cjs/polyface/PolyfaceClip.js.map +1 -1
  382. package/lib/cjs/polyface/PolyfaceData.d.ts +36 -3
  383. package/lib/cjs/polyface/PolyfaceData.d.ts.map +1 -1
  384. package/lib/cjs/polyface/PolyfaceData.js +114 -8
  385. package/lib/cjs/polyface/PolyfaceData.js.map +1 -1
  386. package/lib/cjs/polyface/PolyfaceQuery.js +47 -7
  387. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  388. package/lib/cjs/polyface/RangeLengthData.js +7 -0
  389. package/lib/cjs/polyface/RangeLengthData.js.map +1 -1
  390. package/lib/cjs/polyface/RangeTree/LineString3dRangeTreeContext.js +12 -0
  391. package/lib/cjs/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  392. package/lib/cjs/polyface/RangeTree/MinimumValueTester.js +5 -2
  393. package/lib/cjs/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  394. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js +12 -0
  395. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  396. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js +14 -0
  397. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  398. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js +5 -0
  399. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  400. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js +43 -0
  401. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  402. package/lib/cjs/polyface/TaggedNumericData.js +8 -0
  403. package/lib/cjs/polyface/TaggedNumericData.js.map +1 -1
  404. package/lib/cjs/polyface/TriangleCandidate.js +3 -0
  405. package/lib/cjs/polyface/TriangleCandidate.js.map +1 -1
  406. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js +7 -0
  407. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  408. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js +6 -0
  409. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  410. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +3 -0
  411. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  412. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js +3 -0
  413. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  414. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js +32 -0
  415. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  416. package/lib/cjs/polyface/multiclip/RangeSearch.js +5 -5
  417. package/lib/cjs/polyface/multiclip/RangeSearch.js.map +1 -1
  418. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js +21 -8
  419. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  420. package/lib/cjs/polyface/multiclip/XYPointBuckets.js +6 -0
  421. package/lib/cjs/polyface/multiclip/XYPointBuckets.js.map +1 -1
  422. package/lib/cjs/serialization/BGFBAccessors.d.ts +35 -9
  423. package/lib/cjs/serialization/BGFBAccessors.d.ts.map +1 -1
  424. package/lib/cjs/serialization/BGFBAccessors.js +141 -179
  425. package/lib/cjs/serialization/BGFBAccessors.js.map +1 -1
  426. package/lib/cjs/serialization/BGFBReader.d.ts +2 -2
  427. package/lib/cjs/serialization/BGFBReader.d.ts.map +1 -1
  428. package/lib/cjs/serialization/BGFBReader.js +75 -62
  429. package/lib/cjs/serialization/BGFBReader.js.map +1 -1
  430. package/lib/cjs/serialization/BGFBWriter.d.ts +5 -1
  431. package/lib/cjs/serialization/BGFBWriter.d.ts.map +1 -1
  432. package/lib/cjs/serialization/BGFBWriter.js +18 -3
  433. package/lib/cjs/serialization/BGFBWriter.js.map +1 -1
  434. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js +1 -0
  435. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  436. package/lib/cjs/serialization/DeepCompare.js +17 -17
  437. package/lib/cjs/serialization/DeepCompare.js.map +1 -1
  438. package/lib/cjs/serialization/GeometrySamples.d.ts +5 -5
  439. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  440. package/lib/cjs/serialization/GeometrySamples.js +113 -112
  441. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  442. package/lib/cjs/serialization/IModelJsonSchema.d.ts +78 -64
  443. package/lib/cjs/serialization/IModelJsonSchema.d.ts.map +1 -1
  444. package/lib/cjs/serialization/IModelJsonSchema.js +107 -83
  445. package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -1
  446. package/lib/cjs/serialization/SerializationHelpers.d.ts +36 -0
  447. package/lib/cjs/serialization/SerializationHelpers.d.ts.map +1 -1
  448. package/lib/cjs/serialization/SerializationHelpers.js +117 -0
  449. package/lib/cjs/serialization/SerializationHelpers.js.map +1 -1
  450. package/lib/cjs/solid/Box.js +7 -2
  451. package/lib/cjs/solid/Box.js.map +1 -1
  452. package/lib/cjs/solid/Cone.d.ts +39 -14
  453. package/lib/cjs/solid/Cone.d.ts.map +1 -1
  454. package/lib/cjs/solid/Cone.js +52 -16
  455. package/lib/cjs/solid/Cone.js.map +1 -1
  456. package/lib/cjs/solid/LinearSweep.js +4 -2
  457. package/lib/cjs/solid/LinearSweep.js.map +1 -1
  458. package/lib/cjs/solid/RotationalSweep.d.ts +17 -17
  459. package/lib/cjs/solid/RotationalSweep.d.ts.map +1 -1
  460. package/lib/cjs/solid/RotationalSweep.js +38 -25
  461. package/lib/cjs/solid/RotationalSweep.js.map +1 -1
  462. package/lib/cjs/solid/RuledSweep.d.ts +26 -23
  463. package/lib/cjs/solid/RuledSweep.d.ts.map +1 -1
  464. package/lib/cjs/solid/RuledSweep.js +32 -24
  465. package/lib/cjs/solid/RuledSweep.js.map +1 -1
  466. package/lib/cjs/solid/SolidPrimitive.d.ts +12 -11
  467. package/lib/cjs/solid/SolidPrimitive.d.ts.map +1 -1
  468. package/lib/cjs/solid/SolidPrimitive.js +11 -6
  469. package/lib/cjs/solid/SolidPrimitive.js.map +1 -1
  470. package/lib/cjs/solid/Sphere.d.ts +36 -17
  471. package/lib/cjs/solid/Sphere.d.ts.map +1 -1
  472. package/lib/cjs/solid/Sphere.js +53 -24
  473. package/lib/cjs/solid/Sphere.js.map +1 -1
  474. package/lib/cjs/solid/SweepContour.d.ts +24 -15
  475. package/lib/cjs/solid/SweepContour.d.ts.map +1 -1
  476. package/lib/cjs/solid/SweepContour.js +33 -15
  477. package/lib/cjs/solid/SweepContour.js.map +1 -1
  478. package/lib/cjs/solid/TorusPipe.js +7 -2
  479. package/lib/cjs/solid/TorusPipe.js.map +1 -1
  480. package/lib/cjs/topology/ChainMerge.js +16 -4
  481. package/lib/cjs/topology/ChainMerge.js.map +1 -1
  482. package/lib/cjs/topology/Graph.js +41 -6
  483. package/lib/cjs/topology/Graph.js.map +1 -1
  484. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +1 -1
  485. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +5 -1
  486. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  487. package/lib/cjs/topology/HalfEdgeGraphSearch.js +2 -0
  488. package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -1
  489. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js +9 -2
  490. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  491. package/lib/cjs/topology/HalfEdgeGraphValidation.js +7 -9
  492. package/lib/cjs/topology/HalfEdgeGraphValidation.js.map +1 -1
  493. package/lib/cjs/topology/HalfEdgeMarkSet.js +5 -0
  494. package/lib/cjs/topology/HalfEdgeMarkSet.js.map +1 -1
  495. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js +6 -0
  496. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  497. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js +1 -0
  498. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  499. package/lib/cjs/topology/HalfEdgePositionDetail.js +16 -0
  500. package/lib/cjs/topology/HalfEdgePositionDetail.js.map +1 -1
  501. package/lib/cjs/topology/HalfEdgePriorityQueue.js +2 -0
  502. package/lib/cjs/topology/HalfEdgePriorityQueue.js.map +1 -1
  503. package/lib/cjs/topology/InsertAndRetriangulateContext.js +4 -0
  504. package/lib/cjs/topology/InsertAndRetriangulateContext.js.map +1 -1
  505. package/lib/cjs/topology/MaskManager.js +3 -0
  506. package/lib/cjs/topology/MaskManager.js.map +1 -1
  507. package/lib/cjs/topology/Merging.js +11 -6
  508. package/lib/cjs/topology/Merging.js.map +1 -1
  509. package/lib/cjs/topology/RegularizeFace.js +22 -0
  510. package/lib/cjs/topology/RegularizeFace.js.map +1 -1
  511. package/lib/cjs/topology/SignedDataSummary.js +22 -0
  512. package/lib/cjs/topology/SignedDataSummary.js.map +1 -1
  513. package/lib/cjs/topology/Triangulation.d.ts +3 -3
  514. package/lib/cjs/topology/Triangulation.d.ts.map +1 -1
  515. package/lib/cjs/topology/Triangulation.js +28 -18
  516. package/lib/cjs/topology/Triangulation.js.map +1 -1
  517. package/lib/cjs/topology/XYParitySearchContext.js +13 -0
  518. package/lib/cjs/topology/XYParitySearchContext.js.map +1 -1
  519. package/lib/esm/Constant.js +17 -17
  520. package/lib/esm/Constant.js.map +1 -1
  521. package/lib/esm/Geometry.d.ts +13 -4
  522. package/lib/esm/Geometry.d.ts.map +1 -1
  523. package/lib/esm/Geometry.js +51 -39
  524. package/lib/esm/Geometry.js.map +1 -1
  525. package/lib/esm/bspline/AkimaCurve3d.js +3 -1
  526. package/lib/esm/bspline/AkimaCurve3d.js.map +1 -1
  527. package/lib/esm/bspline/BSpline1dNd.d.ts +90 -54
  528. package/lib/esm/bspline/BSpline1dNd.d.ts.map +1 -1
  529. package/lib/esm/bspline/BSpline1dNd.js +137 -84
  530. package/lib/esm/bspline/BSpline1dNd.js.map +1 -1
  531. package/lib/esm/bspline/BSplineCurve.d.ts +193 -155
  532. package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -1
  533. package/lib/esm/bspline/BSplineCurve.js +249 -181
  534. package/lib/esm/bspline/BSplineCurve.js.map +1 -1
  535. package/lib/esm/bspline/BSplineCurve3dH.js +1 -0
  536. package/lib/esm/bspline/BSplineCurve3dH.js.map +1 -1
  537. package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -1
  538. package/lib/esm/bspline/BSplineCurveOps.js +18 -21
  539. package/lib/esm/bspline/BSplineCurveOps.js.map +1 -1
  540. package/lib/esm/bspline/BSplineSurface.js +22 -2
  541. package/lib/esm/bspline/BSplineSurface.js.map +1 -1
  542. package/lib/esm/bspline/Bezier1dNd.js +6 -0
  543. package/lib/esm/bspline/Bezier1dNd.js.map +1 -1
  544. package/lib/esm/bspline/BezierCurve3d.d.ts +3 -1
  545. package/lib/esm/bspline/BezierCurve3d.d.ts.map +1 -1
  546. package/lib/esm/bspline/BezierCurve3d.js +5 -5
  547. package/lib/esm/bspline/BezierCurve3d.js.map +1 -1
  548. package/lib/esm/bspline/BezierCurve3dH.js +2 -0
  549. package/lib/esm/bspline/BezierCurve3dH.js.map +1 -1
  550. package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -1
  551. package/lib/esm/bspline/BezierCurveBase.js +21 -2
  552. package/lib/esm/bspline/BezierCurveBase.js.map +1 -1
  553. package/lib/esm/bspline/InterpolationCurve3d.js +12 -1
  554. package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -1
  555. package/lib/esm/bspline/KnotVector.d.ts +82 -60
  556. package/lib/esm/bspline/KnotVector.d.ts.map +1 -1
  557. package/lib/esm/bspline/KnotVector.js +144 -84
  558. package/lib/esm/bspline/KnotVector.js.map +1 -1
  559. package/lib/esm/bspline/SurfaceLocationDetail.js +12 -0
  560. package/lib/esm/bspline/SurfaceLocationDetail.js.map +1 -1
  561. package/lib/esm/clipping/AlternatingConvexClipTree.js +14 -13
  562. package/lib/esm/clipping/AlternatingConvexClipTree.js.map +1 -1
  563. package/lib/esm/clipping/BooleanClipNode.js +4 -0
  564. package/lib/esm/clipping/BooleanClipNode.js.map +1 -1
  565. package/lib/esm/clipping/ClipPlane.js +10 -1
  566. package/lib/esm/clipping/ClipPlane.js.map +1 -1
  567. package/lib/esm/clipping/ClipPrimitive.js +19 -0
  568. package/lib/esm/clipping/ClipPrimitive.js.map +1 -1
  569. package/lib/esm/clipping/ClipUtils.js +5 -1
  570. package/lib/esm/clipping/ClipUtils.js.map +1 -1
  571. package/lib/esm/clipping/ClipVector.js +11 -8
  572. package/lib/esm/clipping/ClipVector.js.map +1 -1
  573. package/lib/esm/clipping/ConvexClipPlaneSet.js +5 -3
  574. package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -1
  575. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js +2 -1
  576. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  577. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js +3 -0
  578. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  579. package/lib/esm/core-geometry.d.ts +1 -0
  580. package/lib/esm/core-geometry.d.ts.map +1 -1
  581. package/lib/esm/core-geometry.js +1 -0
  582. package/lib/esm/core-geometry.js.map +1 -1
  583. package/lib/esm/curve/Arc3d.d.ts +20 -4
  584. package/lib/esm/curve/Arc3d.d.ts.map +1 -1
  585. package/lib/esm/curve/Arc3d.js +86 -21
  586. package/lib/esm/curve/Arc3d.js.map +1 -1
  587. package/lib/esm/curve/ConstructCurveBetweenCurves.js +3 -0
  588. package/lib/esm/curve/ConstructCurveBetweenCurves.js.map +1 -1
  589. package/lib/esm/curve/CoordinateXYZ.js +3 -2
  590. package/lib/esm/curve/CoordinateXYZ.js.map +1 -1
  591. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +0 -2
  592. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  593. package/lib/esm/curve/CurveChainWithDistanceIndex.js +25 -10
  594. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
  595. package/lib/esm/curve/CurveCollection.d.ts +10 -0
  596. package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
  597. package/lib/esm/curve/CurveCollection.js +35 -9
  598. package/lib/esm/curve/CurveCollection.js.map +1 -1
  599. package/lib/esm/curve/CurveExtendMode.d.ts +13 -5
  600. package/lib/esm/curve/CurveExtendMode.d.ts.map +1 -1
  601. package/lib/esm/curve/CurveExtendMode.js +19 -15
  602. package/lib/esm/curve/CurveExtendMode.js.map +1 -1
  603. package/lib/esm/curve/CurveFactory.d.ts +87 -53
  604. package/lib/esm/curve/CurveFactory.d.ts.map +1 -1
  605. package/lib/esm/curve/CurveFactory.js +213 -135
  606. package/lib/esm/curve/CurveFactory.js.map +1 -1
  607. package/lib/esm/curve/CurveLocationDetail.js +44 -0
  608. package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
  609. package/lib/esm/curve/CurvePrimitive.d.ts +74 -18
  610. package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -1
  611. package/lib/esm/curve/CurvePrimitive.js +86 -18
  612. package/lib/esm/curve/CurvePrimitive.js.map +1 -1
  613. package/lib/esm/curve/CurveProcessor.js +2 -0
  614. package/lib/esm/curve/CurveProcessor.js.map +1 -1
  615. package/lib/esm/curve/CurveWireMomentsXYZ.js +2 -0
  616. package/lib/esm/curve/CurveWireMomentsXYZ.js.map +1 -1
  617. package/lib/esm/curve/LineSegment3d.js +6 -2
  618. package/lib/esm/curve/LineSegment3d.js.map +1 -1
  619. package/lib/esm/curve/LineString3d.d.ts +8 -7
  620. package/lib/esm/curve/LineString3d.d.ts.map +1 -1
  621. package/lib/esm/curve/LineString3d.js +52 -29
  622. package/lib/esm/curve/LineString3d.js.map +1 -1
  623. package/lib/esm/curve/Loop.js +12 -4
  624. package/lib/esm/curve/Loop.js.map +1 -1
  625. package/lib/esm/curve/OffsetOptions.js +25 -21
  626. package/lib/esm/curve/OffsetOptions.js.map +1 -1
  627. package/lib/esm/curve/ParityRegion.js +4 -2
  628. package/lib/esm/curve/ParityRegion.js.map +1 -1
  629. package/lib/esm/curve/Path.js +2 -2
  630. package/lib/esm/curve/Path.js.map +1 -1
  631. package/lib/esm/curve/PointString3d.js +3 -2
  632. package/lib/esm/curve/PointString3d.js.map +1 -1
  633. package/lib/esm/curve/ProxyCurve.js +1 -0
  634. package/lib/esm/curve/ProxyCurve.js.map +1 -1
  635. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +1 -0
  636. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  637. package/lib/esm/curve/Query/CurveSplitContext.js +3 -0
  638. package/lib/esm/curve/Query/CurveSplitContext.js.map +1 -1
  639. package/lib/esm/curve/Query/CylindricalRange.js +6 -2
  640. package/lib/esm/curve/Query/CylindricalRange.js.map +1 -1
  641. package/lib/esm/curve/Query/PlanarSubdivision.js +4 -6
  642. package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -1
  643. package/lib/esm/curve/Query/StrokeCountChain.js +12 -0
  644. package/lib/esm/curve/Query/StrokeCountChain.js.map +1 -1
  645. package/lib/esm/curve/Query/StrokeCountMap.js +14 -0
  646. package/lib/esm/curve/Query/StrokeCountMap.js.map +1 -1
  647. package/lib/esm/curve/RegionMomentsXY.js +4 -5
  648. package/lib/esm/curve/RegionMomentsXY.js.map +1 -1
  649. package/lib/esm/curve/RegionOps.js +9 -10
  650. package/lib/esm/curve/RegionOps.js.map +1 -1
  651. package/lib/esm/curve/RegionOpsClassificationSweeps.js +24 -1
  652. package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -1
  653. package/lib/esm/curve/StrokeOptions.d.ts +10 -5
  654. package/lib/esm/curve/StrokeOptions.d.ts.map +1 -1
  655. package/lib/esm/curve/StrokeOptions.js +30 -8
  656. package/lib/esm/curve/StrokeOptions.js.map +1 -1
  657. package/lib/esm/curve/UnionRegion.js +4 -2
  658. package/lib/esm/curve/UnionRegion.js.map +1 -1
  659. package/lib/esm/curve/internalContexts/AnnounceTangentStrokeHandler.d.ts +71 -0
  660. package/lib/esm/curve/internalContexts/AnnounceTangentStrokeHandler.d.ts.map +1 -0
  661. package/lib/esm/curve/internalContexts/AnnounceTangentStrokeHandler.js +177 -0
  662. package/lib/esm/curve/internalContexts/AnnounceTangentStrokeHandler.js.map +1 -0
  663. package/lib/esm/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js +13 -7
  664. package/lib/esm/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  665. package/lib/esm/curve/internalContexts/ChainCollectorContext.js +6 -0
  666. package/lib/esm/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  667. package/lib/esm/curve/internalContexts/CloneCurvesContext.js +2 -0
  668. package/lib/esm/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  669. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.d.ts +21 -5
  670. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.d.ts.map +1 -1
  671. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js +53 -20
  672. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  673. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js +3 -0
  674. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  675. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js +18 -5
  676. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  677. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +26 -13
  678. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  679. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js +11 -5
  680. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  681. package/lib/esm/curve/internalContexts/CurveLengthContext.js +6 -0
  682. package/lib/esm/curve/internalContexts/CurveLengthContext.js.map +1 -1
  683. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js +8 -6
  684. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  685. package/lib/esm/curve/internalContexts/EllipticalArcApproximationContext.js +38 -5
  686. package/lib/esm/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  687. package/lib/esm/curve/internalContexts/GapSearchContext.js +1 -0
  688. package/lib/esm/curve/internalContexts/GapSearchContext.js.map +1 -1
  689. package/lib/esm/curve/internalContexts/MultiChainCollector.js +12 -0
  690. package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -1
  691. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.d.ts +5 -3
  692. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.d.ts.map +1 -1
  693. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.js +6 -3
  694. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  695. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js +7 -0
  696. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  697. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +22 -4
  698. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  699. package/lib/esm/curve/internalContexts/SumLengthsContext.js +1 -0
  700. package/lib/esm/curve/internalContexts/SumLengthsContext.js.map +1 -1
  701. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js +3 -0
  702. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  703. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js +2 -0
  704. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  705. package/lib/esm/curve/spiral/ClothoidSeries.js +4 -0
  706. package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -1
  707. package/lib/esm/curve/spiral/CubicEvaluator.js +2 -0
  708. package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -1
  709. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js +4 -0
  710. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  711. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js +5 -0
  712. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  713. package/lib/esm/curve/spiral/DirectSpiral3d.js +12 -2
  714. package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -1
  715. package/lib/esm/curve/spiral/IntegratedSpiral3d.js +24 -4
  716. package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  717. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +2 -0
  718. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  719. package/lib/esm/curve/spiral/NormalizedTransition.js +5 -0
  720. package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -1
  721. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js +2 -0
  722. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  723. package/lib/esm/curve/spiral/TransitionConditionalProperties.js +10 -0
  724. package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  725. package/lib/esm/curve/spiral/TransitionSpiral3d.js +10 -0
  726. package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -1
  727. package/lib/esm/curve/spiral/XYCurveEvaluator.js +6 -0
  728. package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -1
  729. package/lib/esm/geometry3d/Angle.js +18 -16
  730. package/lib/esm/geometry3d/Angle.js.map +1 -1
  731. package/lib/esm/geometry3d/AngleSweep.d.ts +8 -3
  732. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
  733. package/lib/esm/geometry3d/AngleSweep.js +22 -10
  734. package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
  735. package/lib/esm/geometry3d/BarycentricTriangle.js +25 -0
  736. package/lib/esm/geometry3d/BarycentricTriangle.js.map +1 -1
  737. package/lib/esm/geometry3d/BilinearPatch.js +8 -0
  738. package/lib/esm/geometry3d/BilinearPatch.js.map +1 -1
  739. package/lib/esm/geometry3d/CoincidentGeometryOps.js +5 -0
  740. package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -1
  741. package/lib/esm/geometry3d/Ellipsoid.d.ts +8 -7
  742. package/lib/esm/geometry3d/Ellipsoid.d.ts.map +1 -1
  743. package/lib/esm/geometry3d/Ellipsoid.js +63 -14
  744. package/lib/esm/geometry3d/Ellipsoid.js.map +1 -1
  745. package/lib/esm/geometry3d/FrameBuilder.js +12 -4
  746. package/lib/esm/geometry3d/FrameBuilder.js.map +1 -1
  747. package/lib/esm/geometry3d/FrustumAnimation.js +7 -0
  748. package/lib/esm/geometry3d/FrustumAnimation.js.map +1 -1
  749. package/lib/esm/geometry3d/GeometryHandler.d.ts +15 -16
  750. package/lib/esm/geometry3d/GeometryHandler.d.ts.map +1 -1
  751. package/lib/esm/geometry3d/GeometryHandler.js.map +1 -1
  752. package/lib/esm/geometry3d/GrowableBlockedArray.js +12 -0
  753. package/lib/esm/geometry3d/GrowableBlockedArray.js.map +1 -1
  754. package/lib/esm/geometry3d/GrowableFloat64Array.js +3 -0
  755. package/lib/esm/geometry3d/GrowableFloat64Array.js.map +1 -1
  756. package/lib/esm/geometry3d/GrowableXYArray.d.ts +0 -5
  757. package/lib/esm/geometry3d/GrowableXYArray.d.ts.map +1 -1
  758. package/lib/esm/geometry3d/GrowableXYArray.js +16 -7
  759. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
  760. package/lib/esm/geometry3d/GrowableXYZArray.d.ts +32 -10
  761. package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  762. package/lib/esm/geometry3d/GrowableXYZArray.js +70 -16
  763. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -1
  764. package/lib/esm/geometry3d/IndexedCollectionInterval.js +6 -0
  765. package/lib/esm/geometry3d/IndexedCollectionInterval.js.map +1 -1
  766. package/lib/esm/geometry3d/IndexedXYCollection.js +1 -0
  767. package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -1
  768. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +13 -2
  769. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  770. package/lib/esm/geometry3d/IndexedXYZCollection.js +26 -11
  771. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -1
  772. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js +3 -0
  773. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  774. package/lib/esm/geometry3d/Matrix3d.d.ts +13 -15
  775. package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -1
  776. package/lib/esm/geometry3d/Matrix3d.js +47 -26
  777. package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
  778. package/lib/esm/geometry3d/OrderedRotationAngles.js +10 -2
  779. package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -1
  780. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js +2 -0
  781. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  782. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +7 -0
  783. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  784. package/lib/esm/geometry3d/Point2dArrayCarrier.js +2 -0
  785. package/lib/esm/geometry3d/Point2dArrayCarrier.js.map +1 -1
  786. package/lib/esm/geometry3d/Point2dVector2d.js +4 -0
  787. package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
  788. package/lib/esm/geometry3d/Point3dArrayCarrier.js +3 -1
  789. package/lib/esm/geometry3d/Point3dArrayCarrier.js.map +1 -1
  790. package/lib/esm/geometry3d/Point3dVector3d.d.ts +7 -10
  791. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  792. package/lib/esm/geometry3d/Point3dVector3d.js +16 -10
  793. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  794. package/lib/esm/geometry3d/PointHelpers.d.ts +15 -4
  795. package/lib/esm/geometry3d/PointHelpers.d.ts.map +1 -1
  796. package/lib/esm/geometry3d/PointHelpers.js +29 -8
  797. package/lib/esm/geometry3d/PointHelpers.js.map +1 -1
  798. package/lib/esm/geometry3d/PointStreaming.js +12 -4
  799. package/lib/esm/geometry3d/PointStreaming.js.map +1 -1
  800. package/lib/esm/geometry3d/PolygonOps.d.ts +2 -2
  801. package/lib/esm/geometry3d/PolygonOps.js +62 -25
  802. package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
  803. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +7 -3
  804. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  805. package/lib/esm/geometry3d/PolylineOps.d.ts +9 -5
  806. package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -1
  807. package/lib/esm/geometry3d/PolylineOps.js +12 -5
  808. package/lib/esm/geometry3d/PolylineOps.js.map +1 -1
  809. package/lib/esm/geometry3d/Range.js +21 -4
  810. package/lib/esm/geometry3d/Range.js.map +1 -1
  811. package/lib/esm/geometry3d/Ray2d.js +2 -0
  812. package/lib/esm/geometry3d/Ray2d.js.map +1 -1
  813. package/lib/esm/geometry3d/Ray3d.d.ts +2 -2
  814. package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
  815. package/lib/esm/geometry3d/Ray3d.js +20 -11
  816. package/lib/esm/geometry3d/Ray3d.js.map +1 -1
  817. package/lib/esm/geometry3d/ReusableObjectCache.js +4 -0
  818. package/lib/esm/geometry3d/ReusableObjectCache.js.map +1 -1
  819. package/lib/esm/geometry3d/Segment1d.js +4 -0
  820. package/lib/esm/geometry3d/Segment1d.js.map +1 -1
  821. package/lib/esm/geometry3d/SortablePolygon.js +11 -0
  822. package/lib/esm/geometry3d/SortablePolygon.js.map +1 -1
  823. package/lib/esm/geometry3d/Transform.d.ts +1 -1
  824. package/lib/esm/geometry3d/Transform.js +4 -1
  825. package/lib/esm/geometry3d/Transform.js.map +1 -1
  826. package/lib/esm/geometry3d/YawPitchRollAngles.js +6 -0
  827. package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -1
  828. package/lib/esm/geometry4d/Map4d.js +2 -0
  829. package/lib/esm/geometry4d/Map4d.js.map +1 -1
  830. package/lib/esm/geometry4d/Matrix4d.js +1 -0
  831. package/lib/esm/geometry4d/Matrix4d.js.map +1 -1
  832. package/lib/esm/geometry4d/MomentData.d.ts +72 -73
  833. package/lib/esm/geometry4d/MomentData.d.ts.map +1 -1
  834. package/lib/esm/geometry4d/MomentData.js +90 -66
  835. package/lib/esm/geometry4d/MomentData.js.map +1 -1
  836. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js +6 -0
  837. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  838. package/lib/esm/geometry4d/Point4d.js +2 -0
  839. package/lib/esm/geometry4d/Point4d.js.map +1 -1
  840. package/lib/esm/numerics/BezierPolynomials.js +8 -0
  841. package/lib/esm/numerics/BezierPolynomials.js.map +1 -1
  842. package/lib/esm/numerics/ClusterableArray.js +29 -13
  843. package/lib/esm/numerics/ClusterableArray.js.map +1 -1
  844. package/lib/esm/numerics/Complex.js +2 -0
  845. package/lib/esm/numerics/Complex.js.map +1 -1
  846. package/lib/esm/numerics/ConvexPolygon2d.js +3 -0
  847. package/lib/esm/numerics/ConvexPolygon2d.js.map +1 -1
  848. package/lib/esm/numerics/Newton.js +59 -4
  849. package/lib/esm/numerics/Newton.js.map +1 -1
  850. package/lib/esm/numerics/PascalCoefficients.js +1 -1
  851. package/lib/esm/numerics/PascalCoefficients.js.map +1 -1
  852. package/lib/esm/numerics/PolarData.js +13 -1
  853. package/lib/esm/numerics/PolarData.js.map +1 -1
  854. package/lib/esm/numerics/Polynomials.js +64 -26
  855. package/lib/esm/numerics/Polynomials.js.map +1 -1
  856. package/lib/esm/numerics/Quadrature.js +26 -20
  857. package/lib/esm/numerics/Quadrature.js.map +1 -1
  858. package/lib/esm/numerics/TriDiagonalSystem.js +11 -0
  859. package/lib/esm/numerics/TriDiagonalSystem.js.map +1 -1
  860. package/lib/esm/numerics/UnionFind.js +1 -0
  861. package/lib/esm/numerics/UnionFind.js.map +1 -1
  862. package/lib/esm/numerics/UsageSums.js +10 -0
  863. package/lib/esm/numerics/UsageSums.js.map +1 -1
  864. package/lib/esm/polyface/AuxData.js +16 -0
  865. package/lib/esm/polyface/AuxData.js.map +1 -1
  866. package/lib/esm/polyface/BoxTopology.js +67 -67
  867. package/lib/esm/polyface/BoxTopology.js.map +1 -1
  868. package/lib/esm/polyface/FacetFaceData.d.ts +1 -1
  869. package/lib/esm/polyface/FacetFaceData.js +3 -1
  870. package/lib/esm/polyface/FacetFaceData.js.map +1 -1
  871. package/lib/esm/polyface/FacetLocationDetail.js +30 -0
  872. package/lib/esm/polyface/FacetLocationDetail.js.map +1 -1
  873. package/lib/esm/polyface/FacetOrientation.js +12 -1
  874. package/lib/esm/polyface/FacetOrientation.js.map +1 -1
  875. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js +18 -2
  876. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  877. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts +33 -23
  878. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  879. package/lib/esm/polyface/IndexedEdgeMatcher.js +63 -33
  880. package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -1
  881. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts +4 -3
  882. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  883. package/lib/esm/polyface/IndexedPolyfaceVisitor.js +16 -5
  884. package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  885. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts +233 -0
  886. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts.map +1 -0
  887. package/lib/esm/polyface/IndexedPolyfaceWalker.js +349 -0
  888. package/lib/esm/polyface/IndexedPolyfaceWalker.js.map +1 -0
  889. package/lib/esm/polyface/Polyface.d.ts +43 -14
  890. package/lib/esm/polyface/Polyface.d.ts.map +1 -1
  891. package/lib/esm/polyface/Polyface.js +90 -19
  892. package/lib/esm/polyface/Polyface.js.map +1 -1
  893. package/lib/esm/polyface/PolyfaceBuilder.d.ts +14 -27
  894. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  895. package/lib/esm/polyface/PolyfaceBuilder.js +48 -80
  896. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  897. package/lib/esm/polyface/PolyfaceClip.js +8 -0
  898. package/lib/esm/polyface/PolyfaceClip.js.map +1 -1
  899. package/lib/esm/polyface/PolyfaceData.d.ts +36 -3
  900. package/lib/esm/polyface/PolyfaceData.d.ts.map +1 -1
  901. package/lib/esm/polyface/PolyfaceData.js +114 -8
  902. package/lib/esm/polyface/PolyfaceData.js.map +1 -1
  903. package/lib/esm/polyface/PolyfaceQuery.js +47 -7
  904. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  905. package/lib/esm/polyface/RangeLengthData.js +7 -0
  906. package/lib/esm/polyface/RangeLengthData.js.map +1 -1
  907. package/lib/esm/polyface/RangeTree/LineString3dRangeTreeContext.js +12 -0
  908. package/lib/esm/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  909. package/lib/esm/polyface/RangeTree/MinimumValueTester.js +5 -2
  910. package/lib/esm/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  911. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js +12 -0
  912. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  913. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js +14 -0
  914. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  915. package/lib/esm/polyface/RangeTree/RangeTreeNode.js +5 -0
  916. package/lib/esm/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  917. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js +43 -0
  918. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  919. package/lib/esm/polyface/TaggedNumericData.js +8 -0
  920. package/lib/esm/polyface/TaggedNumericData.js.map +1 -1
  921. package/lib/esm/polyface/TriangleCandidate.js +3 -0
  922. package/lib/esm/polyface/TriangleCandidate.js.map +1 -1
  923. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js +7 -0
  924. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  925. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js +6 -0
  926. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  927. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +3 -0
  928. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  929. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js +3 -0
  930. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  931. package/lib/esm/polyface/multiclip/OffsetMeshContext.js +32 -0
  932. package/lib/esm/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  933. package/lib/esm/polyface/multiclip/RangeSearch.js +5 -5
  934. package/lib/esm/polyface/multiclip/RangeSearch.js.map +1 -1
  935. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js +21 -8
  936. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  937. package/lib/esm/polyface/multiclip/XYPointBuckets.js +6 -0
  938. package/lib/esm/polyface/multiclip/XYPointBuckets.js.map +1 -1
  939. package/lib/esm/serialization/BGFBAccessors.d.ts +35 -9
  940. package/lib/esm/serialization/BGFBAccessors.d.ts.map +1 -1
  941. package/lib/esm/serialization/BGFBAccessors.js +141 -179
  942. package/lib/esm/serialization/BGFBAccessors.js.map +1 -1
  943. package/lib/esm/serialization/BGFBReader.d.ts +2 -2
  944. package/lib/esm/serialization/BGFBReader.d.ts.map +1 -1
  945. package/lib/esm/serialization/BGFBReader.js +75 -62
  946. package/lib/esm/serialization/BGFBReader.js.map +1 -1
  947. package/lib/esm/serialization/BGFBWriter.d.ts +5 -1
  948. package/lib/esm/serialization/BGFBWriter.d.ts.map +1 -1
  949. package/lib/esm/serialization/BGFBWriter.js +18 -3
  950. package/lib/esm/serialization/BGFBWriter.js.map +1 -1
  951. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js +1 -0
  952. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  953. package/lib/esm/serialization/DeepCompare.js +17 -17
  954. package/lib/esm/serialization/DeepCompare.js.map +1 -1
  955. package/lib/esm/serialization/GeometrySamples.d.ts +5 -5
  956. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  957. package/lib/esm/serialization/GeometrySamples.js +113 -112
  958. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  959. package/lib/esm/serialization/IModelJsonSchema.d.ts +78 -64
  960. package/lib/esm/serialization/IModelJsonSchema.d.ts.map +1 -1
  961. package/lib/esm/serialization/IModelJsonSchema.js +107 -83
  962. package/lib/esm/serialization/IModelJsonSchema.js.map +1 -1
  963. package/lib/esm/serialization/SerializationHelpers.d.ts +36 -0
  964. package/lib/esm/serialization/SerializationHelpers.d.ts.map +1 -1
  965. package/lib/esm/serialization/SerializationHelpers.js +117 -0
  966. package/lib/esm/serialization/SerializationHelpers.js.map +1 -1
  967. package/lib/esm/solid/Box.js +7 -2
  968. package/lib/esm/solid/Box.js.map +1 -1
  969. package/lib/esm/solid/Cone.d.ts +39 -14
  970. package/lib/esm/solid/Cone.d.ts.map +1 -1
  971. package/lib/esm/solid/Cone.js +53 -17
  972. package/lib/esm/solid/Cone.js.map +1 -1
  973. package/lib/esm/solid/LinearSweep.js +4 -2
  974. package/lib/esm/solid/LinearSweep.js.map +1 -1
  975. package/lib/esm/solid/RotationalSweep.d.ts +17 -17
  976. package/lib/esm/solid/RotationalSweep.d.ts.map +1 -1
  977. package/lib/esm/solid/RotationalSweep.js +38 -25
  978. package/lib/esm/solid/RotationalSweep.js.map +1 -1
  979. package/lib/esm/solid/RuledSweep.d.ts +26 -23
  980. package/lib/esm/solid/RuledSweep.d.ts.map +1 -1
  981. package/lib/esm/solid/RuledSweep.js +32 -24
  982. package/lib/esm/solid/RuledSweep.js.map +1 -1
  983. package/lib/esm/solid/SolidPrimitive.d.ts +12 -11
  984. package/lib/esm/solid/SolidPrimitive.d.ts.map +1 -1
  985. package/lib/esm/solid/SolidPrimitive.js +11 -6
  986. package/lib/esm/solid/SolidPrimitive.js.map +1 -1
  987. package/lib/esm/solid/Sphere.d.ts +36 -17
  988. package/lib/esm/solid/Sphere.d.ts.map +1 -1
  989. package/lib/esm/solid/Sphere.js +54 -25
  990. package/lib/esm/solid/Sphere.js.map +1 -1
  991. package/lib/esm/solid/SweepContour.d.ts +24 -15
  992. package/lib/esm/solid/SweepContour.d.ts.map +1 -1
  993. package/lib/esm/solid/SweepContour.js +33 -15
  994. package/lib/esm/solid/SweepContour.js.map +1 -1
  995. package/lib/esm/solid/TorusPipe.js +7 -2
  996. package/lib/esm/solid/TorusPipe.js.map +1 -1
  997. package/lib/esm/topology/ChainMerge.js +16 -4
  998. package/lib/esm/topology/ChainMerge.js.map +1 -1
  999. package/lib/esm/topology/Graph.js +41 -6
  1000. package/lib/esm/topology/Graph.js.map +1 -1
  1001. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +1 -1
  1002. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +5 -1
  1003. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  1004. package/lib/esm/topology/HalfEdgeGraphSearch.js +2 -0
  1005. package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -1
  1006. package/lib/esm/topology/HalfEdgeGraphSpineContext.js +9 -2
  1007. package/lib/esm/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  1008. package/lib/esm/topology/HalfEdgeGraphValidation.js +7 -9
  1009. package/lib/esm/topology/HalfEdgeGraphValidation.js.map +1 -1
  1010. package/lib/esm/topology/HalfEdgeMarkSet.js +5 -0
  1011. package/lib/esm/topology/HalfEdgeMarkSet.js.map +1 -1
  1012. package/lib/esm/topology/HalfEdgeNodeXYZUV.js +6 -0
  1013. package/lib/esm/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  1014. package/lib/esm/topology/HalfEdgePointInGraphSearch.js +1 -0
  1015. package/lib/esm/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  1016. package/lib/esm/topology/HalfEdgePositionDetail.js +16 -0
  1017. package/lib/esm/topology/HalfEdgePositionDetail.js.map +1 -1
  1018. package/lib/esm/topology/HalfEdgePriorityQueue.js +2 -0
  1019. package/lib/esm/topology/HalfEdgePriorityQueue.js.map +1 -1
  1020. package/lib/esm/topology/InsertAndRetriangulateContext.js +4 -0
  1021. package/lib/esm/topology/InsertAndRetriangulateContext.js.map +1 -1
  1022. package/lib/esm/topology/MaskManager.js +3 -0
  1023. package/lib/esm/topology/MaskManager.js.map +1 -1
  1024. package/lib/esm/topology/Merging.js +11 -6
  1025. package/lib/esm/topology/Merging.js.map +1 -1
  1026. package/lib/esm/topology/RegularizeFace.js +22 -0
  1027. package/lib/esm/topology/RegularizeFace.js.map +1 -1
  1028. package/lib/esm/topology/SignedDataSummary.js +22 -0
  1029. package/lib/esm/topology/SignedDataSummary.js.map +1 -1
  1030. package/lib/esm/topology/Triangulation.d.ts +3 -3
  1031. package/lib/esm/topology/Triangulation.d.ts.map +1 -1
  1032. package/lib/esm/topology/Triangulation.js +28 -18
  1033. package/lib/esm/topology/Triangulation.js.map +1 -1
  1034. package/lib/esm/topology/XYParitySearchContext.js +13 -0
  1035. package/lib/esm/topology/XYParitySearchContext.js.map +1 -1
  1036. package/package.json +9 -9
@@ -18,15 +18,10 @@ const ConvexClipPlaneSet_1 = require("../../clipping/ConvexClipPlaneSet");
18
18
  const PolygonOps_1 = require("../../geometry3d/PolygonOps");
19
19
  const Matrix3d_1 = require("../../geometry3d/Matrix3d");
20
20
  class SweepLineStringToFacetContext {
21
+ _spacePoints;
22
+ _spacePointsRange;
23
+ _numSpacePoints;
21
24
  constructor(spacePoints) {
22
- // temporaries reused over multiple calls to process a single facet . ..
23
- this._segmentPoint0 = Point3dVector3d_1.Point3d.create();
24
- this._segmentPoint1 = Point3dVector3d_1.Point3d.create();
25
- this._localSegmentPoint0 = Point3dVector3d_1.Point3d.create();
26
- this._localSegmentPoint1 = Point3dVector3d_1.Point3d.create();
27
- this._clipFractions = Segment1d_1.Segment1d.create(0, 1);
28
- this._localFrame = Transform_1.Transform.createIdentity();
29
- this._polygonRange = Range_1.Range3d.create();
30
25
  this._spacePoints = spacePoints;
31
26
  this._spacePointsRange = new Range_1.Range3d();
32
27
  spacePoints.setRange(this._spacePointsRange);
@@ -38,6 +33,14 @@ class SweepLineStringToFacetContext {
38
33
  }
39
34
  return undefined;
40
35
  }
36
+ // temporaries reused over multiple calls to process a single facet . ..
37
+ _segmentPoint0 = Point3dVector3d_1.Point3d.create();
38
+ _segmentPoint1 = Point3dVector3d_1.Point3d.create();
39
+ _localSegmentPoint0 = Point3dVector3d_1.Point3d.create();
40
+ _localSegmentPoint1 = Point3dVector3d_1.Point3d.create();
41
+ _clipFractions = Segment1d_1.Segment1d.create(0, 1);
42
+ _localFrame = Transform_1.Transform.createIdentity();
43
+ _polygonRange = Range_1.Range3d.create();
41
44
  /** process a single polygon.
42
45
  * @returns number crudely indicating how much work was done.
43
46
  */
@@ -100,6 +103,12 @@ exports.SweepLineStringToFacetContext = SweepLineStringToFacetContext;
100
103
  * @internal
101
104
  */
102
105
  class EdgeClipData {
106
+ /** Plane containing the edge and sweep vector */
107
+ edgePlane;
108
+ /** Two clip planes facing each other at each end of the edge */
109
+ clip;
110
+ /** work array for clipper method */
111
+ _crossingPoints;
103
112
  /** CAPTURE the planes */
104
113
  constructor(edgePlane, clip) {
105
114
  this.edgePlane = edgePlane;
@@ -144,6 +153,10 @@ exports.EdgeClipData = EdgeClipData;
144
153
  * @internal
145
154
  */
146
155
  class ClipSweptLineStringContext {
156
+ _edgeClippers;
157
+ _localToWorld;
158
+ _worldToLocal;
159
+ _localRange;
147
160
  constructor(edgeData, localData) {
148
161
  this._edgeClippers = edgeData;
149
162
  if (localData !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"SweepLineStringToFacetContext.js","sourceRoot":"","sources":["../../../../src/polyface/multiclip/SweepLineStringToFacetContext.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Polyface\r\n */\r\n\r\nimport { Transform } from \"../../geometry3d/Transform\";\r\nimport { GrowableXYZArray } from \"../../geometry3d/GrowableXYZArray\";\r\nimport { Point3d, Vector3d } from \"../../geometry3d/Point3dVector3d\";\r\nimport { Segment1d } from \"../../geometry3d/Segment1d\";\r\nimport { AnnounceDrapePanel } from \"../PolyfaceQuery\";\r\nimport { Range3d } from \"../../geometry3d/Range\";\r\nimport { Geometry } from \"../../Geometry\";\r\nimport { Polyface } from \"../Polyface\";\r\nimport { ClipPlane } from \"../../clipping/ClipPlane\";\r\nimport { ConvexClipPlaneSet } from \"../../clipping/ConvexClipPlaneSet\";\r\nimport { IndexedXYZCollectionPolygonOps, Point3dArrayPolygonOps } from \"../../geometry3d/PolygonOps\";\r\nimport { Matrix3d } from \"../../geometry3d/Matrix3d\";\r\n\r\nexport class SweepLineStringToFacetContext {\r\n private _spacePoints: GrowableXYZArray;\r\n private _spacePointsRange: Range3d;\r\n private _numSpacePoints: number;\r\n private constructor(spacePoints: GrowableXYZArray) {\r\n this._spacePoints = spacePoints;\r\n this._spacePointsRange = new Range3d();\r\n spacePoints.setRange(this._spacePointsRange);\r\n this._numSpacePoints = this._spacePoints.length;\r\n }\r\n public static create(xyz: GrowableXYZArray): SweepLineStringToFacetContext | undefined {\r\n if (xyz.length > 1) {\r\n return new SweepLineStringToFacetContext(xyz.clone());\r\n }\r\n return undefined;\r\n }\r\n\r\n // temporaries reused over multiple calls to process a single facet . ..\r\n private _segmentPoint0 = Point3d.create();\r\n private _segmentPoint1 = Point3d.create();\r\n private _localSegmentPoint0 = Point3d.create();\r\n private _localSegmentPoint1 = Point3d.create();\r\n private _clipFractions = Segment1d.create(0, 1);\r\n private _localFrame = Transform.createIdentity();\r\n private _polygonRange = Range3d.create();\r\n\r\n /** process a single polygon.\r\n * @returns number crudely indicating how much work was done.\r\n */\r\n public projectToPolygon(polygon: GrowableXYZArray, announce: AnnounceDrapePanel, polyface: Polyface, readIndex: number): number {\r\n polygon.setRange(this._polygonRange);\r\n let workCounter = 0;\r\n if (!this._polygonRange.intersectsRangeXY(this._spacePointsRange))\r\n return workCounter;\r\n // numTest++;\r\n // For each triangle within the facet ...\r\n // remark: this loop only runs once in triangle mesh, twice in quads ...\r\n for (let k1 = 1; k1 + 1 < polygon.length; k1++) {\r\n workCounter++;\r\n const frame = polygon.fillLocalXYTriangleFrame(0, k1, k1 + 1, this._localFrame);\r\n if (frame) {\r\n // For each stroke of the linestring ...\r\n for (let i1 = 1; i1 < this._numSpacePoints; i1++) {\r\n workCounter++;\r\n this._spacePoints.getPoint3dAtCheckedPointIndex(i1 - 1, this._segmentPoint0);\r\n this._spacePoints.getPoint3dAtCheckedPointIndex(i1, this._segmentPoint1);\r\n frame.multiplyInversePoint3d(this._segmentPoint0, this._localSegmentPoint0);\r\n frame.multiplyInversePoint3d(this._segmentPoint1, this._localSegmentPoint1);\r\n this._clipFractions.set(0, 1);\r\n /** (x,y,1-x-y) are barycentric coordinates in the triangle !!! */\r\n if (this._clipFractions.clipBy01FunctionValuesPositive(this._localSegmentPoint0.x, this._localSegmentPoint1.x)\r\n && this._clipFractions.clipBy01FunctionValuesPositive(this._localSegmentPoint0.y, this._localSegmentPoint1.y)\r\n && this._clipFractions.clipBy01FunctionValuesPositive(\r\n 1 - this._localSegmentPoint0.x - this._localSegmentPoint0.y,\r\n 1 - this._localSegmentPoint1.x - this._localSegmentPoint1.y)) {\r\n /* project the local segment point to the plane. */\r\n workCounter++;\r\n const localClippedPointA = this._localSegmentPoint0.interpolate(this._clipFractions.x0, this._localSegmentPoint1);\r\n const localClippedPointB = this._localSegmentPoint0.interpolate(this._clipFractions.x1, this._localSegmentPoint1);\r\n const worldClippedPointA = this._localFrame.multiplyPoint3d(localClippedPointA);\r\n const worldClippedPointB = this._localFrame.multiplyPoint3d(localClippedPointB);\r\n const planePointA = this._localFrame.multiplyXYZ(localClippedPointA.x, localClippedPointA.y, 0.0);\r\n const planePointB = this._localFrame.multiplyXYZ(localClippedPointB.x, localClippedPointB.y, 0.0);\r\n const splitParameter = Geometry.inverseInterpolate01(this._localSegmentPoint0.z, this._localSegmentPoint1.z);\r\n // emit 1 or 2 panels, oriented so panel normal is always to the left of the line.\r\n if (splitParameter !== undefined && splitParameter > this._clipFractions.x0 && splitParameter < this._clipFractions.x1) {\r\n workCounter++;\r\n const piercePointX = this._segmentPoint0.interpolate(splitParameter, this._segmentPoint1);\r\n const piercePointY = piercePointX.clone(); // so points are distinct for the two triangle announcements.\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointA, piercePointX, planePointA], 2, 1);\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointB, piercePointY, planePointB], 1, 2);\r\n } else if (this._localSegmentPoint0.z > 0) { // segment is entirely above\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointA, worldClippedPointB, planePointB, planePointA], 3, 2);\r\n } else // segment is entirely under\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointB, worldClippedPointA, planePointA, planePointB], 2, 3);\r\n }\r\n }\r\n }\r\n }\r\n return workCounter;\r\n }\r\n}\r\n\r\n/**\r\n * Context for sweeping a line segment onto a convex polygon.\r\n * @internal\r\n */\r\nexport class EdgeClipData {\r\n /** Plane containing the edge and sweep vector */\r\n public edgePlane: ClipPlane;\r\n /** Two clip planes facing each other at each end of the edge */\r\n public clip: ConvexClipPlaneSet;\r\n /** work array for clipper method */\r\n private _crossingPoints: Point3d[];\r\n\r\n /** CAPTURE the planes */\r\n public constructor(edgePlane: ClipPlane, clip: ConvexClipPlaneSet) {\r\n this.edgePlane = edgePlane;\r\n this.clip = clip;\r\n this._crossingPoints = [];\r\n }\r\n /** create object from segment and sweep. Inputs are not captured. */\r\n public static createPointPointSweep(pointA: Point3d, pointB: Point3d, sweep: Vector3d): EdgeClipData | undefined {\r\n const edgeVector = Vector3d.createStartEnd(pointA, pointB);\r\n const fraction = edgeVector.fractionOfProjectionToVector(sweep);\r\n // The unbounded plane of the swept edge will intersect facets in lines that may extend beyond the swept bounded line.\r\n // That linework will be clipped between two facing planes with normal along the perpendicular dropped from the edge vector to the sweep vector.\r\n const clipNormal = edgeVector.plusScaled(sweep, -fraction);\r\n const planeA = ClipPlane.createNormalAndPoint(clipNormal, pointA);\r\n const planeB = ClipPlane.createNormalAndPoint(clipNormal, pointB);\r\n const edgePlane = ClipPlane.createOriginAndVectors(pointA, edgeVector, sweep);\r\n if (planeA !== undefined && planeB !== undefined && edgePlane !== undefined) {\r\n planeB.negateInPlace();\r\n const clipper = ConvexClipPlaneSet.createPlanes([planeA, planeB]);\r\n return new EdgeClipData(edgePlane, clipper);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Intersect this edge plane with the given convex polygon and announce the intersection segment to the callback. */\r\n public processPolygon(polygon: Point3d[] | GrowableXYZArray, announceEdge: (pointA: Point3d, pointB: Point3d) => void) {\r\n this._crossingPoints.length = 0;\r\n if (Array.isArray(polygon))\r\n Point3dArrayPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);\r\n else\r\n IndexedXYZCollectionPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);\r\n if (this._crossingPoints.length === 2) {\r\n // use the end planes to clip the [0,1] swept edge to [f0,f1]\r\n this.clip.announceClippedSegmentIntervals(0, 1, this._crossingPoints[0], this._crossingPoints[1],\r\n (f0: number, f1: number) => {\r\n announceEdge(this._crossingPoints[0].interpolate(f0, this._crossingPoints[1]),\r\n this._crossingPoints[0].interpolate(f1, this._crossingPoints[1]));\r\n },\r\n );\r\n }\r\n }\r\n}\r\n/**\r\n * Context for sweeping a line string onto a convex polygon.\r\n * @internal\r\n */\r\nexport class ClipSweptLineStringContext {\r\n private _edgeClippers: EdgeClipData[];\r\n private _localToWorld?: Transform;\r\n private _worldToLocal?: Transform;\r\n private _localRange?: Range3d;\r\n private constructor(edgeData: EdgeClipData[], localData: undefined | { localToWorld: Transform, worldToLocal: Transform, localRange: Range3d }) {\r\n this._edgeClippers = edgeData;\r\n if (localData !== undefined) {\r\n this._localToWorld = localData.localToWorld;\r\n this._worldToLocal = localData.worldToLocal;\r\n this._localRange = localData.localRange;\r\n }\r\n }\r\n public static create(xyz: GrowableXYZArray, sweepVector: Vector3d | undefined): ClipSweptLineStringContext | undefined {\r\n if (sweepVector === undefined)\r\n sweepVector = Vector3d.create(0, 0, 1);\r\n if (xyz.length > 1) {\r\n const point = Point3d.createZero();\r\n const newPoint = Point3d.createZero();\r\n const edgeData: EdgeClipData[] = [];\r\n xyz.getPoint3dAtUncheckedPointIndex(0, point);\r\n\r\n let localToWorldMatrix = Matrix3d.createRigidHeadsUp(sweepVector);\r\n if (localToWorldMatrix === undefined)\r\n localToWorldMatrix = Matrix3d.createIdentity();\r\n const localToWorld = Transform.createOriginAndMatrix(point, localToWorldMatrix);\r\n const worldToLocal = localToWorld.inverse()!;\r\n const localRange = xyz.getRange(worldToLocal);\r\n for (let i = 1; i < xyz.length; i++) {\r\n xyz.getPoint3dAtUncheckedPointIndex(i, newPoint);\r\n const clipper = EdgeClipData.createPointPointSweep(point, newPoint, sweepVector);\r\n if (clipper !== undefined) {\r\n point.setFrom(newPoint);\r\n edgeData.push(clipper);\r\n }\r\n }\r\n return new ClipSweptLineStringContext(edgeData, { localToWorld, worldToLocal, localRange });\r\n }\r\n return undefined;\r\n }\r\n /**\r\n * Intersect a polygon with each of the edgeClippers.\r\n * * If transforms and local range are defined, test the polygon's local range to see if it offers a quick exit.\r\n */\r\n public processPolygon(polygon: Point3d[], announceEdge: (pointA: Point3d, pointB: Point3d) => void) {\r\n if (this._worldToLocal !== undefined && this._localRange !== undefined) {\r\n const polygonRange = Range3d.createTransformedArray(this._worldToLocal, polygon);\r\n if (!polygonRange.intersectsRangeXY(this._localRange))\r\n return;\r\n }\r\n for (const clipper of this._edgeClippers) {\r\n clipper.processPolygon(polygon, announceEdge);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"SweepLineStringToFacetContext.js","sourceRoot":"","sources":["../../../../src/polyface/multiclip/SweepLineStringToFacetContext.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Polyface\r\n */\r\n\r\nimport { Transform } from \"../../geometry3d/Transform\";\r\nimport { GrowableXYZArray } from \"../../geometry3d/GrowableXYZArray\";\r\nimport { Point3d, Vector3d } from \"../../geometry3d/Point3dVector3d\";\r\nimport { Segment1d } from \"../../geometry3d/Segment1d\";\r\nimport { AnnounceDrapePanel } from \"../PolyfaceQuery\";\r\nimport { Range3d } from \"../../geometry3d/Range\";\r\nimport { Geometry } from \"../../Geometry\";\r\nimport { Polyface } from \"../Polyface\";\r\nimport { ClipPlane } from \"../../clipping/ClipPlane\";\r\nimport { ConvexClipPlaneSet } from \"../../clipping/ConvexClipPlaneSet\";\r\nimport { IndexedXYZCollectionPolygonOps, Point3dArrayPolygonOps } from \"../../geometry3d/PolygonOps\";\r\nimport { Matrix3d } from \"../../geometry3d/Matrix3d\";\r\n\r\nexport class SweepLineStringToFacetContext {\r\n private _spacePoints: GrowableXYZArray;\r\n private _spacePointsRange: Range3d;\r\n private _numSpacePoints: number;\r\n private constructor(spacePoints: GrowableXYZArray) {\r\n this._spacePoints = spacePoints;\r\n this._spacePointsRange = new Range3d();\r\n spacePoints.setRange(this._spacePointsRange);\r\n this._numSpacePoints = this._spacePoints.length;\r\n }\r\n public static create(xyz: GrowableXYZArray): SweepLineStringToFacetContext | undefined {\r\n if (xyz.length > 1) {\r\n return new SweepLineStringToFacetContext(xyz.clone());\r\n }\r\n return undefined;\r\n }\r\n\r\n // temporaries reused over multiple calls to process a single facet . ..\r\n private _segmentPoint0 = Point3d.create();\r\n private _segmentPoint1 = Point3d.create();\r\n private _localSegmentPoint0 = Point3d.create();\r\n private _localSegmentPoint1 = Point3d.create();\r\n private _clipFractions = Segment1d.create(0, 1);\r\n private _localFrame = Transform.createIdentity();\r\n private _polygonRange = Range3d.create();\r\n\r\n /** process a single polygon.\r\n * @returns number crudely indicating how much work was done.\r\n */\r\n public projectToPolygon(polygon: GrowableXYZArray, announce: AnnounceDrapePanel, polyface: Polyface, readIndex: number): number {\r\n polygon.setRange(this._polygonRange);\r\n let workCounter = 0;\r\n if (!this._polygonRange.intersectsRangeXY(this._spacePointsRange))\r\n return workCounter;\r\n // numTest++;\r\n // For each triangle within the facet ...\r\n // remark: this loop only runs once in triangle mesh, twice in quads ...\r\n for (let k1 = 1; k1 + 1 < polygon.length; k1++) {\r\n workCounter++;\r\n const frame = polygon.fillLocalXYTriangleFrame(0, k1, k1 + 1, this._localFrame);\r\n if (frame) {\r\n // For each stroke of the linestring ...\r\n for (let i1 = 1; i1 < this._numSpacePoints; i1++) {\r\n workCounter++;\r\n this._spacePoints.getPoint3dAtCheckedPointIndex(i1 - 1, this._segmentPoint0);\r\n this._spacePoints.getPoint3dAtCheckedPointIndex(i1, this._segmentPoint1);\r\n frame.multiplyInversePoint3d(this._segmentPoint0, this._localSegmentPoint0);\r\n frame.multiplyInversePoint3d(this._segmentPoint1, this._localSegmentPoint1);\r\n this._clipFractions.set(0, 1);\r\n /** (x,y,1-x-y) are barycentric coordinates in the triangle !!! */\r\n if (this._clipFractions.clipBy01FunctionValuesPositive(this._localSegmentPoint0.x, this._localSegmentPoint1.x)\r\n && this._clipFractions.clipBy01FunctionValuesPositive(this._localSegmentPoint0.y, this._localSegmentPoint1.y)\r\n && this._clipFractions.clipBy01FunctionValuesPositive(\r\n 1 - this._localSegmentPoint0.x - this._localSegmentPoint0.y,\r\n 1 - this._localSegmentPoint1.x - this._localSegmentPoint1.y)) {\r\n /* project the local segment point to the plane. */\r\n workCounter++;\r\n const localClippedPointA = this._localSegmentPoint0.interpolate(this._clipFractions.x0, this._localSegmentPoint1);\r\n const localClippedPointB = this._localSegmentPoint0.interpolate(this._clipFractions.x1, this._localSegmentPoint1);\r\n const worldClippedPointA = this._localFrame.multiplyPoint3d(localClippedPointA);\r\n const worldClippedPointB = this._localFrame.multiplyPoint3d(localClippedPointB);\r\n const planePointA = this._localFrame.multiplyXYZ(localClippedPointA.x, localClippedPointA.y, 0.0);\r\n const planePointB = this._localFrame.multiplyXYZ(localClippedPointB.x, localClippedPointB.y, 0.0);\r\n const splitParameter = Geometry.inverseInterpolate01(this._localSegmentPoint0.z, this._localSegmentPoint1.z);\r\n // emit 1 or 2 panels, oriented so panel normal is always to the left of the line.\r\n if (splitParameter !== undefined && splitParameter > this._clipFractions.x0 && splitParameter < this._clipFractions.x1) {\r\n workCounter++;\r\n const piercePointX = this._segmentPoint0.interpolate(splitParameter, this._segmentPoint1);\r\n const piercePointY = piercePointX.clone(); // so points are distinct for the two triangle announcements.\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointA, piercePointX, planePointA], 2, 1);\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointB, piercePointY, planePointB], 1, 2);\r\n } else if (this._localSegmentPoint0.z > 0) { // segment is entirely above\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointA, worldClippedPointB, planePointB, planePointA], 3, 2);\r\n } else // segment is entirely under\r\n announce(this._spacePoints, i1 - 1, polyface, readIndex, [worldClippedPointB, worldClippedPointA, planePointA, planePointB], 2, 3);\r\n }\r\n }\r\n }\r\n }\r\n return workCounter;\r\n }\r\n}\r\n\r\n/**\r\n * Context for sweeping a line segment onto a convex polygon.\r\n * @internal\r\n */\r\nexport class EdgeClipData {\r\n /** Plane containing the edge and sweep vector */\r\n public edgePlane: ClipPlane;\r\n /** Two clip planes facing each other at each end of the edge */\r\n public clip: ConvexClipPlaneSet;\r\n /** work array for clipper method */\r\n private _crossingPoints: Point3d[];\r\n\r\n /** CAPTURE the planes */\r\n public constructor(edgePlane: ClipPlane, clip: ConvexClipPlaneSet) {\r\n this.edgePlane = edgePlane;\r\n this.clip = clip;\r\n this._crossingPoints = [];\r\n }\r\n /** create object from segment and sweep. Inputs are not captured. */\r\n public static createPointPointSweep(pointA: Point3d, pointB: Point3d, sweep: Vector3d): EdgeClipData | undefined {\r\n const edgeVector = Vector3d.createStartEnd(pointA, pointB);\r\n const fraction = edgeVector.fractionOfProjectionToVector(sweep);\r\n // The unbounded plane of the swept edge will intersect facets in lines that may extend beyond the swept bounded line.\r\n // That linework will be clipped between two facing planes with normal along the perpendicular dropped from the edge vector to the sweep vector.\r\n const clipNormal = edgeVector.plusScaled(sweep, -fraction);\r\n const planeA = ClipPlane.createNormalAndPoint(clipNormal, pointA);\r\n const planeB = ClipPlane.createNormalAndPoint(clipNormal, pointB);\r\n const edgePlane = ClipPlane.createOriginAndVectors(pointA, edgeVector, sweep);\r\n if (planeA !== undefined && planeB !== undefined && edgePlane !== undefined) {\r\n planeB.negateInPlace();\r\n const clipper = ConvexClipPlaneSet.createPlanes([planeA, planeB]);\r\n return new EdgeClipData(edgePlane, clipper);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Intersect this edge plane with the given convex polygon and announce the intersection segment to the callback. */\r\n public processPolygon(polygon: Point3d[] | GrowableXYZArray, announceEdge: (pointA: Point3d, pointB: Point3d) => void) {\r\n this._crossingPoints.length = 0;\r\n if (Array.isArray(polygon))\r\n Point3dArrayPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);\r\n else\r\n IndexedXYZCollectionPolygonOps.polygonPlaneCrossings(this.edgePlane, polygon, this._crossingPoints);\r\n if (this._crossingPoints.length === 2) {\r\n // use the end planes to clip the [0,1] swept edge to [f0,f1]\r\n this.clip.announceClippedSegmentIntervals(0, 1, this._crossingPoints[0], this._crossingPoints[1],\r\n (f0: number, f1: number) => {\r\n announceEdge(this._crossingPoints[0].interpolate(f0, this._crossingPoints[1]),\r\n this._crossingPoints[0].interpolate(f1, this._crossingPoints[1]));\r\n },\r\n );\r\n }\r\n }\r\n}\r\n/**\r\n * Context for sweeping a line string onto a convex polygon.\r\n * @internal\r\n */\r\nexport class ClipSweptLineStringContext {\r\n private _edgeClippers: EdgeClipData[];\r\n private _localToWorld?: Transform;\r\n private _worldToLocal?: Transform;\r\n private _localRange?: Range3d;\r\n private constructor(edgeData: EdgeClipData[], localData: undefined | { localToWorld: Transform, worldToLocal: Transform, localRange: Range3d }) {\r\n this._edgeClippers = edgeData;\r\n if (localData !== undefined) {\r\n this._localToWorld = localData.localToWorld;\r\n this._worldToLocal = localData.worldToLocal;\r\n this._localRange = localData.localRange;\r\n }\r\n }\r\n public static create(xyz: GrowableXYZArray, sweepVector: Vector3d | undefined): ClipSweptLineStringContext | undefined {\r\n if (sweepVector === undefined)\r\n sweepVector = Vector3d.create(0, 0, 1);\r\n if (xyz.length > 1) {\r\n const point = Point3d.createZero();\r\n const newPoint = Point3d.createZero();\r\n const edgeData: EdgeClipData[] = [];\r\n xyz.getPoint3dAtUncheckedPointIndex(0, point);\r\n\r\n let localToWorldMatrix = Matrix3d.createRigidHeadsUp(sweepVector);\r\n if (localToWorldMatrix === undefined)\r\n localToWorldMatrix = Matrix3d.createIdentity();\r\n const localToWorld = Transform.createOriginAndMatrix(point, localToWorldMatrix);\r\n const worldToLocal = localToWorld.inverse()!;\r\n const localRange = xyz.getRange(worldToLocal);\r\n for (let i = 1; i < xyz.length; i++) {\r\n xyz.getPoint3dAtUncheckedPointIndex(i, newPoint);\r\n const clipper = EdgeClipData.createPointPointSweep(point, newPoint, sweepVector);\r\n if (clipper !== undefined) {\r\n point.setFrom(newPoint);\r\n edgeData.push(clipper);\r\n }\r\n }\r\n return new ClipSweptLineStringContext(edgeData, { localToWorld, worldToLocal, localRange });\r\n }\r\n return undefined;\r\n }\r\n /**\r\n * Intersect a polygon with each of the edgeClippers.\r\n * * If transforms and local range are defined, test the polygon's local range to see if it offers a quick exit.\r\n */\r\n public processPolygon(polygon: Point3d[], announceEdge: (pointA: Point3d, pointB: Point3d) => void) {\r\n if (this._worldToLocal !== undefined && this._localRange !== undefined) {\r\n const polygonRange = Range3d.createTransformedArray(this._worldToLocal, polygon);\r\n if (!polygonRange.intersectsRangeXY(this._localRange))\r\n return;\r\n }\r\n for (const clipper of this._edgeClippers) {\r\n clipper.processPolygon(polygon, announceEdge);\r\n }\r\n }\r\n}\r\n"]}
@@ -16,6 +16,10 @@ const Range_1 = require("../../geometry3d/Range");
16
16
  * @internal
17
17
  */
18
18
  class XYIndexGrid {
19
+ _range;
20
+ _numXEdge;
21
+ _numYEdge;
22
+ _data; // _indices[j][i][k] = index k value in row j block i
19
23
  constructor(range, numX, numY) {
20
24
  this._range = range;
21
25
  this._numXEdge = Math.max(numX, 1);
@@ -140,6 +144,8 @@ exports.XYIndexGrid = XYIndexGrid;
140
144
  * @internal
141
145
  */
142
146
  class XYPointBuckets {
147
+ _points;
148
+ _buckets;
143
149
  /** Return the underlying grid with indices recorded by block */
144
150
  get indexGrid() { return this._buckets; }
145
151
  constructor(points, buckets) {
@@ -1 +1 @@
1
- {"version":3,"file":"XYPointBuckets.js","sourceRoot":"","sources":["../../../../src/polyface/multiclip/XYPointBuckets.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module RangeSearch\r\n */\r\n\r\nimport { Geometry } from \"../../Geometry\";\r\nimport { IndexedXYZCollection } from \"../../geometry3d/IndexedXYZCollection\";\r\nimport { Point3d } from \"../../geometry3d/Point3dVector3d\";\r\nimport { Range2d, Range3d } from \"../../geometry3d/Range\";\r\nimport { LowAndHighXY } from \"../../geometry3d/XYZProps\";\r\n\r\n/** Type for a value which may be either (a) undefined or (b) an array of type []. */\r\nexport type OptionalArray<T> = T[] | undefined;\r\n/**\r\n * Arrays of type T values distributed by xy position when entered.\r\n * @internal\r\n */\r\nexport class XYIndexGrid<T> {\r\n private _range: Range2d;\r\n private _numXEdge: number;\r\n private _numYEdge: number;\r\n\r\n private _data: Array<Array<OptionalArray<T>>>; // _indices[j][i][k] = index k value in row j block i\r\n\r\n protected constructor(range: Range2d, numX: number, numY: number) {\r\n this._range = range;\r\n this._numXEdge = Math.max(numX, 1);\r\n this._numYEdge = Math.max(numY, 1);\r\n this._data = [];\r\n for (let j = 0; j < numY; j++) {\r\n const thisRow: Array<OptionalArray<T>> = [];\r\n for (let i = 0; i < numX; i++) {\r\n thisRow.push(undefined);\r\n }\r\n this._data.push(thisRow);\r\n }\r\n }\r\n /** Return the number of x edges in the grid */\r\n public get numXEdge(): number { return this._numXEdge; }\r\n /** Return the number of y edges in the grid */\r\n public get numYEdge(): number { return this._numYEdge; }\r\n\r\n /** Return the `i` index of cells containing x coordinate */\r\n public xIndex(x: number): number {\r\n const fraction = (x - this._range.low.x) / (this._range.high.x - this._range.low.x);\r\n const q = Math.floor(fraction * this._numXEdge);\r\n if (q < 0)\r\n return 0;\r\n if (q > this._numXEdge - 1)\r\n return this._numXEdge - 1;\r\n return q;\r\n }\r\n /** Return the `j` index of cells containing x coordinate */\r\n public yIndex(y: number): number {\r\n const fraction = (y - this._range.low.y) / (this._range.high.y - this._range.low.y);\r\n const q = Math.floor(fraction * this._numYEdge);\r\n if (q < 0)\r\n return 0;\r\n if (q > this._numYEdge - 1)\r\n return this._numYEdge - 1;\r\n return q;\r\n }\r\n /**\r\n * Construct an array with cells mapped to a range, with counts determined by estimated total count and target number of entries per cell.\r\n * @param range\r\n * @param totalEntries\r\n * @param targetEntriesPerCell\r\n */\r\n public static createWithEstimatedCounts<T>(range: LowAndHighXY, totalEntries: number, targetEntriesPerCell: number): XYIndexGrid<T> | undefined {\r\n if (range.low.x >= range.high.x || range.low.y >= range.high.y)\r\n return undefined;\r\n const range2d = Range2d.createXYXY(range.low.x, range.low.y, range.high.x, range.high.y);\r\n\r\n const dx = range2d.xLength();\r\n const dy = range2d.yLength();\r\n // numX / numY = dX / dY (numX,numY will be integers . . .)\r\n // numX = dX * numY / dY\r\n let numX: number;\r\n let numY: number;\r\n if (dy > dx) {\r\n numY = Math.ceil(Math.sqrt(dy * totalEntries / (targetEntriesPerCell * dx)));\r\n numX = Math.ceil(totalEntries / numY);\r\n } else {\r\n numX = Math.ceil(Math.sqrt(dx * totalEntries / (targetEntriesPerCell * dy)));\r\n numY = Math.ceil(totalEntries / (numX * targetEntriesPerCell));\r\n }\r\n return new XYIndexGrid(range2d, numX, numY);\r\n }\r\n /**\r\n * Add (save) a new data value to the grid cell containing x,y\r\n * @param x\r\n * @param y\r\n * @param value\r\n */\r\n public addDataAtXY(x: number, y: number, value: T) {\r\n const i = this.xIndex(x);\r\n const j = this.yIndex(y);\r\n let dataJI = this._data[j][i];\r\n if (!dataJI) {\r\n dataJI = [];\r\n this._data[j][i] = dataJI;\r\n }\r\n dataJI.push(value);\r\n return;\r\n }\r\n /**\r\n * Get the (reference to the possibly null array of) data values for the cell indicated by xy.\r\n * @param x\r\n * @param y\r\n */\r\n public getDataAtXY(x: number, y: number): OptionalArray<T> {\r\n const i = this.xIndex(x);\r\n const j = this.yIndex(y);\r\n return this._data[j][i];\r\n }\r\n\r\n /**\r\n * Get the (reference to the possibly null array of) data values for the cell indicated by indices in the x and y direction\r\n * @param xIndex\r\n * @param yIndex\r\n */\r\n public getDataAtIndex(xIndex: number, yIndex: number): OptionalArray<T> {\r\n if (xIndex < 0)\r\n return undefined;\r\n if (xIndex >= this._numXEdge)\r\n return undefined;\r\n if (yIndex < 0)\r\n return undefined;\r\n if (yIndex >= this._numYEdge)\r\n return undefined;\r\n\r\n return this._data[yIndex][xIndex];\r\n }\r\n /** Return true if (xIndex, yIndex) is a valid cell index. */\r\n public isValidIndex(xIndex: number, yIndex: number): boolean {\r\n if (xIndex < 0)\r\n return false;\r\n if (xIndex >= this._numXEdge)\r\n return false;\r\n if (yIndex < 0)\r\n return false;\r\n if (yIndex >= this._numYEdge)\r\n return false;\r\n return true;\r\n }\r\n}\r\n/** Manage buckets of points for fast search.\r\n * @internal\r\n */\r\nexport class XYPointBuckets {\r\n private _points: IndexedXYZCollection;\r\n private _buckets: XYIndexGrid<number>;\r\n /** Return the underlying grid with indices recorded by block */\r\n public get indexGrid(): XYIndexGrid<number> { return this._buckets; }\r\n private constructor(points: IndexedXYZCollection, buckets: XYIndexGrid<number>) {\r\n this._points = points;\r\n this._buckets = buckets;\r\n }\r\n /** Create an XYIndex grid with all indices of all `points` entered */\r\n public static create(points: IndexedXYZCollection, targetPointsPerCell: number): XYPointBuckets | undefined {\r\n const n = points.length;\r\n if (points.length < 1)\r\n return undefined;\r\n const range = points.getRange();\r\n range.expandInPlace(Geometry.smallMetricDistance * 1000.0);\r\n const buckets = XYIndexGrid.createWithEstimatedCounts<number>(range, points.length, targetPointsPerCell);\r\n if (buckets === undefined)\r\n return undefined;\r\n const result = new XYPointBuckets(points, buckets);\r\n const point = Point3d.create();\r\n for (let i = 0; i < n; i++) {\r\n points.getPoint3dAtUncheckedPointIndex(i, point);\r\n buckets.addDataAtXY(point.x, point.y, i);\r\n }\r\n return result;\r\n }\r\n /** call the `announce` function with the index and coordinates of all points in given range.\r\n * * continue the search if `announce` returns true.\r\n * * terminate the search if `announce` returns false;\r\n */\r\n public announcePointsInRange(range: Range2d | Range3d, announce: (index: number, x: number, y: number, z: number) => boolean) {\r\n const i0 = this._buckets.xIndex(range.low.x);\r\n const i1 = this._buckets.xIndex(range.high.x);\r\n const j0 = this._buckets.yIndex(range.low.y);\r\n const j1 = this._buckets.yIndex(range.high.y);\r\n const n = this._points.length;\r\n for (let i = i0; i <= i1; i++) {\r\n for (let j = j0; j <= j1; j++) {\r\n const candidates = this._buckets.getDataAtIndex(i, j);\r\n if (candidates !== undefined) {\r\n for (const k of candidates) {\r\n if (k < n) {\r\n const x = this._points.getXAtUncheckedPointIndex(k);\r\n const y = this._points.getYAtUncheckedPointIndex(k);\r\n const z = this._points.getZAtUncheckedPointIndex(k);\r\n if (range.containsXY(x, y))\r\n if (!announce(k, x, y, z))\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"XYPointBuckets.js","sourceRoot":"","sources":["../../../../src/polyface/multiclip/XYPointBuckets.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module RangeSearch\r\n */\r\n\r\nimport { Geometry } from \"../../Geometry\";\r\nimport { IndexedXYZCollection } from \"../../geometry3d/IndexedXYZCollection\";\r\nimport { Point3d } from \"../../geometry3d/Point3dVector3d\";\r\nimport { Range2d, Range3d } from \"../../geometry3d/Range\";\r\nimport { LowAndHighXY } from \"../../geometry3d/XYZProps\";\r\n\r\n/** Type for a value which may be either (a) undefined or (b) an array of type []. */\r\nexport type OptionalArray<T> = T[] | undefined;\r\n/**\r\n * Arrays of type T values distributed by xy position when entered.\r\n * @internal\r\n */\r\nexport class XYIndexGrid<T> {\r\n private _range: Range2d;\r\n private _numXEdge: number;\r\n private _numYEdge: number;\r\n\r\n private _data: Array<Array<OptionalArray<T>>>; // _indices[j][i][k] = index k value in row j block i\r\n\r\n protected constructor(range: Range2d, numX: number, numY: number) {\r\n this._range = range;\r\n this._numXEdge = Math.max(numX, 1);\r\n this._numYEdge = Math.max(numY, 1);\r\n this._data = [];\r\n for (let j = 0; j < numY; j++) {\r\n const thisRow: Array<OptionalArray<T>> = [];\r\n for (let i = 0; i < numX; i++) {\r\n thisRow.push(undefined);\r\n }\r\n this._data.push(thisRow);\r\n }\r\n }\r\n /** Return the number of x edges in the grid */\r\n public get numXEdge(): number { return this._numXEdge; }\r\n /** Return the number of y edges in the grid */\r\n public get numYEdge(): number { return this._numYEdge; }\r\n\r\n /** Return the `i` index of cells containing x coordinate */\r\n public xIndex(x: number): number {\r\n const fraction = (x - this._range.low.x) / (this._range.high.x - this._range.low.x);\r\n const q = Math.floor(fraction * this._numXEdge);\r\n if (q < 0)\r\n return 0;\r\n if (q > this._numXEdge - 1)\r\n return this._numXEdge - 1;\r\n return q;\r\n }\r\n /** Return the `j` index of cells containing x coordinate */\r\n public yIndex(y: number): number {\r\n const fraction = (y - this._range.low.y) / (this._range.high.y - this._range.low.y);\r\n const q = Math.floor(fraction * this._numYEdge);\r\n if (q < 0)\r\n return 0;\r\n if (q > this._numYEdge - 1)\r\n return this._numYEdge - 1;\r\n return q;\r\n }\r\n /**\r\n * Construct an array with cells mapped to a range, with counts determined by estimated total count and target number of entries per cell.\r\n * @param range\r\n * @param totalEntries\r\n * @param targetEntriesPerCell\r\n */\r\n public static createWithEstimatedCounts<T>(range: LowAndHighXY, totalEntries: number, targetEntriesPerCell: number): XYIndexGrid<T> | undefined {\r\n if (range.low.x >= range.high.x || range.low.y >= range.high.y)\r\n return undefined;\r\n const range2d = Range2d.createXYXY(range.low.x, range.low.y, range.high.x, range.high.y);\r\n\r\n const dx = range2d.xLength();\r\n const dy = range2d.yLength();\r\n // numX / numY = dX / dY (numX,numY will be integers . . .)\r\n // numX = dX * numY / dY\r\n let numX: number;\r\n let numY: number;\r\n if (dy > dx) {\r\n numY = Math.ceil(Math.sqrt(dy * totalEntries / (targetEntriesPerCell * dx)));\r\n numX = Math.ceil(totalEntries / numY);\r\n } else {\r\n numX = Math.ceil(Math.sqrt(dx * totalEntries / (targetEntriesPerCell * dy)));\r\n numY = Math.ceil(totalEntries / (numX * targetEntriesPerCell));\r\n }\r\n return new XYIndexGrid(range2d, numX, numY);\r\n }\r\n /**\r\n * Add (save) a new data value to the grid cell containing x,y\r\n * @param x\r\n * @param y\r\n * @param value\r\n */\r\n public addDataAtXY(x: number, y: number, value: T) {\r\n const i = this.xIndex(x);\r\n const j = this.yIndex(y);\r\n let dataJI = this._data[j][i];\r\n if (!dataJI) {\r\n dataJI = [];\r\n this._data[j][i] = dataJI;\r\n }\r\n dataJI.push(value);\r\n return;\r\n }\r\n /**\r\n * Get the (reference to the possibly null array of) data values for the cell indicated by xy.\r\n * @param x\r\n * @param y\r\n */\r\n public getDataAtXY(x: number, y: number): OptionalArray<T> {\r\n const i = this.xIndex(x);\r\n const j = this.yIndex(y);\r\n return this._data[j][i];\r\n }\r\n\r\n /**\r\n * Get the (reference to the possibly null array of) data values for the cell indicated by indices in the x and y direction\r\n * @param xIndex\r\n * @param yIndex\r\n */\r\n public getDataAtIndex(xIndex: number, yIndex: number): OptionalArray<T> {\r\n if (xIndex < 0)\r\n return undefined;\r\n if (xIndex >= this._numXEdge)\r\n return undefined;\r\n if (yIndex < 0)\r\n return undefined;\r\n if (yIndex >= this._numYEdge)\r\n return undefined;\r\n\r\n return this._data[yIndex][xIndex];\r\n }\r\n /** Return true if (xIndex, yIndex) is a valid cell index. */\r\n public isValidIndex(xIndex: number, yIndex: number): boolean {\r\n if (xIndex < 0)\r\n return false;\r\n if (xIndex >= this._numXEdge)\r\n return false;\r\n if (yIndex < 0)\r\n return false;\r\n if (yIndex >= this._numYEdge)\r\n return false;\r\n return true;\r\n }\r\n}\r\n/** Manage buckets of points for fast search.\r\n * @internal\r\n */\r\nexport class XYPointBuckets {\r\n private _points: IndexedXYZCollection;\r\n private _buckets: XYIndexGrid<number>;\r\n /** Return the underlying grid with indices recorded by block */\r\n public get indexGrid(): XYIndexGrid<number> { return this._buckets; }\r\n private constructor(points: IndexedXYZCollection, buckets: XYIndexGrid<number>) {\r\n this._points = points;\r\n this._buckets = buckets;\r\n }\r\n /** Create an XYIndex grid with all indices of all `points` entered */\r\n public static create(points: IndexedXYZCollection, targetPointsPerCell: number): XYPointBuckets | undefined {\r\n const n = points.length;\r\n if (points.length < 1)\r\n return undefined;\r\n const range = points.getRange();\r\n range.expandInPlace(Geometry.smallMetricDistance * 1000.0);\r\n const buckets = XYIndexGrid.createWithEstimatedCounts<number>(range, points.length, targetPointsPerCell);\r\n if (buckets === undefined)\r\n return undefined;\r\n const result = new XYPointBuckets(points, buckets);\r\n const point = Point3d.create();\r\n for (let i = 0; i < n; i++) {\r\n points.getPoint3dAtUncheckedPointIndex(i, point);\r\n buckets.addDataAtXY(point.x, point.y, i);\r\n }\r\n return result;\r\n }\r\n /** call the `announce` function with the index and coordinates of all points in given range.\r\n * * continue the search if `announce` returns true.\r\n * * terminate the search if `announce` returns false;\r\n */\r\n public announcePointsInRange(range: Range2d | Range3d, announce: (index: number, x: number, y: number, z: number) => boolean) {\r\n const i0 = this._buckets.xIndex(range.low.x);\r\n const i1 = this._buckets.xIndex(range.high.x);\r\n const j0 = this._buckets.yIndex(range.low.y);\r\n const j1 = this._buckets.yIndex(range.high.y);\r\n const n = this._points.length;\r\n for (let i = i0; i <= i1; i++) {\r\n for (let j = j0; j <= j1; j++) {\r\n const candidates = this._buckets.getDataAtIndex(i, j);\r\n if (candidates !== undefined) {\r\n for (const k of candidates) {\r\n if (k < n) {\r\n const x = this._points.getXAtUncheckedPointIndex(k);\r\n const y = this._points.getYAtUncheckedPointIndex(k);\r\n const z = this._points.getZAtUncheckedPointIndex(k);\r\n if (range.containsXY(x, y))\r\n if (!announce(k, x, y, z))\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n"]}
@@ -1,9 +1,6 @@
1
- /** @packageDocumentation
2
- * @module Serialization
3
- */
4
1
  import { flatbuffers } from "flatbuffers";
5
- /** @packageDocumentation
6
- * @module Serialization
2
+ /**
3
+ * @internal
7
4
  */
8
5
  export declare namespace BGFBAccessors {
9
6
  /**
@@ -1140,10 +1137,10 @@ export declare namespace BGFBAccessors {
1140
1137
  */
1141
1138
  isNaturalTangents(): number;
1142
1139
  /**
1143
- * @param DPoint3d= obj
1144
- * @returns DPoint3d|null
1140
+ * @param DVector3d= obj
1141
+ * @returns DVector3d|null
1145
1142
  */
1146
- startTangent(obj?: DPoint3d): DPoint3d | null;
1143
+ startTangent(obj?: DVector3d): DVector3d | null;
1147
1144
  /**
1148
1145
  * @param DVector3d= obj
1149
1146
  * @returns DVector3d|null
@@ -2913,6 +2910,19 @@ export declare namespace BGFBAccessors {
2913
2910
  * @returns TaggedNumericData|null
2914
2911
  */
2915
2912
  taggedNumericData(obj?: TaggedNumericData): TaggedNumericData | null;
2913
+ /**
2914
+ * @param number index
2915
+ * @returns number
2916
+ */
2917
+ edgeMateIndex(index: number): number | null;
2918
+ /**
2919
+ * @returns number
2920
+ */
2921
+ edgeMateIndexLength(): number;
2922
+ /**
2923
+ * @returns Int32Array
2924
+ */
2925
+ edgeMateIndexArray(): Int32Array | null;
2916
2926
  /**
2917
2927
  * @param flatbuffers.Builder builder
2918
2928
  */
@@ -3144,12 +3154,28 @@ export declare namespace BGFBAccessors {
3144
3154
  * @param flatbuffers.Offset taggedNumericDataOffset
3145
3155
  */
3146
3156
  static addTaggedNumericData(builder: flatbuffers.Builder, taggedNumericDataOffset: flatbuffers.Offset): void;
3157
+ /**
3158
+ * @param flatbuffers.Builder builder
3159
+ * @param flatbuffers.Offset edgeMateIndexOffset
3160
+ */
3161
+ static addEdgeMateIndex(builder: flatbuffers.Builder, edgeMateIndexOffset: flatbuffers.Offset): void;
3162
+ /**
3163
+ * @param flatbuffers.Builder builder
3164
+ * @param Array.<number> data
3165
+ * @returns flatbuffers.Offset
3166
+ */
3167
+ static createEdgeMateIndexVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
3168
+ /**
3169
+ * @param flatbuffers.Builder builder
3170
+ * @param number numElems
3171
+ */
3172
+ static startEdgeMateIndexVector(builder: flatbuffers.Builder, numElems: number): void;
3147
3173
  /**
3148
3174
  * @param flatbuffers.Builder builder
3149
3175
  * @returns flatbuffers.Offset
3150
3176
  */
3151
3177
  static endPolyface(builder: flatbuffers.Builder): flatbuffers.Offset;
3152
- static createPolyface(builder: flatbuffers.Builder, pointOffset: flatbuffers.Offset, paramOffset: flatbuffers.Offset, normalOffset: flatbuffers.Offset, doubleColorOffset: flatbuffers.Offset, intColorOffset: flatbuffers.Offset, pointIndexOffset: flatbuffers.Offset, paramIndexOffset: flatbuffers.Offset, normalIndexOffset: flatbuffers.Offset, colorIndexOffset: flatbuffers.Offset, colorTableOffset: flatbuffers.Offset, numPerFace: number, numPerRow: number, meshStyle: number, twoSided: boolean, faceIndexOffset: flatbuffers.Offset, faceDataOffset: flatbuffers.Offset, auxDataOffset: flatbuffers.Offset, expectedClosure: number, taggedNumericDataOffset: flatbuffers.Offset): flatbuffers.Offset;
3178
+ static createPolyface(builder: flatbuffers.Builder, pointOffset: flatbuffers.Offset, paramOffset: flatbuffers.Offset, normalOffset: flatbuffers.Offset, doubleColorOffset: flatbuffers.Offset, intColorOffset: flatbuffers.Offset, pointIndexOffset: flatbuffers.Offset, paramIndexOffset: flatbuffers.Offset, normalIndexOffset: flatbuffers.Offset, colorIndexOffset: flatbuffers.Offset, colorTableOffset: flatbuffers.Offset, numPerFace: number, numPerRow: number, meshStyle: number, twoSided: boolean, faceIndexOffset: flatbuffers.Offset, faceDataOffset: flatbuffers.Offset, auxDataOffset: flatbuffers.Offset, expectedClosure: number, taggedNumericDataOffset: flatbuffers.Offset, edgeMateIndexOffset: flatbuffers.Offset): flatbuffers.Offset;
3153
3179
  }
3154
3180
  /**
3155
3181
  * @constructor
@@ -1 +1 @@
1
- {"version":3,"file":"BGFBAccessors.d.ts","sourceRoot":"","sources":["../../../src/serialization/BGFBAccessors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BGFBAccessors.d.ts","sourceRoot":"","sources":["../../../src/serialization/BGFBAccessors.ts"],"names":[],"mappings":"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"}