@itwin/core-geometry 5.0.0-dev.113 → 5.0.0-dev.115

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 (320) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/lib/cjs/bspline/BSplineSurface.d.ts +2 -1
  3. package/lib/cjs/bspline/BSplineSurface.d.ts.map +1 -1
  4. package/lib/cjs/bspline/BSplineSurface.js +2 -1
  5. package/lib/cjs/bspline/BSplineSurface.js.map +1 -1
  6. package/lib/cjs/clipping/ClipPlane.d.ts +7 -5
  7. package/lib/cjs/clipping/ClipPlane.d.ts.map +1 -1
  8. package/lib/cjs/clipping/ClipPlane.js +9 -5
  9. package/lib/cjs/clipping/ClipPlane.js.map +1 -1
  10. package/lib/cjs/clipping/ClipUtils.d.ts.map +1 -1
  11. package/lib/cjs/clipping/ClipUtils.js +5 -3
  12. package/lib/cjs/clipping/ClipUtils.js.map +1 -1
  13. package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
  14. package/lib/cjs/clipping/ConvexClipPlaneSet.js +12 -23
  15. package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -1
  16. package/lib/cjs/core-geometry.d.ts +1 -0
  17. package/lib/cjs/core-geometry.d.ts.map +1 -1
  18. package/lib/cjs/core-geometry.js +1 -0
  19. package/lib/cjs/core-geometry.js.map +1 -1
  20. package/lib/cjs/curve/Arc3d.d.ts +53 -31
  21. package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
  22. package/lib/cjs/curve/Arc3d.js +55 -36
  23. package/lib/cjs/curve/Arc3d.js.map +1 -1
  24. package/lib/cjs/curve/CurveCollection.d.ts +2 -0
  25. package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
  26. package/lib/cjs/curve/CurveCollection.js +14 -0
  27. package/lib/cjs/curve/CurveCollection.js.map +1 -1
  28. package/lib/cjs/curve/LineSegment3d.d.ts.map +1 -1
  29. package/lib/cjs/curve/LineSegment3d.js +1 -0
  30. package/lib/cjs/curve/LineSegment3d.js.map +1 -1
  31. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -1
  32. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js +10 -5
  33. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  34. package/lib/cjs/curve/Query/PlanarSubdivision.d.ts.map +1 -1
  35. package/lib/cjs/curve/Query/PlanarSubdivision.js +7 -2
  36. package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -1
  37. package/lib/cjs/curve/RegionMomentsXY.d.ts +15 -21
  38. package/lib/cjs/curve/RegionMomentsXY.d.ts.map +1 -1
  39. package/lib/cjs/curve/RegionMomentsXY.js +38 -58
  40. package/lib/cjs/curve/RegionMomentsXY.js.map +1 -1
  41. package/lib/cjs/curve/RegionOps.d.ts +70 -38
  42. package/lib/cjs/curve/RegionOps.d.ts.map +1 -1
  43. package/lib/cjs/curve/RegionOps.js +115 -45
  44. package/lib/cjs/curve/RegionOps.js.map +1 -1
  45. package/lib/cjs/curve/RegionOpsClassificationSweeps.d.ts +12 -13
  46. package/lib/cjs/curve/RegionOpsClassificationSweeps.d.ts.map +1 -1
  47. package/lib/cjs/curve/RegionOpsClassificationSweeps.js +23 -23
  48. package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -1
  49. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  50. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +36 -12
  51. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  52. package/lib/cjs/curve/internalContexts/TransferWithSplitArcs.d.ts +14 -0
  53. package/lib/cjs/curve/internalContexts/TransferWithSplitArcs.d.ts.map +1 -0
  54. package/lib/cjs/curve/internalContexts/TransferWithSplitArcs.js +34 -0
  55. package/lib/cjs/curve/internalContexts/TransferWithSplitArcs.js.map +1 -0
  56. package/lib/cjs/geometry3d/AngleSweep.d.ts +24 -17
  57. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
  58. package/lib/cjs/geometry3d/AngleSweep.js +31 -17
  59. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
  60. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts +7 -2
  61. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  62. package/lib/cjs/geometry3d/GrowableXYZArray.js +20 -2
  63. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -1
  64. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts +2 -1
  65. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  66. package/lib/cjs/geometry3d/IndexedXYZCollection.js +7 -3
  67. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -1
  68. package/lib/cjs/geometry3d/Plane3d.d.ts +2 -0
  69. package/lib/cjs/geometry3d/Plane3d.d.ts.map +1 -1
  70. package/lib/cjs/geometry3d/Plane3d.js +6 -1
  71. package/lib/cjs/geometry3d/Plane3d.js.map +1 -1
  72. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.d.ts +2 -0
  73. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -1
  74. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js +6 -1
  75. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  76. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts +8 -2
  77. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -1
  78. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js +18 -10
  79. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  80. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +4 -4
  81. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  82. package/lib/cjs/geometry3d/Point3dVector3d.js +6 -6
  83. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  84. package/lib/cjs/geometry3d/PointHelpers.d.ts +7 -7
  85. package/lib/cjs/geometry3d/PointHelpers.d.ts.map +1 -1
  86. package/lib/cjs/geometry3d/PointHelpers.js +66 -26
  87. package/lib/cjs/geometry3d/PointHelpers.js.map +1 -1
  88. package/lib/cjs/geometry3d/PolygonOps.d.ts +57 -9
  89. package/lib/cjs/geometry3d/PolygonOps.d.ts.map +1 -1
  90. package/lib/cjs/geometry3d/PolygonOps.js +57 -17
  91. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
  92. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts +13 -6
  93. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
  94. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js +16 -9
  95. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  96. package/lib/cjs/geometry3d/PolylineOps.d.ts +5 -4
  97. package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -1
  98. package/lib/cjs/geometry3d/PolylineOps.js +5 -4
  99. package/lib/cjs/geometry3d/PolylineOps.js.map +1 -1
  100. package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
  101. package/lib/cjs/geometry3d/Ray3d.js +11 -23
  102. package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
  103. package/lib/cjs/geometry3d/Transform.d.ts +21 -2
  104. package/lib/cjs/geometry3d/Transform.d.ts.map +1 -1
  105. package/lib/cjs/geometry3d/Transform.js +32 -13
  106. package/lib/cjs/geometry3d/Transform.js.map +1 -1
  107. package/lib/cjs/geometry4d/Matrix4d.d.ts +7 -7
  108. package/lib/cjs/geometry4d/Matrix4d.d.ts.map +1 -1
  109. package/lib/cjs/geometry4d/Matrix4d.js +9 -9
  110. package/lib/cjs/geometry4d/Matrix4d.js.map +1 -1
  111. package/lib/cjs/geometry4d/MomentData.d.ts +32 -34
  112. package/lib/cjs/geometry4d/MomentData.d.ts.map +1 -1
  113. package/lib/cjs/geometry4d/MomentData.js +56 -57
  114. package/lib/cjs/geometry4d/MomentData.js.map +1 -1
  115. package/lib/cjs/geometry4d/Point4d.d.ts +7 -4
  116. package/lib/cjs/geometry4d/Point4d.d.ts.map +1 -1
  117. package/lib/cjs/geometry4d/Point4d.js +26 -15
  118. package/lib/cjs/geometry4d/Point4d.js.map +1 -1
  119. package/lib/cjs/polyface/FacetOrientation.d.ts +1 -1
  120. package/lib/cjs/polyface/FacetOrientation.js +1 -1
  121. package/lib/cjs/polyface/FacetOrientation.js.map +1 -1
  122. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts +55 -40
  123. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  124. package/lib/cjs/polyface/IndexedEdgeMatcher.js +83 -75
  125. package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -1
  126. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts +15 -14
  127. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  128. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js +47 -38
  129. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  130. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts +26 -19
  131. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts.map +1 -1
  132. package/lib/cjs/polyface/IndexedPolyfaceWalker.js +47 -32
  133. package/lib/cjs/polyface/IndexedPolyfaceWalker.js.map +1 -1
  134. package/lib/cjs/polyface/Polyface.d.ts +17 -3
  135. package/lib/cjs/polyface/Polyface.d.ts.map +1 -1
  136. package/lib/cjs/polyface/Polyface.js +16 -0
  137. package/lib/cjs/polyface/Polyface.js.map +1 -1
  138. package/lib/cjs/polyface/PolyfaceBuilder.js +2 -2
  139. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  140. package/lib/cjs/polyface/PolyfaceClip.d.ts +19 -18
  141. package/lib/cjs/polyface/PolyfaceClip.d.ts.map +1 -1
  142. package/lib/cjs/polyface/PolyfaceClip.js +39 -42
  143. package/lib/cjs/polyface/PolyfaceClip.js.map +1 -1
  144. package/lib/cjs/polyface/PolyfaceQuery.d.ts +116 -75
  145. package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
  146. package/lib/cjs/polyface/PolyfaceQuery.js +312 -228
  147. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  148. package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts +3 -3
  149. package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
  150. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js +3 -3
  151. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  152. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.d.ts +7 -6
  153. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -1
  154. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js +8 -9
  155. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  156. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  157. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  158. package/lib/cjs/topology/ChainMerge.d.ts +1 -1
  159. package/lib/cjs/topology/ChainMerge.js +1 -1
  160. package/lib/cjs/topology/ChainMerge.js.map +1 -1
  161. package/lib/esm/bspline/BSplineSurface.d.ts +2 -1
  162. package/lib/esm/bspline/BSplineSurface.d.ts.map +1 -1
  163. package/lib/esm/bspline/BSplineSurface.js +2 -1
  164. package/lib/esm/bspline/BSplineSurface.js.map +1 -1
  165. package/lib/esm/clipping/ClipPlane.d.ts +7 -5
  166. package/lib/esm/clipping/ClipPlane.d.ts.map +1 -1
  167. package/lib/esm/clipping/ClipPlane.js +9 -5
  168. package/lib/esm/clipping/ClipPlane.js.map +1 -1
  169. package/lib/esm/clipping/ClipUtils.d.ts.map +1 -1
  170. package/lib/esm/clipping/ClipUtils.js +5 -3
  171. package/lib/esm/clipping/ClipUtils.js.map +1 -1
  172. package/lib/esm/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
  173. package/lib/esm/clipping/ConvexClipPlaneSet.js +12 -23
  174. package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -1
  175. package/lib/esm/core-geometry.d.ts +1 -0
  176. package/lib/esm/core-geometry.d.ts.map +1 -1
  177. package/lib/esm/core-geometry.js +1 -0
  178. package/lib/esm/core-geometry.js.map +1 -1
  179. package/lib/esm/curve/Arc3d.d.ts +53 -31
  180. package/lib/esm/curve/Arc3d.d.ts.map +1 -1
  181. package/lib/esm/curve/Arc3d.js +55 -36
  182. package/lib/esm/curve/Arc3d.js.map +1 -1
  183. package/lib/esm/curve/CurveCollection.d.ts +2 -0
  184. package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
  185. package/lib/esm/curve/CurveCollection.js +14 -0
  186. package/lib/esm/curve/CurveCollection.js.map +1 -1
  187. package/lib/esm/curve/LineSegment3d.d.ts.map +1 -1
  188. package/lib/esm/curve/LineSegment3d.js +1 -0
  189. package/lib/esm/curve/LineSegment3d.js.map +1 -1
  190. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -1
  191. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +10 -5
  192. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  193. package/lib/esm/curve/Query/PlanarSubdivision.d.ts.map +1 -1
  194. package/lib/esm/curve/Query/PlanarSubdivision.js +7 -2
  195. package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -1
  196. package/lib/esm/curve/RegionMomentsXY.d.ts +15 -21
  197. package/lib/esm/curve/RegionMomentsXY.d.ts.map +1 -1
  198. package/lib/esm/curve/RegionMomentsXY.js +38 -58
  199. package/lib/esm/curve/RegionMomentsXY.js.map +1 -1
  200. package/lib/esm/curve/RegionOps.d.ts +70 -38
  201. package/lib/esm/curve/RegionOps.d.ts.map +1 -1
  202. package/lib/esm/curve/RegionOps.js +116 -46
  203. package/lib/esm/curve/RegionOps.js.map +1 -1
  204. package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts +12 -13
  205. package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts.map +1 -1
  206. package/lib/esm/curve/RegionOpsClassificationSweeps.js +23 -23
  207. package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -1
  208. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  209. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +36 -12
  210. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  211. package/lib/esm/curve/internalContexts/TransferWithSplitArcs.d.ts +14 -0
  212. package/lib/esm/curve/internalContexts/TransferWithSplitArcs.d.ts.map +1 -0
  213. package/lib/esm/curve/internalContexts/TransferWithSplitArcs.js +30 -0
  214. package/lib/esm/curve/internalContexts/TransferWithSplitArcs.js.map +1 -0
  215. package/lib/esm/geometry3d/AngleSweep.d.ts +24 -17
  216. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
  217. package/lib/esm/geometry3d/AngleSweep.js +31 -17
  218. package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
  219. package/lib/esm/geometry3d/GrowableXYZArray.d.ts +7 -2
  220. package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  221. package/lib/esm/geometry3d/GrowableXYZArray.js +20 -2
  222. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -1
  223. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +2 -1
  224. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  225. package/lib/esm/geometry3d/IndexedXYZCollection.js +7 -3
  226. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -1
  227. package/lib/esm/geometry3d/Plane3d.d.ts +2 -0
  228. package/lib/esm/geometry3d/Plane3d.d.ts.map +1 -1
  229. package/lib/esm/geometry3d/Plane3d.js +6 -1
  230. package/lib/esm/geometry3d/Plane3d.js.map +1 -1
  231. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts +2 -0
  232. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -1
  233. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js +6 -1
  234. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  235. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts +8 -2
  236. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -1
  237. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +18 -10
  238. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  239. package/lib/esm/geometry3d/Point3dVector3d.d.ts +4 -4
  240. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  241. package/lib/esm/geometry3d/Point3dVector3d.js +6 -6
  242. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  243. package/lib/esm/geometry3d/PointHelpers.d.ts +7 -7
  244. package/lib/esm/geometry3d/PointHelpers.d.ts.map +1 -1
  245. package/lib/esm/geometry3d/PointHelpers.js +66 -26
  246. package/lib/esm/geometry3d/PointHelpers.js.map +1 -1
  247. package/lib/esm/geometry3d/PolygonOps.d.ts +57 -9
  248. package/lib/esm/geometry3d/PolygonOps.d.ts.map +1 -1
  249. package/lib/esm/geometry3d/PolygonOps.js +57 -17
  250. package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
  251. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts +13 -6
  252. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
  253. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +16 -9
  254. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  255. package/lib/esm/geometry3d/PolylineOps.d.ts +5 -4
  256. package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -1
  257. package/lib/esm/geometry3d/PolylineOps.js +5 -4
  258. package/lib/esm/geometry3d/PolylineOps.js.map +1 -1
  259. package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
  260. package/lib/esm/geometry3d/Ray3d.js +11 -23
  261. package/lib/esm/geometry3d/Ray3d.js.map +1 -1
  262. package/lib/esm/geometry3d/Transform.d.ts +21 -2
  263. package/lib/esm/geometry3d/Transform.d.ts.map +1 -1
  264. package/lib/esm/geometry3d/Transform.js +32 -13
  265. package/lib/esm/geometry3d/Transform.js.map +1 -1
  266. package/lib/esm/geometry4d/Matrix4d.d.ts +7 -7
  267. package/lib/esm/geometry4d/Matrix4d.d.ts.map +1 -1
  268. package/lib/esm/geometry4d/Matrix4d.js +9 -9
  269. package/lib/esm/geometry4d/Matrix4d.js.map +1 -1
  270. package/lib/esm/geometry4d/MomentData.d.ts +32 -34
  271. package/lib/esm/geometry4d/MomentData.d.ts.map +1 -1
  272. package/lib/esm/geometry4d/MomentData.js +56 -57
  273. package/lib/esm/geometry4d/MomentData.js.map +1 -1
  274. package/lib/esm/geometry4d/Point4d.d.ts +7 -4
  275. package/lib/esm/geometry4d/Point4d.d.ts.map +1 -1
  276. package/lib/esm/geometry4d/Point4d.js +26 -15
  277. package/lib/esm/geometry4d/Point4d.js.map +1 -1
  278. package/lib/esm/polyface/FacetOrientation.d.ts +1 -1
  279. package/lib/esm/polyface/FacetOrientation.js +1 -1
  280. package/lib/esm/polyface/FacetOrientation.js.map +1 -1
  281. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts +55 -40
  282. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  283. package/lib/esm/polyface/IndexedEdgeMatcher.js +83 -75
  284. package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -1
  285. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts +15 -14
  286. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  287. package/lib/esm/polyface/IndexedPolyfaceVisitor.js +47 -38
  288. package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  289. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts +26 -19
  290. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts.map +1 -1
  291. package/lib/esm/polyface/IndexedPolyfaceWalker.js +47 -32
  292. package/lib/esm/polyface/IndexedPolyfaceWalker.js.map +1 -1
  293. package/lib/esm/polyface/Polyface.d.ts +17 -3
  294. package/lib/esm/polyface/Polyface.d.ts.map +1 -1
  295. package/lib/esm/polyface/Polyface.js +16 -0
  296. package/lib/esm/polyface/Polyface.js.map +1 -1
  297. package/lib/esm/polyface/PolyfaceBuilder.js +2 -2
  298. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  299. package/lib/esm/polyface/PolyfaceClip.d.ts +19 -18
  300. package/lib/esm/polyface/PolyfaceClip.d.ts.map +1 -1
  301. package/lib/esm/polyface/PolyfaceClip.js +39 -42
  302. package/lib/esm/polyface/PolyfaceClip.js.map +1 -1
  303. package/lib/esm/polyface/PolyfaceQuery.d.ts +116 -75
  304. package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
  305. package/lib/esm/polyface/PolyfaceQuery.js +313 -229
  306. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  307. package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts +3 -3
  308. package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
  309. package/lib/esm/polyface/RangeTree/RangeTreeNode.js +3 -3
  310. package/lib/esm/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  311. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts +7 -6
  312. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -1
  313. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js +8 -9
  314. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  315. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  316. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  317. package/lib/esm/topology/ChainMerge.d.ts +1 -1
  318. package/lib/esm/topology/ChainMerge.js +1 -1
  319. package/lib/esm/topology/ChainMerge.js.map +1 -1
  320. package/package.json +3 -3
@@ -35,9 +35,9 @@ export declare class NumberArray {
35
35
  */
36
36
  static maxAbsDiffFloat64(dataA: Float64Array, dataB: Float64Array): number;
37
37
  /**
38
- * Return an array with indicated start and end points, maximum step size internally
39
- * @param low low value
40
- * @param high high value
38
+ * Return an array with indicated start and end points, and maximum step size.
39
+ * @param low first value in returned array
40
+ * @param high last value in returned array
41
41
  * @param step max permitted step
42
42
  */
43
43
  static createArrayWithMaxStepSize(low: number, high: number, step: number): number[];
@@ -91,7 +91,7 @@ export declare class NumberArray {
91
91
  */
92
92
  export declare class Point2dArray {
93
93
  /** Return true if arrays have same length and matching coordinates. */
94
- static isAlmostEqual(dataA: undefined | Point2d[], dataB: undefined | Point2d[]): boolean;
94
+ static isAlmostEqual(dataA: Point2d[] | Float64Array | undefined, dataB: Point2d[] | Float64Array | undefined, tolerance?: number): boolean;
95
95
  /**
96
96
  * Return an array containing clones of the Point3d data[]
97
97
  * @param data source data
@@ -109,7 +109,7 @@ export declare class Point2dArray {
109
109
  */
110
110
  export declare class Vector3dArray {
111
111
  /** Return true if arrays have same length and matching coordinates. */
112
- static isAlmostEqual(dataA: undefined | Vector3d[], dataB: undefined | Vector3d[]): boolean;
112
+ static isAlmostEqual(dataA: Vector3d[] | Float64Array | undefined, dataB: Vector3d[] | Float64Array | undefined, tolerance?: number): boolean;
113
113
  /**
114
114
  * Return an array containing clones of the Vector3d data[]
115
115
  * @param data source data
@@ -155,7 +155,7 @@ export declare class Point4dArray {
155
155
  */
156
156
  static multiplyInPlace(transform: Transform, xyzw: Float64Array): void;
157
157
  /** Test arrays for near equality of all corresponding numeric values, treated as coordinates. */
158
- static isAlmostEqual(dataA: Point4d[] | Float64Array | undefined, dataB: Point4d[] | Float64Array | undefined): boolean;
158
+ static isAlmostEqual(dataA: Point4d[] | Float64Array | undefined, dataB: Point4d[] | Float64Array | undefined, tolerance?: number): boolean;
159
159
  /** return true iff all xyzw points' altitudes are within tolerance of the plane.*/
160
160
  static isCloseToPlane(data: Point4d[] | Float64Array, plane: Plane3dByOriginAndUnitNormal, tolerance?: number): boolean;
161
161
  }
@@ -250,7 +250,7 @@ export declare class Point3dArray {
250
250
  /** multiply a transform times each x,y,z triple and replace the x,y,z in the packed array */
251
251
  static multiplyInPlace(transform: Transform, xyz: Float64Array): void;
252
252
  /** Test arrays for near equality of all corresponding numeric values, treated as coordinates. */
253
- static isAlmostEqual(dataA: Point3d[] | Float64Array | undefined, dataB: Point3d[] | Float64Array | undefined): boolean;
253
+ static isAlmostEqual(dataA: Point3d[] | Float64Array | undefined, dataB: Point3d[] | Float64Array | undefined, tolerance?: number): boolean;
254
254
  /** return simple average of all coordinates. (000 if empty array) */
255
255
  static centroid(points: IndexedXYZCollection | Point3d[], result?: Point3d): Point3d;
256
256
  /** Return the index of the point most distant from spacePoint */
@@ -1 +1 @@
1
- {"version":3,"file":"PointHelpers.d.ts","sourceRoot":"","sources":["../../../src/geometry3d/PointHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PointHelpers.d.ts","sourceRoot":"","sources":["../../../src/geometry3d/PointHelpers.ts"],"names":[],"mappings":"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"}
@@ -137,9 +137,9 @@ export class NumberArray {
137
137
  return a;
138
138
  }
139
139
  /**
140
- * Return an array with indicated start and end points, maximum step size internally
141
- * @param low low value
142
- * @param high high value
140
+ * Return an array with indicated start and end points, and maximum step size.
141
+ * @param low first value in returned array
142
+ * @param high last value in returned array
143
143
  * @param step max permitted step
144
144
  */
145
145
  static createArrayWithMaxStepSize(low, high, step) {
@@ -330,13 +330,32 @@ export class NumberArray {
330
330
  */
331
331
  export class Point2dArray {
332
332
  /** Return true if arrays have same length and matching coordinates. */
333
- static isAlmostEqual(dataA, dataB) {
333
+ static isAlmostEqual(dataA, dataB, tolerance = Geometry.smallMetricDistance) {
334
334
  if (dataA && dataB) {
335
- if (dataA.length !== dataB.length)
336
- return false;
337
- for (let i = 0; i < dataA.length; i++) {
338
- if (!dataA[i].isAlmostEqual(dataB[i]))
335
+ if (dataA instanceof Float64Array && dataB instanceof Float64Array) {
336
+ if (dataA.length !== dataB.length)
337
+ return false;
338
+ for (let i = 0; i < dataA.length; i++)
339
+ if (!Geometry.isSameCoordinate(dataA[i], dataB[i], tolerance))
340
+ return false;
341
+ }
342
+ else if (Array.isArray(dataA) && Array.isArray(dataB)) {
343
+ if (dataA.length !== dataB.length)
344
+ return false;
345
+ for (let i = 0; i < dataA.length; i++)
346
+ if (!dataA[i].isAlmostEqual(dataB[i], tolerance))
347
+ return false;
348
+ }
349
+ else { // different types
350
+ const points = dataA instanceof Float64Array ? dataB : dataA;
351
+ const numbers = dataA instanceof Float64Array ? dataA : dataB;
352
+ if (numbers.length !== points.length * 2)
339
353
  return false;
354
+ for (let iPoint = 0; iPoint < points.length; ++iPoint) {
355
+ if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[2 * iPoint], tolerance) ||
356
+ !Geometry.isSameCoordinate(points[iPoint].y, numbers[2 * iPoint + 1], tolerance))
357
+ return false;
358
+ }
340
359
  }
341
360
  return true;
342
361
  }
@@ -373,13 +392,34 @@ export class Point2dArray {
373
392
  */
374
393
  export class Vector3dArray {
375
394
  /** Return true if arrays have same length and matching coordinates. */
376
- static isAlmostEqual(dataA, dataB) {
395
+ static isAlmostEqual(dataA, dataB, tolerance = Geometry.smallMetricDistance) {
377
396
  if (dataA && dataB) {
378
- if (dataA.length !== dataB.length)
379
- return false;
380
- for (let i = 0; i < dataA.length; i++)
381
- if (!dataA[i].isAlmostEqual(dataB[i]))
397
+ if (dataA instanceof Float64Array && dataB instanceof Float64Array) {
398
+ if (dataA.length !== dataB.length)
399
+ return false;
400
+ for (let i = 0; i < dataA.length; i++)
401
+ if (!Geometry.isSameCoordinate(dataA[i], dataB[i], tolerance))
402
+ return false;
403
+ }
404
+ else if (Array.isArray(dataA) && Array.isArray(dataB)) {
405
+ if (dataA.length !== dataB.length)
382
406
  return false;
407
+ for (let i = 0; i < dataA.length; i++)
408
+ if (!dataA[i].isAlmostEqual(dataB[i], tolerance))
409
+ return false;
410
+ }
411
+ else { // different types
412
+ const points = dataA instanceof Float64Array ? dataB : dataA;
413
+ const numbers = dataA instanceof Float64Array ? dataA : dataB;
414
+ if (numbers.length !== points.length * 3)
415
+ return false;
416
+ for (let iPoint = 0; iPoint < points.length; ++iPoint) {
417
+ if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[3 * iPoint], tolerance) ||
418
+ !Geometry.isSameCoordinate(points[iPoint].y, numbers[3 * iPoint + 1], tolerance) ||
419
+ !Geometry.isSameCoordinate(points[iPoint].z, numbers[3 * iPoint + 2], tolerance))
420
+ return false;
421
+ }
422
+ }
383
423
  return true;
384
424
  }
385
425
  return (dataA === undefined && dataB === undefined);
@@ -498,20 +538,20 @@ export class Point4dArray {
498
538
  }
499
539
  }
500
540
  /** Test arrays for near equality of all corresponding numeric values, treated as coordinates. */
501
- static isAlmostEqual(dataA, dataB) {
541
+ static isAlmostEqual(dataA, dataB, tolerance = Geometry.smallMetricDistance) {
502
542
  if (dataA && dataB) {
503
543
  if (dataA instanceof Float64Array && dataB instanceof Float64Array) {
504
544
  if (dataA.length !== dataB.length)
505
545
  return false;
506
546
  for (let i = 0; i < dataA.length; i++)
507
- if (!Geometry.isSameCoordinate(dataA[i], dataB[i]))
547
+ if (!Geometry.isSameCoordinate(dataA[i], dataB[i], tolerance))
508
548
  return false;
509
549
  }
510
550
  else if (Array.isArray(dataA) && Array.isArray(dataB)) {
511
551
  if (dataA.length !== dataB.length)
512
552
  return false;
513
553
  for (let i = 0; i < dataA.length; i++)
514
- if (!dataA[i].isAlmostEqual(dataB[i]))
554
+ if (!dataA[i].isAlmostEqual(dataB[i], tolerance))
515
555
  return false;
516
556
  }
517
557
  else { // different types
@@ -520,10 +560,10 @@ export class Point4dArray {
520
560
  if (numbers.length !== points.length * 4)
521
561
  return false;
522
562
  for (let iPoint = 0; iPoint < points.length; ++iPoint) {
523
- if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[4 * iPoint]) ||
524
- !Geometry.isSameCoordinate(points[iPoint].y, numbers[4 * iPoint + 1]) ||
525
- !Geometry.isSameCoordinate(points[iPoint].z, numbers[4 * iPoint + 2]) ||
526
- !Geometry.isSameCoordinate(points[iPoint].w, numbers[4 * iPoint + 3]))
563
+ if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[4 * iPoint], tolerance) ||
564
+ !Geometry.isSameCoordinate(points[iPoint].y, numbers[4 * iPoint + 1], tolerance) ||
565
+ !Geometry.isSameCoordinate(points[iPoint].z, numbers[4 * iPoint + 2], tolerance) ||
566
+ !Geometry.isSameCoordinate(points[iPoint].w, numbers[4 * iPoint + 3], tolerance))
527
567
  return false;
528
568
  }
529
569
  }
@@ -763,20 +803,20 @@ export class Point3dArray {
763
803
  }
764
804
  }
765
805
  /** Test arrays for near equality of all corresponding numeric values, treated as coordinates. */
766
- static isAlmostEqual(dataA, dataB) {
806
+ static isAlmostEqual(dataA, dataB, tolerance = Geometry.smallMetricDistance) {
767
807
  if (dataA && dataB) {
768
808
  if (dataA instanceof Float64Array && dataB instanceof Float64Array) {
769
809
  if (dataA.length !== dataB.length)
770
810
  return false;
771
811
  for (let i = 0; i < dataA.length; i++)
772
- if (!Geometry.isSameCoordinate(dataA[i], dataB[i]))
812
+ if (!Geometry.isSameCoordinate(dataA[i], dataB[i], tolerance))
773
813
  return false;
774
814
  }
775
815
  else if (Array.isArray(dataA) && Array.isArray(dataB)) {
776
816
  if (dataA.length !== dataB.length)
777
817
  return false;
778
818
  for (let i = 0; i < dataA.length; i++)
779
- if (!dataA[i].isAlmostEqual(dataB[i]))
819
+ if (!dataA[i].isAlmostEqual(dataB[i], tolerance))
780
820
  return false;
781
821
  }
782
822
  else { // different types
@@ -785,9 +825,9 @@ export class Point3dArray {
785
825
  if (numbers.length !== points.length * 3)
786
826
  return false;
787
827
  for (let iPoint = 0; iPoint < points.length; ++iPoint) {
788
- if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[3 * iPoint]) ||
789
- !Geometry.isSameCoordinate(points[iPoint].y, numbers[3 * iPoint + 1]) ||
790
- !Geometry.isSameCoordinate(points[iPoint].z, numbers[3 * iPoint + 2]))
828
+ if (!Geometry.isSameCoordinate(points[iPoint].x, numbers[3 * iPoint], tolerance) ||
829
+ !Geometry.isSameCoordinate(points[iPoint].y, numbers[3 * iPoint + 1], tolerance) ||
830
+ !Geometry.isSameCoordinate(points[iPoint].z, numbers[3 * iPoint + 2], tolerance))
791
831
  return false;
792
832
  }
793
833
  }