@itwin/core-geometry 3.0.0-dev.76 → 3.0.0-dev.80

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 (1999) hide show
  1. package/CHANGELOG.md +1049 -0
  2. package/lib/{Constant.d.ts → cjs/Constant.d.ts} +0 -0
  3. package/lib/cjs/Constant.d.ts.map +1 -0
  4. package/lib/{Constant.js → cjs/Constant.js} +0 -0
  5. package/lib/cjs/Constant.js.map +1 -0
  6. package/lib/{Geometry.d.ts → cjs/Geometry.d.ts} +0 -0
  7. package/lib/cjs/Geometry.d.ts.map +1 -0
  8. package/lib/{Geometry.js → cjs/Geometry.js} +0 -0
  9. package/lib/cjs/Geometry.js.map +1 -0
  10. package/lib/{bspline → cjs/bspline}/AkimaCurve3d.d.ts +0 -0
  11. package/lib/cjs/bspline/AkimaCurve3d.d.ts.map +1 -0
  12. package/lib/{bspline → cjs/bspline}/AkimaCurve3d.js +0 -0
  13. package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -0
  14. package/lib/{bspline → cjs/bspline}/BSpline1dNd.d.ts +0 -0
  15. package/lib/cjs/bspline/BSpline1dNd.d.ts.map +1 -0
  16. package/lib/{bspline → cjs/bspline}/BSpline1dNd.js +0 -0
  17. package/lib/cjs/bspline/BSpline1dNd.js.map +1 -0
  18. package/lib/{bspline → cjs/bspline}/BSplineCurve.d.ts +0 -0
  19. package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -0
  20. package/lib/{bspline → cjs/bspline}/BSplineCurve.js +0 -0
  21. package/lib/cjs/bspline/BSplineCurve.js.map +1 -0
  22. package/lib/{bspline → cjs/bspline}/BSplineCurve3dH.d.ts +0 -0
  23. package/lib/cjs/bspline/BSplineCurve3dH.d.ts.map +1 -0
  24. package/lib/{bspline → cjs/bspline}/BSplineCurve3dH.js +0 -0
  25. package/lib/cjs/bspline/BSplineCurve3dH.js.map +1 -0
  26. package/lib/{bspline → cjs/bspline}/BSplineCurveOps.d.ts +0 -0
  27. package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -0
  28. package/lib/{bspline → cjs/bspline}/BSplineCurveOps.js +0 -0
  29. package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -0
  30. package/lib/cjs/bspline/BSplineSurface.d.ts +491 -0
  31. package/lib/cjs/bspline/BSplineSurface.d.ts.map +1 -0
  32. package/lib/{bspline → cjs/bspline}/BSplineSurface.js +0 -0
  33. package/lib/cjs/bspline/BSplineSurface.js.map +1 -0
  34. package/lib/{bspline → cjs/bspline}/Bezier1dNd.d.ts +0 -0
  35. package/lib/cjs/bspline/Bezier1dNd.d.ts.map +1 -0
  36. package/lib/{bspline → cjs/bspline}/Bezier1dNd.js +0 -0
  37. package/lib/cjs/bspline/Bezier1dNd.js.map +1 -0
  38. package/lib/{bspline → cjs/bspline}/BezierCurve3d.d.ts +0 -0
  39. package/lib/cjs/bspline/BezierCurve3d.d.ts.map +1 -0
  40. package/lib/{bspline → cjs/bspline}/BezierCurve3d.js +0 -0
  41. package/lib/cjs/bspline/BezierCurve3d.js.map +1 -0
  42. package/lib/{bspline → cjs/bspline}/BezierCurve3dH.d.ts +0 -0
  43. package/lib/cjs/bspline/BezierCurve3dH.d.ts.map +1 -0
  44. package/lib/{bspline → cjs/bspline}/BezierCurve3dH.js +0 -0
  45. package/lib/cjs/bspline/BezierCurve3dH.js.map +1 -0
  46. package/lib/{bspline → cjs/bspline}/BezierCurveBase.d.ts +0 -0
  47. package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -0
  48. package/lib/{bspline → cjs/bspline}/BezierCurveBase.js +0 -0
  49. package/lib/cjs/bspline/BezierCurveBase.js.map +1 -0
  50. package/lib/{bspline → cjs/bspline}/InterpolationCurve3d.d.ts +0 -0
  51. package/lib/cjs/bspline/InterpolationCurve3d.d.ts.map +1 -0
  52. package/lib/{bspline → cjs/bspline}/InterpolationCurve3d.js +0 -0
  53. package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -0
  54. package/lib/{bspline → cjs/bspline}/KnotVector.d.ts +0 -0
  55. package/lib/cjs/bspline/KnotVector.d.ts.map +1 -0
  56. package/lib/{bspline → cjs/bspline}/KnotVector.js +0 -0
  57. package/lib/cjs/bspline/KnotVector.js.map +1 -0
  58. package/lib/{bspline → cjs/bspline}/SurfaceLocationDetail.d.ts +0 -0
  59. package/lib/cjs/bspline/SurfaceLocationDetail.d.ts.map +1 -0
  60. package/lib/{bspline → cjs/bspline}/SurfaceLocationDetail.js +0 -0
  61. package/lib/cjs/bspline/SurfaceLocationDetail.js.map +1 -0
  62. package/lib/{clipping → cjs/clipping}/AlternatingConvexClipTree.d.ts +0 -0
  63. package/lib/cjs/clipping/AlternatingConvexClipTree.d.ts.map +1 -0
  64. package/lib/{clipping → cjs/clipping}/AlternatingConvexClipTree.js +0 -0
  65. package/lib/cjs/clipping/AlternatingConvexClipTree.js.map +1 -0
  66. package/lib/{clipping → cjs/clipping}/BooleanClipFactory.d.ts +0 -0
  67. package/lib/cjs/clipping/BooleanClipFactory.d.ts.map +1 -0
  68. package/lib/{clipping → cjs/clipping}/BooleanClipFactory.js +0 -0
  69. package/lib/cjs/clipping/BooleanClipFactory.js.map +1 -0
  70. package/lib/{clipping → cjs/clipping}/BooleanClipNode.d.ts +0 -0
  71. package/lib/cjs/clipping/BooleanClipNode.d.ts.map +1 -0
  72. package/lib/{clipping → cjs/clipping}/BooleanClipNode.js +0 -0
  73. package/lib/cjs/clipping/BooleanClipNode.js.map +1 -0
  74. package/lib/{clipping → cjs/clipping}/ClipPlane.d.ts +0 -0
  75. package/lib/cjs/clipping/ClipPlane.d.ts.map +1 -0
  76. package/lib/{clipping → cjs/clipping}/ClipPlane.js +0 -0
  77. package/lib/cjs/clipping/ClipPlane.js.map +1 -0
  78. package/lib/{clipping → cjs/clipping}/ClipPrimitive.d.ts +0 -0
  79. package/lib/cjs/clipping/ClipPrimitive.d.ts.map +1 -0
  80. package/lib/{clipping → cjs/clipping}/ClipPrimitive.js +0 -0
  81. package/lib/cjs/clipping/ClipPrimitive.js.map +1 -0
  82. package/lib/{clipping → cjs/clipping}/ClipUtils.d.ts +0 -0
  83. package/lib/cjs/clipping/ClipUtils.d.ts.map +1 -0
  84. package/lib/{clipping → cjs/clipping}/ClipUtils.js +0 -0
  85. package/lib/cjs/clipping/ClipUtils.js.map +1 -0
  86. package/lib/{clipping → cjs/clipping}/ClipVector.d.ts +0 -0
  87. package/lib/cjs/clipping/ClipVector.d.ts.map +1 -0
  88. package/lib/{clipping → cjs/clipping}/ClipVector.js +0 -0
  89. package/lib/cjs/clipping/ClipVector.js.map +1 -0
  90. package/lib/{clipping → cjs/clipping}/ConvexClipPlaneSet.d.ts +0 -0
  91. package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts.map +1 -0
  92. package/lib/{clipping → cjs/clipping}/ConvexClipPlaneSet.js +0 -0
  93. package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -0
  94. package/lib/{clipping → cjs/clipping}/UnionOfConvexClipPlaneSets.d.ts +0 -0
  95. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -0
  96. package/lib/{clipping → cjs/clipping}/UnionOfConvexClipPlaneSets.js +0 -0
  97. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -0
  98. package/lib/{clipping → cjs/clipping}/internalContexts/LineStringOffsetClipperContext.d.ts +0 -0
  99. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +1 -0
  100. package/lib/{clipping → cjs/clipping}/internalContexts/LineStringOffsetClipperContext.js +0 -0
  101. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -0
  102. package/lib/{core-geometry.d.ts → cjs/core-geometry.d.ts} +0 -0
  103. package/lib/cjs/core-geometry.d.ts.map +1 -0
  104. package/lib/{core-geometry.js → cjs/core-geometry.js} +0 -0
  105. package/lib/cjs/core-geometry.js.map +1 -0
  106. package/lib/{curve → cjs/curve}/Arc3d.d.ts +0 -0
  107. package/lib/cjs/curve/Arc3d.d.ts.map +1 -0
  108. package/lib/{curve → cjs/curve}/Arc3d.js +0 -0
  109. package/lib/cjs/curve/Arc3d.js.map +1 -0
  110. package/lib/{curve → cjs/curve}/ChainCollectorContext.d.ts +0 -0
  111. package/lib/cjs/curve/ChainCollectorContext.d.ts.map +1 -0
  112. package/lib/{curve → cjs/curve}/ChainCollectorContext.js +0 -0
  113. package/lib/cjs/curve/ChainCollectorContext.js.map +1 -0
  114. package/lib/{curve → cjs/curve}/ConstructCurveBetweenCurves.d.ts +0 -0
  115. package/lib/cjs/curve/ConstructCurveBetweenCurves.d.ts.map +1 -0
  116. package/lib/{curve → cjs/curve}/ConstructCurveBetweenCurves.js +0 -0
  117. package/lib/cjs/curve/ConstructCurveBetweenCurves.js.map +1 -0
  118. package/lib/{curve → cjs/curve}/CoordinateXYZ.d.ts +0 -0
  119. package/lib/cjs/curve/CoordinateXYZ.d.ts.map +1 -0
  120. package/lib/{curve → cjs/curve}/CoordinateXYZ.js +0 -0
  121. package/lib/cjs/curve/CoordinateXYZ.js.map +1 -0
  122. package/lib/{curve → cjs/curve}/CurveChain.d.ts +0 -0
  123. package/lib/cjs/curve/CurveChain.d.ts.map +1 -0
  124. package/lib/{curve → cjs/curve}/CurveChain.js +0 -0
  125. package/lib/cjs/curve/CurveChain.js.map +1 -0
  126. package/lib/{curve → cjs/curve}/CurveChainWithDistanceIndex.d.ts +0 -0
  127. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -0
  128. package/lib/{curve → cjs/curve}/CurveChainWithDistanceIndex.js +0 -0
  129. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -0
  130. package/lib/{curve → cjs/curve}/CurveCollection.d.ts +0 -0
  131. package/lib/cjs/curve/CurveCollection.d.ts.map +1 -0
  132. package/lib/{curve → cjs/curve}/CurveCollection.js +0 -0
  133. package/lib/cjs/curve/CurveCollection.js.map +1 -0
  134. package/lib/{curve → cjs/curve}/CurveCurve.d.ts +0 -0
  135. package/lib/cjs/curve/CurveCurve.d.ts.map +1 -0
  136. package/lib/{curve → cjs/curve}/CurveCurve.js +0 -0
  137. package/lib/cjs/curve/CurveCurve.js.map +1 -0
  138. package/lib/{curve → cjs/curve}/CurveCurveCloseApproachXY.d.ts +0 -0
  139. package/lib/cjs/curve/CurveCurveCloseApproachXY.d.ts.map +1 -0
  140. package/lib/{curve → cjs/curve}/CurveCurveCloseApproachXY.js +0 -0
  141. package/lib/cjs/curve/CurveCurveCloseApproachXY.js.map +1 -0
  142. package/lib/{curve → cjs/curve}/CurveCurveIntersectXY.d.ts +0 -0
  143. package/lib/cjs/curve/CurveCurveIntersectXY.d.ts.map +1 -0
  144. package/lib/{curve → cjs/curve}/CurveCurveIntersectXY.js +0 -0
  145. package/lib/cjs/curve/CurveCurveIntersectXY.js.map +1 -0
  146. package/lib/{curve → cjs/curve}/CurveCurveIntersectXYZ.d.ts +0 -0
  147. package/lib/cjs/curve/CurveCurveIntersectXYZ.d.ts.map +1 -0
  148. package/lib/{curve → cjs/curve}/CurveCurveIntersectXYZ.js +0 -0
  149. package/lib/cjs/curve/CurveCurveIntersectXYZ.js.map +1 -0
  150. package/lib/{curve → cjs/curve}/CurveExtendMode.d.ts +0 -0
  151. package/lib/cjs/curve/CurveExtendMode.d.ts.map +1 -0
  152. package/lib/{curve → cjs/curve}/CurveExtendMode.js +0 -0
  153. package/lib/cjs/curve/CurveExtendMode.js.map +1 -0
  154. package/lib/{curve → cjs/curve}/CurveFactory.d.ts +0 -0
  155. package/lib/cjs/curve/CurveFactory.d.ts.map +1 -0
  156. package/lib/{curve → cjs/curve}/CurveFactory.js +0 -0
  157. package/lib/cjs/curve/CurveFactory.js.map +1 -0
  158. package/lib/{curve → cjs/curve}/CurveLocationDetail.d.ts +0 -0
  159. package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -0
  160. package/lib/{curve → cjs/curve}/CurveLocationDetail.js +0 -0
  161. package/lib/cjs/curve/CurveLocationDetail.js.map +1 -0
  162. package/lib/{curve → cjs/curve}/CurvePrimitive.d.ts +0 -0
  163. package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -0
  164. package/lib/{curve → cjs/curve}/CurvePrimitive.js +0 -0
  165. package/lib/cjs/curve/CurvePrimitive.js.map +1 -0
  166. package/lib/{curve → cjs/curve}/CurveProcessor.d.ts +0 -0
  167. package/lib/cjs/curve/CurveProcessor.d.ts.map +1 -0
  168. package/lib/{curve → cjs/curve}/CurveProcessor.js +0 -0
  169. package/lib/cjs/curve/CurveProcessor.js.map +1 -0
  170. package/lib/{curve → cjs/curve}/CurveWireMomentsXYZ.d.ts +0 -0
  171. package/lib/cjs/curve/CurveWireMomentsXYZ.d.ts.map +1 -0
  172. package/lib/{curve → cjs/curve}/CurveWireMomentsXYZ.js +0 -0
  173. package/lib/cjs/curve/CurveWireMomentsXYZ.js.map +1 -0
  174. package/lib/{curve → cjs/curve}/GeometryQuery.d.ts +0 -0
  175. package/lib/cjs/curve/GeometryQuery.d.ts.map +1 -0
  176. package/lib/{curve → cjs/curve}/GeometryQuery.js +0 -0
  177. package/lib/cjs/curve/GeometryQuery.js.map +1 -0
  178. package/lib/{curve → cjs/curve}/LineSegment3d.d.ts +0 -0
  179. package/lib/cjs/curve/LineSegment3d.d.ts.map +1 -0
  180. package/lib/{curve → cjs/curve}/LineSegment3d.js +0 -0
  181. package/lib/cjs/curve/LineSegment3d.js.map +1 -0
  182. package/lib/{curve → cjs/curve}/LineString3d.d.ts +0 -0
  183. package/lib/cjs/curve/LineString3d.d.ts.map +1 -0
  184. package/lib/{curve → cjs/curve}/LineString3d.js +0 -0
  185. package/lib/cjs/curve/LineString3d.js.map +1 -0
  186. package/lib/{curve → cjs/curve}/Loop.d.ts +0 -0
  187. package/lib/cjs/curve/Loop.d.ts.map +1 -0
  188. package/lib/{curve → cjs/curve}/Loop.js +0 -0
  189. package/lib/cjs/curve/Loop.js.map +1 -0
  190. package/lib/{curve → cjs/curve}/ParityRegion.d.ts +0 -0
  191. package/lib/cjs/curve/ParityRegion.d.ts.map +1 -0
  192. package/lib/{curve → cjs/curve}/ParityRegion.js +0 -0
  193. package/lib/cjs/curve/ParityRegion.js.map +1 -0
  194. package/lib/{curve → cjs/curve}/Path.d.ts +0 -0
  195. package/lib/cjs/curve/Path.d.ts.map +1 -0
  196. package/lib/{curve → cjs/curve}/Path.js +0 -0
  197. package/lib/cjs/curve/Path.js.map +1 -0
  198. package/lib/{curve → cjs/curve}/PointString3d.d.ts +0 -0
  199. package/lib/cjs/curve/PointString3d.d.ts.map +1 -0
  200. package/lib/{curve → cjs/curve}/PointString3d.js +0 -0
  201. package/lib/cjs/curve/PointString3d.js.map +1 -0
  202. package/lib/{curve → cjs/curve}/ProxyCurve.d.ts +0 -0
  203. package/lib/cjs/curve/ProxyCurve.d.ts.map +1 -0
  204. package/lib/{curve → cjs/curve}/ProxyCurve.js +0 -0
  205. package/lib/cjs/curve/ProxyCurve.js.map +1 -0
  206. package/lib/{curve → cjs/curve}/Query/ConsolidateAdjacentPrimitivesContext.d.ts +0 -0
  207. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -0
  208. package/lib/{curve → cjs/curve}/Query/ConsolidateAdjacentPrimitivesContext.js +0 -0
  209. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -0
  210. package/lib/{curve → cjs/curve}/Query/CurveSplitContext.d.ts +0 -0
  211. package/lib/cjs/curve/Query/CurveSplitContext.d.ts.map +1 -0
  212. package/lib/{curve → cjs/curve}/Query/CurveSplitContext.js +0 -0
  213. package/lib/cjs/curve/Query/CurveSplitContext.js.map +1 -0
  214. package/lib/{curve → cjs/curve}/Query/CylindricalRange.d.ts +0 -0
  215. package/lib/cjs/curve/Query/CylindricalRange.d.ts.map +1 -0
  216. package/lib/{curve → cjs/curve}/Query/CylindricalRange.js +0 -0
  217. package/lib/cjs/curve/Query/CylindricalRange.js.map +1 -0
  218. package/lib/{curve → cjs/curve}/Query/InOutTests.d.ts +0 -0
  219. package/lib/cjs/curve/Query/InOutTests.d.ts.map +1 -0
  220. package/lib/{curve → cjs/curve}/Query/InOutTests.js +0 -0
  221. package/lib/cjs/curve/Query/InOutTests.js.map +1 -0
  222. package/lib/{curve → cjs/curve}/Query/PlanarSubdivision.d.ts +0 -0
  223. package/lib/cjs/curve/Query/PlanarSubdivision.d.ts.map +1 -0
  224. package/lib/{curve → cjs/curve}/Query/PlanarSubdivision.js +0 -0
  225. package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -0
  226. package/lib/{curve → cjs/curve}/Query/StrokeCountChain.d.ts +0 -0
  227. package/lib/cjs/curve/Query/StrokeCountChain.d.ts.map +1 -0
  228. package/lib/{curve → cjs/curve}/Query/StrokeCountChain.js +0 -0
  229. package/lib/cjs/curve/Query/StrokeCountChain.js.map +1 -0
  230. package/lib/{curve → cjs/curve}/Query/StrokeCountMap.d.ts +0 -0
  231. package/lib/cjs/curve/Query/StrokeCountMap.d.ts.map +1 -0
  232. package/lib/{curve → cjs/curve}/Query/StrokeCountMap.js +0 -0
  233. package/lib/cjs/curve/Query/StrokeCountMap.js.map +1 -0
  234. package/lib/{curve → cjs/curve}/RegionMomentsXY.d.ts +0 -0
  235. package/lib/cjs/curve/RegionMomentsXY.d.ts.map +1 -0
  236. package/lib/{curve → cjs/curve}/RegionMomentsXY.js +0 -0
  237. package/lib/cjs/curve/RegionMomentsXY.js.map +1 -0
  238. package/lib/{curve → cjs/curve}/RegionOps.d.ts +0 -0
  239. package/lib/cjs/curve/RegionOps.d.ts.map +1 -0
  240. package/lib/{curve → cjs/curve}/RegionOps.js +0 -0
  241. package/lib/cjs/curve/RegionOps.js.map +1 -0
  242. package/lib/{curve → cjs/curve}/RegionOpsClassificationSweeps.d.ts +0 -0
  243. package/lib/cjs/curve/RegionOpsClassificationSweeps.d.ts.map +1 -0
  244. package/lib/{curve → cjs/curve}/RegionOpsClassificationSweeps.js +0 -0
  245. package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -0
  246. package/lib/{curve → cjs/curve}/StrokeOptions.d.ts +0 -0
  247. package/lib/cjs/curve/StrokeOptions.d.ts.map +1 -0
  248. package/lib/{curve → cjs/curve}/StrokeOptions.js +0 -0
  249. package/lib/cjs/curve/StrokeOptions.js.map +1 -0
  250. package/lib/{curve → cjs/curve}/UnionRegion.d.ts +0 -0
  251. package/lib/cjs/curve/UnionRegion.d.ts.map +1 -0
  252. package/lib/{curve → cjs/curve}/UnionRegion.js +0 -0
  253. package/lib/cjs/curve/UnionRegion.js.map +1 -0
  254. package/lib/{curve → cjs/curve}/internalContexts/CloneCurvesContext.d.ts +0 -0
  255. package/lib/cjs/curve/internalContexts/CloneCurvesContext.d.ts.map +1 -0
  256. package/lib/{curve → cjs/curve}/internalContexts/CloneCurvesContext.js +0 -0
  257. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js.map +1 -0
  258. package/lib/{curve → cjs/curve}/internalContexts/CloneWithExpandedLineStrings.d.ts +0 -0
  259. package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +1 -0
  260. package/lib/{curve → cjs/curve}/internalContexts/CloneWithExpandedLineStrings.js +0 -0
  261. package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -0
  262. package/lib/{curve → cjs/curve}/internalContexts/CountLinearPartsSearchContext.d.ts +0 -0
  263. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +1 -0
  264. package/lib/{curve → cjs/curve}/internalContexts/CountLinearPartsSearchContext.js +0 -0
  265. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -0
  266. package/lib/{curve → cjs/curve}/internalContexts/GapSearchContext.d.ts +0 -0
  267. package/lib/cjs/curve/internalContexts/GapSearchContext.d.ts.map +1 -0
  268. package/lib/{curve → cjs/curve}/internalContexts/GapSearchContext.js +0 -0
  269. package/lib/cjs/curve/internalContexts/GapSearchContext.js.map +1 -0
  270. package/lib/{curve → cjs/curve}/internalContexts/MultiChainCollector.d.ts +0 -0
  271. package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts.map +1 -0
  272. package/lib/{curve → cjs/curve}/internalContexts/MultiChainCollector.js +0 -0
  273. package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -0
  274. package/lib/{curve → cjs/curve}/internalContexts/PlaneAltitudeRangeContext.d.ts +0 -0
  275. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +1 -0
  276. package/lib/{curve → cjs/curve}/internalContexts/PlaneAltitudeRangeContext.js +0 -0
  277. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -0
  278. package/lib/{curve → cjs/curve}/internalContexts/PolygonOffsetContext.d.ts +0 -0
  279. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -0
  280. package/lib/{curve → cjs/curve}/internalContexts/PolygonOffsetContext.js +0 -0
  281. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -0
  282. package/lib/{curve → cjs/curve}/internalContexts/SumLengthsContext.d.ts +0 -0
  283. package/lib/cjs/curve/internalContexts/SumLengthsContext.d.ts.map +1 -0
  284. package/lib/{curve → cjs/curve}/internalContexts/SumLengthsContext.js +0 -0
  285. package/lib/cjs/curve/internalContexts/SumLengthsContext.js.map +1 -0
  286. package/lib/{curve → cjs/curve}/internalContexts/TransformInPlaceContext.d.ts +0 -0
  287. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.d.ts.map +1 -0
  288. package/lib/{curve → cjs/curve}/internalContexts/TransformInPlaceContext.js +0 -0
  289. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js.map +1 -0
  290. package/lib/{curve → cjs/curve}/spiral/AustralianRailCorpXYEvaluator.d.ts +0 -0
  291. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -0
  292. package/lib/{curve → cjs/curve}/spiral/AustralianRailCorpXYEvaluator.js +0 -0
  293. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -0
  294. package/lib/{curve → cjs/curve}/spiral/ClothoidSeries.d.ts +0 -0
  295. package/lib/cjs/curve/spiral/ClothoidSeries.d.ts.map +1 -0
  296. package/lib/{curve → cjs/curve}/spiral/ClothoidSeries.js +0 -0
  297. package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -0
  298. package/lib/{curve → cjs/curve}/spiral/CubicEvaluator.d.ts +0 -0
  299. package/lib/cjs/curve/spiral/CubicEvaluator.d.ts.map +1 -0
  300. package/lib/{curve → cjs/curve}/spiral/CubicEvaluator.js +0 -0
  301. package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -0
  302. package/lib/{curve → cjs/curve}/spiral/CzechSpiralEvaluator.d.ts +0 -0
  303. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -0
  304. package/lib/{curve → cjs/curve}/spiral/CzechSpiralEvaluator.js +0 -0
  305. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -0
  306. package/lib/{curve → cjs/curve}/spiral/DirectHalfCosineSpiralEvaluator.d.ts +0 -0
  307. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -0
  308. package/lib/{curve → cjs/curve}/spiral/DirectHalfCosineSpiralEvaluator.js +0 -0
  309. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -0
  310. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts +265 -0
  311. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts.map +1 -0
  312. package/lib/cjs/curve/spiral/DirectSpiral3d.js +473 -0
  313. package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -0
  314. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts +158 -0
  315. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -0
  316. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +364 -0
  317. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -0
  318. package/lib/{curve → cjs/curve}/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +0 -0
  319. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -0
  320. package/lib/{curve → cjs/curve}/spiral/MXCubicAlongArcSpiralEvaluator.js +0 -0
  321. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -0
  322. package/lib/{curve → cjs/curve}/spiral/NormalizedTransition.d.ts +0 -0
  323. package/lib/cjs/curve/spiral/NormalizedTransition.d.ts.map +1 -0
  324. package/lib/{curve → cjs/curve}/spiral/NormalizedTransition.js +0 -0
  325. package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -0
  326. package/lib/{curve → cjs/curve}/spiral/PolishCubicSpiralEvaluator.d.ts +0 -0
  327. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -0
  328. package/lib/{curve → cjs/curve}/spiral/PolishCubicSpiralEvaluator.js +0 -0
  329. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -0
  330. package/lib/{curve → cjs/curve}/spiral/TransitionConditionalProperties.d.ts +0 -0
  331. package/lib/cjs/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -0
  332. package/lib/{curve → cjs/curve}/spiral/TransitionConditionalProperties.js +0 -0
  333. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -0
  334. package/lib/{curve → cjs/curve}/spiral/TransitionSpiral3d.d.ts +0 -0
  335. package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts.map +1 -0
  336. package/lib/{curve → cjs/curve}/spiral/TransitionSpiral3d.js +0 -0
  337. package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -0
  338. package/lib/{curve → cjs/curve}/spiral/XYCurveEvaluator.d.ts +0 -0
  339. package/lib/cjs/curve/spiral/XYCurveEvaluator.d.ts.map +1 -0
  340. package/lib/{curve → cjs/curve}/spiral/XYCurveEvaluator.js +0 -0
  341. package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -0
  342. package/lib/{geometry3d → cjs/geometry3d}/Angle.d.ts +0 -0
  343. package/lib/cjs/geometry3d/Angle.d.ts.map +1 -0
  344. package/lib/{geometry3d → cjs/geometry3d}/Angle.js +0 -0
  345. package/lib/cjs/geometry3d/Angle.js.map +1 -0
  346. package/lib/{geometry3d → cjs/geometry3d}/AngleSweep.d.ts +0 -0
  347. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -0
  348. package/lib/{geometry3d → cjs/geometry3d}/AngleSweep.js +0 -0
  349. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -0
  350. package/lib/{geometry3d → cjs/geometry3d}/BarycentricTriangle.d.ts +0 -0
  351. package/lib/cjs/geometry3d/BarycentricTriangle.d.ts.map +1 -0
  352. package/lib/{geometry3d → cjs/geometry3d}/BarycentricTriangle.js +0 -0
  353. package/lib/cjs/geometry3d/BarycentricTriangle.js.map +1 -0
  354. package/lib/{geometry3d → cjs/geometry3d}/BilinearPatch.d.ts +0 -0
  355. package/lib/cjs/geometry3d/BilinearPatch.d.ts.map +1 -0
  356. package/lib/{geometry3d → cjs/geometry3d}/BilinearPatch.js +0 -0
  357. package/lib/cjs/geometry3d/BilinearPatch.js.map +1 -0
  358. package/lib/{geometry3d → cjs/geometry3d}/CoincidentGeometryOps.d.ts +0 -0
  359. package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts.map +1 -0
  360. package/lib/{geometry3d → cjs/geometry3d}/CoincidentGeometryOps.js +0 -0
  361. package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -0
  362. package/lib/{geometry3d → cjs/geometry3d}/Ellipsoid.d.ts +0 -0
  363. package/lib/cjs/geometry3d/Ellipsoid.d.ts.map +1 -0
  364. package/lib/{geometry3d → cjs/geometry3d}/Ellipsoid.js +0 -0
  365. package/lib/cjs/geometry3d/Ellipsoid.js.map +1 -0
  366. package/lib/{geometry3d → cjs/geometry3d}/FrameBuilder.d.ts +0 -0
  367. package/lib/cjs/geometry3d/FrameBuilder.d.ts.map +1 -0
  368. package/lib/{geometry3d → cjs/geometry3d}/FrameBuilder.js +0 -0
  369. package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -0
  370. package/lib/{geometry3d → cjs/geometry3d}/FrustumAnimation.d.ts +0 -0
  371. package/lib/cjs/geometry3d/FrustumAnimation.d.ts.map +1 -0
  372. package/lib/{geometry3d → cjs/geometry3d}/FrustumAnimation.js +0 -0
  373. package/lib/cjs/geometry3d/FrustumAnimation.js.map +1 -0
  374. package/lib/{geometry3d → cjs/geometry3d}/GeometryHandler.d.ts +0 -0
  375. package/lib/cjs/geometry3d/GeometryHandler.d.ts.map +1 -0
  376. package/lib/{geometry3d → cjs/geometry3d}/GeometryHandler.js +0 -0
  377. package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -0
  378. package/lib/{geometry3d → cjs/geometry3d}/GrowableBlockedArray.d.ts +0 -0
  379. package/lib/cjs/geometry3d/GrowableBlockedArray.d.ts.map +1 -0
  380. package/lib/{geometry3d → cjs/geometry3d}/GrowableBlockedArray.js +0 -0
  381. package/lib/cjs/geometry3d/GrowableBlockedArray.js.map +1 -0
  382. package/lib/{geometry3d → cjs/geometry3d}/GrowableFloat64Array.d.ts +0 -0
  383. package/lib/cjs/geometry3d/GrowableFloat64Array.d.ts.map +1 -0
  384. package/lib/{geometry3d → cjs/geometry3d}/GrowableFloat64Array.js +0 -0
  385. package/lib/cjs/geometry3d/GrowableFloat64Array.js.map +1 -0
  386. package/lib/{geometry3d → cjs/geometry3d}/GrowableXYArray.d.ts +0 -0
  387. package/lib/cjs/geometry3d/GrowableXYArray.d.ts.map +1 -0
  388. package/lib/{geometry3d → cjs/geometry3d}/GrowableXYArray.js +0 -0
  389. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -0
  390. package/lib/{geometry3d → cjs/geometry3d}/GrowableXYZArray.d.ts +0 -0
  391. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -0
  392. package/lib/{geometry3d → cjs/geometry3d}/GrowableXYZArray.js +0 -0
  393. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -0
  394. package/lib/{geometry3d → cjs/geometry3d}/IndexedCollectionInterval.d.ts +0 -0
  395. package/lib/cjs/geometry3d/IndexedCollectionInterval.d.ts.map +1 -0
  396. package/lib/{geometry3d → cjs/geometry3d}/IndexedCollectionInterval.js +0 -0
  397. package/lib/cjs/geometry3d/IndexedCollectionInterval.js.map +1 -0
  398. package/lib/{geometry3d → cjs/geometry3d}/IndexedXYCollection.d.ts +0 -0
  399. package/lib/cjs/geometry3d/IndexedXYCollection.d.ts.map +1 -0
  400. package/lib/{geometry3d → cjs/geometry3d}/IndexedXYCollection.js +0 -0
  401. package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -0
  402. package/lib/{geometry3d → cjs/geometry3d}/IndexedXYZCollection.d.ts +0 -0
  403. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -0
  404. package/lib/{geometry3d → cjs/geometry3d}/IndexedXYZCollection.js +0 -0
  405. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -0
  406. package/lib/{geometry3d → cjs/geometry3d}/LongitudeLatitudeAltitude.d.ts +0 -0
  407. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.d.ts.map +1 -0
  408. package/lib/{geometry3d → cjs/geometry3d}/LongitudeLatitudeAltitude.js +0 -0
  409. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js.map +1 -0
  410. package/lib/{geometry3d → cjs/geometry3d}/Matrix3d.d.ts +0 -0
  411. package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -0
  412. package/lib/{geometry3d → cjs/geometry3d}/Matrix3d.js +0 -0
  413. package/lib/cjs/geometry3d/Matrix3d.js.map +1 -0
  414. package/lib/{geometry3d → cjs/geometry3d}/OrderedRotationAngles.d.ts +0 -0
  415. package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts.map +1 -0
  416. package/lib/{geometry3d → cjs/geometry3d}/OrderedRotationAngles.js +0 -0
  417. package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -0
  418. package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndUnitNormal.d.ts +0 -0
  419. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -0
  420. package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndUnitNormal.js +0 -0
  421. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -0
  422. package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndVectors.d.ts +0 -0
  423. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -0
  424. package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndVectors.js +0 -0
  425. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -0
  426. package/lib/{geometry3d → cjs/geometry3d}/Point2dArrayCarrier.d.ts +0 -0
  427. package/lib/cjs/geometry3d/Point2dArrayCarrier.d.ts.map +1 -0
  428. package/lib/{geometry3d → cjs/geometry3d}/Point2dArrayCarrier.js +0 -0
  429. package/lib/cjs/geometry3d/Point2dArrayCarrier.js.map +1 -0
  430. package/lib/{geometry3d → cjs/geometry3d}/Point2dVector2d.d.ts +0 -0
  431. package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -0
  432. package/lib/{geometry3d → cjs/geometry3d}/Point2dVector2d.js +0 -0
  433. package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -0
  434. package/lib/{geometry3d → cjs/geometry3d}/Point3dArrayCarrier.d.ts +0 -0
  435. package/lib/cjs/geometry3d/Point3dArrayCarrier.d.ts.map +1 -0
  436. package/lib/{geometry3d → cjs/geometry3d}/Point3dArrayCarrier.js +0 -0
  437. package/lib/cjs/geometry3d/Point3dArrayCarrier.js.map +1 -0
  438. package/lib/{geometry3d → cjs/geometry3d}/Point3dVector3d.d.ts +0 -0
  439. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -0
  440. package/lib/{geometry3d → cjs/geometry3d}/Point3dVector3d.js +0 -0
  441. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -0
  442. package/lib/{geometry3d → cjs/geometry3d}/PointHelpers.d.ts +0 -0
  443. package/lib/cjs/geometry3d/PointHelpers.d.ts.map +1 -0
  444. package/lib/{geometry3d → cjs/geometry3d}/PointHelpers.js +0 -0
  445. package/lib/cjs/geometry3d/PointHelpers.js.map +1 -0
  446. package/lib/{geometry3d → cjs/geometry3d}/PointStreaming.d.ts +0 -0
  447. package/lib/cjs/geometry3d/PointStreaming.d.ts.map +1 -0
  448. package/lib/{geometry3d → cjs/geometry3d}/PointStreaming.js +0 -0
  449. package/lib/cjs/geometry3d/PointStreaming.js.map +1 -0
  450. package/lib/{geometry3d → cjs/geometry3d}/PolygonOps.d.ts +0 -0
  451. package/lib/cjs/geometry3d/PolygonOps.d.ts.map +1 -0
  452. package/lib/{geometry3d → cjs/geometry3d}/PolygonOps.js +0 -0
  453. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -0
  454. package/lib/{geometry3d → cjs/geometry3d}/PolylineCompressionByEdgeOffset.d.ts +0 -0
  455. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -0
  456. package/lib/{geometry3d → cjs/geometry3d}/PolylineCompressionByEdgeOffset.js +0 -0
  457. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -0
  458. package/lib/{geometry3d → cjs/geometry3d}/PolylineOps.d.ts +0 -0
  459. package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -0
  460. package/lib/{geometry3d → cjs/geometry3d}/PolylineOps.js +0 -0
  461. package/lib/cjs/geometry3d/PolylineOps.js.map +1 -0
  462. package/lib/{geometry3d → cjs/geometry3d}/Range.d.ts +0 -0
  463. package/lib/cjs/geometry3d/Range.d.ts.map +1 -0
  464. package/lib/{geometry3d → cjs/geometry3d}/Range.js +0 -0
  465. package/lib/cjs/geometry3d/Range.js.map +1 -0
  466. package/lib/{geometry3d → cjs/geometry3d}/Ray3d.d.ts +0 -0
  467. package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -0
  468. package/lib/{geometry3d → cjs/geometry3d}/Ray3d.js +0 -0
  469. package/lib/cjs/geometry3d/Ray3d.js.map +1 -0
  470. package/lib/{geometry3d → cjs/geometry3d}/ReusableObjectCache.d.ts +0 -0
  471. package/lib/cjs/geometry3d/ReusableObjectCache.d.ts.map +1 -0
  472. package/lib/{geometry3d → cjs/geometry3d}/ReusableObjectCache.js +0 -0
  473. package/lib/cjs/geometry3d/ReusableObjectCache.js.map +1 -0
  474. package/lib/{geometry3d → cjs/geometry3d}/Segment1d.d.ts +0 -0
  475. package/lib/cjs/geometry3d/Segment1d.d.ts.map +1 -0
  476. package/lib/{geometry3d → cjs/geometry3d}/Segment1d.js +0 -0
  477. package/lib/cjs/geometry3d/Segment1d.js.map +1 -0
  478. package/lib/{geometry3d → cjs/geometry3d}/SortablePolygon.d.ts +0 -0
  479. package/lib/cjs/geometry3d/SortablePolygon.d.ts.map +1 -0
  480. package/lib/{geometry3d → cjs/geometry3d}/SortablePolygon.js +0 -0
  481. package/lib/cjs/geometry3d/SortablePolygon.js.map +1 -0
  482. package/lib/{geometry3d → cjs/geometry3d}/Transform.d.ts +0 -0
  483. package/lib/cjs/geometry3d/Transform.d.ts.map +1 -0
  484. package/lib/{geometry3d → cjs/geometry3d}/Transform.js +0 -0
  485. package/lib/cjs/geometry3d/Transform.js.map +1 -0
  486. package/lib/{geometry3d → cjs/geometry3d}/UVSurfaceOps.d.ts +0 -0
  487. package/lib/cjs/geometry3d/UVSurfaceOps.d.ts.map +1 -0
  488. package/lib/{geometry3d → cjs/geometry3d}/UVSurfaceOps.js +0 -0
  489. package/lib/cjs/geometry3d/UVSurfaceOps.js.map +1 -0
  490. package/lib/{geometry3d → cjs/geometry3d}/XYZProps.d.ts +0 -0
  491. package/lib/cjs/geometry3d/XYZProps.d.ts.map +1 -0
  492. package/lib/{geometry3d → cjs/geometry3d}/XYZProps.js +0 -0
  493. package/lib/cjs/geometry3d/XYZProps.js.map +1 -0
  494. package/lib/{geometry3d → cjs/geometry3d}/YawPitchRollAngles.d.ts +0 -0
  495. package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts.map +1 -0
  496. package/lib/{geometry3d → cjs/geometry3d}/YawPitchRollAngles.js +0 -0
  497. package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -0
  498. package/lib/{geometry4d → cjs/geometry4d}/Map4d.d.ts +0 -0
  499. package/lib/cjs/geometry4d/Map4d.d.ts.map +1 -0
  500. package/lib/{geometry4d → cjs/geometry4d}/Map4d.js +0 -0
  501. package/lib/cjs/geometry4d/Map4d.js.map +1 -0
  502. package/lib/{geometry4d → cjs/geometry4d}/Matrix4d.d.ts +0 -0
  503. package/lib/cjs/geometry4d/Matrix4d.d.ts.map +1 -0
  504. package/lib/{geometry4d → cjs/geometry4d}/Matrix4d.js +0 -0
  505. package/lib/cjs/geometry4d/Matrix4d.js.map +1 -0
  506. package/lib/{geometry4d → cjs/geometry4d}/MomentData.d.ts +0 -0
  507. package/lib/cjs/geometry4d/MomentData.d.ts.map +1 -0
  508. package/lib/{geometry4d → cjs/geometry4d}/MomentData.js +0 -0
  509. package/lib/cjs/geometry4d/MomentData.js.map +1 -0
  510. package/lib/{geometry4d → cjs/geometry4d}/PlaneByOriginAndVectors4d.d.ts +0 -0
  511. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +1 -0
  512. package/lib/{geometry4d → cjs/geometry4d}/PlaneByOriginAndVectors4d.js +0 -0
  513. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -0
  514. package/lib/{geometry4d → cjs/geometry4d}/Point4d.d.ts +0 -0
  515. package/lib/cjs/geometry4d/Point4d.d.ts.map +1 -0
  516. package/lib/{geometry4d → cjs/geometry4d}/Point4d.js +0 -0
  517. package/lib/cjs/geometry4d/Point4d.js.map +1 -0
  518. package/lib/{numerics → cjs/numerics}/BandedSystem.d.ts +0 -0
  519. package/lib/cjs/numerics/BandedSystem.d.ts.map +1 -0
  520. package/lib/{numerics → cjs/numerics}/BandedSystem.js +0 -0
  521. package/lib/cjs/numerics/BandedSystem.js.map +1 -0
  522. package/lib/{numerics → cjs/numerics}/BezierPolynomials.d.ts +0 -0
  523. package/lib/cjs/numerics/BezierPolynomials.d.ts.map +1 -0
  524. package/lib/{numerics → cjs/numerics}/BezierPolynomials.js +0 -0
  525. package/lib/cjs/numerics/BezierPolynomials.js.map +1 -0
  526. package/lib/{numerics → cjs/numerics}/ClusterableArray.d.ts +0 -0
  527. package/lib/cjs/numerics/ClusterableArray.d.ts.map +1 -0
  528. package/lib/{numerics → cjs/numerics}/ClusterableArray.js +0 -0
  529. package/lib/cjs/numerics/ClusterableArray.js.map +1 -0
  530. package/lib/{numerics → cjs/numerics}/Complex.d.ts +0 -0
  531. package/lib/cjs/numerics/Complex.d.ts.map +1 -0
  532. package/lib/{numerics → cjs/numerics}/Complex.js +0 -0
  533. package/lib/cjs/numerics/Complex.js.map +1 -0
  534. package/lib/{numerics → cjs/numerics}/ConvexPolygon2d.d.ts +0 -0
  535. package/lib/cjs/numerics/ConvexPolygon2d.d.ts.map +1 -0
  536. package/lib/{numerics → cjs/numerics}/ConvexPolygon2d.js +0 -0
  537. package/lib/cjs/numerics/ConvexPolygon2d.js.map +1 -0
  538. package/lib/{numerics → cjs/numerics}/Newton.d.ts +0 -0
  539. package/lib/cjs/numerics/Newton.d.ts.map +1 -0
  540. package/lib/{numerics → cjs/numerics}/Newton.js +0 -0
  541. package/lib/cjs/numerics/Newton.js.map +1 -0
  542. package/lib/{numerics → cjs/numerics}/PascalCoefficients.d.ts +0 -0
  543. package/lib/cjs/numerics/PascalCoefficients.d.ts.map +1 -0
  544. package/lib/{numerics → cjs/numerics}/PascalCoefficients.js +0 -0
  545. package/lib/cjs/numerics/PascalCoefficients.js.map +1 -0
  546. package/lib/{numerics → cjs/numerics}/PolarData.d.ts +0 -0
  547. package/lib/cjs/numerics/PolarData.d.ts.map +1 -0
  548. package/lib/{numerics → cjs/numerics}/PolarData.js +0 -0
  549. package/lib/cjs/numerics/PolarData.js.map +1 -0
  550. package/lib/{numerics → cjs/numerics}/Polynomials.d.ts +0 -0
  551. package/lib/cjs/numerics/Polynomials.d.ts.map +1 -0
  552. package/lib/{numerics → cjs/numerics}/Polynomials.js +0 -0
  553. package/lib/cjs/numerics/Polynomials.js.map +1 -0
  554. package/lib/{numerics → cjs/numerics}/Quadrature.d.ts +0 -0
  555. package/lib/cjs/numerics/Quadrature.d.ts.map +1 -0
  556. package/lib/{numerics → cjs/numerics}/Quadrature.js +0 -0
  557. package/lib/cjs/numerics/Quadrature.js.map +1 -0
  558. package/lib/{numerics → cjs/numerics}/Range1dArray.d.ts +0 -0
  559. package/lib/cjs/numerics/Range1dArray.d.ts.map +1 -0
  560. package/lib/{numerics → cjs/numerics}/Range1dArray.js +0 -0
  561. package/lib/cjs/numerics/Range1dArray.js.map +1 -0
  562. package/lib/{numerics → cjs/numerics}/TriDiagonalSystem.d.ts +0 -0
  563. package/lib/cjs/numerics/TriDiagonalSystem.d.ts.map +1 -0
  564. package/lib/{numerics → cjs/numerics}/TriDiagonalSystem.js +0 -0
  565. package/lib/cjs/numerics/TriDiagonalSystem.js.map +1 -0
  566. package/lib/{numerics → cjs/numerics}/UnionFind.d.ts +0 -0
  567. package/lib/cjs/numerics/UnionFind.d.ts.map +1 -0
  568. package/lib/{numerics → cjs/numerics}/UnionFind.js +0 -0
  569. package/lib/cjs/numerics/UnionFind.js.map +1 -0
  570. package/lib/{numerics → cjs/numerics}/UsageSums.d.ts +0 -0
  571. package/lib/cjs/numerics/UsageSums.d.ts.map +1 -0
  572. package/lib/{numerics → cjs/numerics}/UsageSums.js +0 -0
  573. package/lib/cjs/numerics/UsageSums.js.map +1 -0
  574. package/lib/{polyface → cjs/polyface}/AuxData.d.ts +0 -0
  575. package/lib/cjs/polyface/AuxData.d.ts.map +1 -0
  576. package/lib/{polyface → cjs/polyface}/AuxData.js +0 -0
  577. package/lib/cjs/polyface/AuxData.js.map +1 -0
  578. package/lib/{polyface → cjs/polyface}/BoxTopology.d.ts +0 -0
  579. package/lib/cjs/polyface/BoxTopology.d.ts.map +1 -0
  580. package/lib/{polyface → cjs/polyface}/BoxTopology.js +0 -0
  581. package/lib/cjs/polyface/BoxTopology.js.map +1 -0
  582. package/lib/{polyface → cjs/polyface}/FacetFaceData.d.ts +0 -0
  583. package/lib/cjs/polyface/FacetFaceData.d.ts.map +1 -0
  584. package/lib/{polyface → cjs/polyface}/FacetFaceData.js +0 -0
  585. package/lib/cjs/polyface/FacetFaceData.js.map +1 -0
  586. package/lib/{polyface → cjs/polyface}/FacetOrientation.d.ts +0 -0
  587. package/lib/cjs/polyface/FacetOrientation.d.ts.map +1 -0
  588. package/lib/{polyface → cjs/polyface}/FacetOrientation.js +0 -0
  589. package/lib/cjs/polyface/FacetOrientation.js.map +1 -0
  590. package/lib/{polyface → cjs/polyface}/GreedyTriangulationBetweenLineStrings.d.ts +0 -0
  591. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +1 -0
  592. package/lib/{polyface → cjs/polyface}/GreedyTriangulationBetweenLineStrings.js +0 -0
  593. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -0
  594. package/lib/{polyface → cjs/polyface}/IndexedEdgeMatcher.d.ts +0 -0
  595. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts.map +1 -0
  596. package/lib/{polyface → cjs/polyface}/IndexedEdgeMatcher.js +0 -0
  597. package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -0
  598. package/lib/{polyface → cjs/polyface}/IndexedPolyfaceVisitor.d.ts +0 -0
  599. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -0
  600. package/lib/{polyface → cjs/polyface}/IndexedPolyfaceVisitor.js +0 -0
  601. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -0
  602. package/lib/{polyface → cjs/polyface}/Polyface.d.ts +0 -0
  603. package/lib/cjs/polyface/Polyface.d.ts.map +1 -0
  604. package/lib/{polyface → cjs/polyface}/Polyface.js +0 -0
  605. package/lib/cjs/polyface/Polyface.js.map +1 -0
  606. package/lib/{polyface → cjs/polyface}/PolyfaceBuilder.d.ts +0 -0
  607. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -0
  608. package/lib/{polyface → cjs/polyface}/PolyfaceBuilder.js +0 -0
  609. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -0
  610. package/lib/{polyface → cjs/polyface}/PolyfaceClip.d.ts +0 -0
  611. package/lib/cjs/polyface/PolyfaceClip.d.ts.map +1 -0
  612. package/lib/{polyface → cjs/polyface}/PolyfaceClip.js +0 -0
  613. package/lib/cjs/polyface/PolyfaceClip.js.map +1 -0
  614. package/lib/cjs/polyface/PolyfaceData.d.ts +206 -0
  615. package/lib/cjs/polyface/PolyfaceData.d.ts.map +1 -0
  616. package/lib/cjs/polyface/PolyfaceData.js +531 -0
  617. package/lib/cjs/polyface/PolyfaceData.js.map +1 -0
  618. package/lib/{polyface → cjs/polyface}/PolyfaceQuery.d.ts +0 -0
  619. package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -0
  620. package/lib/{polyface → cjs/polyface}/PolyfaceQuery.js +0 -0
  621. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -0
  622. package/lib/{polyface → cjs/polyface}/RangeLengthData.d.ts +0 -0
  623. package/lib/cjs/polyface/RangeLengthData.d.ts.map +1 -0
  624. package/lib/{polyface → cjs/polyface}/RangeLengthData.js +0 -0
  625. package/lib/cjs/polyface/RangeLengthData.js.map +1 -0
  626. package/lib/{polyface → cjs/polyface}/TaggedNumericData.d.ts +0 -0
  627. package/lib/cjs/polyface/TaggedNumericData.d.ts.map +1 -0
  628. package/lib/{polyface → cjs/polyface}/TaggedNumericData.js +0 -0
  629. package/lib/cjs/polyface/TaggedNumericData.js.map +1 -0
  630. package/lib/{polyface → cjs/polyface}/TriangleCandidate.d.ts +0 -0
  631. package/lib/cjs/polyface/TriangleCandidate.d.ts.map +1 -0
  632. package/lib/{polyface → cjs/polyface}/TriangleCandidate.js +0 -0
  633. package/lib/cjs/polyface/TriangleCandidate.js.map +1 -0
  634. package/lib/{polyface → cjs/polyface}/multiclip/BuildAverageNormalsContext.d.ts +0 -0
  635. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +1 -0
  636. package/lib/{polyface → cjs/polyface}/multiclip/BuildAverageNormalsContext.js +0 -0
  637. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -0
  638. package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSet.d.ts +0 -0
  639. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +1 -0
  640. package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSet.js +0 -0
  641. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -0
  642. package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts +0 -0
  643. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +1 -0
  644. package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSetWithOverflow.js +0 -0
  645. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -0
  646. package/lib/{polyface → cjs/polyface}/multiclip/LinearSearchRange2dArray.d.ts +0 -0
  647. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +1 -0
  648. package/lib/{polyface → cjs/polyface}/multiclip/LinearSearchRange2dArray.js +0 -0
  649. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -0
  650. package/lib/{polyface → cjs/polyface}/multiclip/Range2dSearchInterface.d.ts +0 -0
  651. package/lib/cjs/polyface/multiclip/Range2dSearchInterface.d.ts.map +1 -0
  652. package/lib/{polyface → cjs/polyface}/multiclip/Range2dSearchInterface.js +0 -0
  653. package/lib/cjs/polyface/multiclip/Range2dSearchInterface.js.map +1 -0
  654. package/lib/{polyface → cjs/polyface}/multiclip/RangeSearch.d.ts +0 -0
  655. package/lib/cjs/polyface/multiclip/RangeSearch.d.ts.map +1 -0
  656. package/lib/{polyface → cjs/polyface}/multiclip/RangeSearch.js +0 -0
  657. package/lib/cjs/polyface/multiclip/RangeSearch.js.map +1 -0
  658. package/lib/{polyface → cjs/polyface}/multiclip/SweepLineStringToFacetContext.d.ts +0 -0
  659. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -0
  660. package/lib/{polyface → cjs/polyface}/multiclip/SweepLineStringToFacetContext.js +0 -0
  661. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -0
  662. package/lib/{polyface → cjs/polyface}/multiclip/XYPointBuckets.d.ts +0 -0
  663. package/lib/cjs/polyface/multiclip/XYPointBuckets.d.ts.map +1 -0
  664. package/lib/{polyface → cjs/polyface}/multiclip/XYPointBuckets.js +0 -0
  665. package/lib/cjs/polyface/multiclip/XYPointBuckets.js.map +1 -0
  666. package/lib/{serialization → cjs/serialization}/BGFBAccessors.d.ts +0 -0
  667. package/lib/cjs/serialization/BGFBAccessors.d.ts.map +1 -0
  668. package/lib/{serialization → cjs/serialization}/BGFBAccessors.js +0 -0
  669. package/lib/cjs/serialization/BGFBAccessors.js.map +1 -0
  670. package/lib/{serialization → cjs/serialization}/BGFBReader.d.ts +0 -0
  671. package/lib/cjs/serialization/BGFBReader.d.ts.map +1 -0
  672. package/lib/{serialization → cjs/serialization}/BGFBReader.js +0 -0
  673. package/lib/cjs/serialization/BGFBReader.js.map +1 -0
  674. package/lib/{serialization → cjs/serialization}/BGFBWriter.d.ts +0 -0
  675. package/lib/cjs/serialization/BGFBWriter.d.ts.map +1 -0
  676. package/lib/{serialization → cjs/serialization}/BGFBWriter.js +0 -0
  677. package/lib/cjs/serialization/BGFBWriter.js.map +1 -0
  678. package/lib/{serialization → cjs/serialization}/BentleyGeometryFlatBuffer.d.ts +0 -0
  679. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.d.ts.map +1 -0
  680. package/lib/{serialization → cjs/serialization}/BentleyGeometryFlatBuffer.js +0 -0
  681. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js.map +1 -0
  682. package/lib/{serialization → cjs/serialization}/DeepCompare.d.ts +0 -0
  683. package/lib/cjs/serialization/DeepCompare.d.ts.map +1 -0
  684. package/lib/{serialization → cjs/serialization}/DeepCompare.js +0 -0
  685. package/lib/cjs/serialization/DeepCompare.js.map +1 -0
  686. package/lib/{serialization → cjs/serialization}/GeometrySamples.d.ts +0 -0
  687. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -0
  688. package/lib/{serialization → cjs/serialization}/GeometrySamples.js +0 -0
  689. package/lib/cjs/serialization/GeometrySamples.js.map +1 -0
  690. package/lib/{serialization → cjs/serialization}/IModelJsonSchema.d.ts +0 -0
  691. package/lib/cjs/serialization/IModelJsonSchema.d.ts.map +1 -0
  692. package/lib/{serialization → cjs/serialization}/IModelJsonSchema.js +0 -0
  693. package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -0
  694. package/lib/{solid → cjs/solid}/Box.d.ts +0 -0
  695. package/lib/cjs/solid/Box.d.ts.map +1 -0
  696. package/lib/{solid → cjs/solid}/Box.js +0 -0
  697. package/lib/cjs/solid/Box.js.map +1 -0
  698. package/lib/{solid → cjs/solid}/Cone.d.ts +0 -0
  699. package/lib/cjs/solid/Cone.d.ts.map +1 -0
  700. package/lib/{solid → cjs/solid}/Cone.js +0 -0
  701. package/lib/cjs/solid/Cone.js.map +1 -0
  702. package/lib/{solid → cjs/solid}/LinearSweep.d.ts +0 -0
  703. package/lib/cjs/solid/LinearSweep.d.ts.map +1 -0
  704. package/lib/{solid → cjs/solid}/LinearSweep.js +0 -0
  705. package/lib/cjs/solid/LinearSweep.js.map +1 -0
  706. package/lib/{solid → cjs/solid}/RotationalSweep.d.ts +0 -0
  707. package/lib/cjs/solid/RotationalSweep.d.ts.map +1 -0
  708. package/lib/{solid → cjs/solid}/RotationalSweep.js +0 -0
  709. package/lib/cjs/solid/RotationalSweep.js.map +1 -0
  710. package/lib/{solid → cjs/solid}/RuledSweep.d.ts +0 -0
  711. package/lib/cjs/solid/RuledSweep.d.ts.map +1 -0
  712. package/lib/{solid → cjs/solid}/RuledSweep.js +0 -0
  713. package/lib/cjs/solid/RuledSweep.js.map +1 -0
  714. package/lib/{solid → cjs/solid}/SolidPrimitive.d.ts +0 -0
  715. package/lib/cjs/solid/SolidPrimitive.d.ts.map +1 -0
  716. package/lib/{solid → cjs/solid}/SolidPrimitive.js +0 -0
  717. package/lib/cjs/solid/SolidPrimitive.js.map +1 -0
  718. package/lib/{solid → cjs/solid}/Sphere.d.ts +0 -0
  719. package/lib/cjs/solid/Sphere.d.ts.map +1 -0
  720. package/lib/{solid → cjs/solid}/Sphere.js +0 -0
  721. package/lib/cjs/solid/Sphere.js.map +1 -0
  722. package/lib/{solid → cjs/solid}/SweepContour.d.ts +0 -0
  723. package/lib/cjs/solid/SweepContour.d.ts.map +1 -0
  724. package/lib/{solid → cjs/solid}/SweepContour.js +0 -0
  725. package/lib/cjs/solid/SweepContour.js.map +1 -0
  726. package/lib/{solid → cjs/solid}/TorusPipe.d.ts +0 -0
  727. package/lib/cjs/solid/TorusPipe.d.ts.map +1 -0
  728. package/lib/{solid → cjs/solid}/TorusPipe.js +0 -0
  729. package/lib/cjs/solid/TorusPipe.js.map +1 -0
  730. package/lib/{topology → cjs/topology}/ChainMerge.d.ts +0 -0
  731. package/lib/cjs/topology/ChainMerge.d.ts.map +1 -0
  732. package/lib/{topology → cjs/topology}/ChainMerge.js +0 -0
  733. package/lib/cjs/topology/ChainMerge.js.map +1 -0
  734. package/lib/{topology → cjs/topology}/Graph.d.ts +0 -0
  735. package/lib/cjs/topology/Graph.d.ts.map +1 -0
  736. package/lib/{topology → cjs/topology}/Graph.js +0 -0
  737. package/lib/cjs/topology/Graph.js.map +1 -0
  738. package/lib/{topology → cjs/topology}/HalfEdgeGraphSearch.d.ts +0 -0
  739. package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts.map +1 -0
  740. package/lib/{topology → cjs/topology}/HalfEdgeGraphSearch.js +0 -0
  741. package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -0
  742. package/lib/{topology → cjs/topology}/HalfEdgeGraphSpineContext.d.ts +0 -0
  743. package/lib/cjs/topology/HalfEdgeGraphSpineContext.d.ts.map +1 -0
  744. package/lib/{topology → cjs/topology}/HalfEdgeGraphSpineContext.js +0 -0
  745. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js.map +1 -0
  746. package/lib/{topology → cjs/topology}/HalfEdgeGraphValidation.d.ts +0 -0
  747. package/lib/cjs/topology/HalfEdgeGraphValidation.d.ts.map +1 -0
  748. package/lib/{topology → cjs/topology}/HalfEdgeGraphValidation.js +0 -0
  749. package/lib/cjs/topology/HalfEdgeGraphValidation.js.map +1 -0
  750. package/lib/{topology → cjs/topology}/HalfEdgeMarkSet.d.ts +0 -0
  751. package/lib/cjs/topology/HalfEdgeMarkSet.d.ts.map +1 -0
  752. package/lib/{topology → cjs/topology}/HalfEdgeMarkSet.js +0 -0
  753. package/lib/cjs/topology/HalfEdgeMarkSet.js.map +1 -0
  754. package/lib/{topology → cjs/topology}/HalfEdgeNodeXYZUV.d.ts +0 -0
  755. package/lib/cjs/topology/HalfEdgeNodeXYZUV.d.ts.map +1 -0
  756. package/lib/{topology → cjs/topology}/HalfEdgeNodeXYZUV.js +0 -0
  757. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js.map +1 -0
  758. package/lib/{topology → cjs/topology}/HalfEdgePointInGraphSearch.d.ts +0 -0
  759. package/lib/cjs/topology/HalfEdgePointInGraphSearch.d.ts.map +1 -0
  760. package/lib/{topology → cjs/topology}/HalfEdgePointInGraphSearch.js +0 -0
  761. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js.map +1 -0
  762. package/lib/{topology → cjs/topology}/HalfEdgePositionDetail.d.ts +0 -0
  763. package/lib/cjs/topology/HalfEdgePositionDetail.d.ts.map +1 -0
  764. package/lib/{topology → cjs/topology}/HalfEdgePositionDetail.js +0 -0
  765. package/lib/cjs/topology/HalfEdgePositionDetail.js.map +1 -0
  766. package/lib/{topology → cjs/topology}/HalfEdgePriorityQueue.d.ts +0 -0
  767. package/lib/cjs/topology/HalfEdgePriorityQueue.d.ts.map +1 -0
  768. package/lib/{topology → cjs/topology}/HalfEdgePriorityQueue.js +0 -0
  769. package/lib/cjs/topology/HalfEdgePriorityQueue.js.map +1 -0
  770. package/lib/{topology → cjs/topology}/InsertAndRetriangulateContext.d.ts +0 -0
  771. package/lib/cjs/topology/InsertAndRetriangulateContext.d.ts.map +1 -0
  772. package/lib/{topology → cjs/topology}/InsertAndRetriangulateContext.js +0 -0
  773. package/lib/cjs/topology/InsertAndRetriangulateContext.js.map +1 -0
  774. package/lib/{topology → cjs/topology}/MaskManager.d.ts +0 -0
  775. package/lib/cjs/topology/MaskManager.d.ts.map +1 -0
  776. package/lib/{topology → cjs/topology}/MaskManager.js +0 -0
  777. package/lib/cjs/topology/MaskManager.js.map +1 -0
  778. package/lib/{topology → cjs/topology}/Merging.d.ts +0 -0
  779. package/lib/cjs/topology/Merging.d.ts.map +1 -0
  780. package/lib/{topology → cjs/topology}/Merging.js +0 -0
  781. package/lib/cjs/topology/Merging.js.map +1 -0
  782. package/lib/{topology → cjs/topology}/RegularizeFace.d.ts +0 -0
  783. package/lib/cjs/topology/RegularizeFace.d.ts.map +1 -0
  784. package/lib/{topology → cjs/topology}/RegularizeFace.js +0 -0
  785. package/lib/cjs/topology/RegularizeFace.js.map +1 -0
  786. package/lib/{topology → cjs/topology}/SignedDataSummary.d.ts +0 -0
  787. package/lib/cjs/topology/SignedDataSummary.d.ts.map +1 -0
  788. package/lib/{topology → cjs/topology}/SignedDataSummary.js +0 -0
  789. package/lib/cjs/topology/SignedDataSummary.js.map +1 -0
  790. package/lib/{topology → cjs/topology}/Triangulation.d.ts +0 -0
  791. package/lib/cjs/topology/Triangulation.d.ts.map +1 -0
  792. package/lib/{topology → cjs/topology}/Triangulation.js +0 -0
  793. package/lib/cjs/topology/Triangulation.js.map +1 -0
  794. package/lib/{topology → cjs/topology}/XYParitySearchContext.d.ts +0 -0
  795. package/lib/cjs/topology/XYParitySearchContext.d.ts.map +1 -0
  796. package/lib/{topology → cjs/topology}/XYParitySearchContext.js +0 -0
  797. package/lib/cjs/topology/XYParitySearchContext.js.map +1 -0
  798. package/lib/esm/Constant.d.ts +26 -0
  799. package/lib/esm/Constant.d.ts.map +1 -0
  800. package/lib/esm/Constant.js +30 -0
  801. package/lib/esm/Constant.js.map +1 -0
  802. package/lib/esm/Geometry.d.ts +498 -0
  803. package/lib/esm/Geometry.d.ts.map +1 -0
  804. package/lib/esm/Geometry.js +776 -0
  805. package/lib/esm/Geometry.js.map +1 -0
  806. package/lib/esm/bspline/AkimaCurve3d.d.ts +97 -0
  807. package/lib/esm/bspline/AkimaCurve3d.d.ts.map +1 -0
  808. package/lib/esm/bspline/AkimaCurve3d.js +158 -0
  809. package/lib/esm/bspline/AkimaCurve3d.js.map +1 -0
  810. package/lib/esm/bspline/BSpline1dNd.d.ts +96 -0
  811. package/lib/esm/bspline/BSpline1dNd.d.ts.map +1 -0
  812. package/lib/esm/bspline/BSpline1dNd.js +191 -0
  813. package/lib/esm/bspline/BSpline1dNd.js.map +1 -0
  814. package/lib/esm/bspline/BSplineCurve.d.ts +310 -0
  815. package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -0
  816. package/lib/esm/bspline/BSplineCurve.js +608 -0
  817. package/lib/esm/bspline/BSplineCurve.js.map +1 -0
  818. package/lib/esm/bspline/BSplineCurve3dH.d.ts +140 -0
  819. package/lib/esm/bspline/BSplineCurve3dH.d.ts.map +1 -0
  820. package/lib/esm/bspline/BSplineCurve3dH.js +421 -0
  821. package/lib/esm/bspline/BSplineCurve3dH.js.map +1 -0
  822. package/lib/esm/bspline/BSplineCurveOps.d.ts +159 -0
  823. package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -0
  824. package/lib/esm/bspline/BSplineCurveOps.js +805 -0
  825. package/lib/esm/bspline/BSplineCurveOps.js.map +1 -0
  826. package/lib/esm/bspline/BSplineSurface.d.ts +491 -0
  827. package/lib/esm/bspline/BSplineSurface.d.ts.map +1 -0
  828. package/lib/esm/bspline/BSplineSurface.js +837 -0
  829. package/lib/esm/bspline/BSplineSurface.js.map +1 -0
  830. package/lib/esm/bspline/Bezier1dNd.d.ts +113 -0
  831. package/lib/esm/bspline/Bezier1dNd.d.ts.map +1 -0
  832. package/lib/esm/bspline/Bezier1dNd.js +341 -0
  833. package/lib/esm/bspline/Bezier1dNd.js.map +1 -0
  834. package/lib/esm/bspline/BezierCurve3d.d.ts +76 -0
  835. package/lib/esm/bspline/BezierCurve3d.d.ts.map +1 -0
  836. package/lib/esm/bspline/BezierCurve3d.js +214 -0
  837. package/lib/esm/bspline/BezierCurve3d.js.map +1 -0
  838. package/lib/esm/bspline/BezierCurve3dH.d.ts +107 -0
  839. package/lib/esm/bspline/BezierCurve3dH.d.ts.map +1 -0
  840. package/lib/esm/bspline/BezierCurve3dH.js +348 -0
  841. package/lib/esm/bspline/BezierCurve3dH.js.map +1 -0
  842. package/lib/esm/bspline/BezierCurveBase.d.ts +111 -0
  843. package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -0
  844. package/lib/esm/bspline/BezierCurveBase.js +196 -0
  845. package/lib/esm/bspline/BezierCurveBase.js.map +1 -0
  846. package/lib/esm/bspline/InterpolationCurve3d.d.ts +163 -0
  847. package/lib/esm/bspline/InterpolationCurve3d.d.ts.map +1 -0
  848. package/lib/esm/bspline/InterpolationCurve3d.js +281 -0
  849. package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -0
  850. package/lib/esm/bspline/KnotVector.d.ts +160 -0
  851. package/lib/esm/bspline/KnotVector.d.ts.map +1 -0
  852. package/lib/esm/bspline/KnotVector.js +427 -0
  853. package/lib/esm/bspline/KnotVector.js.map +1 -0
  854. package/lib/esm/bspline/SurfaceLocationDetail.d.ts +52 -0
  855. package/lib/esm/bspline/SurfaceLocationDetail.d.ts.map +1 -0
  856. package/lib/esm/bspline/SurfaceLocationDetail.js +55 -0
  857. package/lib/esm/bspline/SurfaceLocationDetail.js.map +1 -0
  858. package/lib/esm/clipping/AlternatingConvexClipTree.d.ts +165 -0
  859. package/lib/esm/clipping/AlternatingConvexClipTree.d.ts.map +1 -0
  860. package/lib/esm/clipping/AlternatingConvexClipTree.js +519 -0
  861. package/lib/esm/clipping/AlternatingConvexClipTree.js.map +1 -0
  862. package/lib/esm/clipping/BooleanClipFactory.d.ts +80 -0
  863. package/lib/esm/clipping/BooleanClipFactory.d.ts.map +1 -0
  864. package/lib/esm/clipping/BooleanClipFactory.js +198 -0
  865. package/lib/esm/clipping/BooleanClipFactory.js.map +1 -0
  866. package/lib/esm/clipping/BooleanClipNode.d.ts +103 -0
  867. package/lib/esm/clipping/BooleanClipNode.d.ts.map +1 -0
  868. package/lib/esm/clipping/BooleanClipNode.js +255 -0
  869. package/lib/esm/clipping/BooleanClipNode.js.map +1 -0
  870. package/lib/esm/clipping/ClipPlane.d.ts +258 -0
  871. package/lib/esm/clipping/ClipPlane.d.ts.map +1 -0
  872. package/lib/esm/clipping/ClipPlane.js +505 -0
  873. package/lib/esm/clipping/ClipPlane.js.map +1 -0
  874. package/lib/esm/clipping/ClipPrimitive.d.ts +270 -0
  875. package/lib/esm/clipping/ClipPrimitive.d.ts.map +1 -0
  876. package/lib/esm/clipping/ClipPrimitive.js +620 -0
  877. package/lib/esm/clipping/ClipPrimitive.js.map +1 -0
  878. package/lib/esm/clipping/ClipUtils.d.ts +278 -0
  879. package/lib/esm/clipping/ClipUtils.d.ts.map +1 -0
  880. package/lib/esm/clipping/ClipUtils.js +593 -0
  881. package/lib/esm/clipping/ClipUtils.js.map +1 -0
  882. package/lib/esm/clipping/ClipVector.d.ts +154 -0
  883. package/lib/esm/clipping/ClipVector.d.ts.map +1 -0
  884. package/lib/esm/clipping/ClipVector.js +388 -0
  885. package/lib/esm/clipping/ClipVector.js.map +1 -0
  886. package/lib/esm/clipping/ConvexClipPlaneSet.d.ts +250 -0
  887. package/lib/esm/clipping/ConvexClipPlaneSet.d.ts.map +1 -0
  888. package/lib/esm/clipping/ConvexClipPlaneSet.js +685 -0
  889. package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -0
  890. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts +126 -0
  891. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -0
  892. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js +325 -0
  893. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -0
  894. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.d.ts +42 -0
  895. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +1 -0
  896. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js +160 -0
  897. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -0
  898. package/lib/esm/core-geometry.d.ts +228 -0
  899. package/lib/esm/core-geometry.d.ts.map +1 -0
  900. package/lib/esm/core-geometry.js +247 -0
  901. package/lib/esm/core-geometry.js.map +1 -0
  902. package/lib/esm/curve/Arc3d.d.ts +477 -0
  903. package/lib/esm/curve/Arc3d.d.ts.map +1 -0
  904. package/lib/esm/curve/Arc3d.js +905 -0
  905. package/lib/esm/curve/Arc3d.js.map +1 -0
  906. package/lib/esm/curve/ChainCollectorContext.d.ts +65 -0
  907. package/lib/esm/curve/ChainCollectorContext.d.ts.map +1 -0
  908. package/lib/esm/curve/ChainCollectorContext.js +175 -0
  909. package/lib/esm/curve/ChainCollectorContext.js.map +1 -0
  910. package/lib/esm/curve/ConstructCurveBetweenCurves.d.ts +46 -0
  911. package/lib/esm/curve/ConstructCurveBetweenCurves.d.ts.map +1 -0
  912. package/lib/esm/curve/ConstructCurveBetweenCurves.js +112 -0
  913. package/lib/esm/curve/ConstructCurveBetweenCurves.js.map +1 -0
  914. package/lib/esm/curve/CoordinateXYZ.d.ts +54 -0
  915. package/lib/esm/curve/CoordinateXYZ.d.ts.map +1 -0
  916. package/lib/esm/curve/CoordinateXYZ.js +75 -0
  917. package/lib/esm/curve/CoordinateXYZ.js.map +1 -0
  918. package/lib/esm/curve/CurveChain.d.ts +17 -0
  919. package/lib/esm/curve/CurveChain.d.ts.map +1 -0
  920. package/lib/esm/curve/CurveChain.js +6 -0
  921. package/lib/esm/curve/CurveChain.js.map +1 -0
  922. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +234 -0
  923. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -0
  924. package/lib/esm/curve/CurveChainWithDistanceIndex.js +513 -0
  925. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -0
  926. package/lib/esm/curve/CurveCollection.d.ts +204 -0
  927. package/lib/esm/curve/CurveCollection.d.ts.map +1 -0
  928. package/lib/esm/curve/CurveCollection.js +338 -0
  929. package/lib/esm/curve/CurveCollection.js.map +1 -0
  930. package/lib/esm/curve/CurveCurve.d.ts +56 -0
  931. package/lib/esm/curve/CurveCurve.d.ts.map +1 -0
  932. package/lib/esm/curve/CurveCurve.js +96 -0
  933. package/lib/esm/curve/CurveCurve.js.map +1 -0
  934. package/lib/esm/curve/CurveCurveCloseApproachXY.d.ts +158 -0
  935. package/lib/esm/curve/CurveCurveCloseApproachXY.d.ts.map +1 -0
  936. package/lib/esm/curve/CurveCurveCloseApproachXY.js +720 -0
  937. package/lib/esm/curve/CurveCurveCloseApproachXY.js.map +1 -0
  938. package/lib/esm/curve/CurveCurveIntersectXY.d.ts +148 -0
  939. package/lib/esm/curve/CurveCurveIntersectXY.d.ts.map +1 -0
  940. package/lib/esm/curve/CurveCurveIntersectXY.js +814 -0
  941. package/lib/esm/curve/CurveCurveIntersectXY.js.map +1 -0
  942. package/lib/esm/curve/CurveCurveIntersectXYZ.d.ts +101 -0
  943. package/lib/esm/curve/CurveCurveIntersectXYZ.d.ts.map +1 -0
  944. package/lib/esm/curve/CurveCurveIntersectXYZ.js +669 -0
  945. package/lib/esm/curve/CurveCurveIntersectXYZ.js.map +1 -0
  946. package/lib/esm/curve/CurveExtendMode.d.ts +50 -0
  947. package/lib/esm/curve/CurveExtendMode.d.ts.map +1 -0
  948. package/lib/esm/curve/CurveExtendMode.js +96 -0
  949. package/lib/esm/curve/CurveExtendMode.js.map +1 -0
  950. package/lib/esm/curve/CurveFactory.d.ts +122 -0
  951. package/lib/esm/curve/CurveFactory.d.ts.map +1 -0
  952. package/lib/esm/curve/CurveFactory.js +491 -0
  953. package/lib/esm/curve/CurveFactory.js.map +1 -0
  954. package/lib/esm/curve/CurveLocationDetail.d.ts +207 -0
  955. package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -0
  956. package/lib/esm/curve/CurveLocationDetail.js +392 -0
  957. package/lib/esm/curve/CurveLocationDetail.js.map +1 -0
  958. package/lib/esm/curve/CurvePrimitive.d.ts +363 -0
  959. package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -0
  960. package/lib/esm/curve/CurvePrimitive.js +774 -0
  961. package/lib/esm/curve/CurvePrimitive.js.map +1 -0
  962. package/lib/esm/curve/CurveProcessor.d.ts +76 -0
  963. package/lib/esm/curve/CurveProcessor.d.ts.map +1 -0
  964. package/lib/esm/curve/CurveProcessor.js +122 -0
  965. package/lib/esm/curve/CurveProcessor.js.map +1 -0
  966. package/lib/esm/curve/CurveWireMomentsXYZ.d.ts +25 -0
  967. package/lib/esm/curve/CurveWireMomentsXYZ.d.ts.map +1 -0
  968. package/lib/esm/curve/CurveWireMomentsXYZ.js +65 -0
  969. package/lib/esm/curve/CurveWireMomentsXYZ.js.map +1 -0
  970. package/lib/esm/curve/GeometryQuery.d.ts +93 -0
  971. package/lib/esm/curve/GeometryQuery.d.ts.map +1 -0
  972. package/lib/esm/curve/GeometryQuery.js +68 -0
  973. package/lib/esm/curve/GeometryQuery.js.map +1 -0
  974. package/lib/esm/curve/LineSegment3d.d.ts +176 -0
  975. package/lib/esm/curve/LineSegment3d.d.ts.map +1 -0
  976. package/lib/esm/curve/LineSegment3d.js +315 -0
  977. package/lib/esm/curve/LineSegment3d.js.map +1 -0
  978. package/lib/esm/curve/LineString3d.d.ts +419 -0
  979. package/lib/esm/curve/LineString3d.d.ts.map +1 -0
  980. package/lib/esm/curve/LineString3d.js +1280 -0
  981. package/lib/esm/curve/LineString3d.js.map +1 -0
  982. package/lib/esm/curve/Loop.d.ts +82 -0
  983. package/lib/esm/curve/Loop.d.ts.map +1 -0
  984. package/lib/esm/curve/Loop.js +93 -0
  985. package/lib/esm/curve/Loop.js.map +1 -0
  986. package/lib/esm/curve/ParityRegion.d.ts +59 -0
  987. package/lib/esm/curve/ParityRegion.d.ts.map +1 -0
  988. package/lib/esm/curve/ParityRegion.js +113 -0
  989. package/lib/esm/curve/ParityRegion.js.map +1 -0
  990. package/lib/esm/curve/Path.d.ts +47 -0
  991. package/lib/esm/curve/Path.d.ts.map +1 -0
  992. package/lib/esm/curve/Path.js +71 -0
  993. package/lib/esm/curve/Path.js.map +1 -0
  994. package/lib/esm/curve/PointString3d.d.ts +78 -0
  995. package/lib/esm/curve/PointString3d.d.ts.map +1 -0
  996. package/lib/esm/curve/PointString3d.js +174 -0
  997. package/lib/esm/curve/PointString3d.js.map +1 -0
  998. package/lib/esm/curve/ProxyCurve.d.ts +59 -0
  999. package/lib/esm/curve/ProxyCurve.d.ts.map +1 -0
  1000. package/lib/esm/curve/ProxyCurve.js +78 -0
  1001. package/lib/esm/curve/ProxyCurve.js.map +1 -0
  1002. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts +25 -0
  1003. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -0
  1004. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +111 -0
  1005. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -0
  1006. package/lib/esm/curve/Query/CurveSplitContext.d.ts +16 -0
  1007. package/lib/esm/curve/Query/CurveSplitContext.d.ts.map +1 -0
  1008. package/lib/esm/curve/Query/CurveSplitContext.js +107 -0
  1009. package/lib/esm/curve/Query/CurveSplitContext.js.map +1 -0
  1010. package/lib/esm/curve/Query/CylindricalRange.d.ts +46 -0
  1011. package/lib/esm/curve/Query/CylindricalRange.d.ts.map +1 -0
  1012. package/lib/esm/curve/Query/CylindricalRange.js +111 -0
  1013. package/lib/esm/curve/Query/CylindricalRange.js.map +1 -0
  1014. package/lib/esm/curve/Query/InOutTests.d.ts +32 -0
  1015. package/lib/esm/curve/Query/InOutTests.d.ts.map +1 -0
  1016. package/lib/esm/curve/Query/InOutTests.js +116 -0
  1017. package/lib/esm/curve/Query/InOutTests.js.map +1 -0
  1018. package/lib/esm/curve/Query/PlanarSubdivision.d.ts +16 -0
  1019. package/lib/esm/curve/Query/PlanarSubdivision.d.ts.map +1 -0
  1020. package/lib/esm/curve/Query/PlanarSubdivision.js +220 -0
  1021. package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -0
  1022. package/lib/esm/curve/Query/StrokeCountChain.d.ts +186 -0
  1023. package/lib/esm/curve/Query/StrokeCountChain.d.ts.map +1 -0
  1024. package/lib/esm/curve/Query/StrokeCountChain.js +429 -0
  1025. package/lib/esm/curve/Query/StrokeCountChain.js.map +1 -0
  1026. package/lib/esm/curve/Query/StrokeCountMap.d.ts +94 -0
  1027. package/lib/esm/curve/Query/StrokeCountMap.d.ts.map +1 -0
  1028. package/lib/esm/curve/Query/StrokeCountMap.js +138 -0
  1029. package/lib/esm/curve/Query/StrokeCountMap.js.map +1 -0
  1030. package/lib/esm/curve/RegionMomentsXY.d.ts +61 -0
  1031. package/lib/esm/curve/RegionMomentsXY.d.ts.map +1 -0
  1032. package/lib/esm/curve/RegionMomentsXY.js +156 -0
  1033. package/lib/esm/curve/RegionMomentsXY.js.map +1 -0
  1034. package/lib/esm/curve/RegionOps.d.ts +320 -0
  1035. package/lib/esm/curve/RegionOps.d.ts.map +1 -0
  1036. package/lib/esm/curve/RegionOps.js +642 -0
  1037. package/lib/esm/curve/RegionOps.js.map +1 -0
  1038. package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts +263 -0
  1039. package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts.map +1 -0
  1040. package/lib/esm/curve/RegionOpsClassificationSweeps.js +703 -0
  1041. package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -0
  1042. package/lib/esm/curve/StrokeOptions.d.ts +94 -0
  1043. package/lib/esm/curve/StrokeOptions.d.ts.map +1 -0
  1044. package/lib/esm/curve/StrokeOptions.js +149 -0
  1045. package/lib/esm/curve/StrokeOptions.js.map +1 -0
  1046. package/lib/esm/curve/UnionRegion.d.ts +49 -0
  1047. package/lib/esm/curve/UnionRegion.d.ts.map +1 -0
  1048. package/lib/esm/curve/UnionRegion.js +75 -0
  1049. package/lib/esm/curve/UnionRegion.js.map +1 -0
  1050. package/lib/esm/curve/internalContexts/CloneCurvesContext.d.ts +23 -0
  1051. package/lib/esm/curve/internalContexts/CloneCurvesContext.d.ts.map +1 -0
  1052. package/lib/esm/curve/internalContexts/CloneCurvesContext.js +62 -0
  1053. package/lib/esm/curve/internalContexts/CloneCurvesContext.js.map +1 -0
  1054. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.d.ts +16 -0
  1055. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +1 -0
  1056. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js +36 -0
  1057. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -0
  1058. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.d.ts +18 -0
  1059. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +1 -0
  1060. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js +32 -0
  1061. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -0
  1062. package/lib/esm/curve/internalContexts/GapSearchContext.d.ts +16 -0
  1063. package/lib/esm/curve/internalContexts/GapSearchContext.d.ts.map +1 -0
  1064. package/lib/esm/curve/internalContexts/GapSearchContext.js +34 -0
  1065. package/lib/esm/curve/internalContexts/GapSearchContext.js.map +1 -0
  1066. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts +114 -0
  1067. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts.map +1 -0
  1068. package/lib/esm/curve/internalContexts/MultiChainCollector.js +403 -0
  1069. package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -0
  1070. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.d.ts +38 -0
  1071. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +1 -0
  1072. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js +88 -0
  1073. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -0
  1074. package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts +117 -0
  1075. package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -0
  1076. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +686 -0
  1077. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -0
  1078. package/lib/esm/curve/internalContexts/SumLengthsContext.d.ts +17 -0
  1079. package/lib/esm/curve/internalContexts/SumLengthsContext.d.ts.map +1 -0
  1080. package/lib/esm/curve/internalContexts/SumLengthsContext.js +21 -0
  1081. package/lib/esm/curve/internalContexts/SumLengthsContext.js.map +1 -0
  1082. package/lib/esm/curve/internalContexts/TransformInPlaceContext.d.ts +19 -0
  1083. package/lib/esm/curve/internalContexts/TransformInPlaceContext.d.ts.map +1 -0
  1084. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js +19 -0
  1085. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js.map +1 -0
  1086. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts +41 -0
  1087. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -0
  1088. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js +124 -0
  1089. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -0
  1090. package/lib/esm/curve/spiral/ClothoidSeries.d.ts +66 -0
  1091. package/lib/esm/curve/spiral/ClothoidSeries.d.ts.map +1 -0
  1092. package/lib/esm/curve/spiral/ClothoidSeries.js +220 -0
  1093. package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -0
  1094. package/lib/esm/curve/spiral/CubicEvaluator.d.ts +43 -0
  1095. package/lib/esm/curve/spiral/CubicEvaluator.d.ts.map +1 -0
  1096. package/lib/esm/curve/spiral/CubicEvaluator.js +67 -0
  1097. package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -0
  1098. package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts +108 -0
  1099. package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -0
  1100. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js +198 -0
  1101. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -0
  1102. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts +39 -0
  1103. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -0
  1104. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js +88 -0
  1105. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -0
  1106. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts +265 -0
  1107. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts.map +1 -0
  1108. package/lib/esm/curve/spiral/DirectSpiral3d.js +469 -0
  1109. package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -0
  1110. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts +158 -0
  1111. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -0
  1112. package/lib/esm/curve/spiral/IntegratedSpiral3d.js +360 -0
  1113. package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -0
  1114. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +38 -0
  1115. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -0
  1116. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +72 -0
  1117. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -0
  1118. package/lib/esm/curve/spiral/NormalizedTransition.d.ts +140 -0
  1119. package/lib/esm/curve/spiral/NormalizedTransition.d.ts.map +1 -0
  1120. package/lib/esm/curve/spiral/NormalizedTransition.js +182 -0
  1121. package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -0
  1122. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts +50 -0
  1123. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -0
  1124. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js +109 -0
  1125. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -0
  1126. package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts +53 -0
  1127. package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -0
  1128. package/lib/esm/curve/spiral/TransitionConditionalProperties.js +142 -0
  1129. package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -0
  1130. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts +101 -0
  1131. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts.map +1 -0
  1132. package/lib/esm/curve/spiral/TransitionSpiral3d.js +106 -0
  1133. package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -0
  1134. package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts +80 -0
  1135. package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts.map +1 -0
  1136. package/lib/esm/curve/spiral/XYCurveEvaluator.js +103 -0
  1137. package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -0
  1138. package/lib/esm/geometry3d/Angle.d.ts +214 -0
  1139. package/lib/esm/geometry3d/Angle.d.ts.map +1 -0
  1140. package/lib/esm/geometry3d/Angle.js +399 -0
  1141. package/lib/esm/geometry3d/Angle.js.map +1 -0
  1142. package/lib/esm/geometry3d/AngleSweep.d.ts +187 -0
  1143. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -0
  1144. package/lib/esm/geometry3d/AngleSweep.js +325 -0
  1145. package/lib/esm/geometry3d/AngleSweep.js.map +1 -0
  1146. package/lib/esm/geometry3d/BarycentricTriangle.d.ts +51 -0
  1147. package/lib/esm/geometry3d/BarycentricTriangle.d.ts.map +1 -0
  1148. package/lib/esm/geometry3d/BarycentricTriangle.js +97 -0
  1149. package/lib/esm/geometry3d/BarycentricTriangle.js.map +1 -0
  1150. package/lib/esm/geometry3d/BilinearPatch.d.ts +107 -0
  1151. package/lib/esm/geometry3d/BilinearPatch.d.ts.map +1 -0
  1152. package/lib/esm/geometry3d/BilinearPatch.js +200 -0
  1153. package/lib/esm/geometry3d/BilinearPatch.js.map +1 -0
  1154. package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts +56 -0
  1155. package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts.map +1 -0
  1156. package/lib/esm/geometry3d/CoincidentGeometryOps.js +196 -0
  1157. package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -0
  1158. package/lib/esm/geometry3d/Ellipsoid.d.ts +388 -0
  1159. package/lib/esm/geometry3d/Ellipsoid.d.ts.map +1 -0
  1160. package/lib/esm/geometry3d/Ellipsoid.js +1069 -0
  1161. package/lib/esm/geometry3d/Ellipsoid.js.map +1 -0
  1162. package/lib/esm/geometry3d/FrameBuilder.d.ts +91 -0
  1163. package/lib/esm/geometry3d/FrameBuilder.d.ts.map +1 -0
  1164. package/lib/esm/geometry3d/FrameBuilder.js +315 -0
  1165. package/lib/esm/geometry3d/FrameBuilder.js.map +1 -0
  1166. package/lib/esm/geometry3d/FrustumAnimation.d.ts +59 -0
  1167. package/lib/esm/geometry3d/FrustumAnimation.d.ts.map +1 -0
  1168. package/lib/esm/geometry3d/FrustumAnimation.js +119 -0
  1169. package/lib/esm/geometry3d/FrustumAnimation.js.map +1 -0
  1170. package/lib/esm/geometry3d/GeometryHandler.d.ts +329 -0
  1171. package/lib/esm/geometry3d/GeometryHandler.d.ts.map +1 -0
  1172. package/lib/esm/geometry3d/GeometryHandler.js +169 -0
  1173. package/lib/esm/geometry3d/GeometryHandler.js.map +1 -0
  1174. package/lib/esm/geometry3d/GrowableBlockedArray.d.ts +71 -0
  1175. package/lib/esm/geometry3d/GrowableBlockedArray.d.ts.map +1 -0
  1176. package/lib/esm/geometry3d/GrowableBlockedArray.js +158 -0
  1177. package/lib/esm/geometry3d/GrowableBlockedArray.js.map +1 -0
  1178. package/lib/esm/geometry3d/GrowableFloat64Array.d.ts +132 -0
  1179. package/lib/esm/geometry3d/GrowableFloat64Array.d.ts.map +1 -0
  1180. package/lib/esm/geometry3d/GrowableFloat64Array.js +249 -0
  1181. package/lib/esm/geometry3d/GrowableFloat64Array.js.map +1 -0
  1182. package/lib/esm/geometry3d/GrowableXYArray.d.ts +204 -0
  1183. package/lib/esm/geometry3d/GrowableXYArray.d.ts.map +1 -0
  1184. package/lib/esm/geometry3d/GrowableXYArray.js +621 -0
  1185. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -0
  1186. package/lib/esm/geometry3d/GrowableXYZArray.d.ts +324 -0
  1187. package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -0
  1188. package/lib/esm/geometry3d/GrowableXYZArray.js +975 -0
  1189. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -0
  1190. package/lib/esm/geometry3d/IndexedCollectionInterval.d.ts +63 -0
  1191. package/lib/esm/geometry3d/IndexedCollectionInterval.d.ts.map +1 -0
  1192. package/lib/esm/geometry3d/IndexedCollectionInterval.js +105 -0
  1193. package/lib/esm/geometry3d/IndexedCollectionInterval.js.map +1 -0
  1194. package/lib/esm/geometry3d/IndexedXYCollection.d.ts +69 -0
  1195. package/lib/esm/geometry3d/IndexedXYCollection.d.ts.map +1 -0
  1196. package/lib/esm/geometry3d/IndexedXYCollection.js +16 -0
  1197. package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -0
  1198. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +149 -0
  1199. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -0
  1200. package/lib/esm/geometry3d/IndexedXYZCollection.js +98 -0
  1201. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -0
  1202. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.d.ts +63 -0
  1203. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.d.ts.map +1 -0
  1204. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js +119 -0
  1205. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js.map +1 -0
  1206. package/lib/esm/geometry3d/Matrix3d.d.ts +885 -0
  1207. package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -0
  1208. package/lib/esm/geometry3d/Matrix3d.js +2269 -0
  1209. package/lib/esm/geometry3d/Matrix3d.js.map +1 -0
  1210. package/lib/esm/geometry3d/OrderedRotationAngles.d.ts +61 -0
  1211. package/lib/esm/geometry3d/OrderedRotationAngles.d.ts.map +1 -0
  1212. package/lib/esm/geometry3d/OrderedRotationAngles.js +228 -0
  1213. package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -0
  1214. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts +122 -0
  1215. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -0
  1216. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js +237 -0
  1217. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -0
  1218. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts +119 -0
  1219. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -0
  1220. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +238 -0
  1221. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -0
  1222. package/lib/esm/geometry3d/Point2dArrayCarrier.d.ts +74 -0
  1223. package/lib/esm/geometry3d/Point2dArrayCarrier.d.ts.map +1 -0
  1224. package/lib/esm/geometry3d/Point2dArrayCarrier.js +111 -0
  1225. package/lib/esm/geometry3d/Point2dArrayCarrier.js.map +1 -0
  1226. package/lib/esm/geometry3d/Point2dVector2d.d.ts +209 -0
  1227. package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -0
  1228. package/lib/esm/geometry3d/Point2dVector2d.js +461 -0
  1229. package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -0
  1230. package/lib/esm/geometry3d/Point3dArrayCarrier.d.ts +142 -0
  1231. package/lib/esm/geometry3d/Point3dArrayCarrier.d.ts.map +1 -0
  1232. package/lib/esm/geometry3d/Point3dArrayCarrier.js +233 -0
  1233. package/lib/esm/geometry3d/Point3dArrayCarrier.js.map +1 -0
  1234. package/lib/esm/geometry3d/Point3dVector3d.d.ts +699 -0
  1235. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -0
  1236. package/lib/esm/geometry3d/Point3dVector3d.js +1294 -0
  1237. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -0
  1238. package/lib/esm/geometry3d/PointHelpers.d.ts +263 -0
  1239. package/lib/esm/geometry3d/PointHelpers.d.ts.map +1 -0
  1240. package/lib/esm/geometry3d/PointHelpers.js +898 -0
  1241. package/lib/esm/geometry3d/PointHelpers.js.map +1 -0
  1242. package/lib/esm/geometry3d/PointStreaming.d.ts +87 -0
  1243. package/lib/esm/geometry3d/PointStreaming.d.ts.map +1 -0
  1244. package/lib/esm/geometry3d/PointStreaming.js +181 -0
  1245. package/lib/esm/geometry3d/PointStreaming.js.map +1 -0
  1246. package/lib/esm/geometry3d/PolygonOps.d.ts +306 -0
  1247. package/lib/esm/geometry3d/PolygonOps.d.ts.map +1 -0
  1248. package/lib/esm/geometry3d/PolygonOps.js +986 -0
  1249. package/lib/esm/geometry3d/PolygonOps.js.map +1 -0
  1250. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts +81 -0
  1251. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -0
  1252. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +274 -0
  1253. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -0
  1254. package/lib/esm/geometry3d/PolylineOps.d.ts +63 -0
  1255. package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -0
  1256. package/lib/esm/geometry3d/PolylineOps.js +172 -0
  1257. package/lib/esm/geometry3d/PolylineOps.js.map +1 -0
  1258. package/lib/esm/geometry3d/Range.d.ts +599 -0
  1259. package/lib/esm/geometry3d/Range.d.ts.map +1 -0
  1260. package/lib/esm/geometry3d/Range.js +1424 -0
  1261. package/lib/esm/geometry3d/Range.js.map +1 -0
  1262. package/lib/esm/geometry3d/Ray3d.d.ts +146 -0
  1263. package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -0
  1264. package/lib/esm/geometry3d/Ray3d.js +325 -0
  1265. package/lib/esm/geometry3d/Ray3d.js.map +1 -0
  1266. package/lib/esm/geometry3d/ReusableObjectCache.d.ts +55 -0
  1267. package/lib/esm/geometry3d/ReusableObjectCache.d.ts.map +1 -0
  1268. package/lib/esm/geometry3d/ReusableObjectCache.js +82 -0
  1269. package/lib/esm/geometry3d/ReusableObjectCache.js.map +1 -0
  1270. package/lib/esm/geometry3d/Segment1d.d.ts +106 -0
  1271. package/lib/esm/geometry3d/Segment1d.d.ts.map +1 -0
  1272. package/lib/esm/geometry3d/Segment1d.js +169 -0
  1273. package/lib/esm/geometry3d/Segment1d.js.map +1 -0
  1274. package/lib/esm/geometry3d/SortablePolygon.d.ts +50 -0
  1275. package/lib/esm/geometry3d/SortablePolygon.d.ts.map +1 -0
  1276. package/lib/esm/geometry3d/SortablePolygon.js +312 -0
  1277. package/lib/esm/geometry3d/SortablePolygon.js.map +1 -0
  1278. package/lib/esm/geometry3d/Transform.d.ts +275 -0
  1279. package/lib/esm/geometry3d/Transform.d.ts.map +1 -0
  1280. package/lib/esm/geometry3d/Transform.js +570 -0
  1281. package/lib/esm/geometry3d/Transform.js.map +1 -0
  1282. package/lib/esm/geometry3d/UVSurfaceOps.d.ts +43 -0
  1283. package/lib/esm/geometry3d/UVSurfaceOps.d.ts.map +1 -0
  1284. package/lib/esm/geometry3d/UVSurfaceOps.js +98 -0
  1285. package/lib/esm/geometry3d/UVSurfaceOps.js.map +1 -0
  1286. package/lib/esm/geometry3d/XYZProps.d.ts +143 -0
  1287. package/lib/esm/geometry3d/XYZProps.d.ts.map +1 -0
  1288. package/lib/esm/geometry3d/XYZProps.js +6 -0
  1289. package/lib/esm/geometry3d/XYZProps.js.map +1 -0
  1290. package/lib/esm/geometry3d/YawPitchRollAngles.d.ts +111 -0
  1291. package/lib/esm/geometry3d/YawPitchRollAngles.d.ts.map +1 -0
  1292. package/lib/esm/geometry3d/YawPitchRollAngles.js +195 -0
  1293. package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -0
  1294. package/lib/esm/geometry4d/Map4d.d.ts +73 -0
  1295. package/lib/esm/geometry4d/Map4d.d.ts.map +1 -0
  1296. package/lib/esm/geometry4d/Map4d.js +147 -0
  1297. package/lib/esm/geometry4d/Map4d.js.map +1 -0
  1298. package/lib/esm/geometry4d/Matrix4d.d.ts +284 -0
  1299. package/lib/esm/geometry4d/Matrix4d.d.ts.map +1 -0
  1300. package/lib/esm/geometry4d/Matrix4d.js +739 -0
  1301. package/lib/esm/geometry4d/Matrix4d.js.map +1 -0
  1302. package/lib/esm/geometry4d/MomentData.d.ts +180 -0
  1303. package/lib/esm/geometry4d/MomentData.d.ts.map +1 -0
  1304. package/lib/esm/geometry4d/MomentData.js +384 -0
  1305. package/lib/esm/geometry4d/MomentData.js.map +1 -0
  1306. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.d.ts +43 -0
  1307. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +1 -0
  1308. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js +81 -0
  1309. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -0
  1310. package/lib/esm/geometry4d/Point4d.d.ts +257 -0
  1311. package/lib/esm/geometry4d/Point4d.d.ts.map +1 -0
  1312. package/lib/esm/geometry4d/Point4d.js +552 -0
  1313. package/lib/esm/geometry4d/Point4d.js.map +1 -0
  1314. package/lib/esm/numerics/BandedSystem.d.ts +39 -0
  1315. package/lib/esm/numerics/BandedSystem.d.ts.map +1 -0
  1316. package/lib/esm/numerics/BandedSystem.js +156 -0
  1317. package/lib/esm/numerics/BandedSystem.js.map +1 -0
  1318. package/lib/esm/numerics/BezierPolynomials.d.ts +462 -0
  1319. package/lib/esm/numerics/BezierPolynomials.d.ts.map +1 -0
  1320. package/lib/esm/numerics/BezierPolynomials.js +1189 -0
  1321. package/lib/esm/numerics/BezierPolynomials.js.map +1 -0
  1322. package/lib/esm/numerics/ClusterableArray.d.ts +162 -0
  1323. package/lib/esm/numerics/ClusterableArray.d.ts.map +1 -0
  1324. package/lib/esm/numerics/ClusterableArray.js +477 -0
  1325. package/lib/esm/numerics/ClusterableArray.js.map +1 -0
  1326. package/lib/esm/numerics/Complex.d.ts +63 -0
  1327. package/lib/esm/numerics/Complex.d.ts.map +1 -0
  1328. package/lib/esm/numerics/Complex.js +116 -0
  1329. package/lib/esm/numerics/Complex.js.map +1 -0
  1330. package/lib/esm/numerics/ConvexPolygon2d.d.ts +86 -0
  1331. package/lib/esm/numerics/ConvexPolygon2d.d.ts.map +1 -0
  1332. package/lib/esm/numerics/ConvexPolygon2d.js +313 -0
  1333. package/lib/esm/numerics/ConvexPolygon2d.js.map +1 -0
  1334. package/lib/esm/numerics/Newton.d.ts +188 -0
  1335. package/lib/esm/numerics/Newton.d.ts.map +1 -0
  1336. package/lib/esm/numerics/Newton.js +247 -0
  1337. package/lib/esm/numerics/Newton.js.map +1 -0
  1338. package/lib/esm/numerics/PascalCoefficients.d.ts +33 -0
  1339. package/lib/esm/numerics/PascalCoefficients.d.ts.map +1 -0
  1340. package/lib/esm/numerics/PascalCoefficients.js +91 -0
  1341. package/lib/esm/numerics/PascalCoefficients.js.map +1 -0
  1342. package/lib/esm/numerics/PolarData.d.ts +42 -0
  1343. package/lib/esm/numerics/PolarData.d.ts.map +1 -0
  1344. package/lib/esm/numerics/PolarData.js +162 -0
  1345. package/lib/esm/numerics/PolarData.js.map +1 -0
  1346. package/lib/esm/numerics/Polynomials.d.ts +653 -0
  1347. package/lib/esm/numerics/Polynomials.d.ts.map +1 -0
  1348. package/lib/esm/numerics/Polynomials.js +1697 -0
  1349. package/lib/esm/numerics/Polynomials.js.map +1 -0
  1350. package/lib/esm/numerics/Quadrature.d.ts +91 -0
  1351. package/lib/esm/numerics/Quadrature.d.ts.map +1 -0
  1352. package/lib/esm/numerics/Quadrature.js +199 -0
  1353. package/lib/esm/numerics/Quadrature.js.map +1 -0
  1354. package/lib/esm/numerics/Range1dArray.d.ts +80 -0
  1355. package/lib/esm/numerics/Range1dArray.d.ts.map +1 -0
  1356. package/lib/esm/numerics/Range1dArray.js +358 -0
  1357. package/lib/esm/numerics/Range1dArray.js.map +1 -0
  1358. package/lib/esm/numerics/TriDiagonalSystem.d.ts +51 -0
  1359. package/lib/esm/numerics/TriDiagonalSystem.d.ts.map +1 -0
  1360. package/lib/esm/numerics/TriDiagonalSystem.js +270 -0
  1361. package/lib/esm/numerics/TriDiagonalSystem.js.map +1 -0
  1362. package/lib/esm/numerics/UnionFind.d.ts +49 -0
  1363. package/lib/esm/numerics/UnionFind.d.ts.map +1 -0
  1364. package/lib/esm/numerics/UnionFind.js +117 -0
  1365. package/lib/esm/numerics/UnionFind.js.map +1 -0
  1366. package/lib/esm/numerics/UsageSums.d.ts +86 -0
  1367. package/lib/esm/numerics/UsageSums.d.ts.map +1 -0
  1368. package/lib/esm/numerics/UsageSums.js +128 -0
  1369. package/lib/esm/numerics/UsageSums.js.map +1 -0
  1370. package/lib/esm/polyface/AuxData.d.ts +112 -0
  1371. package/lib/esm/polyface/AuxData.d.ts.map +1 -0
  1372. package/lib/esm/polyface/AuxData.js +228 -0
  1373. package/lib/esm/polyface/AuxData.js.map +1 -0
  1374. package/lib/esm/polyface/BoxTopology.d.ts +38 -0
  1375. package/lib/esm/polyface/BoxTopology.d.ts.map +1 -0
  1376. package/lib/esm/polyface/BoxTopology.js +99 -0
  1377. package/lib/esm/polyface/BoxTopology.js.map +1 -0
  1378. package/lib/esm/polyface/FacetFaceData.d.ts +44 -0
  1379. package/lib/esm/polyface/FacetFaceData.d.ts.map +1 -0
  1380. package/lib/esm/polyface/FacetFaceData.js +142 -0
  1381. package/lib/esm/polyface/FacetFaceData.js.map +1 -0
  1382. package/lib/esm/polyface/FacetOrientation.d.ts +39 -0
  1383. package/lib/esm/polyface/FacetOrientation.d.ts.map +1 -0
  1384. package/lib/esm/polyface/FacetOrientation.js +192 -0
  1385. package/lib/esm/polyface/FacetOrientation.js.map +1 -0
  1386. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.d.ts +61 -0
  1387. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +1 -0
  1388. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js +245 -0
  1389. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -0
  1390. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts +87 -0
  1391. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts.map +1 -0
  1392. package/lib/esm/polyface/IndexedEdgeMatcher.js +192 -0
  1393. package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -0
  1394. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts +109 -0
  1395. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -0
  1396. package/lib/esm/polyface/IndexedPolyfaceVisitor.js +237 -0
  1397. package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -0
  1398. package/lib/esm/polyface/Polyface.d.ts +254 -0
  1399. package/lib/esm/polyface/Polyface.d.ts.map +1 -0
  1400. package/lib/esm/polyface/Polyface.js +501 -0
  1401. package/lib/esm/polyface/Polyface.js.map +1 -0
  1402. package/lib/esm/polyface/PolyfaceBuilder.d.ts +395 -0
  1403. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -0
  1404. package/lib/esm/polyface/PolyfaceBuilder.js +1634 -0
  1405. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -0
  1406. package/lib/esm/polyface/PolyfaceClip.d.ts +172 -0
  1407. package/lib/esm/polyface/PolyfaceClip.d.ts.map +1 -0
  1408. package/lib/esm/polyface/PolyfaceClip.js +565 -0
  1409. package/lib/esm/polyface/PolyfaceClip.js.map +1 -0
  1410. package/lib/esm/polyface/PolyfaceData.d.ts +206 -0
  1411. package/lib/esm/polyface/PolyfaceData.d.ts.map +1 -0
  1412. package/lib/esm/polyface/PolyfaceData.js +527 -0
  1413. package/lib/esm/polyface/PolyfaceData.js.map +1 -0
  1414. package/lib/esm/polyface/PolyfaceQuery.d.ts +302 -0
  1415. package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -0
  1416. package/lib/esm/polyface/PolyfaceQuery.js +947 -0
  1417. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -0
  1418. package/lib/esm/polyface/RangeLengthData.d.ts +31 -0
  1419. package/lib/esm/polyface/RangeLengthData.d.ts.map +1 -0
  1420. package/lib/esm/polyface/RangeLengthData.js +39 -0
  1421. package/lib/esm/polyface/RangeLengthData.js.map +1 -0
  1422. package/lib/esm/polyface/TaggedNumericData.d.ts +95 -0
  1423. package/lib/esm/polyface/TaggedNumericData.d.ts.map +1 -0
  1424. package/lib/esm/polyface/TaggedNumericData.js +160 -0
  1425. package/lib/esm/polyface/TaggedNumericData.js.map +1 -0
  1426. package/lib/esm/polyface/TriangleCandidate.d.ts +64 -0
  1427. package/lib/esm/polyface/TriangleCandidate.d.ts.map +1 -0
  1428. package/lib/esm/polyface/TriangleCandidate.js +116 -0
  1429. package/lib/esm/polyface/TriangleCandidate.js.map +1 -0
  1430. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.d.ts +29 -0
  1431. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +1 -0
  1432. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js +160 -0
  1433. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -0
  1434. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.d.ts +81 -0
  1435. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +1 -0
  1436. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js +159 -0
  1437. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -0
  1438. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts +53 -0
  1439. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +1 -0
  1440. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +74 -0
  1441. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -0
  1442. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.d.ts +44 -0
  1443. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +1 -0
  1444. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js +80 -0
  1445. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -0
  1446. package/lib/esm/polyface/multiclip/Range2dSearchInterface.d.ts +32 -0
  1447. package/lib/esm/polyface/multiclip/Range2dSearchInterface.d.ts.map +1 -0
  1448. package/lib/esm/polyface/multiclip/Range2dSearchInterface.js +9 -0
  1449. package/lib/esm/polyface/multiclip/Range2dSearchInterface.js.map +1 -0
  1450. package/lib/esm/polyface/multiclip/RangeSearch.d.ts +27 -0
  1451. package/lib/esm/polyface/multiclip/RangeSearch.d.ts.map +1 -0
  1452. package/lib/esm/polyface/multiclip/RangeSearch.js +49 -0
  1453. package/lib/esm/polyface/multiclip/RangeSearch.js.map +1 -0
  1454. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts +25 -0
  1455. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -0
  1456. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js +90 -0
  1457. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -0
  1458. package/lib/esm/polyface/multiclip/XYPointBuckets.d.ts +73 -0
  1459. package/lib/esm/polyface/multiclip/XYPointBuckets.d.ts.map +1 -0
  1460. package/lib/esm/polyface/multiclip/XYPointBuckets.js +192 -0
  1461. package/lib/esm/polyface/multiclip/XYPointBuckets.js.map +1 -0
  1462. package/lib/esm/serialization/BGFBAccessors.d.ts +3426 -0
  1463. package/lib/esm/serialization/BGFBAccessors.d.ts.map +1 -0
  1464. package/lib/esm/serialization/BGFBAccessors.js +5543 -0
  1465. package/lib/esm/serialization/BGFBAccessors.js.map +1 -0
  1466. package/lib/esm/serialization/BGFBReader.d.ts +118 -0
  1467. package/lib/esm/serialization/BGFBReader.d.ts.map +1 -0
  1468. package/lib/esm/serialization/BGFBReader.js +661 -0
  1469. package/lib/esm/serialization/BGFBReader.js.map +1 -0
  1470. package/lib/esm/serialization/BGFBWriter.d.ts +69 -0
  1471. package/lib/esm/serialization/BGFBWriter.d.ts.map +1 -0
  1472. package/lib/esm/serialization/BGFBWriter.js +587 -0
  1473. package/lib/esm/serialization/BGFBWriter.js.map +1 -0
  1474. package/lib/esm/serialization/BentleyGeometryFlatBuffer.d.ts +23 -0
  1475. package/lib/esm/serialization/BentleyGeometryFlatBuffer.d.ts.map +1 -0
  1476. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js +26 -0
  1477. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js.map +1 -0
  1478. package/lib/esm/serialization/DeepCompare.d.ts +41 -0
  1479. package/lib/esm/serialization/DeepCompare.d.ts.map +1 -0
  1480. package/lib/esm/serialization/DeepCompare.js +185 -0
  1481. package/lib/esm/serialization/DeepCompare.js.map +1 -0
  1482. package/lib/esm/serialization/GeometrySamples.d.ts +616 -0
  1483. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -0
  1484. package/lib/esm/serialization/GeometrySamples.js +2124 -0
  1485. package/lib/esm/serialization/GeometrySamples.js.map +1 -0
  1486. package/lib/esm/serialization/IModelJsonSchema.d.ts +671 -0
  1487. package/lib/esm/serialization/IModelJsonSchema.d.ts.map +1 -0
  1488. package/lib/esm/serialization/IModelJsonSchema.js +1523 -0
  1489. package/lib/esm/serialization/IModelJsonSchema.js.map +1 -0
  1490. package/lib/esm/solid/Box.d.ts +122 -0
  1491. package/lib/esm/solid/Box.d.ts.map +1 -0
  1492. package/lib/esm/solid/Box.js +229 -0
  1493. package/lib/esm/solid/Box.js.map +1 -0
  1494. package/lib/esm/solid/Cone.d.ts +119 -0
  1495. package/lib/esm/solid/Cone.d.ts.map +1 -0
  1496. package/lib/esm/solid/Cone.js +267 -0
  1497. package/lib/esm/solid/Cone.js.map +1 -0
  1498. package/lib/esm/solid/LinearSweep.d.ts +81 -0
  1499. package/lib/esm/solid/LinearSweep.d.ts.map +1 -0
  1500. package/lib/esm/solid/LinearSweep.js +143 -0
  1501. package/lib/esm/solid/LinearSweep.js.map +1 -0
  1502. package/lib/esm/solid/RotationalSweep.d.ts +71 -0
  1503. package/lib/esm/solid/RotationalSweep.d.ts.map +1 -0
  1504. package/lib/esm/solid/RotationalSweep.js +139 -0
  1505. package/lib/esm/solid/RotationalSweep.js.map +1 -0
  1506. package/lib/esm/solid/RuledSweep.d.ts +76 -0
  1507. package/lib/esm/solid/RuledSweep.d.ts.map +1 -0
  1508. package/lib/esm/solid/RuledSweep.js +202 -0
  1509. package/lib/esm/solid/RuledSweep.js.map +1 -0
  1510. package/lib/esm/solid/SolidPrimitive.d.ts +63 -0
  1511. package/lib/esm/solid/SolidPrimitive.d.ts.map +1 -0
  1512. package/lib/esm/solid/SolidPrimitive.js +23 -0
  1513. package/lib/esm/solid/SolidPrimitive.js.map +1 -0
  1514. package/lib/esm/solid/Sphere.d.ts +120 -0
  1515. package/lib/esm/solid/Sphere.d.ts.map +1 -0
  1516. package/lib/esm/solid/Sphere.js +294 -0
  1517. package/lib/esm/solid/Sphere.js.map +1 -0
  1518. package/lib/esm/solid/SweepContour.d.ts +82 -0
  1519. package/lib/esm/solid/SweepContour.d.ts.map +1 -0
  1520. package/lib/esm/solid/SweepContour.js +250 -0
  1521. package/lib/esm/solid/SweepContour.js.map +1 -0
  1522. package/lib/esm/solid/TorusPipe.d.ts +123 -0
  1523. package/lib/esm/solid/TorusPipe.d.ts.map +1 -0
  1524. package/lib/esm/solid/TorusPipe.js +296 -0
  1525. package/lib/esm/solid/TorusPipe.js.map +1 -0
  1526. package/lib/esm/topology/ChainMerge.d.ts +119 -0
  1527. package/lib/esm/topology/ChainMerge.d.ts.map +1 -0
  1528. package/lib/esm/topology/ChainMerge.js +280 -0
  1529. package/lib/esm/topology/ChainMerge.js.map +1 -0
  1530. package/lib/esm/topology/Graph.d.ts +591 -0
  1531. package/lib/esm/topology/Graph.d.ts.map +1 -0
  1532. package/lib/esm/topology/Graph.js +1156 -0
  1533. package/lib/esm/topology/Graph.js.map +1 -0
  1534. package/lib/esm/topology/HalfEdgeGraphSearch.d.ts +125 -0
  1535. package/lib/esm/topology/HalfEdgeGraphSearch.d.ts.map +1 -0
  1536. package/lib/esm/topology/HalfEdgeGraphSearch.js +296 -0
  1537. package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -0
  1538. package/lib/esm/topology/HalfEdgeGraphSpineContext.d.ts +98 -0
  1539. package/lib/esm/topology/HalfEdgeGraphSpineContext.d.ts.map +1 -0
  1540. package/lib/esm/topology/HalfEdgeGraphSpineContext.js +519 -0
  1541. package/lib/esm/topology/HalfEdgeGraphSpineContext.js.map +1 -0
  1542. package/lib/esm/topology/HalfEdgeGraphValidation.d.ts +52 -0
  1543. package/lib/esm/topology/HalfEdgeGraphValidation.d.ts.map +1 -0
  1544. package/lib/esm/topology/HalfEdgeGraphValidation.js +107 -0
  1545. package/lib/esm/topology/HalfEdgeGraphValidation.js.map +1 -0
  1546. package/lib/esm/topology/HalfEdgeMarkSet.d.ts +232 -0
  1547. package/lib/esm/topology/HalfEdgeMarkSet.d.ts.map +1 -0
  1548. package/lib/esm/topology/HalfEdgeMarkSet.js +369 -0
  1549. package/lib/esm/topology/HalfEdgeMarkSet.js.map +1 -0
  1550. package/lib/esm/topology/HalfEdgeNodeXYZUV.d.ts +51 -0
  1551. package/lib/esm/topology/HalfEdgeNodeXYZUV.d.ts.map +1 -0
  1552. package/lib/esm/topology/HalfEdgeNodeXYZUV.js +93 -0
  1553. package/lib/esm/topology/HalfEdgeNodeXYZUV.js.map +1 -0
  1554. package/lib/esm/topology/HalfEdgePointInGraphSearch.d.ts +34 -0
  1555. package/lib/esm/topology/HalfEdgePointInGraphSearch.d.ts.map +1 -0
  1556. package/lib/esm/topology/HalfEdgePointInGraphSearch.js +252 -0
  1557. package/lib/esm/topology/HalfEdgePointInGraphSearch.js.map +1 -0
  1558. package/lib/esm/topology/HalfEdgePositionDetail.d.ts +97 -0
  1559. package/lib/esm/topology/HalfEdgePositionDetail.d.ts.map +1 -0
  1560. package/lib/esm/topology/HalfEdgePositionDetail.js +173 -0
  1561. package/lib/esm/topology/HalfEdgePositionDetail.js.map +1 -0
  1562. package/lib/esm/topology/HalfEdgePriorityQueue.d.ts +34 -0
  1563. package/lib/esm/topology/HalfEdgePriorityQueue.d.ts.map +1 -0
  1564. package/lib/esm/topology/HalfEdgePriorityQueue.js +68 -0
  1565. package/lib/esm/topology/HalfEdgePriorityQueue.js.map +1 -0
  1566. package/lib/esm/topology/InsertAndRetriangulateContext.d.ts +38 -0
  1567. package/lib/esm/topology/InsertAndRetriangulateContext.d.ts.map +1 -0
  1568. package/lib/esm/topology/InsertAndRetriangulateContext.js +239 -0
  1569. package/lib/esm/topology/InsertAndRetriangulateContext.js.map +1 -0
  1570. package/lib/esm/topology/MaskManager.d.ts +33 -0
  1571. package/lib/esm/topology/MaskManager.d.ts.map +1 -0
  1572. package/lib/esm/topology/MaskManager.js +63 -0
  1573. package/lib/esm/topology/MaskManager.js.map +1 -0
  1574. package/lib/esm/topology/Merging.d.ts +90 -0
  1575. package/lib/esm/topology/Merging.d.ts.map +1 -0
  1576. package/lib/esm/topology/Merging.js +362 -0
  1577. package/lib/esm/topology/Merging.js.map +1 -0
  1578. package/lib/esm/topology/RegularizeFace.d.ts +106 -0
  1579. package/lib/esm/topology/RegularizeFace.d.ts.map +1 -0
  1580. package/lib/esm/topology/RegularizeFace.js +367 -0
  1581. package/lib/esm/topology/RegularizeFace.js.map +1 -0
  1582. package/lib/esm/topology/SignedDataSummary.d.ts +37 -0
  1583. package/lib/esm/topology/SignedDataSummary.d.ts.map +1 -0
  1584. package/lib/esm/topology/SignedDataSummary.js +54 -0
  1585. package/lib/esm/topology/SignedDataSummary.js.map +1 -0
  1586. package/lib/esm/topology/Triangulation.d.ts +230 -0
  1587. package/lib/esm/topology/Triangulation.d.ts.map +1 -0
  1588. package/lib/esm/topology/Triangulation.js +945 -0
  1589. package/lib/esm/topology/Triangulation.js.map +1 -0
  1590. package/lib/esm/topology/XYParitySearchContext.d.ts +54 -0
  1591. package/lib/esm/topology/XYParitySearchContext.d.ts.map +1 -0
  1592. package/lib/esm/topology/XYParitySearchContext.js +138 -0
  1593. package/lib/esm/topology/XYParitySearchContext.js.map +1 -0
  1594. package/package.json +11 -8
  1595. package/lib/Constant.d.ts.map +0 -1
  1596. package/lib/Constant.js.map +0 -1
  1597. package/lib/Geometry.d.ts.map +0 -1
  1598. package/lib/Geometry.js.map +0 -1
  1599. package/lib/bspline/AkimaCurve3d.d.ts.map +0 -1
  1600. package/lib/bspline/AkimaCurve3d.js.map +0 -1
  1601. package/lib/bspline/BSpline1dNd.d.ts.map +0 -1
  1602. package/lib/bspline/BSpline1dNd.js.map +0 -1
  1603. package/lib/bspline/BSplineCurve.d.ts.map +0 -1
  1604. package/lib/bspline/BSplineCurve.js.map +0 -1
  1605. package/lib/bspline/BSplineCurve3dH.d.ts.map +0 -1
  1606. package/lib/bspline/BSplineCurve3dH.js.map +0 -1
  1607. package/lib/bspline/BSplineCurveOps.d.ts.map +0 -1
  1608. package/lib/bspline/BSplineCurveOps.js.map +0 -1
  1609. package/lib/bspline/BSplineSurface.d.ts +0 -485
  1610. package/lib/bspline/BSplineSurface.d.ts.map +0 -1
  1611. package/lib/bspline/BSplineSurface.js.map +0 -1
  1612. package/lib/bspline/Bezier1dNd.d.ts.map +0 -1
  1613. package/lib/bspline/Bezier1dNd.js.map +0 -1
  1614. package/lib/bspline/BezierCurve3d.d.ts.map +0 -1
  1615. package/lib/bspline/BezierCurve3d.js.map +0 -1
  1616. package/lib/bspline/BezierCurve3dH.d.ts.map +0 -1
  1617. package/lib/bspline/BezierCurve3dH.js.map +0 -1
  1618. package/lib/bspline/BezierCurveBase.d.ts.map +0 -1
  1619. package/lib/bspline/BezierCurveBase.js.map +0 -1
  1620. package/lib/bspline/InterpolationCurve3d.d.ts.map +0 -1
  1621. package/lib/bspline/InterpolationCurve3d.js.map +0 -1
  1622. package/lib/bspline/KnotVector.d.ts.map +0 -1
  1623. package/lib/bspline/KnotVector.js.map +0 -1
  1624. package/lib/bspline/SurfaceLocationDetail.d.ts.map +0 -1
  1625. package/lib/bspline/SurfaceLocationDetail.js.map +0 -1
  1626. package/lib/clipping/AlternatingConvexClipTree.d.ts.map +0 -1
  1627. package/lib/clipping/AlternatingConvexClipTree.js.map +0 -1
  1628. package/lib/clipping/BooleanClipFactory.d.ts.map +0 -1
  1629. package/lib/clipping/BooleanClipFactory.js.map +0 -1
  1630. package/lib/clipping/BooleanClipNode.d.ts.map +0 -1
  1631. package/lib/clipping/BooleanClipNode.js.map +0 -1
  1632. package/lib/clipping/ClipPlane.d.ts.map +0 -1
  1633. package/lib/clipping/ClipPlane.js.map +0 -1
  1634. package/lib/clipping/ClipPrimitive.d.ts.map +0 -1
  1635. package/lib/clipping/ClipPrimitive.js.map +0 -1
  1636. package/lib/clipping/ClipUtils.d.ts.map +0 -1
  1637. package/lib/clipping/ClipUtils.js.map +0 -1
  1638. package/lib/clipping/ClipVector.d.ts.map +0 -1
  1639. package/lib/clipping/ClipVector.js.map +0 -1
  1640. package/lib/clipping/ConvexClipPlaneSet.d.ts.map +0 -1
  1641. package/lib/clipping/ConvexClipPlaneSet.js.map +0 -1
  1642. package/lib/clipping/UnionOfConvexClipPlaneSets.d.ts.map +0 -1
  1643. package/lib/clipping/UnionOfConvexClipPlaneSets.js.map +0 -1
  1644. package/lib/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +0 -1
  1645. package/lib/clipping/internalContexts/LineStringOffsetClipperContext.js.map +0 -1
  1646. package/lib/core-geometry.d.ts.map +0 -1
  1647. package/lib/core-geometry.js.map +0 -1
  1648. package/lib/curve/Arc3d.d.ts.map +0 -1
  1649. package/lib/curve/Arc3d.js.map +0 -1
  1650. package/lib/curve/ChainCollectorContext.d.ts.map +0 -1
  1651. package/lib/curve/ChainCollectorContext.js.map +0 -1
  1652. package/lib/curve/ConstructCurveBetweenCurves.d.ts.map +0 -1
  1653. package/lib/curve/ConstructCurveBetweenCurves.js.map +0 -1
  1654. package/lib/curve/CoordinateXYZ.d.ts.map +0 -1
  1655. package/lib/curve/CoordinateXYZ.js.map +0 -1
  1656. package/lib/curve/CurveChain.d.ts.map +0 -1
  1657. package/lib/curve/CurveChain.js.map +0 -1
  1658. package/lib/curve/CurveChainWithDistanceIndex.d.ts.map +0 -1
  1659. package/lib/curve/CurveChainWithDistanceIndex.js.map +0 -1
  1660. package/lib/curve/CurveCollection.d.ts.map +0 -1
  1661. package/lib/curve/CurveCollection.js.map +0 -1
  1662. package/lib/curve/CurveCurve.d.ts.map +0 -1
  1663. package/lib/curve/CurveCurve.js.map +0 -1
  1664. package/lib/curve/CurveCurveCloseApproachXY.d.ts.map +0 -1
  1665. package/lib/curve/CurveCurveCloseApproachXY.js.map +0 -1
  1666. package/lib/curve/CurveCurveIntersectXY.d.ts.map +0 -1
  1667. package/lib/curve/CurveCurveIntersectXY.js.map +0 -1
  1668. package/lib/curve/CurveCurveIntersectXYZ.d.ts.map +0 -1
  1669. package/lib/curve/CurveCurveIntersectXYZ.js.map +0 -1
  1670. package/lib/curve/CurveExtendMode.d.ts.map +0 -1
  1671. package/lib/curve/CurveExtendMode.js.map +0 -1
  1672. package/lib/curve/CurveFactory.d.ts.map +0 -1
  1673. package/lib/curve/CurveFactory.js.map +0 -1
  1674. package/lib/curve/CurveLocationDetail.d.ts.map +0 -1
  1675. package/lib/curve/CurveLocationDetail.js.map +0 -1
  1676. package/lib/curve/CurvePrimitive.d.ts.map +0 -1
  1677. package/lib/curve/CurvePrimitive.js.map +0 -1
  1678. package/lib/curve/CurveProcessor.d.ts.map +0 -1
  1679. package/lib/curve/CurveProcessor.js.map +0 -1
  1680. package/lib/curve/CurveWireMomentsXYZ.d.ts.map +0 -1
  1681. package/lib/curve/CurveWireMomentsXYZ.js.map +0 -1
  1682. package/lib/curve/GeometryQuery.d.ts.map +0 -1
  1683. package/lib/curve/GeometryQuery.js.map +0 -1
  1684. package/lib/curve/LineSegment3d.d.ts.map +0 -1
  1685. package/lib/curve/LineSegment3d.js.map +0 -1
  1686. package/lib/curve/LineString3d.d.ts.map +0 -1
  1687. package/lib/curve/LineString3d.js.map +0 -1
  1688. package/lib/curve/Loop.d.ts.map +0 -1
  1689. package/lib/curve/Loop.js.map +0 -1
  1690. package/lib/curve/ParityRegion.d.ts.map +0 -1
  1691. package/lib/curve/ParityRegion.js.map +0 -1
  1692. package/lib/curve/Path.d.ts.map +0 -1
  1693. package/lib/curve/Path.js.map +0 -1
  1694. package/lib/curve/PointString3d.d.ts.map +0 -1
  1695. package/lib/curve/PointString3d.js.map +0 -1
  1696. package/lib/curve/ProxyCurve.d.ts.map +0 -1
  1697. package/lib/curve/ProxyCurve.js.map +0 -1
  1698. package/lib/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +0 -1
  1699. package/lib/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +0 -1
  1700. package/lib/curve/Query/CurveSplitContext.d.ts.map +0 -1
  1701. package/lib/curve/Query/CurveSplitContext.js.map +0 -1
  1702. package/lib/curve/Query/CylindricalRange.d.ts.map +0 -1
  1703. package/lib/curve/Query/CylindricalRange.js.map +0 -1
  1704. package/lib/curve/Query/InOutTests.d.ts.map +0 -1
  1705. package/lib/curve/Query/InOutTests.js.map +0 -1
  1706. package/lib/curve/Query/PlanarSubdivision.d.ts.map +0 -1
  1707. package/lib/curve/Query/PlanarSubdivision.js.map +0 -1
  1708. package/lib/curve/Query/StrokeCountChain.d.ts.map +0 -1
  1709. package/lib/curve/Query/StrokeCountChain.js.map +0 -1
  1710. package/lib/curve/Query/StrokeCountMap.d.ts.map +0 -1
  1711. package/lib/curve/Query/StrokeCountMap.js.map +0 -1
  1712. package/lib/curve/RegionMomentsXY.d.ts.map +0 -1
  1713. package/lib/curve/RegionMomentsXY.js.map +0 -1
  1714. package/lib/curve/RegionOps.d.ts.map +0 -1
  1715. package/lib/curve/RegionOps.js.map +0 -1
  1716. package/lib/curve/RegionOpsClassificationSweeps.d.ts.map +0 -1
  1717. package/lib/curve/RegionOpsClassificationSweeps.js.map +0 -1
  1718. package/lib/curve/StrokeOptions.d.ts.map +0 -1
  1719. package/lib/curve/StrokeOptions.js.map +0 -1
  1720. package/lib/curve/UnionRegion.d.ts.map +0 -1
  1721. package/lib/curve/UnionRegion.js.map +0 -1
  1722. package/lib/curve/internalContexts/CloneCurvesContext.d.ts.map +0 -1
  1723. package/lib/curve/internalContexts/CloneCurvesContext.js.map +0 -1
  1724. package/lib/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +0 -1
  1725. package/lib/curve/internalContexts/CloneWithExpandedLineStrings.js.map +0 -1
  1726. package/lib/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +0 -1
  1727. package/lib/curve/internalContexts/CountLinearPartsSearchContext.js.map +0 -1
  1728. package/lib/curve/internalContexts/GapSearchContext.d.ts.map +0 -1
  1729. package/lib/curve/internalContexts/GapSearchContext.js.map +0 -1
  1730. package/lib/curve/internalContexts/MultiChainCollector.d.ts.map +0 -1
  1731. package/lib/curve/internalContexts/MultiChainCollector.js.map +0 -1
  1732. package/lib/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +0 -1
  1733. package/lib/curve/internalContexts/PlaneAltitudeRangeContext.js.map +0 -1
  1734. package/lib/curve/internalContexts/PolygonOffsetContext.d.ts.map +0 -1
  1735. package/lib/curve/internalContexts/PolygonOffsetContext.js.map +0 -1
  1736. package/lib/curve/internalContexts/SumLengthsContext.d.ts.map +0 -1
  1737. package/lib/curve/internalContexts/SumLengthsContext.js.map +0 -1
  1738. package/lib/curve/internalContexts/TransformInPlaceContext.d.ts.map +0 -1
  1739. package/lib/curve/internalContexts/TransformInPlaceContext.js.map +0 -1
  1740. package/lib/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +0 -1
  1741. package/lib/curve/spiral/AustralianRailCorpXYEvaluator.js.map +0 -1
  1742. package/lib/curve/spiral/ClothoidSeries.d.ts.map +0 -1
  1743. package/lib/curve/spiral/ClothoidSeries.js.map +0 -1
  1744. package/lib/curve/spiral/CubicEvaluator.d.ts.map +0 -1
  1745. package/lib/curve/spiral/CubicEvaluator.js.map +0 -1
  1746. package/lib/curve/spiral/CzechSpiralEvaluator.d.ts.map +0 -1
  1747. package/lib/curve/spiral/CzechSpiralEvaluator.js.map +0 -1
  1748. package/lib/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +0 -1
  1749. package/lib/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +0 -1
  1750. package/lib/curve/spiral/DirectSpiral3d.d.ts +0 -264
  1751. package/lib/curve/spiral/DirectSpiral3d.d.ts.map +0 -1
  1752. package/lib/curve/spiral/DirectSpiral3d.js +0 -464
  1753. package/lib/curve/spiral/DirectSpiral3d.js.map +0 -1
  1754. package/lib/curve/spiral/IntegratedSpiral3d.d.ts +0 -154
  1755. package/lib/curve/spiral/IntegratedSpiral3d.d.ts.map +0 -1
  1756. package/lib/curve/spiral/IntegratedSpiral3d.js +0 -351
  1757. package/lib/curve/spiral/IntegratedSpiral3d.js.map +0 -1
  1758. package/lib/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +0 -1
  1759. package/lib/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +0 -1
  1760. package/lib/curve/spiral/NormalizedTransition.d.ts.map +0 -1
  1761. package/lib/curve/spiral/NormalizedTransition.js.map +0 -1
  1762. package/lib/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +0 -1
  1763. package/lib/curve/spiral/PolishCubicSpiralEvaluator.js.map +0 -1
  1764. package/lib/curve/spiral/TransitionConditionalProperties.d.ts.map +0 -1
  1765. package/lib/curve/spiral/TransitionConditionalProperties.js.map +0 -1
  1766. package/lib/curve/spiral/TransitionSpiral3d.d.ts.map +0 -1
  1767. package/lib/curve/spiral/TransitionSpiral3d.js.map +0 -1
  1768. package/lib/curve/spiral/XYCurveEvaluator.d.ts.map +0 -1
  1769. package/lib/curve/spiral/XYCurveEvaluator.js.map +0 -1
  1770. package/lib/geometry3d/Angle.d.ts.map +0 -1
  1771. package/lib/geometry3d/Angle.js.map +0 -1
  1772. package/lib/geometry3d/AngleSweep.d.ts.map +0 -1
  1773. package/lib/geometry3d/AngleSweep.js.map +0 -1
  1774. package/lib/geometry3d/BarycentricTriangle.d.ts.map +0 -1
  1775. package/lib/geometry3d/BarycentricTriangle.js.map +0 -1
  1776. package/lib/geometry3d/BilinearPatch.d.ts.map +0 -1
  1777. package/lib/geometry3d/BilinearPatch.js.map +0 -1
  1778. package/lib/geometry3d/CoincidentGeometryOps.d.ts.map +0 -1
  1779. package/lib/geometry3d/CoincidentGeometryOps.js.map +0 -1
  1780. package/lib/geometry3d/Ellipsoid.d.ts.map +0 -1
  1781. package/lib/geometry3d/Ellipsoid.js.map +0 -1
  1782. package/lib/geometry3d/FrameBuilder.d.ts.map +0 -1
  1783. package/lib/geometry3d/FrameBuilder.js.map +0 -1
  1784. package/lib/geometry3d/FrustumAnimation.d.ts.map +0 -1
  1785. package/lib/geometry3d/FrustumAnimation.js.map +0 -1
  1786. package/lib/geometry3d/GeometryHandler.d.ts.map +0 -1
  1787. package/lib/geometry3d/GeometryHandler.js.map +0 -1
  1788. package/lib/geometry3d/GrowableBlockedArray.d.ts.map +0 -1
  1789. package/lib/geometry3d/GrowableBlockedArray.js.map +0 -1
  1790. package/lib/geometry3d/GrowableFloat64Array.d.ts.map +0 -1
  1791. package/lib/geometry3d/GrowableFloat64Array.js.map +0 -1
  1792. package/lib/geometry3d/GrowableXYArray.d.ts.map +0 -1
  1793. package/lib/geometry3d/GrowableXYArray.js.map +0 -1
  1794. package/lib/geometry3d/GrowableXYZArray.d.ts.map +0 -1
  1795. package/lib/geometry3d/GrowableXYZArray.js.map +0 -1
  1796. package/lib/geometry3d/IndexedCollectionInterval.d.ts.map +0 -1
  1797. package/lib/geometry3d/IndexedCollectionInterval.js.map +0 -1
  1798. package/lib/geometry3d/IndexedXYCollection.d.ts.map +0 -1
  1799. package/lib/geometry3d/IndexedXYCollection.js.map +0 -1
  1800. package/lib/geometry3d/IndexedXYZCollection.d.ts.map +0 -1
  1801. package/lib/geometry3d/IndexedXYZCollection.js.map +0 -1
  1802. package/lib/geometry3d/LongitudeLatitudeAltitude.d.ts.map +0 -1
  1803. package/lib/geometry3d/LongitudeLatitudeAltitude.js.map +0 -1
  1804. package/lib/geometry3d/Matrix3d.d.ts.map +0 -1
  1805. package/lib/geometry3d/Matrix3d.js.map +0 -1
  1806. package/lib/geometry3d/OrderedRotationAngles.d.ts.map +0 -1
  1807. package/lib/geometry3d/OrderedRotationAngles.js.map +0 -1
  1808. package/lib/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +0 -1
  1809. package/lib/geometry3d/Plane3dByOriginAndUnitNormal.js.map +0 -1
  1810. package/lib/geometry3d/Plane3dByOriginAndVectors.d.ts.map +0 -1
  1811. package/lib/geometry3d/Plane3dByOriginAndVectors.js.map +0 -1
  1812. package/lib/geometry3d/Point2dArrayCarrier.d.ts.map +0 -1
  1813. package/lib/geometry3d/Point2dArrayCarrier.js.map +0 -1
  1814. package/lib/geometry3d/Point2dVector2d.d.ts.map +0 -1
  1815. package/lib/geometry3d/Point2dVector2d.js.map +0 -1
  1816. package/lib/geometry3d/Point3dArrayCarrier.d.ts.map +0 -1
  1817. package/lib/geometry3d/Point3dArrayCarrier.js.map +0 -1
  1818. package/lib/geometry3d/Point3dVector3d.d.ts.map +0 -1
  1819. package/lib/geometry3d/Point3dVector3d.js.map +0 -1
  1820. package/lib/geometry3d/PointHelpers.d.ts.map +0 -1
  1821. package/lib/geometry3d/PointHelpers.js.map +0 -1
  1822. package/lib/geometry3d/PointStreaming.d.ts.map +0 -1
  1823. package/lib/geometry3d/PointStreaming.js.map +0 -1
  1824. package/lib/geometry3d/PolygonOps.d.ts.map +0 -1
  1825. package/lib/geometry3d/PolygonOps.js.map +0 -1
  1826. package/lib/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +0 -1
  1827. package/lib/geometry3d/PolylineCompressionByEdgeOffset.js.map +0 -1
  1828. package/lib/geometry3d/PolylineOps.d.ts.map +0 -1
  1829. package/lib/geometry3d/PolylineOps.js.map +0 -1
  1830. package/lib/geometry3d/Range.d.ts.map +0 -1
  1831. package/lib/geometry3d/Range.js.map +0 -1
  1832. package/lib/geometry3d/Ray3d.d.ts.map +0 -1
  1833. package/lib/geometry3d/Ray3d.js.map +0 -1
  1834. package/lib/geometry3d/ReusableObjectCache.d.ts.map +0 -1
  1835. package/lib/geometry3d/ReusableObjectCache.js.map +0 -1
  1836. package/lib/geometry3d/Segment1d.d.ts.map +0 -1
  1837. package/lib/geometry3d/Segment1d.js.map +0 -1
  1838. package/lib/geometry3d/SortablePolygon.d.ts.map +0 -1
  1839. package/lib/geometry3d/SortablePolygon.js.map +0 -1
  1840. package/lib/geometry3d/Transform.d.ts.map +0 -1
  1841. package/lib/geometry3d/Transform.js.map +0 -1
  1842. package/lib/geometry3d/UVSurfaceOps.d.ts.map +0 -1
  1843. package/lib/geometry3d/UVSurfaceOps.js.map +0 -1
  1844. package/lib/geometry3d/XYZProps.d.ts.map +0 -1
  1845. package/lib/geometry3d/XYZProps.js.map +0 -1
  1846. package/lib/geometry3d/YawPitchRollAngles.d.ts.map +0 -1
  1847. package/lib/geometry3d/YawPitchRollAngles.js.map +0 -1
  1848. package/lib/geometry4d/Map4d.d.ts.map +0 -1
  1849. package/lib/geometry4d/Map4d.js.map +0 -1
  1850. package/lib/geometry4d/Matrix4d.d.ts.map +0 -1
  1851. package/lib/geometry4d/Matrix4d.js.map +0 -1
  1852. package/lib/geometry4d/MomentData.d.ts.map +0 -1
  1853. package/lib/geometry4d/MomentData.js.map +0 -1
  1854. package/lib/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +0 -1
  1855. package/lib/geometry4d/PlaneByOriginAndVectors4d.js.map +0 -1
  1856. package/lib/geometry4d/Point4d.d.ts.map +0 -1
  1857. package/lib/geometry4d/Point4d.js.map +0 -1
  1858. package/lib/numerics/BandedSystem.d.ts.map +0 -1
  1859. package/lib/numerics/BandedSystem.js.map +0 -1
  1860. package/lib/numerics/BezierPolynomials.d.ts.map +0 -1
  1861. package/lib/numerics/BezierPolynomials.js.map +0 -1
  1862. package/lib/numerics/ClusterableArray.d.ts.map +0 -1
  1863. package/lib/numerics/ClusterableArray.js.map +0 -1
  1864. package/lib/numerics/Complex.d.ts.map +0 -1
  1865. package/lib/numerics/Complex.js.map +0 -1
  1866. package/lib/numerics/ConvexPolygon2d.d.ts.map +0 -1
  1867. package/lib/numerics/ConvexPolygon2d.js.map +0 -1
  1868. package/lib/numerics/Newton.d.ts.map +0 -1
  1869. package/lib/numerics/Newton.js.map +0 -1
  1870. package/lib/numerics/PascalCoefficients.d.ts.map +0 -1
  1871. package/lib/numerics/PascalCoefficients.js.map +0 -1
  1872. package/lib/numerics/PolarData.d.ts.map +0 -1
  1873. package/lib/numerics/PolarData.js.map +0 -1
  1874. package/lib/numerics/Polynomials.d.ts.map +0 -1
  1875. package/lib/numerics/Polynomials.js.map +0 -1
  1876. package/lib/numerics/Quadrature.d.ts.map +0 -1
  1877. package/lib/numerics/Quadrature.js.map +0 -1
  1878. package/lib/numerics/Range1dArray.d.ts.map +0 -1
  1879. package/lib/numerics/Range1dArray.js.map +0 -1
  1880. package/lib/numerics/TriDiagonalSystem.d.ts.map +0 -1
  1881. package/lib/numerics/TriDiagonalSystem.js.map +0 -1
  1882. package/lib/numerics/UnionFind.d.ts.map +0 -1
  1883. package/lib/numerics/UnionFind.js.map +0 -1
  1884. package/lib/numerics/UsageSums.d.ts.map +0 -1
  1885. package/lib/numerics/UsageSums.js.map +0 -1
  1886. package/lib/polyface/AuxData.d.ts.map +0 -1
  1887. package/lib/polyface/AuxData.js.map +0 -1
  1888. package/lib/polyface/BoxTopology.d.ts.map +0 -1
  1889. package/lib/polyface/BoxTopology.js.map +0 -1
  1890. package/lib/polyface/FacetFaceData.d.ts.map +0 -1
  1891. package/lib/polyface/FacetFaceData.js.map +0 -1
  1892. package/lib/polyface/FacetOrientation.d.ts.map +0 -1
  1893. package/lib/polyface/FacetOrientation.js.map +0 -1
  1894. package/lib/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +0 -1
  1895. package/lib/polyface/GreedyTriangulationBetweenLineStrings.js.map +0 -1
  1896. package/lib/polyface/IndexedEdgeMatcher.d.ts.map +0 -1
  1897. package/lib/polyface/IndexedEdgeMatcher.js.map +0 -1
  1898. package/lib/polyface/IndexedPolyfaceVisitor.d.ts.map +0 -1
  1899. package/lib/polyface/IndexedPolyfaceVisitor.js.map +0 -1
  1900. package/lib/polyface/Polyface.d.ts.map +0 -1
  1901. package/lib/polyface/Polyface.js.map +0 -1
  1902. package/lib/polyface/PolyfaceBuilder.d.ts.map +0 -1
  1903. package/lib/polyface/PolyfaceBuilder.js.map +0 -1
  1904. package/lib/polyface/PolyfaceClip.d.ts.map +0 -1
  1905. package/lib/polyface/PolyfaceClip.js.map +0 -1
  1906. package/lib/polyface/PolyfaceData.d.ts +0 -170
  1907. package/lib/polyface/PolyfaceData.d.ts.map +0 -1
  1908. package/lib/polyface/PolyfaceData.js +0 -531
  1909. package/lib/polyface/PolyfaceData.js.map +0 -1
  1910. package/lib/polyface/PolyfaceQuery.d.ts.map +0 -1
  1911. package/lib/polyface/PolyfaceQuery.js.map +0 -1
  1912. package/lib/polyface/RangeLengthData.d.ts.map +0 -1
  1913. package/lib/polyface/RangeLengthData.js.map +0 -1
  1914. package/lib/polyface/TaggedNumericData.d.ts.map +0 -1
  1915. package/lib/polyface/TaggedNumericData.js.map +0 -1
  1916. package/lib/polyface/TriangleCandidate.d.ts.map +0 -1
  1917. package/lib/polyface/TriangleCandidate.js.map +0 -1
  1918. package/lib/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +0 -1
  1919. package/lib/polyface/multiclip/BuildAverageNormalsContext.js.map +0 -1
  1920. package/lib/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +0 -1
  1921. package/lib/polyface/multiclip/GriddedRaggedRange2dSet.js.map +0 -1
  1922. package/lib/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +0 -1
  1923. package/lib/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +0 -1
  1924. package/lib/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +0 -1
  1925. package/lib/polyface/multiclip/LinearSearchRange2dArray.js.map +0 -1
  1926. package/lib/polyface/multiclip/Range2dSearchInterface.d.ts.map +0 -1
  1927. package/lib/polyface/multiclip/Range2dSearchInterface.js.map +0 -1
  1928. package/lib/polyface/multiclip/RangeSearch.d.ts.map +0 -1
  1929. package/lib/polyface/multiclip/RangeSearch.js.map +0 -1
  1930. package/lib/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +0 -1
  1931. package/lib/polyface/multiclip/SweepLineStringToFacetContext.js.map +0 -1
  1932. package/lib/polyface/multiclip/XYPointBuckets.d.ts.map +0 -1
  1933. package/lib/polyface/multiclip/XYPointBuckets.js.map +0 -1
  1934. package/lib/serialization/BGFBAccessors.d.ts.map +0 -1
  1935. package/lib/serialization/BGFBAccessors.js.map +0 -1
  1936. package/lib/serialization/BGFBReader.d.ts.map +0 -1
  1937. package/lib/serialization/BGFBReader.js.map +0 -1
  1938. package/lib/serialization/BGFBWriter.d.ts.map +0 -1
  1939. package/lib/serialization/BGFBWriter.js.map +0 -1
  1940. package/lib/serialization/BentleyGeometryFlatBuffer.d.ts.map +0 -1
  1941. package/lib/serialization/BentleyGeometryFlatBuffer.js.map +0 -1
  1942. package/lib/serialization/DeepCompare.d.ts.map +0 -1
  1943. package/lib/serialization/DeepCompare.js.map +0 -1
  1944. package/lib/serialization/GeometrySamples.d.ts.map +0 -1
  1945. package/lib/serialization/GeometrySamples.js.map +0 -1
  1946. package/lib/serialization/IModelJsonSchema.d.ts.map +0 -1
  1947. package/lib/serialization/IModelJsonSchema.js.map +0 -1
  1948. package/lib/solid/Box.d.ts.map +0 -1
  1949. package/lib/solid/Box.js.map +0 -1
  1950. package/lib/solid/Cone.d.ts.map +0 -1
  1951. package/lib/solid/Cone.js.map +0 -1
  1952. package/lib/solid/LinearSweep.d.ts.map +0 -1
  1953. package/lib/solid/LinearSweep.js.map +0 -1
  1954. package/lib/solid/RotationalSweep.d.ts.map +0 -1
  1955. package/lib/solid/RotationalSweep.js.map +0 -1
  1956. package/lib/solid/RuledSweep.d.ts.map +0 -1
  1957. package/lib/solid/RuledSweep.js.map +0 -1
  1958. package/lib/solid/SolidPrimitive.d.ts.map +0 -1
  1959. package/lib/solid/SolidPrimitive.js.map +0 -1
  1960. package/lib/solid/Sphere.d.ts.map +0 -1
  1961. package/lib/solid/Sphere.js.map +0 -1
  1962. package/lib/solid/SweepContour.d.ts.map +0 -1
  1963. package/lib/solid/SweepContour.js.map +0 -1
  1964. package/lib/solid/TorusPipe.d.ts.map +0 -1
  1965. package/lib/solid/TorusPipe.js.map +0 -1
  1966. package/lib/topology/ChainMerge.d.ts.map +0 -1
  1967. package/lib/topology/ChainMerge.js.map +0 -1
  1968. package/lib/topology/Graph.d.ts.map +0 -1
  1969. package/lib/topology/Graph.js.map +0 -1
  1970. package/lib/topology/HalfEdgeGraphSearch.d.ts.map +0 -1
  1971. package/lib/topology/HalfEdgeGraphSearch.js.map +0 -1
  1972. package/lib/topology/HalfEdgeGraphSpineContext.d.ts.map +0 -1
  1973. package/lib/topology/HalfEdgeGraphSpineContext.js.map +0 -1
  1974. package/lib/topology/HalfEdgeGraphValidation.d.ts.map +0 -1
  1975. package/lib/topology/HalfEdgeGraphValidation.js.map +0 -1
  1976. package/lib/topology/HalfEdgeMarkSet.d.ts.map +0 -1
  1977. package/lib/topology/HalfEdgeMarkSet.js.map +0 -1
  1978. package/lib/topology/HalfEdgeNodeXYZUV.d.ts.map +0 -1
  1979. package/lib/topology/HalfEdgeNodeXYZUV.js.map +0 -1
  1980. package/lib/topology/HalfEdgePointInGraphSearch.d.ts.map +0 -1
  1981. package/lib/topology/HalfEdgePointInGraphSearch.js.map +0 -1
  1982. package/lib/topology/HalfEdgePositionDetail.d.ts.map +0 -1
  1983. package/lib/topology/HalfEdgePositionDetail.js.map +0 -1
  1984. package/lib/topology/HalfEdgePriorityQueue.d.ts.map +0 -1
  1985. package/lib/topology/HalfEdgePriorityQueue.js.map +0 -1
  1986. package/lib/topology/InsertAndRetriangulateContext.d.ts.map +0 -1
  1987. package/lib/topology/InsertAndRetriangulateContext.js.map +0 -1
  1988. package/lib/topology/MaskManager.d.ts.map +0 -1
  1989. package/lib/topology/MaskManager.js.map +0 -1
  1990. package/lib/topology/Merging.d.ts.map +0 -1
  1991. package/lib/topology/Merging.js.map +0 -1
  1992. package/lib/topology/RegularizeFace.d.ts.map +0 -1
  1993. package/lib/topology/RegularizeFace.js.map +0 -1
  1994. package/lib/topology/SignedDataSummary.d.ts.map +0 -1
  1995. package/lib/topology/SignedDataSummary.js.map +0 -1
  1996. package/lib/topology/Triangulation.d.ts.map +0 -1
  1997. package/lib/topology/Triangulation.js.map +0 -1
  1998. package/lib/topology/XYParitySearchContext.d.ts.map +0 -1
  1999. package/lib/topology/XYParitySearchContext.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"GrowableXYArray.js","sourceRoot":"","sources":["../../src/geometry3d/GrowableXYArray.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\r\n/** @packageDocumentation\r\n * @module ArraysAndInterfaces\r\n */\r\n\r\nimport { Geometry } from \"../Geometry\";\r\nimport { MultiLineStringDataVariant } from \"../topology/Triangulation\";\r\nimport { GrowableXYZArray } from \"./GrowableXYZArray\";\r\nimport { IndexedXYCollection } from \"./IndexedXYCollection\";\r\nimport { Matrix3d } from \"./Matrix3d\";\r\nimport { Point2d, Vector2d } from \"./Point2dVector2d\";\r\nimport { Point3d } from \"./Point3dVector3d\";\r\nimport { PointStreamGrowableXYZArrayCollector, VariantPointDataStream } from \"./PointStreaming\";\r\nimport { Range2d } from \"./Range\";\r\nimport { Transform } from \"./Transform\";\r\nimport { XAndY, XYAndZ } from \"./XYZProps\";\r\n\r\n/** `GrowableXYArray` manages a (possibly growing) Float64Array to pack xy coordinates.\r\n * @public\r\n */\r\nexport class GrowableXYArray extends IndexedXYCollection {\r\n /**\r\n * array of packed xyz xyz xyz components\r\n */\r\n private _data: Float64Array;\r\n /**\r\n * Number of xyz triples (not floats) in the array\r\n */\r\n private _xyInUse: number;\r\n /**\r\n * capacity in xyz triples. (not floats)\r\n */\r\n private _xyzCapacity: number;\r\n /** Construct a new GrowablePoint2d array.\r\n * @param numPoints [in] initial capacity.\r\n */\r\n public constructor(numPoints: number = 8) {\r\n super();\r\n this._data = new Float64Array(numPoints * 2); // 8 Points to start (2 values each)\r\n this._xyInUse = 0;\r\n this._xyzCapacity = numPoints;\r\n }\r\n\r\n /** The number of points in use. When the length is increased, the array is padded with zeroes. */\r\n public get length() { return this._xyInUse; }\r\n public set length(newLength: number) {\r\n let oldLength = this.length;\r\n if (newLength < oldLength) {\r\n this._xyInUse = newLength;\r\n } else if (newLength > oldLength) {\r\n this.ensureCapacity(newLength);\r\n while (oldLength++ < newLength)\r\n this.pushXY(0, 0);\r\n }\r\n }\r\n\r\n /** Return the number of float64 in use. */\r\n public get float64Length() { return this._xyInUse * 2; }\r\n /** Return the raw packed data.\r\n * * Note that the length of the returned Float64Array is a count of doubles, and includes the excess capacity\r\n */\r\n public float64Data(): Float64Array { return this._data; }\r\n\r\n /** If necessary, increase the capacity to a new pointCount. Current coordinates and point count (length) are unchanged. */\r\n public ensureCapacity(pointCapacity: number) {\r\n if (pointCapacity > this._xyzCapacity) {\r\n const newData = new Float64Array(pointCapacity * 2);\r\n const numCopy = this.length * 2;\r\n for (let i = 0; i < numCopy; i++) newData[i] = this._data[i];\r\n this._data = newData;\r\n this._xyzCapacity = pointCapacity;\r\n }\r\n }\r\n /** Resize the actual point count, preserving excess capacity. */\r\n public resize(pointCount: number) {\r\n if (pointCount < this.length) {\r\n this._xyInUse = pointCount >= 0 ? pointCount : 0;\r\n } else if (pointCount > this._xyzCapacity) {\r\n const newArray = new Float64Array(pointCount * 2);\r\n // Copy contents\r\n for (let i = 0; i < this._data.length; i += 2) {\r\n newArray[i] = this._data[i];\r\n newArray[i + 1] = this._data[i + 1];\r\n newArray[i + 2] = this._data[i + 2];\r\n }\r\n this._data = newArray;\r\n this._xyzCapacity = pointCount;\r\n this._xyInUse = pointCount;\r\n }\r\n }\r\n /**\r\n * Make a copy of the (active) points in this array.\r\n * (The clone does NOT get excess capacity)\r\n */\r\n public clone(): GrowableXYArray {\r\n const newPoints = new GrowableXYArray(this.length);\r\n const numValue = this.length * 2;\r\n const newData = newPoints._data;\r\n const data = this._data;\r\n for (let i = 0; i < numValue; i++) newData[i] = data[i];\r\n newPoints._xyInUse = this.length;\r\n return newPoints;\r\n }\r\n /** Create an array populated from\r\n * * An array of Point2d\r\n * * An array of Point3d (hidden as XAndY)\r\n * * An array of objects with keyed values, et `{x:1, y:1}`\r\n * * A `GrowableXYZArray`\r\n */\r\n public static create(data: XAndY[] | GrowableXYZArray): GrowableXYArray {\r\n const newPoints = new GrowableXYArray(data.length);\r\n if (data instanceof GrowableXYZArray) {\r\n newPoints.pushAllXYAndZ(data);\r\n } else {\r\n newPoints.pushAll(data);\r\n }\r\n return newPoints;\r\n }\r\n\r\n /** Restructure MultiLineStringDataVariant as array of GrowableXYZArray */\r\n public static createArrayOfGrowableXYZArray(data: MultiLineStringDataVariant): GrowableXYZArray[] | undefined {\r\n const collector = new PointStreamGrowableXYZArrayCollector();\r\n VariantPointDataStream.streamXYZ(data, collector);\r\n return collector.claimArrayOfGrowableXYZArray();\r\n }\r\n /** push a point to the end of the array */\r\n public push(toPush: XAndY) {\r\n this.pushXY(toPush.x, toPush.y);\r\n }\r\n\r\n /** push all points of an array */\r\n public pushAll(points: XAndY[]) {\r\n for (const p of points) this.push(p);\r\n }\r\n /** push all points of an array */\r\n public pushAllXYAndZ(points: XYAndZ[] | GrowableXYZArray) {\r\n if (points instanceof GrowableXYZArray) {\r\n const xyzBuffer = points.float64Data();\r\n const n = points.length * 3;\r\n for (let i = 0; i + 2 < n; i += 3) {\r\n this.pushXY(xyzBuffer[i], xyzBuffer[i + 1]);\r\n }\r\n } else {\r\n for (const p of points) this.pushXY(p.x, p.y);\r\n }\r\n }\r\n\r\n /**\r\n * Replicate numWrap xyz values from the front of the array as new values at the end.\r\n * @param numWrap number of xyz values to replicate\r\n */\r\n public pushWrap(numWrap: number) {\r\n if (this._xyInUse > 0) {\r\n let k;\r\n for (let i = 0; i < numWrap; i++) {\r\n k = 2 * i;\r\n this.pushXY(this._data[k], this._data[k + 1]);\r\n }\r\n }\r\n }\r\n /** push a point given by x,y coordinates */\r\n public pushXY(x: number, y: number) {\r\n const index = this._xyInUse * 2;\r\n if (index >= this._data.length)\r\n this.ensureCapacity(this.length === 0 ? 4 : this.length * 2);\r\n this._data[index] = x;\r\n this._data[index + 1] = y;\r\n this._xyInUse++;\r\n }\r\n\r\n /** Remove one point from the back.\r\n * * NOTE that (in the manner of std::vector native) this is \"just\" removing the point -- no point is NOT returned.\r\n * * Use `back ()` to get the last x,y,z assembled into a `Point3d `\r\n */\r\n public pop() {\r\n if (this._xyInUse > 0)\r\n this._xyInUse--;\r\n }\r\n /**\r\n * Test if index is valid for an xyz (point or vector) within this array\r\n * @param index xyz index to test.\r\n */\r\n public isIndexValid(index: number): boolean {\r\n if (index >= this._xyInUse || index < 0)\r\n return false;\r\n return true;\r\n }\r\n /**\r\n * Clear all xyz data, but leave capacity unchanged.\r\n */\r\n public clear() {\r\n this._xyInUse = 0;\r\n }\r\n /**\r\n * Get a point by index, strongly typed as a Point2d. This is unchecked. Use atPoint2dIndex to have validity test.\r\n * @param pointIndex index to access\r\n * @param result optional result\r\n */\r\n public getPoint2dAtUncheckedPointIndex(pointIndex: number, result?: Point2d): Point2d {\r\n const index = 2 * pointIndex;\r\n return Point2d.create(this._data[index], this._data[index + 1], result);\r\n }\r\n\r\n /**\r\n * Get x coordinate by point index, with no index checking\r\n * @param pointIndex index to access\r\n */\r\n public getXAtUncheckedPointIndex(pointIndex: number): number {\r\n return this._data[2 * pointIndex];\r\n }\r\n\r\n /**\r\n * Get y coordinate by index, with no index checking\r\n * @param pointIndex index to access\r\n */\r\n public getYAtUncheckedPointIndex(pointIndex: number): number {\r\n return this._data[2 * pointIndex + 1];\r\n }\r\n\r\n /**\r\n * Gather all points as a Point2d[]\r\n */\r\n public getPoint2dArray(): Point2d[] {\r\n const n = 2 * this._xyInUse;\r\n const result = [];\r\n const data = this._data;\r\n for (let i = 0; i < n; i += 2)\r\n result.push(Point2d.create(data[i], data[i + 1]));\r\n return result;\r\n }\r\n\r\n /** copy xyz into strongly typed Point2d */\r\n public getPoint2dAtCheckedPointIndex(pointIndex: number, result?: Point2d): Point2d | undefined {\r\n const index = 2 * pointIndex;\r\n if (this.isIndexValid(pointIndex)) {\r\n return Point2d.create(this._data[index], this._data[index + 1], result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** copy xyz into strongly typed Vector2d */\r\n public getVector2dAtCheckedVectorIndex(vectorIndex: number, result?: Vector2d): Vector2d | undefined {\r\n const index = 2 * vectorIndex;\r\n if (this.isIndexValid(vectorIndex)) {\r\n return Vector2d.create(this._data[index], this._data[index + 1], result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Read coordinates from source array, place them at index within this array.\r\n * @param destIndex point index where coordinates are to be placed in this array\r\n * @param source source array\r\n * @param sourceIndex point index in source array\r\n * @returns true if destIndex and sourceIndex are both valid.\r\n */\r\n public transferFromGrowableXYArray(destIndex: number, source: GrowableXYArray, sourceIndex: number): boolean {\r\n if (this.isIndexValid(destIndex) && source.isIndexValid(sourceIndex)) {\r\n const i = destIndex * 2;\r\n const j = sourceIndex * 2;\r\n this._data[i] = source._data[j];\r\n this._data[i + 1] = source._data[j + 1];\r\n this._data[i + 2] = source._data[j + 2];\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * push coordinates from the source array to the end of this array.\r\n * @param source source array\r\n * @param sourceIndex xyz index within the source. If undefined, push entire contents of source\r\n * @returns true if sourceIndex is valid.\r\n */\r\n public pushFromGrowableXYArray(source: GrowableXYArray, sourceIndex?: number): number {\r\n if (sourceIndex === undefined) {\r\n const numPresent = this.length;\r\n const numPush = source.length;\r\n this.ensureCapacity(numPresent + numPush);\r\n const numFloatPresent = 2 * numPresent;\r\n const numFloatAdd = 2 * numPush;\r\n for (let i = 0; i < numFloatAdd; i++)\r\n this._data[numFloatPresent + i] = source._data[i];\r\n this._xyInUse += numPush;\r\n return numPush;\r\n }\r\n if (source.isIndexValid(sourceIndex)) {\r\n const j = sourceIndex * 2;\r\n this.pushXY(source._data[j], source._data[j + 1]);\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n\r\n /**\r\n * * Compute a point at fractional coordinate between points i and j of source\r\n * * push onto this array.\r\n */\r\n public pushInterpolatedFromGrowableXYArray(source: GrowableXYArray, i: number, fraction: number, j: number) {\r\n if (source.isIndexValid(i) && source.isIndexValid(j)) {\r\n const data = source._data;\r\n i = 3 * i;\r\n j = 3 * j;\r\n this.pushXY(Geometry.interpolate(data[i], fraction, data[j]),\r\n Geometry.interpolate(data[i + 1], fraction, data[j + 1]));\r\n }\r\n }\r\n\r\n /**\r\n * push coordinates from the source array to the end of this array.\r\n * @param source source array\r\n * @param transform optional transform to apply to points.\r\n * @param dest optional result.\r\n */\r\n public static createFromGrowableXYZArray(source: GrowableXYZArray, transform?: Transform, dest?: GrowableXYArray) {\r\n const packedXYZ = source.float64Data();\r\n const numXYZ = source.length; // this is in xyz points\r\n const nDouble = 3 * numXYZ;\r\n if (!dest)\r\n dest = new GrowableXYArray(numXYZ);\r\n dest.clear();\r\n let x;\r\n let y;\r\n let z;\r\n if (transform) {\r\n for (let i = 0; i < nDouble; i += 3) {\r\n x = packedXYZ[i];\r\n y = packedXYZ[i + 1];\r\n z = packedXYZ[i + 2];\r\n dest.pushXY(transform.multiplyComponentXYZ(0, x, y, z), transform.multiplyComponentXYZ(1, x, y, z));\r\n }\r\n } else {\r\n for (let i = 0; i < nDouble; i += 3) {\r\n x = packedXYZ[i];\r\n y = packedXYZ[i + 1];\r\n dest.pushXY(x, y);\r\n }\r\n }\r\n return dest;\r\n }\r\n /**\r\n * Return the first point, or undefined if the array is empty.\r\n */\r\n public front(result?: Point2d): Point2d | undefined {\r\n if (this._xyInUse === 0) return undefined;\r\n return this.getPoint2dAtUncheckedPointIndex(0, result);\r\n }\r\n /**\r\n * Return the last point, or undefined if the array is empty.\r\n */\r\n public back(result?: Point2d): Point2d | undefined {\r\n if (this._xyInUse < 1) return undefined;\r\n return this.getPoint2dAtUncheckedPointIndex(this._xyInUse - 1, result);\r\n }\r\n /**\r\n * Set the coordinates of a single point.\r\n * @param pointIndex index of point to set\r\n * @param value coordinates to set\r\n */\r\n public setAtCheckedPointIndex(pointIndex: number, value: XAndY): boolean {\r\n if (!this.isIndexValid(pointIndex))\r\n return false;\r\n const index = pointIndex * 2;\r\n this._data[index] = value.x;\r\n this._data[index + 1] = value.y;\r\n return true;\r\n }\r\n /**\r\n * Set the coordinates of a single point given as coordinates.\r\n * @param pointIndex index of point to set\r\n * @param x x coordinate\r\n * @param y y coordinate\r\n */\r\n public setXYZAtCheckedPointIndex(pointIndex: number, x: number, y: number): boolean {\r\n if (!this.isIndexValid(pointIndex))\r\n return false;\r\n const index = pointIndex * 2;\r\n this._data[index] = x;\r\n this._data[index + 1] = y;\r\n return true;\r\n }\r\n\r\n /**\r\n * Copy all points into a simple array of Point3D with given z.\r\n */\r\n public getPoint3dArray(z: number = 0): Point3d[] {\r\n const result = [];\r\n const data = this._data;\r\n const n = this.length;\r\n for (let i = 0; i < n; i++) {\r\n result.push(Point3d.create(data[i * 2], data[i * 2 + 1], z));\r\n }\r\n return result;\r\n }\r\n /** reverse the order of points. */\r\n public reverseInPlace() {\r\n const n = this.length;\r\n let j0, j1;\r\n let a;\r\n const data = this._data;\r\n for (let i0 = 0, i1 = n - 1; i0 < i1; i0++, i1--) {\r\n j0 = 2 * i0;\r\n j1 = 2 * i1;\r\n a = data[j0]; data[j0] = data[j1]; data[j1] = a;\r\n j0++;\r\n j1++;\r\n a = data[j0]; data[j0] = data[j1]; data[j1] = a;\r\n }\r\n }\r\n\r\n /** multiply each point by the transform, replace values. */\r\n public multiplyTransformInPlace(transform: Transform) {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const coffs = transform.matrix.coffs;\r\n const origin = transform.origin;\r\n const x0 = origin.x;\r\n const y0 = origin.y;\r\n let x = 0;\r\n let y = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 2) {\r\n x = data[i];\r\n y = data[i + 1];\r\n data[i] = coffs[0] * x + coffs[1] * y + x0;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y + y0;\r\n }\r\n }\r\n\r\n /** multiply each xyz (as a vector) by matrix, replace values. */\r\n public multiplyMatrix3dInPlace(matrix: Matrix3d) {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const coffs = matrix.coffs;\r\n let x = 0;\r\n let y = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 2) {\r\n x = data[i];\r\n y = data[i + 1];\r\n data[i] = coffs[0] * x + coffs[1] * y;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y;\r\n }\r\n }\r\n\r\n /** multiply each point by the transform, replace values. */\r\n public tryTransformInverseInPlace(transform: Transform): boolean {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const matrix = transform.matrix;\r\n matrix.computeCachedInverse(true);\r\n const coffs = matrix.inverseCoffs;\r\n if (!coffs)\r\n return false;\r\n const origin = transform.origin;\r\n const x0 = origin.x;\r\n const y0 = origin.y;\r\n let x = 0;\r\n let y = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 2) {\r\n x = data[i] - x0;\r\n y = data[i + 1] - y0;\r\n data[i] = coffs[0] * x + coffs[1] * y;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y;\r\n data[i + 2] = coffs[6] * x + coffs[7] * y;\r\n }\r\n return true;\r\n }\r\n /** Extend a `Range2d`, optionally transforming the points. */\r\n public extendRange(rangeToExtend: Range2d, transform?: Transform) {\r\n const numDouble = this.float64Length;\r\n const data = this._data;\r\n if (transform) {\r\n for (let i = 0; i + 2 <= numDouble; i += 2)\r\n rangeToExtend.extendTransformedXY(transform, data[i], data[i + 1]);\r\n } else {\r\n for (let i = 0; i + 2 <= numDouble; i += 2)\r\n rangeToExtend.extendXY(data[i], data[i + 1]);\r\n\r\n }\r\n }\r\n /** sum the lengths of segments between points. */\r\n public sumLengths(): number {\r\n let sum = 0.0;\r\n const n = 2 * (this._xyInUse - 1); // Length already takes into account what specifically is in use\r\n const data = this._data;\r\n for (let i = 0; i < n; i += 2) sum += Geometry.hypotenuseXY(\r\n data[i + 2] - data[i],\r\n data[i + 3] - data[i + 1]);\r\n return sum;\r\n }\r\n /**\r\n * Multiply each x,y,z by the scale factor.\r\n * @param factor\r\n */\r\n public scaleInPlace(factor: number) {\r\n if (this._data) {\r\n const numFloat = this.float64Length;\r\n for (let i = 0; i < numFloat; i++)\r\n this._data[i] = this._data[i] * factor;\r\n }\r\n }\r\n /** Compute a point at fractional coordinate between points i and j */\r\n public interpolate(i: number, fraction: number, j: number, result?: Point2d): Point2d | undefined {\r\n if (this.isIndexValid(i) && this.isIndexValid(j)) {\r\n const fraction0 = 1.0 - fraction;\r\n const data = this._data;\r\n i = 2 * i;\r\n j = 2 * j;\r\n return Point2d.create(\r\n fraction0 * data[i] + fraction * data[j],\r\n fraction0 * data[i + 1] + fraction * data[j + 1], result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Sum the signed areas of the projection to xy plane */\r\n public areaXY(): number {\r\n let area = 0.0;\r\n const n = 2 * this._xyInUse; // float count !!\r\n if (n > 4) {\r\n const x0 = this._data[n - 2];\r\n const y0 = this._data[n - 1];\r\n let dx1 = this._data[0] - x0;\r\n let dy1 = this._data[1] - y0;\r\n let dx2 = 0;\r\n let dy2 = 0;\r\n for (let i = 2; i < n; i += 2, dx1 = dx2, dy1 = dy2) {\r\n dx2 = this._data[i] - x0;\r\n dy2 = this._data[i + 1] - y0;\r\n area += Geometry.crossProductXYXY(dx1, dy1, dx2, dy2);\r\n }\r\n }\r\n return 0.5 * area;\r\n }\r\n\r\n /** Compute a vector from index origin i to indexed target j */\r\n public vectorIndexIndex(i: number, j: number, result?: Vector2d): Vector2d | undefined {\r\n if (!this.isIndexValid(i) || !this.isIndexValid(j))\r\n return undefined;\r\n const data = this._data;\r\n i = 2 * i;\r\n j = 2 * j;\r\n return Vector2d.create(data[j] - data[i], data[j + 1] - data[i + 1], result);\r\n }\r\n\r\n /** Compute a vector from origin to indexed target j */\r\n public vectorXAndYIndex(origin: XAndY, j: number, result?: Vector2d): Vector2d | undefined {\r\n if (this.isIndexValid(j)) {\r\n const data = this._data;\r\n j = 2 * j;\r\n return Vector2d.create(\r\n data[j] - origin.x,\r\n data[j + 1] - origin.y, result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Compute the cross product of vectors from from indexed origin to indexed targets i and j */\r\n public crossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number): number | undefined {\r\n const i = originIndex * 2;\r\n const j = targetAIndex * 2;\r\n const k = targetBIndex * 2;\r\n const data = this._data;\r\n if (this.isIndexValid(originIndex) && this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex))\r\n return Geometry.crossProductXYXY(\r\n data[j] - data[i], data[j + 1] - data[i + 1],\r\n data[k] - data[i], data[k + 1] - data[i + 1]);\r\n return undefined;\r\n }\r\n\r\n /** Compute the cross product of vectors from from origin to indexed targets i and j */\r\n public crossProductXAndYIndexIndex(origin: XAndY, targetAIndex: number, targetBIndex: number): number | undefined {\r\n const j = targetAIndex * 2;\r\n const k = targetBIndex * 2;\r\n const data = this._data;\r\n if (this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex))\r\n return Geometry.crossProductXYXY(\r\n data[j] - origin.x, data[j + 1] - origin.y,\r\n data[k] - origin.x, data[k + 1] - origin.y);\r\n return undefined;\r\n }\r\n\r\n /** Return the distance between two points in the array. */\r\n public distance(i: number, j: number): number | undefined {\r\n if (this.isIndexValid(i) && this.isIndexValid(j)) {\r\n const i0 = 2 * i;\r\n const j0 = 2 * j;\r\n return Geometry.hypotenuseXY(\r\n this._data[j0] - this._data[i0],\r\n this._data[j0 + 1] - this._data[i0 + 1]);\r\n }\r\n return undefined;\r\n }\r\n /** Return the distance between an array point and the input point. */\r\n public distanceIndexToPoint(i: number, spacePoint: Point2d): number | undefined {\r\n if (this.isIndexValid(i)) {\r\n const i0 = 2 * i;\r\n return Geometry.hypotenuseXY(\r\n spacePoint.x - this._data[i0],\r\n spacePoint.y - this._data[i0 + 1]);\r\n }\r\n return undefined;\r\n }\r\n /** Test for nearly equal arrays. */\r\n public static isAlmostEqual(dataA: GrowableXYArray | undefined, dataB: GrowableXYArray | undefined): boolean {\r\n if (dataA && dataB) {\r\n if (dataA.length !== dataB.length)\r\n return false;\r\n for (let i = 0; i < dataA.length; i++)\r\n if (!dataA.getPoint2dAtUncheckedPointIndex(i).isAlmostEqual(dataB.getPoint2dAtUncheckedPointIndex(i)))\r\n return false;\r\n return true;\r\n }\r\n // if both are null it is equal, otherwise unequal\r\n return (!dataA && !dataB);\r\n }\r\n\r\n /** Return an array of block indices sorted per compareLexicalBlock function */\r\n public sortIndicesLexical(): Uint32Array {\r\n const n = this._xyInUse;\r\n // let numCompare = 0;\r\n const result = new Uint32Array(n);\r\n for (let i = 0; i < n; i++)result[i] = i;\r\n result.sort(\r\n (blockIndexA: number, blockIndexB: number) => {\r\n // numCompare++;\r\n return this.compareLexicalBlock(blockIndexA, blockIndexB);\r\n });\r\n // console.log (n, numCompare);\r\n return result;\r\n }\r\n\r\n /** compare two blocks in simple lexical order. */\r\n public compareLexicalBlock(ia: number, ib: number): number {\r\n let ax = 0;\r\n let bx = 0;\r\n for (let i = 0; i < 2; i++) {\r\n ax = this._data[ia * 2 + i];\r\n bx = this._data[ib * 2 + i];\r\n if (ax > bx) return 1;\r\n if (ax < bx) return -1;\r\n }\r\n return ia - ib; // so original order is maintained among duplicates !!!!\r\n }\r\n\r\n /** Access a single double at offset within a block. This has no index checking. */\r\n public component(pointIndex: number, componentIndex: number): number {\r\n return this._data[2 * pointIndex + componentIndex];\r\n }\r\n /** Toleranced equality test */\r\n public isAlmostEqual(other: GrowableXYArray, tolerance: number = Geometry.smallMetricDistance): boolean {\r\n const numXY = this._xyInUse;\r\n if (other._xyInUse !== numXY)\r\n return false;\r\n const dataA = this._data;\r\n const dataB = other._data;\r\n for (let i = 0; i < 2 * numXY; i++) {\r\n if (Math.abs(dataA[i] - dataB[i]) > tolerance)\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"GrowableXYZArray.d.ts","sourceRoot":"","sources":["../../src/geometry3d/GrowableXYZArray.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAY,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAwB,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,6BAA6B;IACjE;;OAEG;IACH,OAAO,CAAC,KAAK,CAAe;IAC5B;;OAEG;IACH,OAAO,CAAC,SAAS,CAAS;IAC1B;;OAEG;IACH,OAAO,CAAC,YAAY,CAAS;IAC7B;;OAEG;gBACgB,SAAS,GAAE,MAAU;IAOxC,kGAAkG;IAClG,IAAW,MAAM,IACY,MAAM,CADW;IAC9C,IAAW,MAAM,CAAC,SAAS,EAAE,MAAM,EASlC;IAED,2CAA2C;IAC3C,IAAW,aAAa,WAAiC;IACzD;;OAEG;IACI,WAAW,IAAI,YAAY;IAElC,4HAA4H;IACrH,cAAc,CAAC,aAAa,EAAE,MAAM;IAS3C,iEAAiE;IAC1D,MAAM,CAAC,UAAU,EAAE,MAAM;IAgBhC;;;OAGG;IACI,KAAK,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB;IAczD;;;;;;;;;;;;;OAaG;WACW,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,gBAAgB;IAY5E,2CAA2C;IACpC,IAAI,CAAC,MAAM,EAAE,MAAM;IAI1B,kCAAkC;IAC3B,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;IAGhC;;;;;;;;;;;;OAYG;IACI,QAAQ,CAAC,CAAC,EAAE,GAAG;IAgCtB;;;OAGG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM;IAS/B,0CAA0C;IACnC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAS9C;;;MAGE;IACF,OAAO,CAAC,YAAY;IAapB;;OAEG;IACI,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAMnD;;OAEG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM;IAI/B;;OAEG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAS1D;;;OAGG;IACI,GAAG;IAIV;;;OAGG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAK3C;;OAEG;IACI,KAAK;IAGZ;;;;OAIG;IACI,+BAA+B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAKrF;;;;OAIG;IACI,+BAA+B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAKrF,2CAA2C;IACpC,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAY/F,gCAAgC;IACzB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAK5D,gCAAgC;IACzB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAK5D,gCAAgC;IACzB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAK5D,0CAA0C;IACnC,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAU/F,4CAA4C;IACrC,+BAA+B,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAYpG;;;;;;OAMG;IACI,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAY9G;;;;;OAKG;IACI,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM;IAqBvF;;OAEG;IACI,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAInD;;OAEG;IACI,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAIlD;;;;OAIG;IACI,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IASzE;;;;;;OAMG;IACI,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAU9F;;OAEG;IACI,eAAe,IAAI,OAAO,EAAE;IASjC,4DAA4D;WAChD,wBAAwB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,gBAAgB;IASxG,4DAA4D;IACrD,wBAAwB,CAAC,SAAS,EAAE,SAAS;IAqBpD,mCAAmC;IAC5B,cAAc;IAkBrB,iEAAiE;IAC1D,uBAAuB,CAAC,MAAM,EAAE,QAAQ;IAiB/C;;;;OAIG;IACI,qDAAqD,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAyCvF;;OAEG;IACI,2CAA2C,CAAC,MAAM,EAAE,QAAQ;IAYnE,4DAA4D;IACrD,0BAA0B,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO;IAyBhE,8CAA8C;IACvC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS;IAYhE,2BAA2B;IACX,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO;IAMxD,yDAAyD;IAClD,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS;IAKrD,kDAAkD;IAC3C,UAAU,IAAI,MAAM;IAU3B;;;OAGG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM;IAOlC,0DAA0D;IACnD,cAAc,CAAC,KAAK,EAAE,4BAA4B,EAAE,SAAS,GAAE,MAAqC,GAAG,OAAO;IAQrH;;;;OAIG;IACI,YAAY,CAAC,SAAS,GAAE,MAAqC;IAepE,sEAAsE;IAC/D,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAcjG;;;OAGG;IACI,oCAAoC,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAa5G,yDAAyD;IAClD,MAAM,IAAI,MAAM;IAmBvB,gEAAgE;IACzD,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAatF,uDAAuD;IAChD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAY5F,+FAA+F;IACxF,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAa5I,yDAAyD;IAClD,mCAAmC,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAKvG,yDAAyD;IAClD,mCAAmC,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,GAAG,MAAM;IAMrG;;;OAGG;IACI,qCAAqC,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAarI;;;OAGG;IACI,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAU5E,uFAAuF;IAChF,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAYxI,sEAAsE;IAC/D,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAW9E;;;;;;;OAOG;IACI,yBAAyB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAW1E;;;;;;OAMG;IACI,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAWnE,6DAA6D;WAC/C,8BAA8B,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAY1I,6DAA6D;WAC/C,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS,EAAE,KAAK,EAAE,gBAAgB,GAAG,SAAS,GAAG,OAAO;IAa9G,+EAA+E;IACxE,kBAAkB,IAAI,WAAW;IAcxC,kDAAkD;IAC3C,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAY1D,oFAAoF;IAC7E,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM;IAGpE;;;;;;OAMG;IACI,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAYlG;;;;OAIG;WACW,uCAAuC,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO;IAclH;;;;OAIG;WACW,aAAa,CAAC,MAAM,EAAE,6BAA6B,EAAE,SAAS,GAAE,MAAqC;IAInH;;;;;;OAMG;IACI,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS;IAuB3I;;;;OAIG;IACI,YAAY,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM;CAQjG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"GrowableXYZArray.js","sourceRoot":"","sources":["../../src/geometry3d/GrowableXYZArray.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\r\n/** @packageDocumentation\r\n * @module ArraysAndInterfaces\r\n */\r\n\r\nimport { Geometry, PlaneAltitudeEvaluator } from \"../Geometry\";\r\nimport { Matrix4d } from \"../geometry4d/Matrix4d\";\r\nimport { IndexedReadWriteXYZCollection, IndexedXYZCollection } from \"./IndexedXYZCollection\";\r\nimport { Matrix3d } from \"./Matrix3d\";\r\nimport { Plane3dByOriginAndUnitNormal } from \"./Plane3dByOriginAndUnitNormal\";\r\nimport { Point2d } from \"./Point2dVector2d\";\r\nimport { Point3d, Vector3d } from \"./Point3dVector3d\";\r\nimport { Range1d, Range3d } from \"./Range\";\r\nimport { Transform } from \"./Transform\";\r\nimport { XYAndZ } from \"./XYZProps\";\r\n\r\n/** `GrowableXYArray` manages a (possibly growing) Float64Array to pack xy coordinates.\r\n * @public\r\n */\r\nexport class GrowableXYZArray extends IndexedReadWriteXYZCollection {\r\n /**\r\n * array of packed xyz xyz xyz components\r\n */\r\n private _data: Float64Array;\r\n /**\r\n * Number of xyz triples (not floats) in the array\r\n */\r\n private _xyzInUse: number;\r\n /**\r\n * capacity in xyz triples. (not floats)\r\n */\r\n private _xyzCapacity: number;\r\n /** Construct a new GrowablePoint3d array.\r\n * @param numPoints [in] initial capacity.\r\n */\r\n public constructor(numPoints: number = 8) {\r\n super();\r\n this._data = new Float64Array(numPoints * 3); // 8 Points to start (3 values each)\r\n this._xyzInUse = 0;\r\n this._xyzCapacity = numPoints;\r\n }\r\n\r\n /** The number of points in use. When the length is increased, the array is padded with zeroes. */\r\n public get length() { return this._xyzInUse; }\r\n public set length(newLength: number) {\r\n let oldLength = this.length;\r\n if (newLength < oldLength) {\r\n this._xyzInUse = newLength;\r\n } else if (newLength > oldLength) {\r\n this.ensureCapacity(newLength);\r\n while (oldLength++ < newLength)\r\n this.pushXYZ(0, 0, 0);\r\n }\r\n }\r\n\r\n /** Return the number of float64 in use. */\r\n public get float64Length() { return this._xyzInUse * 3; }\r\n /** Return the raw packed data.\r\n * * Note that the length of the returned Float64Array is a count of doubles, and includes the excess capacity\r\n */\r\n public float64Data(): Float64Array { return this._data; }\r\n\r\n /** If necessary, increase the capacity to a new pointCount. Current coordinates and point count (length) are unchanged. */\r\n public ensureCapacity(pointCapacity: number) {\r\n if (pointCapacity > this._xyzCapacity) {\r\n const newData = new Float64Array(pointCapacity * 3);\r\n const numCopy = this.length * 3;\r\n for (let i = 0; i < numCopy; i++) newData[i] = this._data[i];\r\n this._data = newData;\r\n this._xyzCapacity = pointCapacity;\r\n }\r\n }\r\n /** Resize the actual point count, preserving excess capacity. */\r\n public resize(pointCount: number) {\r\n if (pointCount < this.length) {\r\n this._xyzInUse = pointCount >= 0 ? pointCount : 0;\r\n } else if (pointCount > this._xyzCapacity) {\r\n const newArray = new Float64Array(pointCount * 3);\r\n // Copy contents\r\n for (let i = 0; i < this._data.length; i += 3) {\r\n newArray[i] = this._data[i];\r\n newArray[i + 1] = this._data[i + 1];\r\n newArray[i + 2] = this._data[i + 2];\r\n }\r\n this._data = newArray;\r\n this._xyzCapacity = pointCount;\r\n this._xyzInUse = pointCount;\r\n }\r\n }\r\n /**\r\n * Make a copy of the (active) points in this array.\r\n * (The clone does NOT get excess capacity)\r\n */\r\n public clone(result?: GrowableXYZArray): GrowableXYZArray {\r\n const numValue = this.length * 3;\r\n if (!result)\r\n result = new GrowableXYZArray(this.length);\r\n else {\r\n result.clear();\r\n result.ensureCapacity(this.length);\r\n }\r\n const newData = result._data;\r\n const data = this._data;\r\n for (let i = 0; i < numValue; i++) newData[i] = data[i];\r\n result._xyzInUse = this.length;\r\n return result;\r\n }\r\n /** Create an array from various point data formats.\r\n * Valid inputs are:\r\n * * Point2d\r\n * * point3d\r\n * * An array of 2 doubles\r\n * * An array of 3 doubles\r\n * * A GrowableXYZArray\r\n * * Any json object satisfying Point3d.isXYAndZ\r\n * * Any json object satisfying Point3d.isXAndY\r\n * * A Float64Array of doubles, interpreted as xyzxyz\r\n * * An array of any of the above\r\n * @param data source points.\r\n * @param result optional pre-allocated GrowableXYZArray to clear and fill.\r\n */\r\n public static create(data: any, result?: GrowableXYZArray): GrowableXYZArray {\r\n if (result) {\r\n result.clear();\r\n } else {\r\n const pointCount = typeof data[0] === \"number\" ? data.length / 3 : data.length;\r\n result = new GrowableXYZArray(pointCount);\r\n }\r\n\r\n result.pushFrom(data);\r\n return result;\r\n }\r\n\r\n /** push a point to the end of the array */\r\n public push(toPush: XYAndZ) {\r\n this.pushXYZ(toPush.x, toPush.y, toPush.z);\r\n }\r\n\r\n /** push all points of an array */\r\n public pushAll(points: Point3d[]) {\r\n for (const p of points) this.push(p);\r\n }\r\n /** Push points from variant sources.\r\n * Valid inputs are:\r\n * * Point2d\r\n * * point3d\r\n * * An array of 2 doubles\r\n * * An array of 3 doubles\r\n * * A GrowableXYZArray\r\n * * Any json object satisfying Point3d.isXYAndZ\r\n * * Any json object satisfying Point3d.isXAndY\r\n * * A Float64Array of doubles, interpreted as xyzxyz\r\n * * An array of any of the above\r\n * @returns the number of points added.\r\n */\r\n public pushFrom(p: any) {\r\n if (p instanceof Point3d)\r\n this.pushXYZ(p.x, p.y, p.z);\r\n else if (p instanceof GrowableXYZArray)\r\n this.pushFromGrowableXYZArray(p);\r\n else if (p instanceof Point2d)\r\n this.pushXYZ(p.x, p.y, 0.0);\r\n else if (Geometry.isNumberArray(p, 4)) {\r\n const n = p.length;\r\n for (let i = 0; i + 2 < n; i += 3)\r\n this.pushXYZ(p[i], p[i + 1], p[i + 2]);\r\n } else if (Geometry.isNumberArray(p, 3))\r\n this.pushXYZ(p[0], p[1], p[2]);\r\n else if (Geometry.isNumberArray(p, 2))\r\n this.pushXYZ(p[0], p[1], 0.0);\r\n else if (Array.isArray(p)) {\r\n // direct recursion re-wraps p and goes infinite. unroll here .\r\n for (const q of p)\r\n this.pushFrom(q);\r\n } else if (Point3d.isXYAndZ(p))\r\n this.pushXYZ(p.x, p.y, p.z);\r\n else if (Point3d.isXAndY(p))\r\n this.pushXYZ(p.x, p.y, 0.0);\r\n else if (p instanceof Float64Array) {\r\n const n = p.length;\r\n for (let i = 0; i + 2 < n; i += 3)\r\n this.pushXYZ(p[i], p[i + 1], p[i + 2]);\r\n } else if (p instanceof IndexedXYZCollection) {\r\n for (let i = 0; i < p.length; i++)\r\n this.pushXYZ(p.getXAtUncheckedPointIndex(i), p.getYAtUncheckedPointIndex(i), p.getZAtUncheckedPointIndex(i));\r\n }\r\n }\r\n /**\r\n * Replicate numWrap xyz values from the front of the array as new values at the end.\r\n * @param numWrap number of xyz values to replicate\r\n */\r\n public pushWrap(numWrap: number) {\r\n if (this._xyzInUse > 0) {\r\n let k;\r\n for (let i = 0; i < numWrap; i++) {\r\n k = 3 * i;\r\n this.pushXYZ(this._data[k], this._data[k + 1], this._data[k + 2]);\r\n }\r\n }\r\n }\r\n /** append a new point with given x,y,z */\r\n public pushXYZ(x: number, y: number, z: number) {\r\n const index = this._xyzInUse * 3;\r\n if (index >= this._data.length)\r\n this.ensureCapacity(this.length === 0 ? 4 : this.length * 2);\r\n this._data[index] = x;\r\n this._data[index + 1] = y;\r\n this._data[index + 2] = z;\r\n this._xyzInUse++;\r\n }\r\n /** Shift all data forward to make space for numPoints at the front.\r\n * * Leading (3*numPoints) doubles are left with prior contents.\r\n * * _xyzInUse count is increased\r\n */\r\n private shiftForward(numPoints: number) {\r\n if (numPoints <= 0)\r\n return;\r\n let newCapacity = this.length + numPoints; // in POINTS\r\n if (newCapacity > this._xyzCapacity) {\r\n newCapacity = Math.max(4, 2 * this._xyzCapacity);\r\n this.ensureCapacity(newCapacity);\r\n }\r\n const numAddedDouble = 3 * numPoints;\r\n const lastIndex = this._xyzInUse * 3;\r\n this._data.copyWithin(numAddedDouble, 0, lastIndex);\r\n this._xyzInUse += numPoints;\r\n }\r\n /** prepend a new point with given x,y,z\r\n * * Remark: this copies all content forward.\r\n */\r\n public pushFrontXYZ(x: number, y: number, z: number) {\r\n this.shiftForward(1);\r\n this._data[0] = x;\r\n this._data[1] = y;\r\n this._data[2] = z;\r\n }\r\n /** prepend a new point at the front of the array.\r\n *\r\n */\r\n public pushFront(toPush: XYAndZ) {\r\n this.pushFrontXYZ(toPush.x, toPush.y, toPush.z);\r\n }\r\n\r\n /** move the coordinates at fromIndex to toIndex.\r\n * * No action if either index is invalid.\r\n */\r\n public moveIndexToIndex(fromIndex: number, toIndex: number) {\r\n if (this.isIndexValid(fromIndex) && this.isIndexValid(toIndex)) {\r\n let iA = fromIndex * 3;\r\n let iB = toIndex * 3;\r\n this._data[iB++] = this._data[iA++];\r\n this._data[iB++] = this._data[iA++];\r\n this._data[iB] = this._data[iA];\r\n }\r\n }\r\n /** Remove one point from the back.\r\n * * NOTE that (in the manner of std::vector native) this is \"just\" removing the point -- no point is NOT returned.\r\n * * Use `back ()` to get the last x,y,z assembled into a `Point3d `\r\n */\r\n public pop() {\r\n if (this._xyzInUse > 0)\r\n this._xyzInUse--;\r\n }\r\n /**\r\n * Test if index is valid for an xyz (point or vector) within this array\r\n * @param index xyz index to test.\r\n */\r\n public isIndexValid(index: number): boolean {\r\n if (index >= this._xyzInUse || index < 0)\r\n return false;\r\n return true;\r\n }\r\n /**\r\n * Clear all xyz data, but leave capacity unchanged.\r\n */\r\n public clear() {\r\n this._xyzInUse = 0;\r\n }\r\n /**\r\n * Get a point by index, strongly typed as a Point3d. This is unchecked. Use getPoint3dAtCheckedPointIndex to have validity test.\r\n * @param pointIndex index to access\r\n * @param result optional result\r\n */\r\n public getPoint3dAtUncheckedPointIndex(pointIndex: number, result?: Point3d): Point3d {\r\n const index = 3 * pointIndex;\r\n return Point3d.create(this._data[index], this._data[index + 1], this._data[index + 2], result);\r\n }\r\n\r\n /**\r\n * Get a point by index, strongly typed as a Point2d. This is unchecked. Use getPoint2dAtCheckedPointIndex to have validity test.\r\n * @param pointIndex index to access\r\n * @param result optional result\r\n */\r\n public getPoint2dAtUncheckedPointIndex(pointIndex: number, result?: Point2d): Point2d {\r\n const index = 3 * pointIndex;\r\n return Point2d.create(this._data[index], this._data[index + 1], result);\r\n }\r\n\r\n /** copy xyz into strongly typed Point3d */\r\n public getPoint3dAtCheckedPointIndex(pointIndex: number, result?: Point3d): Point3d | undefined {\r\n const index = 3 * pointIndex;\r\n if (this.isIndexValid(pointIndex)) {\r\n if (!result) result = Point3d.create();\r\n result.x = this._data[index];\r\n result.y = this._data[index + 1];\r\n result.z = this._data[index + 2];\r\n return result;\r\n }\r\n return undefined;\r\n }\r\n\r\n /** access x of indexed point */\r\n public getXAtUncheckedPointIndex(pointIndex: number): number {\r\n const index = 3 * pointIndex;\r\n return this._data[index];\r\n }\r\n\r\n /** access y of indexed point */\r\n public getYAtUncheckedPointIndex(pointIndex: number): number {\r\n const index = 3 * pointIndex;\r\n return this._data[index + 1];\r\n }\r\n\r\n /** access y of indexed point */\r\n public getZAtUncheckedPointIndex(pointIndex: number): number {\r\n const index = 3 * pointIndex;\r\n return this._data[index + 2];\r\n }\r\n\r\n /** copy xy into strongly typed Point2d */\r\n public getPoint2dAtCheckedPointIndex(pointIndex: number, result?: Point2d): Point2d | undefined {\r\n const index = 3 * pointIndex;\r\n if (this.isIndexValid(pointIndex)) {\r\n if (!result) result = Point2d.create();\r\n result.x = this._data[index];\r\n result.y = this._data[index + 1];\r\n return result;\r\n }\r\n return undefined;\r\n }\r\n /** copy xyz into strongly typed Vector3d */\r\n public getVector3dAtCheckedVectorIndex(vectorIndex: number, result?: Vector3d): Vector3d | undefined {\r\n const index = 3 * vectorIndex;\r\n if (vectorIndex >= 0 && vectorIndex < this._xyzInUse) {\r\n if (!result) result = Vector3d.create();\r\n result.x = this._data[index];\r\n result.y = this._data[index + 1];\r\n result.z = this._data[index + 2];\r\n return result;\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Read coordinates from source array, place them at index within this array.\r\n * @param destIndex point index where coordinates are to be placed in this array\r\n * @param source source array\r\n * @param sourceIndex point index in source array\r\n * @returns true if destIndex and sourceIndex are both valid.\r\n */\r\n public transferFromGrowableXYZArray(destIndex: number, source: GrowableXYZArray, sourceIndex: number): boolean {\r\n if (this.isIndexValid(destIndex) && source.isIndexValid(sourceIndex)) {\r\n const i = destIndex * 3;\r\n const j = sourceIndex * 3;\r\n this._data[i] = source._data[j];\r\n this._data[i + 1] = source._data[j + 1];\r\n this._data[i + 2] = source._data[j + 2];\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * push coordinates from the source array to the end of this array.\r\n * @param source source array\r\n * @param sourceIndex xyz index within the source. If undefined, entire source is pushed.\r\n * @returns number of points pushed.\r\n */\r\n public pushFromGrowableXYZArray(source: GrowableXYZArray, sourceIndex?: number): number {\r\n // full array push . . .\r\n if (sourceIndex === undefined) {\r\n const numXYZAdd = source.length;\r\n this.ensureCapacity(this.length + numXYZAdd);\r\n const nXAdd = source.length * 3;\r\n const i0 = this._xyzInUse * 3;\r\n for (let i = 0; i < nXAdd; i++)\r\n this._data[i0 + i] = source._data[i];\r\n this._xyzInUse += numXYZAdd;\r\n return numXYZAdd;\r\n }\r\n // single point push . . .\r\n if (source.isIndexValid(sourceIndex)) {\r\n const j = sourceIndex * 3;\r\n this.pushXYZ(source._data[j], source._data[j + 1], source._data[j + 2]);\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n\r\n /**\r\n * Return the first point, or undefined if the array is empty.\r\n */\r\n public front(result?: Point3d): Point3d | undefined {\r\n if (this._xyzInUse === 0) return undefined;\r\n return this.getPoint3dAtUncheckedPointIndex(0, result);\r\n }\r\n /**\r\n * Return the last point, or undefined if the array is empty.\r\n */\r\n public back(result?: Point3d): Point3d | undefined {\r\n if (this._xyzInUse < 1) return undefined;\r\n return this.getPoint3dAtUncheckedPointIndex(this._xyzInUse - 1, result);\r\n }\r\n /**\r\n * Set the coordinates of a single point.\r\n * @param pointIndex index of point to set\r\n * @param value coordinates to set\r\n */\r\n public setAtCheckedPointIndex(pointIndex: number, value: XYAndZ): boolean {\r\n if (!this.isIndexValid(pointIndex))\r\n return false;\r\n let index = pointIndex * 3;\r\n this._data[index++] = value.x;\r\n this._data[index++] = value.y;\r\n this._data[index] = value.z;\r\n return true;\r\n }\r\n /**\r\n * Set the coordinates of a single point given as coordinates\r\n * @param pointIndex index of point to set\r\n * @param x x coordinate\r\n * @param y y coordinate\r\n * @param z z coordinate\r\n */\r\n public setXYZAtCheckedPointIndex(pointIndex: number, x: number, y: number, z: number): boolean {\r\n if (!this.isIndexValid(pointIndex))\r\n return false;\r\n let index = pointIndex * 3;\r\n this._data[index++] = x;\r\n this._data[index++] = y;\r\n this._data[index] = z;\r\n return true;\r\n }\r\n\r\n /**\r\n * Copy all points into a simple array of Point3d\r\n */\r\n public getPoint3dArray(): Point3d[] {\r\n const result = [];\r\n const data = this._data;\r\n const n = this.length;\r\n for (let i = 0; i < n; i++) {\r\n result.push(Point3d.create(data[i * 3], data[i * 3 + 1], data[i * 3 + 2]));\r\n }\r\n return result;\r\n }\r\n /** multiply each point by the transform, replace values. */\r\n public static multiplyTransformInPlace(transform: Transform, data: GrowableXYZArray[] | GrowableXYZArray) {\r\n if (Array.isArray(data)) {\r\n for (const d of data)\r\n d.multiplyTransformInPlace(transform);\r\n } else {\r\n data.multiplyTransformInPlace(transform);\r\n }\r\n }\r\n\r\n /** multiply each point by the transform, replace values. */\r\n public multiplyTransformInPlace(transform: Transform) {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const coffs = transform.matrix.coffs;\r\n const origin = transform.origin;\r\n const x0 = origin.x;\r\n const y0 = origin.y;\r\n const z0 = origin.z;\r\n let x = 0;\r\n let y = 0;\r\n let z = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 3) {\r\n x = data[i];\r\n y = data[i + 1];\r\n z = data[i + 2];\r\n data[i] = coffs[0] * x + coffs[1] * y + coffs[2] * z + x0;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y + coffs[5] * z + y0;\r\n data[i + 2] = coffs[6] * x + coffs[7] * y + coffs[8] * z + z0;\r\n }\r\n }\r\n\r\n /** reverse the order of points. */\r\n public reverseInPlace() {\r\n const n = this.length;\r\n let j0, j1;\r\n let a;\r\n const data = this._data;\r\n for (let i0 = 0, i1 = n - 1; i0 < i1; i0++, i1--) {\r\n j0 = 3 * i0;\r\n j1 = 3 * i1;\r\n a = data[j0]; data[j0] = data[j1]; data[j1] = a;\r\n j0++;\r\n j1++;\r\n a = data[j0]; data[j0] = data[j1]; data[j1] = a;\r\n j0++;\r\n j1++;\r\n a = data[j0]; data[j0] = data[j1]; data[j1] = a;\r\n }\r\n }\r\n\r\n /** multiply each xyz (as a vector) by matrix, replace values. */\r\n public multiplyMatrix3dInPlace(matrix: Matrix3d) {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const coffs = matrix.coffs;\r\n let x = 0;\r\n let y = 0;\r\n let z = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 3) {\r\n x = data[i];\r\n y = data[i + 1];\r\n z = data[i + 2];\r\n data[i] = coffs[0] * x + coffs[1] * y + coffs[2] * z;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y + coffs[5] * z;\r\n data[i + 2] = coffs[6] * x + coffs[7] * y + coffs[8] * z;\r\n }\r\n }\r\n\r\n /** multiply each xyz (as a vector) by matrix inverse transpose, renormalize the vector, replace values.\r\n * * This is the way to apply a matrix (possibly with skew and scale) to a surface normal, and\r\n * have it end up perpendicular to the transformed in-surface vectors.\r\n * * Return false if matrix is not invertible or if any normalization fails.\r\n */\r\n public multiplyAndRenormalizeMatrix3dInverseTransposeInPlace(matrix: Matrix3d): boolean {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n if (!matrix.computeCachedInverse(true))\r\n return false;\r\n const coffs = matrix.inverseCoffs!;\r\n const tol = 1.0e-15;\r\n let x = 0;\r\n let y = 0;\r\n let z = 0;\r\n let x1;\r\n let y1;\r\n let z1;\r\n let q;\r\n let a;\r\n let numFail = 0;\r\n for (let i = 0; i + 2 <= nDouble; i += 3) {\r\n x = data[i];\r\n y = data[i + 1];\r\n z = data[i + 2];\r\n x1 = coffs[0] * x + coffs[3] * y + coffs[6] * z;\r\n y1 = coffs[1] * x + coffs[4] * y + coffs[7] * z;\r\n z1 = coffs[2] * x + coffs[5] * y + coffs[8] * z;\r\n a = x1 * x1 + y1 * y1 + z1 * z1;\r\n if (a < tol) {\r\n // put the originals back ..\r\n x1 = x; y1 = y; z1 = z;\r\n numFail++;\r\n } else if (Math.abs(a - 1.0) > tol) {\r\n q = 1.0 / Math.sqrt(a);\r\n x1 *= q;\r\n y1 *= q;\r\n z1 *= q;\r\n } // else -- q is near 1, no need to do the division !!\r\n data[i] = x1;\r\n data[i + 1] = y1;\r\n data[i + 2] = z1;\r\n }\r\n return numFail === 0;\r\n }\r\n\r\n /** multiply each xyz (as a point) by a homogeneous matrix and update as the normalized point\r\n *\r\n */\r\n public multiplyMatrix4dAndQuietRenormalizeMatrix4d(matrix: Matrix4d) {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const xyz1 = Point3d.create();\r\n for (let i = 0; i + 2 <= nDouble; i += 3) {\r\n matrix.multiplyXYZWQuietRenormalize(data[i], data[i + 1], data[i + 2], 1.0, xyz1);\r\n data[i] = xyz1.x;\r\n data[i + 1] = xyz1.y;\r\n data[i + 2] = xyz1.z;\r\n }\r\n }\r\n\r\n /** multiply each point by the transform, replace values. */\r\n public tryTransformInverseInPlace(transform: Transform): boolean {\r\n const data = this._data;\r\n const nDouble = this.float64Length;\r\n const matrix = transform.matrix;\r\n matrix.computeCachedInverse(true);\r\n const coffs = matrix.inverseCoffs;\r\n if (!coffs)\r\n return false;\r\n const origin = transform.origin;\r\n const x0 = origin.x;\r\n const y0 = origin.y;\r\n const z0 = origin.z;\r\n let x = 0;\r\n let y = 0;\r\n let z = 0;\r\n for (let i = 0; i + 3 <= nDouble; i += 3) {\r\n x = data[i] - x0;\r\n y = data[i + 1] - y0;\r\n z = data[i + 2] - z0;\r\n data[i] = coffs[0] * x + coffs[1] * y + coffs[2] * z;\r\n data[i + 1] = coffs[3] * x + coffs[4] * y + coffs[5] * z;\r\n data[i + 2] = coffs[6] * x + coffs[7] * y + coffs[8] * z;\r\n }\r\n return true;\r\n }\r\n /** Extend `range` to extend by all points. */\r\n public extendRange(rangeToExtend: Range3d, transform?: Transform) {\r\n const numDouble = this.float64Length;\r\n const data = this._data;\r\n if (transform) {\r\n for (let i = 0; i + 3 <= numDouble; i += 3)\r\n rangeToExtend.extendTransformedXYZ(transform, data[i], data[i + 1], data[i + 2]);\r\n } else {\r\n for (let i = 0; i + 3 <= numDouble; i += 3)\r\n rangeToExtend.extendXYZ(data[i], data[i + 1], data[i + 2]);\r\n\r\n }\r\n }\r\n /** get range of points. */\r\n public override getRange(transform?: Transform): Range3d {\r\n const range = Range3d.createNull();\r\n this.extendRange(range, transform);\r\n return range;\r\n }\r\n\r\n /** Initialize `range` with coordinates in this array. */\r\n public setRange(range: Range3d, transform?: Transform) {\r\n range.setNull();\r\n this.extendRange(range, transform);\r\n }\r\n\r\n /** Sum the lengths of segments between points. */\r\n public sumLengths(): number {\r\n let sum = 0.0;\r\n const n = 3 * (this._xyzInUse - 1); // Length already takes into account what specifically is in use\r\n const data = this._data;\r\n for (let i = 0; i < n; i += 3) sum += Geometry.hypotenuseXYZ(\r\n data[i + 3] - data[i],\r\n data[i + 4] - data[i + 1],\r\n data[i + 5] - data[i + 2]);\r\n return sum;\r\n }\r\n /**\r\n * Multiply each x,y,z by the scale factor.\r\n * @param factor\r\n */\r\n public scaleInPlace(factor: number) {\r\n if (this._data) {\r\n const numFloat = this.float64Length;\r\n for (let i = 0; i < numFloat; i++)\r\n this._data[i] = this._data[i] * factor;\r\n }\r\n }\r\n /** test if all points are within tolerance of a plane. */\r\n public isCloseToPlane(plane: Plane3dByOriginAndUnitNormal, tolerance: number = Geometry.smallMetricDistance): boolean {\r\n const numCoordinate = 3 * this._xyzInUse;\r\n const data = this._data;\r\n for (let i = 0; i < numCoordinate; i += 3)\r\n if (Math.abs(plane.altitudeXYZ(data[i], data[i + 1], data[i + 2])) > tolerance)\r\n return false;\r\n return true;\r\n }\r\n /**\r\n * * If not already closed, push a copy of the first point.\r\n * * If already closed within tolerance, force exact copy\r\n * * otherwise leave unchanged.\r\n */\r\n public forceClosure(tolerance: number = Geometry.smallMetricDistance) {\r\n const d = this.distanceIndexIndex(0, this.length - 1);\r\n // leave the empty array alone.\r\n // Note that singleton will generate 0 distance and do nothing.\r\n if (d === undefined) {\r\n } else if (d > tolerance)\r\n this.pushXYZ(this._data[0], this._data[1], this._data[2]);\r\n else if (d > 0) {\r\n // overwrite last point with exact exact first point\r\n const i0 = this._data.length - 3;\r\n for (let i = 0; i < 3; i++)\r\n this._data[i0 + i] = this._data[i];\r\n }\r\n }\r\n\r\n /** Compute a point at fractional coordinate between points i and j */\r\n public interpolate(i: number, fraction: number, j: number, result?: Point3d): Point3d | undefined {\r\n if (this.isIndexValid(i) && this.isIndexValid(j)) {\r\n const fraction0 = 1.0 - fraction;\r\n const data = this._data;\r\n i = 3 * i;\r\n j = 3 * j;\r\n return Point3d.create(\r\n fraction0 * data[i] + fraction * data[j],\r\n fraction0 * data[i + 1] + fraction * data[j + 1],\r\n fraction0 * data[i + 2] + fraction * data[j + 2], result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * * Compute a point at fractional coordinate between points i and j of source\r\n * * push onto this array.\r\n */\r\n public pushInterpolatedFromGrowableXYZArray(source: GrowableXYZArray, i: number, fraction: number, j: number) {\r\n if (source.isIndexValid(i) && source.isIndexValid(j)) {\r\n const fraction0 = 1.0 - fraction;\r\n const data = source._data;\r\n i = 3 * i;\r\n j = 3 * j;\r\n this.pushXYZ(\r\n fraction0 * data[i] + fraction * data[j],\r\n fraction0 * data[i + 1] + fraction * data[j + 1],\r\n fraction0 * data[i + 2] + fraction * data[j + 2]);\r\n }\r\n }\r\n\r\n /** Sum the signed areas of the projection to xy plane */\r\n public areaXY(): number {\r\n let area = 0.0;\r\n const n = 3 * this._xyzInUse; // float count !!\r\n if (n > 6) {\r\n const x0 = this._data[n - 3];\r\n const y0 = this._data[n - 2];\r\n let dx1 = this._data[0] - x0;\r\n let dy1 = this._data[1] - y0;\r\n let dx2 = 0;\r\n let dy2 = 0;\r\n for (let i = 3; i < n; i += 3, dx1 = dx2, dy1 = dy2) {\r\n dx2 = this._data[i] - x0;\r\n dy2 = this._data[i + 1] - y0;\r\n area += Geometry.crossProductXYXY(dx1, dy1, dx2, dy2);\r\n }\r\n }\r\n return 0.5 * area;\r\n }\r\n\r\n /** Compute a vector from index origin i to indexed target j */\r\n public vectorIndexIndex(i: number, j: number, result?: Vector3d): Vector3d | undefined {\r\n if (!this.isIndexValid(i) || !this.isIndexValid(j))\r\n return undefined;\r\n if (!result) result = Vector3d.create();\r\n const data = this._data;\r\n i = 3 * i;\r\n j = 3 * j;\r\n result.x = data[j] - data[i];\r\n result.y = data[j + 1] - data[i + 1];\r\n result.z = data[j + 2] - data[i + 2];\r\n return result;\r\n }\r\n\r\n /** Compute a vector from origin to indexed target j */\r\n public vectorXYAndZIndex(origin: XYAndZ, j: number, result?: Vector3d): Vector3d | undefined {\r\n if (this.isIndexValid(j)) {\r\n const data = this._data;\r\n j = 3 * j;\r\n return Vector3d.create(\r\n data[j] - origin.x,\r\n data[j + 1] - origin.y,\r\n data[j + 2] - origin.z, result);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Compute the cross product of vectors from from indexed origin to indexed targets i and j */\r\n public crossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number, result?: Vector3d): Vector3d | undefined {\r\n const i = originIndex * 3;\r\n const j = targetAIndex * 3;\r\n const k = targetBIndex * 3;\r\n const data = this._data;\r\n if (this.isIndexValid(originIndex) && this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex))\r\n return Geometry.crossProductXYZXYZ(\r\n data[j] - data[i], data[j + 1] - data[i + 1], data[j + 2] - data[i + 2],\r\n data[k] - data[i], data[k + 1] - data[i + 1], data[k + 2] - data[i + 2],\r\n result);\r\n return undefined;\r\n }\r\n\r\n /** Compute the dot product of pointIndex with [x,y,z] */\r\n public evaluateUncheckedIndexDotProductXYZ(pointIndex: number, x: number, y: number, z: number): number {\r\n const i = pointIndex * 3;\r\n const data = this._data;\r\n return data[i] * x + data[i + 1] * y + data[i + 2] * z;\r\n }\r\n /** Compute the dot product of pointIndex with [x,y,z] */\r\n public evaluateUncheckedIndexPlaneAltitude(pointIndex: number, plane: PlaneAltitudeEvaluator): number {\r\n const i = pointIndex * 3;\r\n const data = this._data;\r\n return plane.altitudeXYZ(data[i], data[i + 1], data[i + 2]);\r\n }\r\n\r\n /**\r\n * * compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.\r\n * * accumulate it to the result.\r\n */\r\n public accumulateCrossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number, result: Vector3d): void {\r\n const i = originIndex * 3;\r\n const j = targetAIndex * 3;\r\n const k = targetBIndex * 3;\r\n const data = this._data;\r\n if (this.isIndexValid(originIndex) && this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex))\r\n result.addCrossProductToTargetsInPlace(\r\n data[i], data[i + 1], data[i + 2],\r\n data[j], data[j + 1], data[j + 2],\r\n data[k], data[k + 1], data[k + 2]);\r\n return undefined;\r\n }\r\n\r\n /**\r\n * * compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.\r\n * * accumulate it to the result.\r\n */\r\n public accumulateScaledXYZ(index: number, scale: number, sum: Point3d): void {\r\n const i = index * 3;\r\n const data = this._data;\r\n if (this.isIndexValid(index)) {\r\n sum.x += scale * data[i];\r\n sum.y += scale * data[i + 1];\r\n sum.z += scale * data[i + 2];\r\n }\r\n }\r\n\r\n /** Compute the cross product of vectors from from origin to indexed targets i and j */\r\n public crossProductXYAndZIndexIndex(origin: XYAndZ, targetAIndex: number, targetBIndex: number, result?: Vector3d): Vector3d | undefined {\r\n const j = targetAIndex * 3;\r\n const k = targetBIndex * 3;\r\n const data = this._data;\r\n if (this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex))\r\n return Geometry.crossProductXYZXYZ(\r\n data[j] - origin.x, data[j + 1] - origin.y, data[j + 2] - origin.z,\r\n data[k] - origin.x, data[k + 1] - origin.y, data[k + 2] - origin.z,\r\n result);\r\n return undefined;\r\n }\r\n\r\n /** Return the distance between an array point and the input point. */\r\n public distanceIndexToPoint(i: number, spacePoint: XYAndZ): number | undefined {\r\n if (i >= 0 && i < this._xyzInUse) {\r\n const i0 = 3 * i;\r\n return Geometry.hypotenuseXYZ(\r\n spacePoint.x - this._data[i0],\r\n spacePoint.y - this._data[i0 + 1],\r\n spacePoint.z - this._data[i0 + 2]);\r\n }\r\n return undefined;\r\n }\r\n\r\n /**\r\n * Return distance squared between indicated points.\r\n * * Concrete classes may be able to implement this without creating a temporary.\r\n * @param index0 first point index\r\n * @param index1 second point index\r\n * @param defaultDistanceSquared distance squared to return if either point index is invalid.\r\n *\r\n */\r\n public distanceSquaredIndexIndex(i: number, j: number): number | undefined {\r\n if (i >= 0 && i < this._xyzInUse && j >= 0 && j <= this._xyzInUse) {\r\n const i0 = 3 * i;\r\n const j0 = 3 * j;\r\n return Geometry.hypotenuseSquaredXYZ(\r\n this._data[j0] - this._data[i0],\r\n this._data[j0 + 1] - this._data[i0 + 1],\r\n this._data[j0 + 2] - this._data[i0 + 2]);\r\n }\r\n return undefined;\r\n }\r\n /**\r\n * Return distance between indicated points.\r\n * * Concrete classes may be able to implement this without creating a temporary.\r\n * @param index0 first point index\r\n * @param index1 second point index\r\n * @param defaultDistanceSquared distance squared to return if either point index is invalid.\r\n */\r\n public distanceIndexIndex(i: number, j: number): number | undefined {\r\n if (i >= 0 && i < this._xyzInUse && j >= 0 && j <= this._xyzInUse) {\r\n const i0 = 3 * i;\r\n const j0 = 3 * j;\r\n return Geometry.hypotenuseXYZ(\r\n this._data[j0] - this._data[i0],\r\n this._data[j0 + 1] - this._data[i0 + 1],\r\n this._data[j0 + 2] - this._data[i0 + 2]);\r\n }\r\n return undefined;\r\n }\r\n /** Return the distance between points in distinct arrays. */\r\n public static distanceBetweenPointsIn2Arrays(arrayA: GrowableXYZArray, i: number, arrayB: GrowableXYZArray, j: number): number | undefined {\r\n\r\n if (i >= 0 && i < arrayA._xyzInUse && j >= 0 && j <= arrayB._xyzInUse) {\r\n const i0 = 3 * i;\r\n const j0 = 3 * j;\r\n return Geometry.hypotenuseXYZ(\r\n arrayB._data[j0] - arrayA._data[i0],\r\n arrayB._data[j0 + 1] - arrayA._data[i0 + 1],\r\n arrayB._data[j0 + 2] - arrayA._data[i0 + 2]);\r\n }\r\n return undefined;\r\n }\r\n /** test for near equality between two `GrowableXYZArray`. */\r\n public static isAlmostEqual(dataA: GrowableXYZArray | undefined, dataB: GrowableXYZArray | undefined): boolean {\r\n if (dataA && dataB) {\r\n if (dataA.length !== dataB.length)\r\n return false;\r\n for (let i = 0; i < dataA.length; i++)\r\n if (!dataA.getPoint3dAtUncheckedPointIndex(i).isAlmostEqual(dataB.getPoint3dAtUncheckedPointIndex(i)))\r\n return false;\r\n return true;\r\n }\r\n // if both are null it is equal, otherwise unequal\r\n return (!dataA && !dataB);\r\n }\r\n\r\n /** Return an array of block indices sorted per compareLexicalBlock function */\r\n public sortIndicesLexical(): Uint32Array {\r\n const n = this._xyzInUse;\r\n // let numCompare = 0;\r\n const result = new Uint32Array(n);\r\n for (let i = 0; i < n; i++)result[i] = i;\r\n result.sort(\r\n (blockIndexA: number, blockIndexB: number) => {\r\n // numCompare++;\r\n return this.compareLexicalBlock(blockIndexA, blockIndexB);\r\n });\r\n // console.log (n, numCompare);\r\n return result;\r\n }\r\n\r\n /** compare two blocks in simple lexical order. */\r\n public compareLexicalBlock(ia: number, ib: number): number {\r\n let ax = 0;\r\n let bx = 0;\r\n for (let i = 0; i < 3; i++) {\r\n ax = this._data[ia * 3 + i];\r\n bx = this._data[ib * 3 + i];\r\n if (ax > bx) return 1;\r\n if (ax < bx) return -1;\r\n }\r\n return ia - ib; // so original order is maintained among duplicates !!!!\r\n }\r\n\r\n /** Access a single double at offset within a block. This has no index checking. */\r\n public component(pointIndex: number, componentIndex: number): number {\r\n return this._data[3 * pointIndex + componentIndex];\r\n }\r\n /**\r\n * add points at regular steps from `other`\r\n * @param source\r\n * @param pointIndex0\r\n * @param step\r\n * @param numAdd\r\n */\r\n public addSteppedPoints(other: GrowableXYZArray, pointIndex0: number, step: number, numAdd: number) {\r\n const dataB = other._data;\r\n let b0 = pointIndex0 * 3;\r\n const nb = other.length * 3;\r\n let numAdded = 0;\r\n while (b0 >= 0 && b0 + 2 < nb && numAdded < numAdd) {\r\n this.pushXYZ(dataB[b0], dataB[b0 + 1], dataB[b0 + 2]);\r\n b0 += step * 3;\r\n numAdded++;\r\n }\r\n }\r\n\r\n /**\r\n * find the min and max distance between corresponding indexed points. Excess points are ignored.\r\n * @param arrayA first array\r\n * @param arrayB second array\r\n */\r\n public static distanceRangeBetweenCorrespondingPoints(arrayA: GrowableXYZArray, arrayB: GrowableXYZArray): Range1d {\r\n const dataA = arrayA._data;\r\n const dataB = arrayB._data;\r\n const n = Math.min(arrayA.length, arrayB.length);\r\n let i = 0;\r\n let k0;\r\n const range = Range1d.createNull();\r\n while (i < n) {\r\n k0 = 3 * i;\r\n range.extendX(Geometry.hypotenuseXYZ(dataA[k0] - dataB[k0], dataA[k0 + 1] - dataB[k0 + 1], dataA[k0 + 2] - dataB[k0 + 2]));\r\n i++;\r\n }\r\n return range;\r\n }\r\n /**\r\n * remove trailing point(s) within tolerance of the start point.\r\n * @param points\r\n * @param tolerance\r\n */\r\n public static removeClosure(points: IndexedReadWriteXYZCollection, tolerance: number = Geometry.smallMetricDistance) {\r\n while (points.length > 1 && points.distanceIndexIndex(0, points.length - 1)! < tolerance)\r\n points.pop();\r\n }\r\n /**\r\n * * Triangle for (unchecked!) for three points identified by index\r\n * * z direction of frame is 001.\r\n * * Transform axes from origin to targetX and targetY\r\n * * in local coordinates (u,v,w) the xy interior of the triangle is `u>=0, v>= 0, w>= 0, u+v+w<1`\r\n * * Return undefined if transform is invertible (i.e. points are not in a vertical plane.)\r\n */\r\n public fillLocalXYTriangleFrame(originIndex: number, targetAIndex: number, targetBIndex: number, result?: Transform): Transform | undefined {\r\n if (this.isIndexValid(originIndex) && this.isIndexValid(targetAIndex) && this.isIndexValid(targetBIndex)) {\r\n let i0 = originIndex * 3;\r\n const data = this._data;\r\n const ax = data[i0++];\r\n const ay = data[i0++];\r\n const az = data[i0++];\r\n i0 = targetAIndex * 3;\r\n const ux = data[i0++] - ax;\r\n const uy = data[i0++] - ay;\r\n const uz = data[i0++] - az;\r\n i0 = targetBIndex * 3;\r\n const vx = data[i0++] - ax;\r\n const vy = data[i0++] - ay;\r\n const vz = data[i0++] - az;\r\n result = Transform.createRowValues(\r\n ux, vx, 0, ax,\r\n uy, vy, 0, ay,\r\n uz, vz, 1, az, result);\r\n return result.computeCachedInverse() ? result : undefined;\r\n }\r\n return undefined;\r\n }\r\n /**\r\n * Pass the (x,y,z) of each point to a function which returns a replacement for of of the 3 components.\r\n * @param componentIndex Index (0,1,2) of component to be replaced.\r\n * @param func function to be called as `func(x,y,z)`, returning a replacement value for componentIndex\r\n */\r\n public mapComponent(componentIndex: 0 | 1 | 2, func: (x: number, y: number, z: number) => number) {\r\n const n = this._data.length;\r\n let q;\r\n for (let i = 0; i + 2 < n; i += 3) {\r\n q = func(this._data[i], this._data[i + 1], this._data[i + 2]);\r\n this._data[i + componentIndex] = q;\r\n }\r\n }\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedCollectionInterval.d.ts","sourceRoot":"","sources":["../../src/geometry3d/IndexedCollectionInterval.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,UAAU,oBAAoB;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AACD;;;GAGG;AACH,qBAAa,yBAAyB,CAAC,CAAC,SAAS,oBAAoB;IACnE,2DAA2D;IACpD,MAAM,EAAE,CAAC,CAAC;IACjB,iCAAiC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACjC,GAAG,EAAE,MAAM,CAAC;IACnB,SAAS,aAAa,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAK5D,sEAAsE;WACxD,cAAc,CAAC,CAAC,SAAS,oBAAoB,EAAE,MAAM,EAAE,CAAC,GAAG,yBAAyB,CAAC,CAAC,CAAC;IAGrG,6EAA6E;WAC/D,cAAc,CAAC,CAAC,SAAS,oBAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,yBAAyB,CAAC,CAAC,CAAC;IAIjI,6EAA6E;WAC/D,iBAAiB,CAAC,CAAC,SAAS,oBAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAAC,CAAC,CAAC;IAGvI,yEAAyE;IAClE,YAAY,IAAI,OAAO;IAI9B,8GAA8G;IACvG,UAAU,IAAI,OAAO;IAM5B,0EAA0E;IACnE,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAQtE;;;OAGG;IACH,IAAW,aAAa,IAAI,OAAO,CAIlC;IACD,8CAA8C;IACvC,WAAW;IAIlB,yCAAyC;IACzC,IAAW,UAAU,IAAI,OAAO,CAE/B;IACD,gFAAgF;IACzE,aAAa,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC,CAAC,GAAG,OAAO;IAIlE,iFAAiF;IAC1E,aAAa,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC,CAAC,GAAG,OAAO;IAKlE;;;;OAIG;IACI,OAAO,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAMjF,qEAAqE;IACrE,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,6CAA6C;IAC7C,IAAW,WAAW,IAAI,OAAO,CAEhC;CACF;AAED;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,yBAAyB,CAAC,oBAAoB,CAAC;CAEhG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedCollectionInterval.js","sourceRoot":"","sources":["../../src/geometry3d/IndexedCollectionInterval.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 ArraysAndInterfaces\r\n */\r\n\r\nimport { IndexedXYZCollection } from \"./IndexedXYZCollection\";\r\n\r\ninterface CollectionWithLength {\r\n length: number;\r\n}\r\n/**\r\n * Object describing a (contiguous) subset of indices to an IndexedXYZCollection\r\n * @public\r\n */\r\nexport class IndexedCollectionInterval<T extends CollectionWithLength> {\r\n /** Any collection that has a .length member or property */\r\n public points: T;\r\n /** lower limit of index range */\r\n public begin: number;\r\n /** upper limit (beyond) index range. */\r\n public end: number;\r\n protected constructor(points: T, base: number, limit: number) {\r\n this.points = points;\r\n this.begin = base;\r\n this.end = limit;\r\n }\r\n /** Create an interval which matches a complete indexed collection. */\r\n public static createComplete<T extends CollectionWithLength>(points: T): IndexedCollectionInterval<T> {\r\n return new this(points, 0, points.length);\r\n }\r\n /** Create an interval which matches a collection from `start <= i < end`. */\r\n public static createBeginEnd<T extends CollectionWithLength>(points: T, begin: number, end: number): IndexedCollectionInterval<T> {\r\n return new this(points, begin, end);\r\n }\r\n\r\n /** Create an interval which matches a collection from `start <= i < end`. */\r\n public static createBeginLength<T extends CollectionWithLength>(points: T, begin: number, length: number): IndexedCollectionInterval<T> {\r\n return new this(points, begin, begin + length);\r\n }\r\n /** Add one to this.begin. Return true if the interval is still live. */\r\n public advanceBegin(): boolean {\r\n this.begin++;\r\n return this.begin < this.end;\r\n }\r\n /** advance this.end (but do not go beyond this.points.length) return true if the interval is still live. */\r\n public advanceEnd(): boolean {\r\n this.end++;\r\n if (this.end > this.points.length)\r\n this.end = this.points.length;\r\n return this.begin < this.end;\r\n }\r\n /** Return (if possible) the parent index corresponding to `localIndex` */\r\n public localIndexToParentIndex(localIndex: number): number | undefined {\r\n if (localIndex >= 0) {\r\n const parentIndex = this.begin + localIndex;\r\n if (parentIndex < this.points.length)\r\n return parentIndex;\r\n }\r\n return undefined;\r\n }\r\n /** Return true if\r\n * * the interval is empty (the empty set is a subset of all sets!)\r\n * * all indices in its range are valid.\r\n */\r\n public get isValidSubset(): boolean {\r\n return this.length === 0\r\n || (this.localIndexToParentIndex(0) !== undefined\r\n && this.localIndexToParentIndex(this.length - 1) !== undefined);\r\n }\r\n /** restrict this.end to this.points.length */\r\n public restrictEnd() {\r\n if (this.end > this.points.length)\r\n this.end = this.points.length;\r\n }\r\n /** Return true if length is 1 or more */\r\n public get isNonEmpty(): boolean {\r\n return this.begin < this.end;\r\n }\r\n /** Advance this.begin to (other.end-1), i.e. catch the last member of other. */\r\n public advanceToTail(other: IndexedCollectionInterval<T>): boolean {\r\n this.begin = other.end - 1;\r\n return this.isNonEmpty;\r\n }\r\n /** Advance this.begin to (other.begin), i.e. catch the first member of other. */\r\n public advanceToHead(other: IndexedCollectionInterval<T>): boolean {\r\n this.begin = other.begin;\r\n return this.isNonEmpty;\r\n }\r\n\r\n /** Set this interval from another, with conditional replacements:\r\n * * Always reference the same points as other.\r\n * * use optional begin and end arguments if present; if not take begin and and from other.\r\n * * cap end at points.length.\r\n */\r\n public setFrom(other: IndexedCollectionInterval<T>, base?: number, limit?: number) {\r\n this.points = other.points;\r\n this.begin = base === undefined ? other.begin : base;\r\n this.end = limit === undefined ? other.end : limit;\r\n this.restrictEnd();\r\n }\r\n /** Return the number of steps possible with current begin and end */\r\n public get length(): number {\r\n return this.end > this.begin ? this.end - this.begin : 0;\r\n }\r\n /** Return true if the length is exactly 1 */\r\n public get isSingleton(): boolean {\r\n return this.begin + 1 === this.end;\r\n }\r\n}\r\n\r\n/**\r\n * Reference to an interval of the indices of an IndexedXYZCollection.\r\n * @public\r\n */\r\nexport class IndexedXYZCollectionInterval extends IndexedCollectionInterval<IndexedXYZCollection> {\r\n\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedXYCollection.d.ts","sourceRoot":"","sources":["../../src/geometry3d/IndexedXYCollection.ts"],"names":[],"mappings":"AAKA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;;;;;GAQG;AACH,8BAAsB,mBAAmB;IACvC;;;;;OAKG;aACa,6BAA6B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IACnG;;;;;OAKG;aACa,+BAA+B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IACvG;;;;;;OAMG;aACa,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IACzG;;;;;;OAMG;aACa,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS;IAExG;;;;;;;OAOG;aACa,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAC9G;;;;;;;OAOG;aACa,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAE/G;;OAEG;IACH,aAAoB,MAAM,IAAI,MAAM,CAAC;CACtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedXYCollection.js","sourceRoot":"","sources":["../../src/geometry3d/IndexedXYCollection.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAW/F;;;;;;;;GAQG;AACH,MAAsB,mBAAmB;CAuDxC;AAvDD,kDAuDC","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\r\n/** @packageDocumentation\r\n * @module ArraysAndInterfaces\r\n */\r\n\r\n// import { Point2d } from \"./Geometry2d\";\r\nimport { Point2d, Vector2d } from \"./Point2dVector2d\";\r\n/* eslint-disable @typescript-eslint/naming-convention, no-empty */\r\nimport { XAndY } from \"./XYZProps\";\r\n\r\n/**\r\n * abstract base class for access to XYZ data with indexed reference.\r\n * * This allows algorithms to work with Point2d[] or GrowableXYZ.\r\n * ** GrowableXYZArray implements these for its data.\r\n * ** Point2dArrayCarrier carries a (reference to) a Point2d[] and implements the methods with calls on that array reference.\r\n * * In addition to \"point by point\" accessors, there abstract members compute commonly useful vector data \"between points\".\r\n * * Methods that create vectors among multiple indices allow callers to avoid creating temporaries.\r\n * @public\r\n */\r\nexport abstract class IndexedXYCollection {\r\n /**\r\n * Get from `index` as a `Point2d`\r\n * @param index index of point within the array\r\n * @param result optional caller-allocated destination\r\n * @returns undefined if the index is out of bounds\r\n */\r\n public abstract getPoint2dAtCheckedPointIndex(index: number, result?: Point2d): Point2d | undefined;\r\n /**\r\n * Get from `index` as a `Vector2d`\r\n * @param index index of point within the array\r\n * @param result optional caller-allocated destination\r\n * @returns undefined if the index is out of bounds\r\n */\r\n public abstract getVector2dAtCheckedVectorIndex(index: number, result?: Vector2d): Vector2d | undefined;\r\n /**\r\n * Return a vector from the point at `indexA` to the point at `indexB`\r\n * @param indexA index of point within the array\r\n * @param indexB index of point within the array\r\n * @param result optional caller-allocated vector.\r\n * @returns undefined if either index is out of bounds\r\n */\r\n public abstract vectorIndexIndex(indexA: number, indexB: number, result?: Vector2d): Vector2d | undefined;\r\n /**\r\n * Return a vector from given origin to the point at `indexB`\r\n * @param origin origin for vector\r\n * @param indexB index of point within the array\r\n * @param result optional caller-allocated vector.\r\n * @returns undefined if index is out of bounds\r\n */\r\n public abstract vectorXAndYIndex(origin: XAndY, indexB: number, result?: Vector2d): Vector2d | undefined;\r\n\r\n /**\r\n * Return the cross product of vectors from `origin` to points at `indexA` and `indexB`\r\n * @param origin origin for vector\r\n * @param indexA index of first target within the array\r\n * @param indexB index of second target within the array\r\n * @param result optional caller-allocated vector.\r\n * @returns undefined if either index is out of bounds\r\n */\r\n public abstract crossProductXAndYIndexIndex(origin: XAndY, indexA: number, indexB: number): number | undefined;\r\n /**\r\n * Return the cross product of vectors from origin point at `indexA` to target points at `indexB` and `indexC`\r\n * @param origin index of origin\r\n * @param indexA index of first target within the array\r\n * @param indexB index of second target within the array\r\n * @param result optional caller - allocated vector.\r\n * @returns return true if indexA, indexB both valid\r\n */\r\n public abstract crossProductIndexIndexIndex(origin: number, indexA: number, indexB: number): number | undefined;\r\n\r\n /**\r\n * read-only property for number of XYZ in the collection.\r\n */\r\n public abstract get length(): number;\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedXYZCollection.d.ts","sourceRoot":"","sources":["../../src/geometry3d/IndexedXYZCollection.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexedXYZCollection.js","sourceRoot":"","sources":["../../src/geometry3d/IndexedXYZCollection.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F;;GAEG;AAEH,0CAA0C;AAC1C,0CAAuC;AACvC,uDAAsD;AACtD,mCAAkC;AAIlC,MAAM,cAAc;IAIlB,YAAmB,UAAgC;QAF3C,cAAS,GAAG,CAAC,CAAC,CAAC;QAGrB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAEM,IAAI;QACT,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;YAC/C,0JAA0J;YAC1J,OAAO,EAAE,IAAI,EAAE,IAAI,EAAoC,CAAC;SACzD;QAED,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,+BAA+B,CAAC,IAAI,CAAC,SAAS,CAAC;YACvE,IAAI,EAAE,KAAK;SACZ,CAAC;IACJ,CAAC;IAEM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAwB,OAAO,IAAI,CAAC,CAAC,CAAC;CAC/D;AACD;;;;;;;;GAQG;AACH,MAAsB,oBAAoB;IAoFxC,yDAAyD;IAClD,WAAW,CAAC,CAAS;QAC1B,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IACD,sCAAsC;IAC/B,QAAQ;QACb,MAAM,KAAK,GAAG,eAAO,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,MAAM,KAAK,GAAG,yBAAO,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,CAAC,+BAA+B,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC/C,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,qBAAqB,CAAC,YAAoB,mBAAQ,CAAC,mBAAmB;QAC3E,MAAM,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;QACnC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG;gBACpC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;oBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACnD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,IAAI;wBACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;wBAEhB,MAAM;iBACT;gBACD,CAAC,GAAG,CAAC,CAAC,CAAC,0BAA0B;aAClC;SACF;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAgBD;;;;OAIG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACD,2BAA2B;IACpB,QAAQ;QACb,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM;YACzB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAxJD,oDAwJC;AACD;;;GAGG;AACH,MAAsB,6BAA8B,SAAQ,oBAAoB;CAsB/E;AAtBD,sEAsBC","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\r\n/** @packageDocumentation\r\n * @module ArraysAndInterfaces\r\n */\r\n\r\n// import { Point2d } from \"./Geometry2d\";\r\nimport { Geometry } from \"../Geometry\";\r\nimport { Point3d, Vector3d } from \"./Point3dVector3d\";\r\nimport { Range3d } from \"./Range\";\r\n/* eslint-disable @typescript-eslint/naming-convention, no-empty */\r\nimport { XYAndZ } from \"./XYZProps\";\r\n\r\nclass PointsIterator implements Iterator<Point3d>, Iterable<Point3d> {\r\n private readonly _collection: IndexedXYZCollection;\r\n private _curIndex = -1;\r\n\r\n public constructor(collection: IndexedXYZCollection) {\r\n this._collection = collection;\r\n }\r\n\r\n public next(): IteratorResult<Point3d> {\r\n if (++this._curIndex >= this._collection.length) {\r\n // The ECMAScript spec states that value=undefined is valid if done=true. The TypeScript interface violates the spec hence the cast to any and back below.\r\n return { done: true } as any as IteratorResult<Point3d>;\r\n }\r\n\r\n return {\r\n value: this._collection.getPoint3dAtUncheckedPointIndex(this._curIndex),\r\n done: false,\r\n };\r\n }\r\n\r\n public [Symbol.iterator](): Iterator<Point3d> { return this; }\r\n}\r\n/**\r\n * abstract base class for read-only access to XYZ data with indexed reference.\r\n * * This allows algorithms to work with Point3d[] or GrowableXYZ.\r\n * ** GrowableXYZArray implements these for its data.\r\n * ** Point3dArrayCarrier carries a (reference to) a Point3d[] and implements the methods with calls on that array reference.\r\n * * In addition to \"point by point\" accessors, there abstract members compute commonly useful vector data \"between points\".\r\n * * Methods that create vectors among multiple indices allow callers to avoid creating temporaries.\r\n * @public\r\n */\r\nexport abstract class IndexedXYZCollection {\r\n /**\r\n * Return the point at `index` as a strongly typed Point3d.\r\n * @param index index of point within the array\r\n * @param result caller-allocated destination\r\n * @returns undefined if the index is out of bounds\r\n */\r\n public abstract getPoint3dAtCheckedPointIndex(index: number, result?: Point3d): Point3d | undefined;\r\n /**\r\n * Return the point at `index` as a strongly typed Point3d, without checking the point index validity.\r\n * @param index index of point within the array\r\n * @param result caller-allocated destination\r\n * @returns undefined if the index is out of bounds\r\n */\r\n public abstract getPoint3dAtUncheckedPointIndex(index: number, result?: Point3d): Point3d;\r\n /**\r\n * Get from `index` as a strongly typed Vector3d.\r\n * @param index index of point within the array\r\n * @param result caller-allocated destination\r\n * @returns undefined if the index is out of bounds\r\n */\r\n public abstract getVector3dAtCheckedVectorIndex(index: number, result?: Vector3d): Vector3d | undefined;\r\n /**\r\n * Return a vector from the point at `indexA` to the point at `indexB`\r\n * @param indexA index of point within the array\r\n * @param indexB index of point within the array\r\n * @param result caller-allocated vector.\r\n * @returns undefined if either index is out of bounds\r\n */\r\n public abstract vectorIndexIndex(indexA: number, indexB: number, result?: Vector3d): Vector3d | undefined;\r\n /**\r\n * Return a vector from `origin` to the point at `indexB`\r\n * @param origin origin for vector\r\n * @param indexB index of point within the array\r\n * @param result caller-allocated vector.\r\n * @returns undefined if index is out of bounds\r\n */\r\n public abstract vectorXYAndZIndex(origin: XYAndZ, indexB: number, result?: Vector3d): Vector3d | undefined;\r\n\r\n /**\r\n * Return the cross product of the vectors from `origin` to points at `indexA` and `indexB`\r\n * @param origin origin for vector\r\n * @param indexA index of first target within the array\r\n * @param indexB index of second target within the array\r\n * @param result caller-allocated vector.\r\n * @returns undefined if either index is out of bounds\r\n */\r\n public abstract crossProductXYAndZIndexIndex(origin: XYAndZ, indexA: number, indexB: number, result?: Vector3d): Vector3d | undefined;\r\n /**\r\n * Return the cross product of vectors from `origin` to points at `indexA` and `indexB`\r\n * @param origin origin for vector\r\n * @param indexA index of first target within the array\r\n * @param indexB index of second target within the array\r\n * @param result optional caller-allocated vector.\r\n * @returns undefined if either index is out of bounds\r\n */\r\n public abstract crossProductIndexIndexIndex(origin: number, indexA: number, indexB: number, result?: Vector3d): Vector3d | undefined;\r\n /**\r\n * Return the cross product of vectors from origin point at `indexA` to target points at `indexB` and `indexC`\r\n * @param origin index of origin\r\n * @param indexA index of first target within the array\r\n * @param indexB index of second target within the array\r\n * @param result caller-allocated vector.\r\n * @returns return true if indexA, indexB both valid\r\n */\r\n public abstract accumulateCrossProductIndexIndexIndex(origin: number, indexA: number, indexB: number, result: Vector3d): void;\r\n\r\n /**\r\n * read-only property for number of XYZ in the collection.\r\n */\r\n public abstract get length(): number;\r\n /**\r\n * Return distance squared between indicated points.\r\n * @param index0 first point index\r\n * @param index1 second point index\r\n */\r\n public abstract distanceSquaredIndexIndex(index0: number, index1: number): number | undefined;\r\n /**\r\n * Return distance between indicated points.\r\n * @param index0 first point index\r\n * @param index1 second point index\r\n */\r\n public abstract distanceIndexIndex(index0: number, index1: number): number | undefined;\r\n\r\n /** Adjust index into range by modulo with the length. */\r\n public cyclicIndex(i: number): number {\r\n return (i % this.length);\r\n }\r\n /** Return the range of the points. */\r\n public getRange(): Range3d {\r\n const range = Range3d.createNull();\r\n const n = this.length;\r\n const point = Point3d.create();\r\n for (let i = 0; i < n; i++) {\r\n this.getPoint3dAtUncheckedPointIndex(i, point);\r\n range.extendPoint(point);\r\n }\r\n return range;\r\n }\r\n\r\n /**\r\n * For each run of points with indices i+1 to i+n within distance tolerance of points[i], return the indices i+1, ..., i+n.\r\n * @return ordered array of 0-based indices of duplicate points\r\n */\r\n public findOrderedDuplicates(tolerance: number = Geometry.smallMetricDistance): number[] {\r\n const tol2 = tolerance * tolerance;\r\n const indices: number[] = [];\r\n if (this.length > 1) {\r\n for (let i = 0; i < this.length - 1;) {\r\n let j = i + 1;\r\n for (; j < this.length; ++j) {\r\n const dist2 = this.distanceSquaredIndexIndex(i, j);\r\n if (dist2 !== undefined && dist2 < tol2)\r\n indices.push(j);\r\n else\r\n break;\r\n }\r\n i = j; // found next unique point\r\n }\r\n }\r\n return indices;\r\n }\r\n\r\n /** Accumulate scale times the x,y,z values at index.\r\n * * No action if index is out of bounds.\r\n */\r\n public abstract accumulateScaledXYZ(index: number, scale: number, sum: Point3d): void;\r\n\r\n /** access x of indexed point */\r\n public abstract getXAtUncheckedPointIndex(pointIndex: number): number;\r\n\r\n /** access y of indexed point */\r\n public abstract getYAtUncheckedPointIndex(pointIndex: number): number;\r\n\r\n /** access z of indexed point */\r\n public abstract getZAtUncheckedPointIndex(pointIndex: number): number;\r\n\r\n /** Return iterator over the points in this collection. Usage:\r\n * ```ts\r\n * for (const point: Point3d of collection.points) { ... }\r\n * ```\r\n */\r\n public get points(): Iterable<Point3d> {\r\n return new PointsIterator(this);\r\n }\r\n /** convert to Point3d[] */\r\n public getArray(): Point3d[] {\r\n const result = [];\r\n for (const p of this.points)\r\n result.push(p);\r\n return result;\r\n }\r\n}\r\n/**\r\n * abstract base class extends IndexedXYZCollection, adding methods to push, peek, and pop, and rewrite.\r\n * @public\r\n */\r\nexport abstract class IndexedReadWriteXYZCollection extends IndexedXYZCollection {\r\n /** push a (clone of) point onto the collection\r\n * * point itself is not pushed -- xyz data is extracted into the native form of the collection.\r\n */\r\n public abstract push(data: XYAndZ): void;\r\n /**\r\n * push a new point (given by coordinates) onto the collection\r\n * @param x x coordinate\r\n * @param y y coordinate\r\n * @param z z coordinate\r\n */\r\n public abstract pushXYZ(x?: number, y?: number, z?: number): void;\r\n /** extract the final point */\r\n public abstract back(result?: Point3d): Point3d | undefined;\r\n /** extract the first point */\r\n public abstract front(result?: Point3d): Point3d | undefined;\r\n /** remove the final point. */\r\n public abstract pop(): void;\r\n /** clear all entries */\r\n public abstract clear(): void;\r\n /** reverse the points in place. */\r\n public abstract reverseInPlace(): void;\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"LongitudeLatitudeAltitude.d.ts","sourceRoot":"","sources":["../../src/geometry3d/LongitudeLatitudeAltitude.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAY,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC;;;;;;;;GAQG;AACH,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,6CAA6C;IAC7C,IAAW,gBAAgB,IAAI,MAAM,CAAoC;IACzE,6CAA6C;IAC7C,IAAW,gBAAgB,IAAI,MAAM,CAAoC;IACzE,6EAA6E;IAC7E,IAAW,YAAY,IAAI,KAAK,CAA4B;IAC5D,0EAA0E;IAC1E,IAAW,SAAS,IAAI,KAAK,CAAoC;IAEjE,4CAA4C;IAC5C,IAAW,eAAe,IAAI,MAAM,CAAmC;IACvE,4CAA4C;IAC5C,IAAW,eAAe,IAAI,MAAM,CAAmC;IACvE,4EAA4E;IAC5E,IAAW,WAAW,IAAI,KAAK,CAA2B;IAC1D,yEAAyE;IACzE,IAAW,QAAQ,IAAI,KAAK,CAAmC;IAE/D,+BAA+B;IAC/B,IAAW,QAAQ,IAAI,MAAM,CAA2B;IACxD,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAA6B;IAC9D,+CAA+C;IAC/C,OAAO;IAKP,gDAAgD;WAClC,UAAU,IAAI,uBAAuB;IACnD,gDAAgD;WAClC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,uBAAuB;IASjI,qCAAqC;WACvB,aAAa,CAAC,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,uBAAuB;IASxJ,qCAAqC;WACvB,aAAa,CAAC,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,uBAAuB,GAAG,uBAAuB;IASxJ;;;;OAIG;IACI,WAAW,CAAC,IAAI,EAAE,GAAG;IAoB5B;;OAEG;IACI,MAAM,IAAI,GAAG;IAGpB,6BAA6B;IACtB,aAAa,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO;IAK7D,oBAAoB;IACb,KAAK,IAAI,uBAAuB;CAGxC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"LongitudeLatitudeAltitude.js","sourceRoot":"","sources":["../../src/geometry3d/LongitudeLatitudeAltitude.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 CartesianGeometry\r\n */\r\n\r\nimport { BeJSONFunctions, Geometry } from \"../Geometry\";\r\nimport { Angle } from \"./Angle\";\r\n\r\n/**\r\n * An `AngleAngleNumber` is a pair of angles (named `longitude` and `latitude`) and an additional number.\r\n * * This is directly intended to support `Ellipsoid` computations, with the two angles used as\r\n * * `longitude` is \"around the equator\"\r\n * * `latitude` is \"equator to pole\"\r\n * * `h` is altitude above the `Ellipsoid surface.\r\n * * The structure may also be used for torus coordinates.\r\n * @public\r\n */\r\nexport class LongitudeLatitudeNumber implements BeJSONFunctions {\r\n private _longitude: Angle;\r\n private _latitude: Angle;\r\n private _altitude: number;\r\n /** (property getter) longitude in radians */\r\n public get longitudeRadians(): number { return this._longitude.radians; }\r\n /** (property getter) longitude in degrees */\r\n public get longitudeDegrees(): number { return this._longitude.degrees; }\r\n /** (property getter) (reference to) longitude as a strongly typed `Angle` */\r\n public get longitudeRef(): Angle { return this._longitude; }\r\n /** (property getter) (clone of) longitude as a strongly typed `Angle` */\r\n public get longitude(): Angle { return this._longitude.clone(); }\r\n\r\n /** (property getter) latitude in radians */\r\n public get latitudeRadians(): number { return this._latitude.radians; }\r\n /** (property getter) latitude in degrees */\r\n public get latitudeDegrees(): number { return this._latitude.degrees; }\r\n /** (property getter) (reference to) latitude as a strongly typed `Angle` */\r\n public get latitudeRef(): Angle { return this._latitude; }\r\n /** (property getter) (clone of) latitude as a strongly typed `Angle` */\r\n public get latitude(): Angle { return this._latitude.clone(); }\r\n\r\n /** Get or set the altitude. */\r\n public get altitude(): number { return this._altitude; }\r\n public set altitude(value: number) { this._altitude = value; }\r\n /** Constructor: Capture angles and altitude */\r\n private constructor(longitude: Angle, latitude: Angle, altitude: number) {\r\n this._longitude = longitude;\r\n this._latitude = latitude;\r\n this._altitude = altitude;\r\n }\r\n /** Create with all zero angles and altitude. */\r\n public static createZero(): LongitudeLatitudeNumber { return new LongitudeLatitudeNumber(Angle.createDegrees(0), Angle.createDegrees(0), 0); }\r\n /** Create with strongly typed `Angle` inputs */\r\n public static create(longitude: Angle, latitude: Angle, h: number = 0, result?: LongitudeLatitudeNumber): LongitudeLatitudeNumber {\r\n if (result) {\r\n result._latitude.setFrom(latitude);\r\n result._longitude.setFrom(longitude);\r\n result._altitude = h;\r\n return result;\r\n }\r\n return new LongitudeLatitudeNumber(longitude.clone(), latitude.clone(), h);\r\n }\r\n /** Create with angles in radians. */\r\n public static createRadians(longitudeRadians: number, latitudeRadians: number, h: number = 0, result?: LongitudeLatitudeNumber): LongitudeLatitudeNumber {\r\n if (result) {\r\n result._longitude.setRadians(longitudeRadians);\r\n result._latitude.setRadians(latitudeRadians);\r\n result._altitude = h;\r\n return result;\r\n }\r\n return new LongitudeLatitudeNumber(Angle.createRadians(longitudeRadians), Angle.createRadians(latitudeRadians), h);\r\n }\r\n /** Create with angles in degrees. */\r\n public static createDegrees(longitudeDegrees: number, latitudeDegrees: number, h: number = 0, result?: LongitudeLatitudeNumber): LongitudeLatitudeNumber {\r\n if (result) {\r\n result._longitude.setRadians(longitudeDegrees);\r\n result._latitude.setRadians(latitudeDegrees);\r\n result._altitude = h;\r\n return result;\r\n }\r\n return new LongitudeLatitudeNumber(Angle.createDegrees(longitudeDegrees), Angle.createDegrees(latitudeDegrees), h);\r\n }\r\n /**\r\n * Set content from a JSON object.\r\n * If the json object is undefined or unrecognized, always set a default value.\r\n *\r\n */\r\n public setFromJSON(json: any) {\r\n if (json.latitude !== undefined) {\r\n this._latitude.setFromJSON(json.latitude);\r\n } else {\r\n this._latitude.setDegrees(0);\r\n }\r\n\r\n if (json.longitude !== undefined) {\r\n this._longitude.setFromJSON(json.longitude);\r\n } else {\r\n this._longitude.setDegrees(0);\r\n }\r\n\r\n if (json.h !== undefined && Number.isFinite(json.h)) {\r\n this._altitude = json.h;\r\n } else {\r\n this._altitude = 0;\r\n }\r\n }\r\n\r\n /** Return a json object with this object's contents.\r\n * * Tag names are: longitude, latitude, h\r\n */\r\n public toJSON(): any {\r\n return { latitude: this._latitude.toJSON(), longitude: this._longitude.toJSON(), h: this._altitude };\r\n }\r\n /** Test for near equality */\r\n public isAlmostEqual(other: LongitudeLatitudeNumber): boolean {\r\n return this._latitude.isAlmostEqual(other._latitude)\r\n && this._longitude.isAlmostEqual(other._longitude)\r\n && Geometry.isSameCoordinate(this._altitude, other._altitude);\r\n }\r\n /** Return a copy */\r\n public clone(): LongitudeLatitudeNumber {\r\n return new LongitudeLatitudeNumber(this._longitude.clone(), this._latitude.clone(), this._altitude);\r\n }\r\n}\r\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Matrix3d.d.ts","sourceRoot":"","sources":["../../src/geometry3d/Matrix3d.ts"],"names":[],"mappings":"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"}