@itwin/core-geometry 5.0.0-dev.9 → 5.0.0-dev.92

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 (1004) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/lib/cjs/Constant.js +17 -17
  3. package/lib/cjs/Constant.js.map +1 -1
  4. package/lib/cjs/Geometry.d.ts +2 -4
  5. package/lib/cjs/Geometry.d.ts.map +1 -1
  6. package/lib/cjs/Geometry.js +37 -39
  7. package/lib/cjs/Geometry.js.map +1 -1
  8. package/lib/cjs/bspline/AkimaCurve3d.js +3 -1
  9. package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -1
  10. package/lib/cjs/bspline/BSpline1dNd.d.ts +90 -54
  11. package/lib/cjs/bspline/BSpline1dNd.d.ts.map +1 -1
  12. package/lib/cjs/bspline/BSpline1dNd.js +137 -84
  13. package/lib/cjs/bspline/BSpline1dNd.js.map +1 -1
  14. package/lib/cjs/bspline/BSplineCurve.d.ts +193 -155
  15. package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -1
  16. package/lib/cjs/bspline/BSplineCurve.js +249 -181
  17. package/lib/cjs/bspline/BSplineCurve.js.map +1 -1
  18. package/lib/cjs/bspline/BSplineCurve3dH.js +1 -0
  19. package/lib/cjs/bspline/BSplineCurve3dH.js.map +1 -1
  20. package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -1
  21. package/lib/cjs/bspline/BSplineCurveOps.js +18 -21
  22. package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -1
  23. package/lib/cjs/bspline/BSplineSurface.js +22 -2
  24. package/lib/cjs/bspline/BSplineSurface.js.map +1 -1
  25. package/lib/cjs/bspline/Bezier1dNd.js +6 -0
  26. package/lib/cjs/bspline/Bezier1dNd.js.map +1 -1
  27. package/lib/cjs/bspline/BezierCurve3d.d.ts +3 -1
  28. package/lib/cjs/bspline/BezierCurve3d.d.ts.map +1 -1
  29. package/lib/cjs/bspline/BezierCurve3d.js +5 -5
  30. package/lib/cjs/bspline/BezierCurve3d.js.map +1 -1
  31. package/lib/cjs/bspline/BezierCurve3dH.js +2 -0
  32. package/lib/cjs/bspline/BezierCurve3dH.js.map +1 -1
  33. package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -1
  34. package/lib/cjs/bspline/BezierCurveBase.js +21 -2
  35. package/lib/cjs/bspline/BezierCurveBase.js.map +1 -1
  36. package/lib/cjs/bspline/InterpolationCurve3d.js +12 -1
  37. package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -1
  38. package/lib/cjs/bspline/KnotVector.d.ts +82 -60
  39. package/lib/cjs/bspline/KnotVector.d.ts.map +1 -1
  40. package/lib/cjs/bspline/KnotVector.js +144 -84
  41. package/lib/cjs/bspline/KnotVector.js.map +1 -1
  42. package/lib/cjs/bspline/SurfaceLocationDetail.js +12 -0
  43. package/lib/cjs/bspline/SurfaceLocationDetail.js.map +1 -1
  44. package/lib/cjs/clipping/AlternatingConvexClipTree.js +14 -13
  45. package/lib/cjs/clipping/AlternatingConvexClipTree.js.map +1 -1
  46. package/lib/cjs/clipping/BooleanClipFactory.js.map +1 -1
  47. package/lib/cjs/clipping/BooleanClipNode.js +4 -0
  48. package/lib/cjs/clipping/BooleanClipNode.js.map +1 -1
  49. package/lib/cjs/clipping/ClipPlane.js +10 -1
  50. package/lib/cjs/clipping/ClipPlane.js.map +1 -1
  51. package/lib/cjs/clipping/ClipPrimitive.js +19 -0
  52. package/lib/cjs/clipping/ClipPrimitive.js.map +1 -1
  53. package/lib/cjs/clipping/ClipUtils.js +5 -1
  54. package/lib/cjs/clipping/ClipUtils.js.map +1 -1
  55. package/lib/cjs/clipping/ClipVector.js +11 -8
  56. package/lib/cjs/clipping/ClipVector.js.map +1 -1
  57. package/lib/cjs/clipping/ConvexClipPlaneSet.js +5 -3
  58. package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -1
  59. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js +2 -1
  60. package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  61. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js +3 -0
  62. package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  63. package/lib/cjs/core-geometry.d.ts +1 -0
  64. package/lib/cjs/core-geometry.d.ts.map +1 -1
  65. package/lib/cjs/core-geometry.js +1 -0
  66. package/lib/cjs/core-geometry.js.map +1 -1
  67. package/lib/cjs/curve/Arc3d.d.ts +17 -3
  68. package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
  69. package/lib/cjs/curve/Arc3d.js +50 -21
  70. package/lib/cjs/curve/Arc3d.js.map +1 -1
  71. package/lib/cjs/curve/ConstructCurveBetweenCurves.js +3 -0
  72. package/lib/cjs/curve/ConstructCurveBetweenCurves.js.map +1 -1
  73. package/lib/cjs/curve/CoordinateXYZ.js +3 -2
  74. package/lib/cjs/curve/CoordinateXYZ.js.map +1 -1
  75. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts +0 -2
  76. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  77. package/lib/cjs/curve/CurveChainWithDistanceIndex.js +25 -10
  78. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
  79. package/lib/cjs/curve/CurveCollection.d.ts +10 -0
  80. package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
  81. package/lib/cjs/curve/CurveCollection.js +35 -9
  82. package/lib/cjs/curve/CurveCollection.js.map +1 -1
  83. package/lib/cjs/curve/CurveCurve.js.map +1 -1
  84. package/lib/cjs/curve/CurveExtendMode.js.map +1 -1
  85. package/lib/cjs/curve/CurveFactory.d.ts +87 -53
  86. package/lib/cjs/curve/CurveFactory.d.ts.map +1 -1
  87. package/lib/cjs/curve/CurveFactory.js +213 -135
  88. package/lib/cjs/curve/CurveFactory.js.map +1 -1
  89. package/lib/cjs/curve/CurveLocationDetail.js +44 -0
  90. package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
  91. package/lib/cjs/curve/CurveOps.js.map +1 -1
  92. package/lib/cjs/curve/CurvePrimitive.d.ts +7 -10
  93. package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -1
  94. package/lib/cjs/curve/CurvePrimitive.js +27 -12
  95. package/lib/cjs/curve/CurvePrimitive.js.map +1 -1
  96. package/lib/cjs/curve/CurveProcessor.js +2 -0
  97. package/lib/cjs/curve/CurveProcessor.js.map +1 -1
  98. package/lib/cjs/curve/CurveTypes.js.map +1 -1
  99. package/lib/cjs/curve/CurveWireMomentsXYZ.js +2 -0
  100. package/lib/cjs/curve/CurveWireMomentsXYZ.js.map +1 -1
  101. package/lib/cjs/curve/GeometryQuery.js.map +1 -1
  102. package/lib/cjs/curve/LineSegment3d.js +6 -2
  103. package/lib/cjs/curve/LineSegment3d.js.map +1 -1
  104. package/lib/cjs/curve/LineString3d.js +27 -7
  105. package/lib/cjs/curve/LineString3d.js.map +1 -1
  106. package/lib/cjs/curve/Loop.js +12 -4
  107. package/lib/cjs/curve/Loop.js.map +1 -1
  108. package/lib/cjs/curve/OffsetOptions.js +25 -21
  109. package/lib/cjs/curve/OffsetOptions.js.map +1 -1
  110. package/lib/cjs/curve/ParityRegion.js +4 -2
  111. package/lib/cjs/curve/ParityRegion.js.map +1 -1
  112. package/lib/cjs/curve/Path.js +2 -2
  113. package/lib/cjs/curve/Path.js.map +1 -1
  114. package/lib/cjs/curve/PointString3d.js +3 -2
  115. package/lib/cjs/curve/PointString3d.js.map +1 -1
  116. package/lib/cjs/curve/ProxyCurve.js +1 -0
  117. package/lib/cjs/curve/ProxyCurve.js.map +1 -1
  118. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js +1 -0
  119. package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  120. package/lib/cjs/curve/Query/CurveSplitContext.js +3 -0
  121. package/lib/cjs/curve/Query/CurveSplitContext.js.map +1 -1
  122. package/lib/cjs/curve/Query/CylindricalRange.js +6 -2
  123. package/lib/cjs/curve/Query/CylindricalRange.js.map +1 -1
  124. package/lib/cjs/curve/Query/InOutTests.js.map +1 -1
  125. package/lib/cjs/curve/Query/PlanarSubdivision.js +4 -6
  126. package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -1
  127. package/lib/cjs/curve/Query/StrokeCountChain.js +12 -0
  128. package/lib/cjs/curve/Query/StrokeCountChain.js.map +1 -1
  129. package/lib/cjs/curve/Query/StrokeCountMap.js +14 -0
  130. package/lib/cjs/curve/Query/StrokeCountMap.js.map +1 -1
  131. package/lib/cjs/curve/RegionMomentsXY.js +4 -5
  132. package/lib/cjs/curve/RegionMomentsXY.js.map +1 -1
  133. package/lib/cjs/curve/RegionOps.js +9 -10
  134. package/lib/cjs/curve/RegionOps.js.map +1 -1
  135. package/lib/cjs/curve/RegionOpsClassificationSweeps.js +24 -1
  136. package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -1
  137. package/lib/cjs/curve/StrokeOptions.d.ts +4 -4
  138. package/lib/cjs/curve/StrokeOptions.d.ts.map +1 -1
  139. package/lib/cjs/curve/StrokeOptions.js +23 -6
  140. package/lib/cjs/curve/StrokeOptions.js.map +1 -1
  141. package/lib/cjs/curve/UnionRegion.js +4 -2
  142. package/lib/cjs/curve/UnionRegion.js.map +1 -1
  143. package/lib/cjs/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js +13 -7
  144. package/lib/cjs/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  145. package/lib/cjs/curve/internalContexts/ChainCollectorContext.js +6 -0
  146. package/lib/cjs/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  147. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js +2 -0
  148. package/lib/cjs/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  149. package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -1
  150. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js +13 -5
  151. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  152. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js +3 -0
  153. package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  154. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js +18 -5
  155. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  156. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +26 -13
  157. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  158. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js +11 -5
  159. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  160. package/lib/cjs/curve/internalContexts/CurveLengthContext.js +6 -0
  161. package/lib/cjs/curve/internalContexts/CurveLengthContext.js.map +1 -1
  162. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js +8 -6
  163. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  164. package/lib/cjs/curve/internalContexts/EllipticalArcApproximationContext.js +38 -5
  165. package/lib/cjs/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  166. package/lib/cjs/curve/internalContexts/GapSearchContext.js +1 -0
  167. package/lib/cjs/curve/internalContexts/GapSearchContext.js.map +1 -1
  168. package/lib/cjs/curve/internalContexts/MultiChainCollector.js +12 -0
  169. package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -1
  170. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.js +1 -0
  171. package/lib/cjs/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  172. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js +7 -0
  173. package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  174. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js +22 -4
  175. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  176. package/lib/cjs/curve/internalContexts/SumLengthsContext.js +1 -0
  177. package/lib/cjs/curve/internalContexts/SumLengthsContext.js.map +1 -1
  178. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js +3 -0
  179. package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  180. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js +2 -0
  181. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  182. package/lib/cjs/curve/spiral/ClothoidSeries.js +4 -0
  183. package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -1
  184. package/lib/cjs/curve/spiral/CubicEvaluator.js +2 -0
  185. package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -1
  186. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js +4 -0
  187. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  188. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js +5 -0
  189. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  190. package/lib/cjs/curve/spiral/DirectSpiral3d.js +12 -2
  191. package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -1
  192. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +24 -4
  193. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  194. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +2 -0
  195. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  196. package/lib/cjs/curve/spiral/NormalizedTransition.js +5 -0
  197. package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -1
  198. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js +2 -0
  199. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  200. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js +10 -0
  201. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  202. package/lib/cjs/curve/spiral/TransitionSpiral3d.js +10 -0
  203. package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -1
  204. package/lib/cjs/curve/spiral/XYCurveEvaluator.js +6 -0
  205. package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -1
  206. package/lib/cjs/geometry3d/Angle.js +18 -16
  207. package/lib/cjs/geometry3d/Angle.js.map +1 -1
  208. package/lib/cjs/geometry3d/AngleSweep.d.ts +7 -2
  209. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
  210. package/lib/cjs/geometry3d/AngleSweep.js +14 -2
  211. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
  212. package/lib/cjs/geometry3d/BarycentricTriangle.js +25 -0
  213. package/lib/cjs/geometry3d/BarycentricTriangle.js.map +1 -1
  214. package/lib/cjs/geometry3d/BilinearPatch.js +8 -0
  215. package/lib/cjs/geometry3d/BilinearPatch.js.map +1 -1
  216. package/lib/cjs/geometry3d/CoincidentGeometryOps.js +5 -0
  217. package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -1
  218. package/lib/cjs/geometry3d/Ellipsoid.js +48 -0
  219. package/lib/cjs/geometry3d/Ellipsoid.js.map +1 -1
  220. package/lib/cjs/geometry3d/FrameBuilder.js +12 -4
  221. package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -1
  222. package/lib/cjs/geometry3d/FrustumAnimation.js +7 -0
  223. package/lib/cjs/geometry3d/FrustumAnimation.js.map +1 -1
  224. package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -1
  225. package/lib/cjs/geometry3d/GrowableBlockedArray.js +12 -0
  226. package/lib/cjs/geometry3d/GrowableBlockedArray.js.map +1 -1
  227. package/lib/cjs/geometry3d/GrowableFloat64Array.js +3 -0
  228. package/lib/cjs/geometry3d/GrowableFloat64Array.js.map +1 -1
  229. package/lib/cjs/geometry3d/GrowableXYArray.d.ts +0 -5
  230. package/lib/cjs/geometry3d/GrowableXYArray.d.ts.map +1 -1
  231. package/lib/cjs/geometry3d/GrowableXYArray.js +16 -7
  232. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
  233. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts +32 -10
  234. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  235. package/lib/cjs/geometry3d/GrowableXYZArray.js +70 -16
  236. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -1
  237. package/lib/cjs/geometry3d/IndexedCollectionInterval.js +6 -0
  238. package/lib/cjs/geometry3d/IndexedCollectionInterval.js.map +1 -1
  239. package/lib/cjs/geometry3d/IndexedXYCollection.js +1 -0
  240. package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -1
  241. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts +13 -2
  242. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  243. package/lib/cjs/geometry3d/IndexedXYZCollection.js +26 -11
  244. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -1
  245. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js +3 -0
  246. package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  247. package/lib/cjs/geometry3d/Matrix3d.d.ts +3 -4
  248. package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -1
  249. package/lib/cjs/geometry3d/Matrix3d.js +36 -14
  250. package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
  251. package/lib/cjs/geometry3d/OrderedRotationAngles.js +10 -2
  252. package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -1
  253. package/lib/cjs/geometry3d/Plane3d.js.map +1 -1
  254. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js +2 -0
  255. package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  256. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js +7 -0
  257. package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  258. package/lib/cjs/geometry3d/Point2dArrayCarrier.js +2 -0
  259. package/lib/cjs/geometry3d/Point2dArrayCarrier.js.map +1 -1
  260. package/lib/cjs/geometry3d/Point2dVector2d.js +4 -0
  261. package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
  262. package/lib/cjs/geometry3d/Point3dArrayCarrier.js +3 -1
  263. package/lib/cjs/geometry3d/Point3dArrayCarrier.js.map +1 -1
  264. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +7 -10
  265. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  266. package/lib/cjs/geometry3d/Point3dVector3d.js +16 -10
  267. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  268. package/lib/cjs/geometry3d/PointHelpers.d.ts +4 -4
  269. package/lib/cjs/geometry3d/PointHelpers.d.ts.map +1 -1
  270. package/lib/cjs/geometry3d/PointHelpers.js +8 -8
  271. package/lib/cjs/geometry3d/PointHelpers.js.map +1 -1
  272. package/lib/cjs/geometry3d/PointStreaming.js +12 -4
  273. package/lib/cjs/geometry3d/PointStreaming.js.map +1 -1
  274. package/lib/cjs/geometry3d/PolygonOps.d.ts +2 -2
  275. package/lib/cjs/geometry3d/PolygonOps.js +62 -25
  276. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
  277. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js +7 -3
  278. package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  279. package/lib/cjs/geometry3d/PolylineOps.d.ts +9 -5
  280. package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -1
  281. package/lib/cjs/geometry3d/PolylineOps.js +12 -5
  282. package/lib/cjs/geometry3d/PolylineOps.js.map +1 -1
  283. package/lib/cjs/geometry3d/Range.js +21 -4
  284. package/lib/cjs/geometry3d/Range.js.map +1 -1
  285. package/lib/cjs/geometry3d/Ray2d.js +2 -0
  286. package/lib/cjs/geometry3d/Ray2d.js.map +1 -1
  287. package/lib/cjs/geometry3d/Ray3d.d.ts +2 -2
  288. package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
  289. package/lib/cjs/geometry3d/Ray3d.js +20 -11
  290. package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
  291. package/lib/cjs/geometry3d/ReusableObjectCache.js +4 -0
  292. package/lib/cjs/geometry3d/ReusableObjectCache.js.map +1 -1
  293. package/lib/cjs/geometry3d/Segment1d.js +4 -0
  294. package/lib/cjs/geometry3d/Segment1d.js.map +1 -1
  295. package/lib/cjs/geometry3d/SortablePolygon.js +11 -0
  296. package/lib/cjs/geometry3d/SortablePolygon.js.map +1 -1
  297. package/lib/cjs/geometry3d/Transform.d.ts +1 -1
  298. package/lib/cjs/geometry3d/Transform.js +4 -1
  299. package/lib/cjs/geometry3d/Transform.js.map +1 -1
  300. package/lib/cjs/geometry3d/UVSurfaceOps.js.map +1 -1
  301. package/lib/cjs/geometry3d/XYZProps.js.map +1 -1
  302. package/lib/cjs/geometry3d/YawPitchRollAngles.js +6 -0
  303. package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -1
  304. package/lib/cjs/geometry4d/Map4d.js +2 -0
  305. package/lib/cjs/geometry4d/Map4d.js.map +1 -1
  306. package/lib/cjs/geometry4d/Matrix4d.js +1 -0
  307. package/lib/cjs/geometry4d/Matrix4d.js.map +1 -1
  308. package/lib/cjs/geometry4d/MomentData.d.ts +72 -73
  309. package/lib/cjs/geometry4d/MomentData.d.ts.map +1 -1
  310. package/lib/cjs/geometry4d/MomentData.js +90 -66
  311. package/lib/cjs/geometry4d/MomentData.js.map +1 -1
  312. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js +6 -0
  313. package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  314. package/lib/cjs/geometry4d/Point4d.js +2 -0
  315. package/lib/cjs/geometry4d/Point4d.js.map +1 -1
  316. package/lib/cjs/numerics/BandedSystem.js.map +1 -1
  317. package/lib/cjs/numerics/BezierPolynomials.js +8 -0
  318. package/lib/cjs/numerics/BezierPolynomials.js.map +1 -1
  319. package/lib/cjs/numerics/ClusterableArray.js +29 -13
  320. package/lib/cjs/numerics/ClusterableArray.js.map +1 -1
  321. package/lib/cjs/numerics/Complex.js +2 -0
  322. package/lib/cjs/numerics/Complex.js.map +1 -1
  323. package/lib/cjs/numerics/ConvexPolygon2d.js +3 -0
  324. package/lib/cjs/numerics/ConvexPolygon2d.js.map +1 -1
  325. package/lib/cjs/numerics/Newton.js +59 -4
  326. package/lib/cjs/numerics/Newton.js.map +1 -1
  327. package/lib/cjs/numerics/PascalCoefficients.js +1 -1
  328. package/lib/cjs/numerics/PascalCoefficients.js.map +1 -1
  329. package/lib/cjs/numerics/PolarData.js +13 -1
  330. package/lib/cjs/numerics/PolarData.js.map +1 -1
  331. package/lib/cjs/numerics/Polynomials.js +64 -26
  332. package/lib/cjs/numerics/Polynomials.js.map +1 -1
  333. package/lib/cjs/numerics/Quadrature.js +26 -20
  334. package/lib/cjs/numerics/Quadrature.js.map +1 -1
  335. package/lib/cjs/numerics/Range1dArray.js.map +1 -1
  336. package/lib/cjs/numerics/SmallSystem.js.map +1 -1
  337. package/lib/cjs/numerics/TriDiagonalSystem.js +11 -0
  338. package/lib/cjs/numerics/TriDiagonalSystem.js.map +1 -1
  339. package/lib/cjs/numerics/UnionFind.js +1 -0
  340. package/lib/cjs/numerics/UnionFind.js.map +1 -1
  341. package/lib/cjs/numerics/UsageSums.js +10 -0
  342. package/lib/cjs/numerics/UsageSums.js.map +1 -1
  343. package/lib/cjs/polyface/AuxData.js +16 -0
  344. package/lib/cjs/polyface/AuxData.js.map +1 -1
  345. package/lib/cjs/polyface/BoxTopology.js +67 -67
  346. package/lib/cjs/polyface/BoxTopology.js.map +1 -1
  347. package/lib/cjs/polyface/FacetFaceData.d.ts +1 -1
  348. package/lib/cjs/polyface/FacetFaceData.js +3 -1
  349. package/lib/cjs/polyface/FacetFaceData.js.map +1 -1
  350. package/lib/cjs/polyface/FacetLocationDetail.js +30 -0
  351. package/lib/cjs/polyface/FacetLocationDetail.js.map +1 -1
  352. package/lib/cjs/polyface/FacetOrientation.js +12 -1
  353. package/lib/cjs/polyface/FacetOrientation.js.map +1 -1
  354. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js +18 -2
  355. package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  356. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts +33 -23
  357. package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  358. package/lib/cjs/polyface/IndexedEdgeMatcher.js +63 -33
  359. package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -1
  360. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts +3 -2
  361. package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  362. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js +11 -2
  363. package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  364. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts +233 -0
  365. package/lib/cjs/polyface/IndexedPolyfaceWalker.d.ts.map +1 -0
  366. package/lib/cjs/polyface/IndexedPolyfaceWalker.js +353 -0
  367. package/lib/cjs/polyface/IndexedPolyfaceWalker.js.map +1 -0
  368. package/lib/cjs/polyface/Polyface.d.ts +35 -10
  369. package/lib/cjs/polyface/Polyface.d.ts.map +1 -1
  370. package/lib/cjs/polyface/Polyface.js +73 -12
  371. package/lib/cjs/polyface/Polyface.js.map +1 -1
  372. package/lib/cjs/polyface/PolyfaceBuilder.d.ts +14 -27
  373. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  374. package/lib/cjs/polyface/PolyfaceBuilder.js +47 -79
  375. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  376. package/lib/cjs/polyface/PolyfaceClip.js +8 -0
  377. package/lib/cjs/polyface/PolyfaceClip.js.map +1 -1
  378. package/lib/cjs/polyface/PolyfaceData.d.ts +28 -0
  379. package/lib/cjs/polyface/PolyfaceData.d.ts.map +1 -1
  380. package/lib/cjs/polyface/PolyfaceData.js +87 -5
  381. package/lib/cjs/polyface/PolyfaceData.js.map +1 -1
  382. package/lib/cjs/polyface/PolyfaceQuery.js +47 -7
  383. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  384. package/lib/cjs/polyface/RangeLengthData.js +7 -0
  385. package/lib/cjs/polyface/RangeLengthData.js.map +1 -1
  386. package/lib/cjs/polyface/RangeTree/LineString3dRangeTreeContext.js +12 -0
  387. package/lib/cjs/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  388. package/lib/cjs/polyface/RangeTree/MinimumValueTester.js +5 -2
  389. package/lib/cjs/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  390. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js +12 -0
  391. package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  392. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js +14 -0
  393. package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  394. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js +5 -0
  395. package/lib/cjs/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  396. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js +43 -0
  397. package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  398. package/lib/cjs/polyface/TaggedNumericData.js +8 -0
  399. package/lib/cjs/polyface/TaggedNumericData.js.map +1 -1
  400. package/lib/cjs/polyface/TriangleCandidate.js +3 -0
  401. package/lib/cjs/polyface/TriangleCandidate.js.map +1 -1
  402. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js +7 -0
  403. package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  404. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js +6 -0
  405. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  406. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +3 -0
  407. package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  408. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js +3 -0
  409. package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  410. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js +32 -0
  411. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  412. package/lib/cjs/polyface/multiclip/Range2dSearchInterface.js.map +1 -1
  413. package/lib/cjs/polyface/multiclip/RangeSearch.js +5 -5
  414. package/lib/cjs/polyface/multiclip/RangeSearch.js.map +1 -1
  415. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js +21 -8
  416. package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  417. package/lib/cjs/polyface/multiclip/XYPointBuckets.js +6 -0
  418. package/lib/cjs/polyface/multiclip/XYPointBuckets.js.map +1 -1
  419. package/lib/cjs/serialization/BGFBAccessors.js +82 -164
  420. package/lib/cjs/serialization/BGFBAccessors.js.map +1 -1
  421. package/lib/cjs/serialization/BGFBReader.js +22 -22
  422. package/lib/cjs/serialization/BGFBReader.js.map +1 -1
  423. package/lib/cjs/serialization/BGFBWriter.js +1 -0
  424. package/lib/cjs/serialization/BGFBWriter.js.map +1 -1
  425. package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  426. package/lib/cjs/serialization/DeepCompare.js +17 -17
  427. package/lib/cjs/serialization/DeepCompare.js.map +1 -1
  428. package/lib/cjs/serialization/GeometrySamples.d.ts +5 -5
  429. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  430. package/lib/cjs/serialization/GeometrySamples.js +113 -112
  431. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  432. package/lib/cjs/serialization/IModelJsonSchema.d.ts +70 -63
  433. package/lib/cjs/serialization/IModelJsonSchema.d.ts.map +1 -1
  434. package/lib/cjs/serialization/IModelJsonSchema.js +87 -74
  435. package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -1
  436. package/lib/cjs/serialization/SerializationHelpers.js.map +1 -1
  437. package/lib/cjs/solid/Box.js +7 -2
  438. package/lib/cjs/solid/Box.js.map +1 -1
  439. package/lib/cjs/solid/Cone.d.ts +39 -14
  440. package/lib/cjs/solid/Cone.d.ts.map +1 -1
  441. package/lib/cjs/solid/Cone.js +52 -16
  442. package/lib/cjs/solid/Cone.js.map +1 -1
  443. package/lib/cjs/solid/LinearSweep.js +4 -2
  444. package/lib/cjs/solid/LinearSweep.js.map +1 -1
  445. package/lib/cjs/solid/RotationalSweep.js +5 -2
  446. package/lib/cjs/solid/RotationalSweep.js.map +1 -1
  447. package/lib/cjs/solid/RuledSweep.d.ts +26 -23
  448. package/lib/cjs/solid/RuledSweep.d.ts.map +1 -1
  449. package/lib/cjs/solid/RuledSweep.js +32 -24
  450. package/lib/cjs/solid/RuledSweep.js.map +1 -1
  451. package/lib/cjs/solid/SolidPrimitive.d.ts +12 -11
  452. package/lib/cjs/solid/SolidPrimitive.d.ts.map +1 -1
  453. package/lib/cjs/solid/SolidPrimitive.js +11 -6
  454. package/lib/cjs/solid/SolidPrimitive.js.map +1 -1
  455. package/lib/cjs/solid/Sphere.d.ts +34 -17
  456. package/lib/cjs/solid/Sphere.d.ts.map +1 -1
  457. package/lib/cjs/solid/Sphere.js +51 -24
  458. package/lib/cjs/solid/Sphere.js.map +1 -1
  459. package/lib/cjs/solid/SweepContour.d.ts +24 -15
  460. package/lib/cjs/solid/SweepContour.d.ts.map +1 -1
  461. package/lib/cjs/solid/SweepContour.js +33 -15
  462. package/lib/cjs/solid/SweepContour.js.map +1 -1
  463. package/lib/cjs/solid/TorusPipe.js +7 -2
  464. package/lib/cjs/solid/TorusPipe.js.map +1 -1
  465. package/lib/cjs/topology/ChainMerge.js +16 -4
  466. package/lib/cjs/topology/ChainMerge.js.map +1 -1
  467. package/lib/cjs/topology/Graph.js +41 -6
  468. package/lib/cjs/topology/Graph.js.map +1 -1
  469. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +1 -1
  470. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +5 -1
  471. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  472. package/lib/cjs/topology/HalfEdgeGraphSearch.js +2 -0
  473. package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -1
  474. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js +9 -2
  475. package/lib/cjs/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  476. package/lib/cjs/topology/HalfEdgeGraphValidation.js +7 -9
  477. package/lib/cjs/topology/HalfEdgeGraphValidation.js.map +1 -1
  478. package/lib/cjs/topology/HalfEdgeMarkSet.js +5 -0
  479. package/lib/cjs/topology/HalfEdgeMarkSet.js.map +1 -1
  480. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js +6 -0
  481. package/lib/cjs/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  482. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js +1 -0
  483. package/lib/cjs/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  484. package/lib/cjs/topology/HalfEdgePositionDetail.js +16 -0
  485. package/lib/cjs/topology/HalfEdgePositionDetail.js.map +1 -1
  486. package/lib/cjs/topology/HalfEdgePriorityQueue.js +2 -0
  487. package/lib/cjs/topology/HalfEdgePriorityQueue.js.map +1 -1
  488. package/lib/cjs/topology/InsertAndRetriangulateContext.js +4 -0
  489. package/lib/cjs/topology/InsertAndRetriangulateContext.js.map +1 -1
  490. package/lib/cjs/topology/MaskManager.js +3 -0
  491. package/lib/cjs/topology/MaskManager.js.map +1 -1
  492. package/lib/cjs/topology/Merging.js +11 -6
  493. package/lib/cjs/topology/Merging.js.map +1 -1
  494. package/lib/cjs/topology/RegularizeFace.js +22 -0
  495. package/lib/cjs/topology/RegularizeFace.js.map +1 -1
  496. package/lib/cjs/topology/SignedDataSummary.js +22 -0
  497. package/lib/cjs/topology/SignedDataSummary.js.map +1 -1
  498. package/lib/cjs/topology/SpaceTriangulation.js.map +1 -1
  499. package/lib/cjs/topology/Triangulation.js +21 -11
  500. package/lib/cjs/topology/Triangulation.js.map +1 -1
  501. package/lib/cjs/topology/XYParitySearchContext.js +13 -0
  502. package/lib/cjs/topology/XYParitySearchContext.js.map +1 -1
  503. package/lib/esm/Constant.js +17 -17
  504. package/lib/esm/Constant.js.map +1 -1
  505. package/lib/esm/Geometry.d.ts +2 -4
  506. package/lib/esm/Geometry.d.ts.map +1 -1
  507. package/lib/esm/Geometry.js +37 -39
  508. package/lib/esm/Geometry.js.map +1 -1
  509. package/lib/esm/bspline/AkimaCurve3d.js +3 -1
  510. package/lib/esm/bspline/AkimaCurve3d.js.map +1 -1
  511. package/lib/esm/bspline/BSpline1dNd.d.ts +90 -54
  512. package/lib/esm/bspline/BSpline1dNd.d.ts.map +1 -1
  513. package/lib/esm/bspline/BSpline1dNd.js +137 -84
  514. package/lib/esm/bspline/BSpline1dNd.js.map +1 -1
  515. package/lib/esm/bspline/BSplineCurve.d.ts +193 -155
  516. package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -1
  517. package/lib/esm/bspline/BSplineCurve.js +249 -181
  518. package/lib/esm/bspline/BSplineCurve.js.map +1 -1
  519. package/lib/esm/bspline/BSplineCurve3dH.js +1 -0
  520. package/lib/esm/bspline/BSplineCurve3dH.js.map +1 -1
  521. package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -1
  522. package/lib/esm/bspline/BSplineCurveOps.js +18 -21
  523. package/lib/esm/bspline/BSplineCurveOps.js.map +1 -1
  524. package/lib/esm/bspline/BSplineSurface.js +22 -2
  525. package/lib/esm/bspline/BSplineSurface.js.map +1 -1
  526. package/lib/esm/bspline/Bezier1dNd.js +6 -0
  527. package/lib/esm/bspline/Bezier1dNd.js.map +1 -1
  528. package/lib/esm/bspline/BezierCurve3d.d.ts +3 -1
  529. package/lib/esm/bspline/BezierCurve3d.d.ts.map +1 -1
  530. package/lib/esm/bspline/BezierCurve3d.js +5 -5
  531. package/lib/esm/bspline/BezierCurve3d.js.map +1 -1
  532. package/lib/esm/bspline/BezierCurve3dH.js +2 -0
  533. package/lib/esm/bspline/BezierCurve3dH.js.map +1 -1
  534. package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -1
  535. package/lib/esm/bspline/BezierCurveBase.js +21 -2
  536. package/lib/esm/bspline/BezierCurveBase.js.map +1 -1
  537. package/lib/esm/bspline/InterpolationCurve3d.js +12 -1
  538. package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -1
  539. package/lib/esm/bspline/KnotVector.d.ts +82 -60
  540. package/lib/esm/bspline/KnotVector.d.ts.map +1 -1
  541. package/lib/esm/bspline/KnotVector.js +144 -84
  542. package/lib/esm/bspline/KnotVector.js.map +1 -1
  543. package/lib/esm/bspline/SurfaceLocationDetail.js +12 -0
  544. package/lib/esm/bspline/SurfaceLocationDetail.js.map +1 -1
  545. package/lib/esm/clipping/AlternatingConvexClipTree.js +14 -13
  546. package/lib/esm/clipping/AlternatingConvexClipTree.js.map +1 -1
  547. package/lib/esm/clipping/BooleanClipFactory.js.map +1 -1
  548. package/lib/esm/clipping/BooleanClipNode.js +4 -0
  549. package/lib/esm/clipping/BooleanClipNode.js.map +1 -1
  550. package/lib/esm/clipping/ClipPlane.js +10 -1
  551. package/lib/esm/clipping/ClipPlane.js.map +1 -1
  552. package/lib/esm/clipping/ClipPrimitive.js +19 -0
  553. package/lib/esm/clipping/ClipPrimitive.js.map +1 -1
  554. package/lib/esm/clipping/ClipUtils.js +5 -1
  555. package/lib/esm/clipping/ClipUtils.js.map +1 -1
  556. package/lib/esm/clipping/ClipVector.js +11 -8
  557. package/lib/esm/clipping/ClipVector.js.map +1 -1
  558. package/lib/esm/clipping/ConvexClipPlaneSet.js +5 -3
  559. package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -1
  560. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js +2 -1
  561. package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
  562. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js +3 -0
  563. package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -1
  564. package/lib/esm/core-geometry.d.ts +1 -0
  565. package/lib/esm/core-geometry.d.ts.map +1 -1
  566. package/lib/esm/core-geometry.js +1 -0
  567. package/lib/esm/core-geometry.js.map +1 -1
  568. package/lib/esm/curve/Arc3d.d.ts +17 -3
  569. package/lib/esm/curve/Arc3d.d.ts.map +1 -1
  570. package/lib/esm/curve/Arc3d.js +50 -21
  571. package/lib/esm/curve/Arc3d.js.map +1 -1
  572. package/lib/esm/curve/ConstructCurveBetweenCurves.js +3 -0
  573. package/lib/esm/curve/ConstructCurveBetweenCurves.js.map +1 -1
  574. package/lib/esm/curve/CoordinateXYZ.js +3 -2
  575. package/lib/esm/curve/CoordinateXYZ.js.map +1 -1
  576. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +0 -2
  577. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  578. package/lib/esm/curve/CurveChainWithDistanceIndex.js +25 -10
  579. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
  580. package/lib/esm/curve/CurveCollection.d.ts +10 -0
  581. package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
  582. package/lib/esm/curve/CurveCollection.js +35 -9
  583. package/lib/esm/curve/CurveCollection.js.map +1 -1
  584. package/lib/esm/curve/CurveCurve.js.map +1 -1
  585. package/lib/esm/curve/CurveExtendMode.js.map +1 -1
  586. package/lib/esm/curve/CurveFactory.d.ts +87 -53
  587. package/lib/esm/curve/CurveFactory.d.ts.map +1 -1
  588. package/lib/esm/curve/CurveFactory.js +213 -135
  589. package/lib/esm/curve/CurveFactory.js.map +1 -1
  590. package/lib/esm/curve/CurveLocationDetail.js +44 -0
  591. package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
  592. package/lib/esm/curve/CurveOps.js.map +1 -1
  593. package/lib/esm/curve/CurvePrimitive.d.ts +7 -10
  594. package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -1
  595. package/lib/esm/curve/CurvePrimitive.js +27 -12
  596. package/lib/esm/curve/CurvePrimitive.js.map +1 -1
  597. package/lib/esm/curve/CurveProcessor.js +2 -0
  598. package/lib/esm/curve/CurveProcessor.js.map +1 -1
  599. package/lib/esm/curve/CurveTypes.js.map +1 -1
  600. package/lib/esm/curve/CurveWireMomentsXYZ.js +2 -0
  601. package/lib/esm/curve/CurveWireMomentsXYZ.js.map +1 -1
  602. package/lib/esm/curve/GeometryQuery.js.map +1 -1
  603. package/lib/esm/curve/LineSegment3d.js +6 -2
  604. package/lib/esm/curve/LineSegment3d.js.map +1 -1
  605. package/lib/esm/curve/LineString3d.js +27 -7
  606. package/lib/esm/curve/LineString3d.js.map +1 -1
  607. package/lib/esm/curve/Loop.js +12 -4
  608. package/lib/esm/curve/Loop.js.map +1 -1
  609. package/lib/esm/curve/OffsetOptions.js +25 -21
  610. package/lib/esm/curve/OffsetOptions.js.map +1 -1
  611. package/lib/esm/curve/ParityRegion.js +4 -2
  612. package/lib/esm/curve/ParityRegion.js.map +1 -1
  613. package/lib/esm/curve/Path.js +2 -2
  614. package/lib/esm/curve/Path.js.map +1 -1
  615. package/lib/esm/curve/PointString3d.js +3 -2
  616. package/lib/esm/curve/PointString3d.js.map +1 -1
  617. package/lib/esm/curve/ProxyCurve.js +1 -0
  618. package/lib/esm/curve/ProxyCurve.js.map +1 -1
  619. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +1 -0
  620. package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
  621. package/lib/esm/curve/Query/CurveSplitContext.js +3 -0
  622. package/lib/esm/curve/Query/CurveSplitContext.js.map +1 -1
  623. package/lib/esm/curve/Query/CylindricalRange.js +6 -2
  624. package/lib/esm/curve/Query/CylindricalRange.js.map +1 -1
  625. package/lib/esm/curve/Query/InOutTests.js.map +1 -1
  626. package/lib/esm/curve/Query/PlanarSubdivision.js +4 -6
  627. package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -1
  628. package/lib/esm/curve/Query/StrokeCountChain.js +12 -0
  629. package/lib/esm/curve/Query/StrokeCountChain.js.map +1 -1
  630. package/lib/esm/curve/Query/StrokeCountMap.js +14 -0
  631. package/lib/esm/curve/Query/StrokeCountMap.js.map +1 -1
  632. package/lib/esm/curve/RegionMomentsXY.js +4 -5
  633. package/lib/esm/curve/RegionMomentsXY.js.map +1 -1
  634. package/lib/esm/curve/RegionOps.js +9 -10
  635. package/lib/esm/curve/RegionOps.js.map +1 -1
  636. package/lib/esm/curve/RegionOpsClassificationSweeps.js +24 -1
  637. package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -1
  638. package/lib/esm/curve/StrokeOptions.d.ts +4 -4
  639. package/lib/esm/curve/StrokeOptions.d.ts.map +1 -1
  640. package/lib/esm/curve/StrokeOptions.js +23 -6
  641. package/lib/esm/curve/StrokeOptions.js.map +1 -1
  642. package/lib/esm/curve/UnionRegion.js +4 -2
  643. package/lib/esm/curve/UnionRegion.js.map +1 -1
  644. package/lib/esm/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js +13 -7
  645. package/lib/esm/curve/internalContexts/AppendPlaneIntersectionStrokeHandler.js.map +1 -1
  646. package/lib/esm/curve/internalContexts/ChainCollectorContext.js +6 -0
  647. package/lib/esm/curve/internalContexts/ChainCollectorContext.js.map +1 -1
  648. package/lib/esm/curve/internalContexts/CloneCurvesContext.js +2 -0
  649. package/lib/esm/curve/internalContexts/CloneCurvesContext.js.map +1 -1
  650. package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -1
  651. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js +13 -5
  652. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  653. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js +3 -0
  654. package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -1
  655. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js +18 -5
  656. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  657. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +26 -13
  658. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  659. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js +11 -5
  660. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  661. package/lib/esm/curve/internalContexts/CurveLengthContext.js +6 -0
  662. package/lib/esm/curve/internalContexts/CurveLengthContext.js.map +1 -1
  663. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js +8 -6
  664. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  665. package/lib/esm/curve/internalContexts/EllipticalArcApproximationContext.js +38 -5
  666. package/lib/esm/curve/internalContexts/EllipticalArcApproximationContext.js.map +1 -1
  667. package/lib/esm/curve/internalContexts/GapSearchContext.js +1 -0
  668. package/lib/esm/curve/internalContexts/GapSearchContext.js.map +1 -1
  669. package/lib/esm/curve/internalContexts/MultiChainCollector.js +12 -0
  670. package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -1
  671. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.js +1 -0
  672. package/lib/esm/curve/internalContexts/NewtonRtoRStrokeHandler.js.map +1 -1
  673. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js +7 -0
  674. package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -1
  675. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +22 -4
  676. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  677. package/lib/esm/curve/internalContexts/SumLengthsContext.js +1 -0
  678. package/lib/esm/curve/internalContexts/SumLengthsContext.js.map +1 -1
  679. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js +3 -0
  680. package/lib/esm/curve/internalContexts/TransformInPlaceContext.js.map +1 -1
  681. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js +2 -0
  682. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  683. package/lib/esm/curve/spiral/ClothoidSeries.js +4 -0
  684. package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -1
  685. package/lib/esm/curve/spiral/CubicEvaluator.js +2 -0
  686. package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -1
  687. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js +4 -0
  688. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  689. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js +5 -0
  690. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  691. package/lib/esm/curve/spiral/DirectSpiral3d.js +12 -2
  692. package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -1
  693. package/lib/esm/curve/spiral/IntegratedSpiral3d.js +24 -4
  694. package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  695. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +2 -0
  696. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  697. package/lib/esm/curve/spiral/NormalizedTransition.js +5 -0
  698. package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -1
  699. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js +2 -0
  700. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  701. package/lib/esm/curve/spiral/TransitionConditionalProperties.js +10 -0
  702. package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  703. package/lib/esm/curve/spiral/TransitionSpiral3d.js +10 -0
  704. package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -1
  705. package/lib/esm/curve/spiral/XYCurveEvaluator.js +6 -0
  706. package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -1
  707. package/lib/esm/geometry3d/Angle.js +18 -16
  708. package/lib/esm/geometry3d/Angle.js.map +1 -1
  709. package/lib/esm/geometry3d/AngleSweep.d.ts +7 -2
  710. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
  711. package/lib/esm/geometry3d/AngleSweep.js +14 -2
  712. package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
  713. package/lib/esm/geometry3d/BarycentricTriangle.js +25 -0
  714. package/lib/esm/geometry3d/BarycentricTriangle.js.map +1 -1
  715. package/lib/esm/geometry3d/BilinearPatch.js +8 -0
  716. package/lib/esm/geometry3d/BilinearPatch.js.map +1 -1
  717. package/lib/esm/geometry3d/CoincidentGeometryOps.js +5 -0
  718. package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -1
  719. package/lib/esm/geometry3d/Ellipsoid.js +48 -0
  720. package/lib/esm/geometry3d/Ellipsoid.js.map +1 -1
  721. package/lib/esm/geometry3d/FrameBuilder.js +12 -4
  722. package/lib/esm/geometry3d/FrameBuilder.js.map +1 -1
  723. package/lib/esm/geometry3d/FrustumAnimation.js +7 -0
  724. package/lib/esm/geometry3d/FrustumAnimation.js.map +1 -1
  725. package/lib/esm/geometry3d/GeometryHandler.js.map +1 -1
  726. package/lib/esm/geometry3d/GrowableBlockedArray.js +12 -0
  727. package/lib/esm/geometry3d/GrowableBlockedArray.js.map +1 -1
  728. package/lib/esm/geometry3d/GrowableFloat64Array.js +3 -0
  729. package/lib/esm/geometry3d/GrowableFloat64Array.js.map +1 -1
  730. package/lib/esm/geometry3d/GrowableXYArray.d.ts +0 -5
  731. package/lib/esm/geometry3d/GrowableXYArray.d.ts.map +1 -1
  732. package/lib/esm/geometry3d/GrowableXYArray.js +16 -7
  733. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
  734. package/lib/esm/geometry3d/GrowableXYZArray.d.ts +32 -10
  735. package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  736. package/lib/esm/geometry3d/GrowableXYZArray.js +70 -16
  737. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -1
  738. package/lib/esm/geometry3d/IndexedCollectionInterval.js +6 -0
  739. package/lib/esm/geometry3d/IndexedCollectionInterval.js.map +1 -1
  740. package/lib/esm/geometry3d/IndexedXYCollection.js +1 -0
  741. package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -1
  742. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +13 -2
  743. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  744. package/lib/esm/geometry3d/IndexedXYZCollection.js +26 -11
  745. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -1
  746. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js +3 -0
  747. package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js.map +1 -1
  748. package/lib/esm/geometry3d/Matrix3d.d.ts +3 -4
  749. package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -1
  750. package/lib/esm/geometry3d/Matrix3d.js +36 -14
  751. package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
  752. package/lib/esm/geometry3d/OrderedRotationAngles.js +10 -2
  753. package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -1
  754. package/lib/esm/geometry3d/Plane3d.js.map +1 -1
  755. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js +2 -0
  756. package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -1
  757. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +7 -0
  758. package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -1
  759. package/lib/esm/geometry3d/Point2dArrayCarrier.js +2 -0
  760. package/lib/esm/geometry3d/Point2dArrayCarrier.js.map +1 -1
  761. package/lib/esm/geometry3d/Point2dVector2d.js +4 -0
  762. package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
  763. package/lib/esm/geometry3d/Point3dArrayCarrier.js +3 -1
  764. package/lib/esm/geometry3d/Point3dArrayCarrier.js.map +1 -1
  765. package/lib/esm/geometry3d/Point3dVector3d.d.ts +7 -10
  766. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  767. package/lib/esm/geometry3d/Point3dVector3d.js +16 -10
  768. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  769. package/lib/esm/geometry3d/PointHelpers.d.ts +4 -4
  770. package/lib/esm/geometry3d/PointHelpers.d.ts.map +1 -1
  771. package/lib/esm/geometry3d/PointHelpers.js +8 -8
  772. package/lib/esm/geometry3d/PointHelpers.js.map +1 -1
  773. package/lib/esm/geometry3d/PointStreaming.js +12 -4
  774. package/lib/esm/geometry3d/PointStreaming.js.map +1 -1
  775. package/lib/esm/geometry3d/PolygonOps.d.ts +2 -2
  776. package/lib/esm/geometry3d/PolygonOps.js +62 -25
  777. package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
  778. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +7 -3
  779. package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
  780. package/lib/esm/geometry3d/PolylineOps.d.ts +9 -5
  781. package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -1
  782. package/lib/esm/geometry3d/PolylineOps.js +12 -5
  783. package/lib/esm/geometry3d/PolylineOps.js.map +1 -1
  784. package/lib/esm/geometry3d/Range.js +21 -4
  785. package/lib/esm/geometry3d/Range.js.map +1 -1
  786. package/lib/esm/geometry3d/Ray2d.js +2 -0
  787. package/lib/esm/geometry3d/Ray2d.js.map +1 -1
  788. package/lib/esm/geometry3d/Ray3d.d.ts +2 -2
  789. package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
  790. package/lib/esm/geometry3d/Ray3d.js +20 -11
  791. package/lib/esm/geometry3d/Ray3d.js.map +1 -1
  792. package/lib/esm/geometry3d/ReusableObjectCache.js +4 -0
  793. package/lib/esm/geometry3d/ReusableObjectCache.js.map +1 -1
  794. package/lib/esm/geometry3d/Segment1d.js +4 -0
  795. package/lib/esm/geometry3d/Segment1d.js.map +1 -1
  796. package/lib/esm/geometry3d/SortablePolygon.js +11 -0
  797. package/lib/esm/geometry3d/SortablePolygon.js.map +1 -1
  798. package/lib/esm/geometry3d/Transform.d.ts +1 -1
  799. package/lib/esm/geometry3d/Transform.js +4 -1
  800. package/lib/esm/geometry3d/Transform.js.map +1 -1
  801. package/lib/esm/geometry3d/UVSurfaceOps.js.map +1 -1
  802. package/lib/esm/geometry3d/XYZProps.js.map +1 -1
  803. package/lib/esm/geometry3d/YawPitchRollAngles.js +6 -0
  804. package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -1
  805. package/lib/esm/geometry4d/Map4d.js +2 -0
  806. package/lib/esm/geometry4d/Map4d.js.map +1 -1
  807. package/lib/esm/geometry4d/Matrix4d.js +1 -0
  808. package/lib/esm/geometry4d/Matrix4d.js.map +1 -1
  809. package/lib/esm/geometry4d/MomentData.d.ts +72 -73
  810. package/lib/esm/geometry4d/MomentData.d.ts.map +1 -1
  811. package/lib/esm/geometry4d/MomentData.js +90 -66
  812. package/lib/esm/geometry4d/MomentData.js.map +1 -1
  813. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js +6 -0
  814. package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -1
  815. package/lib/esm/geometry4d/Point4d.js +2 -0
  816. package/lib/esm/geometry4d/Point4d.js.map +1 -1
  817. package/lib/esm/numerics/BandedSystem.js.map +1 -1
  818. package/lib/esm/numerics/BezierPolynomials.js +8 -0
  819. package/lib/esm/numerics/BezierPolynomials.js.map +1 -1
  820. package/lib/esm/numerics/ClusterableArray.js +29 -13
  821. package/lib/esm/numerics/ClusterableArray.js.map +1 -1
  822. package/lib/esm/numerics/Complex.js +2 -0
  823. package/lib/esm/numerics/Complex.js.map +1 -1
  824. package/lib/esm/numerics/ConvexPolygon2d.js +3 -0
  825. package/lib/esm/numerics/ConvexPolygon2d.js.map +1 -1
  826. package/lib/esm/numerics/Newton.js +59 -4
  827. package/lib/esm/numerics/Newton.js.map +1 -1
  828. package/lib/esm/numerics/PascalCoefficients.js +1 -1
  829. package/lib/esm/numerics/PascalCoefficients.js.map +1 -1
  830. package/lib/esm/numerics/PolarData.js +13 -1
  831. package/lib/esm/numerics/PolarData.js.map +1 -1
  832. package/lib/esm/numerics/Polynomials.js +64 -26
  833. package/lib/esm/numerics/Polynomials.js.map +1 -1
  834. package/lib/esm/numerics/Quadrature.js +26 -20
  835. package/lib/esm/numerics/Quadrature.js.map +1 -1
  836. package/lib/esm/numerics/Range1dArray.js.map +1 -1
  837. package/lib/esm/numerics/SmallSystem.js.map +1 -1
  838. package/lib/esm/numerics/TriDiagonalSystem.js +11 -0
  839. package/lib/esm/numerics/TriDiagonalSystem.js.map +1 -1
  840. package/lib/esm/numerics/UnionFind.js +1 -0
  841. package/lib/esm/numerics/UnionFind.js.map +1 -1
  842. package/lib/esm/numerics/UsageSums.js +10 -0
  843. package/lib/esm/numerics/UsageSums.js.map +1 -1
  844. package/lib/esm/polyface/AuxData.js +16 -0
  845. package/lib/esm/polyface/AuxData.js.map +1 -1
  846. package/lib/esm/polyface/BoxTopology.js +67 -67
  847. package/lib/esm/polyface/BoxTopology.js.map +1 -1
  848. package/lib/esm/polyface/FacetFaceData.d.ts +1 -1
  849. package/lib/esm/polyface/FacetFaceData.js +3 -1
  850. package/lib/esm/polyface/FacetFaceData.js.map +1 -1
  851. package/lib/esm/polyface/FacetLocationDetail.js +30 -0
  852. package/lib/esm/polyface/FacetLocationDetail.js.map +1 -1
  853. package/lib/esm/polyface/FacetOrientation.js +12 -1
  854. package/lib/esm/polyface/FacetOrientation.js.map +1 -1
  855. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js +18 -2
  856. package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -1
  857. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts +33 -23
  858. package/lib/esm/polyface/IndexedEdgeMatcher.d.ts.map +1 -1
  859. package/lib/esm/polyface/IndexedEdgeMatcher.js +63 -33
  860. package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -1
  861. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts +3 -2
  862. package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -1
  863. package/lib/esm/polyface/IndexedPolyfaceVisitor.js +11 -2
  864. package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -1
  865. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts +233 -0
  866. package/lib/esm/polyface/IndexedPolyfaceWalker.d.ts.map +1 -0
  867. package/lib/esm/polyface/IndexedPolyfaceWalker.js +349 -0
  868. package/lib/esm/polyface/IndexedPolyfaceWalker.js.map +1 -0
  869. package/lib/esm/polyface/Polyface.d.ts +35 -10
  870. package/lib/esm/polyface/Polyface.d.ts.map +1 -1
  871. package/lib/esm/polyface/Polyface.js +73 -12
  872. package/lib/esm/polyface/Polyface.js.map +1 -1
  873. package/lib/esm/polyface/PolyfaceBuilder.d.ts +14 -27
  874. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  875. package/lib/esm/polyface/PolyfaceBuilder.js +48 -80
  876. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  877. package/lib/esm/polyface/PolyfaceClip.js +8 -0
  878. package/lib/esm/polyface/PolyfaceClip.js.map +1 -1
  879. package/lib/esm/polyface/PolyfaceData.d.ts +28 -0
  880. package/lib/esm/polyface/PolyfaceData.d.ts.map +1 -1
  881. package/lib/esm/polyface/PolyfaceData.js +87 -5
  882. package/lib/esm/polyface/PolyfaceData.js.map +1 -1
  883. package/lib/esm/polyface/PolyfaceQuery.js +47 -7
  884. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  885. package/lib/esm/polyface/RangeLengthData.js +7 -0
  886. package/lib/esm/polyface/RangeLengthData.js.map +1 -1
  887. package/lib/esm/polyface/RangeTree/LineString3dRangeTreeContext.js +12 -0
  888. package/lib/esm/polyface/RangeTree/LineString3dRangeTreeContext.js.map +1 -1
  889. package/lib/esm/polyface/RangeTree/MinimumValueTester.js +5 -2
  890. package/lib/esm/polyface/RangeTree/MinimumValueTester.js.map +1 -1
  891. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js +12 -0
  892. package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
  893. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js +14 -0
  894. package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
  895. package/lib/esm/polyface/RangeTree/RangeTreeNode.js +5 -0
  896. package/lib/esm/polyface/RangeTree/RangeTreeNode.js.map +1 -1
  897. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js +43 -0
  898. package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
  899. package/lib/esm/polyface/TaggedNumericData.js +8 -0
  900. package/lib/esm/polyface/TaggedNumericData.js.map +1 -1
  901. package/lib/esm/polyface/TriangleCandidate.js +3 -0
  902. package/lib/esm/polyface/TriangleCandidate.js.map +1 -1
  903. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js +7 -0
  904. package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -1
  905. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js +6 -0
  906. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -1
  907. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +3 -0
  908. package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -1
  909. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js +3 -0
  910. package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -1
  911. package/lib/esm/polyface/multiclip/OffsetMeshContext.js +32 -0
  912. package/lib/esm/polyface/multiclip/OffsetMeshContext.js.map +1 -1
  913. package/lib/esm/polyface/multiclip/Range2dSearchInterface.js.map +1 -1
  914. package/lib/esm/polyface/multiclip/RangeSearch.js +5 -5
  915. package/lib/esm/polyface/multiclip/RangeSearch.js.map +1 -1
  916. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js +21 -8
  917. package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -1
  918. package/lib/esm/polyface/multiclip/XYPointBuckets.js +6 -0
  919. package/lib/esm/polyface/multiclip/XYPointBuckets.js.map +1 -1
  920. package/lib/esm/serialization/BGFBAccessors.js +82 -164
  921. package/lib/esm/serialization/BGFBAccessors.js.map +1 -1
  922. package/lib/esm/serialization/BGFBReader.js +22 -22
  923. package/lib/esm/serialization/BGFBReader.js.map +1 -1
  924. package/lib/esm/serialization/BGFBWriter.js +1 -0
  925. package/lib/esm/serialization/BGFBWriter.js.map +1 -1
  926. package/lib/esm/serialization/BentleyGeometryFlatBuffer.js.map +1 -1
  927. package/lib/esm/serialization/DeepCompare.js +17 -17
  928. package/lib/esm/serialization/DeepCompare.js.map +1 -1
  929. package/lib/esm/serialization/GeometrySamples.d.ts +5 -5
  930. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  931. package/lib/esm/serialization/GeometrySamples.js +113 -112
  932. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  933. package/lib/esm/serialization/IModelJsonSchema.d.ts +70 -63
  934. package/lib/esm/serialization/IModelJsonSchema.d.ts.map +1 -1
  935. package/lib/esm/serialization/IModelJsonSchema.js +87 -74
  936. package/lib/esm/serialization/IModelJsonSchema.js.map +1 -1
  937. package/lib/esm/serialization/SerializationHelpers.js.map +1 -1
  938. package/lib/esm/solid/Box.js +7 -2
  939. package/lib/esm/solid/Box.js.map +1 -1
  940. package/lib/esm/solid/Cone.d.ts +39 -14
  941. package/lib/esm/solid/Cone.d.ts.map +1 -1
  942. package/lib/esm/solid/Cone.js +53 -17
  943. package/lib/esm/solid/Cone.js.map +1 -1
  944. package/lib/esm/solid/LinearSweep.js +4 -2
  945. package/lib/esm/solid/LinearSweep.js.map +1 -1
  946. package/lib/esm/solid/RotationalSweep.js +5 -2
  947. package/lib/esm/solid/RotationalSweep.js.map +1 -1
  948. package/lib/esm/solid/RuledSweep.d.ts +26 -23
  949. package/lib/esm/solid/RuledSweep.d.ts.map +1 -1
  950. package/lib/esm/solid/RuledSweep.js +32 -24
  951. package/lib/esm/solid/RuledSweep.js.map +1 -1
  952. package/lib/esm/solid/SolidPrimitive.d.ts +12 -11
  953. package/lib/esm/solid/SolidPrimitive.d.ts.map +1 -1
  954. package/lib/esm/solid/SolidPrimitive.js +11 -6
  955. package/lib/esm/solid/SolidPrimitive.js.map +1 -1
  956. package/lib/esm/solid/Sphere.d.ts +34 -17
  957. package/lib/esm/solid/Sphere.d.ts.map +1 -1
  958. package/lib/esm/solid/Sphere.js +52 -25
  959. package/lib/esm/solid/Sphere.js.map +1 -1
  960. package/lib/esm/solid/SweepContour.d.ts +24 -15
  961. package/lib/esm/solid/SweepContour.d.ts.map +1 -1
  962. package/lib/esm/solid/SweepContour.js +33 -15
  963. package/lib/esm/solid/SweepContour.js.map +1 -1
  964. package/lib/esm/solid/TorusPipe.js +7 -2
  965. package/lib/esm/solid/TorusPipe.js.map +1 -1
  966. package/lib/esm/topology/ChainMerge.js +16 -4
  967. package/lib/esm/topology/ChainMerge.js.map +1 -1
  968. package/lib/esm/topology/Graph.js +41 -6
  969. package/lib/esm/topology/Graph.js.map +1 -1
  970. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +1 -1
  971. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +5 -1
  972. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
  973. package/lib/esm/topology/HalfEdgeGraphSearch.js +2 -0
  974. package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -1
  975. package/lib/esm/topology/HalfEdgeGraphSpineContext.js +9 -2
  976. package/lib/esm/topology/HalfEdgeGraphSpineContext.js.map +1 -1
  977. package/lib/esm/topology/HalfEdgeGraphValidation.js +7 -9
  978. package/lib/esm/topology/HalfEdgeGraphValidation.js.map +1 -1
  979. package/lib/esm/topology/HalfEdgeMarkSet.js +5 -0
  980. package/lib/esm/topology/HalfEdgeMarkSet.js.map +1 -1
  981. package/lib/esm/topology/HalfEdgeNodeXYZUV.js +6 -0
  982. package/lib/esm/topology/HalfEdgeNodeXYZUV.js.map +1 -1
  983. package/lib/esm/topology/HalfEdgePointInGraphSearch.js +1 -0
  984. package/lib/esm/topology/HalfEdgePointInGraphSearch.js.map +1 -1
  985. package/lib/esm/topology/HalfEdgePositionDetail.js +16 -0
  986. package/lib/esm/topology/HalfEdgePositionDetail.js.map +1 -1
  987. package/lib/esm/topology/HalfEdgePriorityQueue.js +2 -0
  988. package/lib/esm/topology/HalfEdgePriorityQueue.js.map +1 -1
  989. package/lib/esm/topology/InsertAndRetriangulateContext.js +4 -0
  990. package/lib/esm/topology/InsertAndRetriangulateContext.js.map +1 -1
  991. package/lib/esm/topology/MaskManager.js +3 -0
  992. package/lib/esm/topology/MaskManager.js.map +1 -1
  993. package/lib/esm/topology/Merging.js +11 -6
  994. package/lib/esm/topology/Merging.js.map +1 -1
  995. package/lib/esm/topology/RegularizeFace.js +22 -0
  996. package/lib/esm/topology/RegularizeFace.js.map +1 -1
  997. package/lib/esm/topology/SignedDataSummary.js +22 -0
  998. package/lib/esm/topology/SignedDataSummary.js.map +1 -1
  999. package/lib/esm/topology/SpaceTriangulation.js.map +1 -1
  1000. package/lib/esm/topology/Triangulation.js +21 -11
  1001. package/lib/esm/topology/Triangulation.js.map +1 -1
  1002. package/lib/esm/topology/XYParitySearchContext.js +13 -0
  1003. package/lib/esm/topology/XYParitySearchContext.js.map +1 -1
  1004. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"core-geometry.js","sourceRoot":"","sources":["../../src/core-geometry.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 Utility\r\n */\r\n\r\n// REMARK:\r\n// The docs-group-description comments are followed by empty classes with names corresponding to the doc-group.\r\n// Normally (in committed code) these are commented out.\r\n// The comments have distinctive strings so that simple search and replace can make the \"real\".\r\n// This is useful when working on the documentation: When the empty classes are present, VSCode will format the doc comments\r\n// for and display them when the mouse hovers over the class name.\r\n\r\n/**\r\n * @docs-package-description\r\n * The core-geometry package contains classes for working with geometry: points, vectors, curves, surfaces, and analytic solids\r\n */\r\n/**\r\n * @docs-group-description CartesianGeometry\r\n * Points, Vectors, Planes, and Transformations for x,y,z geometry.\r\n * * Fundamental cartesian geometry objects:\r\n * * Point2d, Point3d -- points with x,y,z coordinates\r\n * * Vector2d, Vector3d -- vectors with x,y,z coordinates\r\n * * Matrix3d -- 3x3 matrix\r\n * * * commonly used for pure rotations\r\n * * * scale and skew entries are also allowed.\r\n * * Transform -- an origin and axes.\r\n * * Range1d, Range2d, Range3d -- subsets of 1d, 2d, and 3d space bounded by low and high values.\r\n * * Ray3d -- a ray defined by origin and direction vector\r\n * * Plane3d -- an abstract base class extended by Plane3dByOriginAndNormal, Plane3dByOriginAndUnitNormal, Point4d, and ClipPlane\r\n * * Plane3dByOriginAndUnitNormal -- a plane defined by an origin and a single vector which is perpendicular to the plane\r\n * * plane3dByOriginAndVectors -- a plane defined by an origin and two vectors in the plane.\r\n * * Angles\r\n * * Angle -- a strongly typed angle object whose method names make it clear whether input and outputs are degrees or radians.\r\n * * AngleSweep -- an angular interval\r\n * * LatitudeLongitudeNumber -- carrier for position and altitude on sphere or ellipsoid\r\n * * YawPitchAndRollAngles -- 3 angles that define a rotated coordinate system.\r\n * * Utility classes\r\n * * FrameBuilder -- construction of coordinate frames from mixed data sources.\r\n * * ClipPlane -- a single plane\r\n * * ConvexClipPlaneSet -- an array of planes bounding a convex volume\r\n * * ClipPlaneSet -- an array of ConvexClipPlaneSet, defining the union of their volumes\r\n * * BilinearPatch -- twisted quadrilateral defined by 4 points\r\n * * BarycentricTriangle -- triangle defined by 3 points.\r\n * * Constant -- various numeric values exported as readonly constants\r\n */\r\n// doc:export class CartesianGeometryDoc { }\r\n/**\r\n * @docs-group-description ArraysAndInterfaces\r\n * These classes support array operations and inheritance-based algorithms.\r\n * * Arrays\r\n * * GrowableArray -- A carrier for a Float64Array, with methods that hide reallocation of the underlying array as contents are added.\r\n * * Point2dArray, Point3dArray, Point4dArray, Vector3dArray -- miscellaneous operations on arrays of 2d and 3d points.\r\n * * Interfaces\r\n * * GeometryHandler -- a double-dispatch protocol used for efficient implementation of algorithms that work on many geometry types.\r\n *\r\n */\r\n// doc:export class ArraysAndInterfacesDoc { }\r\n\r\n/**\r\n * @docs-group-description Bspline\r\n * A bspline curve or surface is used for curved freeform geometry defined by controls points (sometimes called poles).\r\n * * BSplineCurve -- a curve defined by control points (which are not on the curve)\r\n * * InterpolationCurve -- a curve defined by passthrough points, with \"good\" visual properties\r\n * * BSplineSurfaceXYZ -- a surface with XYZ\r\n * * BsplineSurfaceXYZW -- a surface with weighted (rational) XYZ coordinates\r\n * * KnotVector -- vector of breakpoints in bspline definitions.\r\n */\r\n// doc:export class BsplineDoc { }\r\n\r\n/**\r\n * @docs-group-description Curve\r\n * Curves in the GeometryQuery hierarchy: LineSegment3d, LineString3d, Arc3d, TransitionSpiral3d\r\n * * CurvePrimitive -- base class for parametric curves\r\n * * LineSegment3d -- a (bounded) portion of an unbounded line\r\n * * Arc3d -- a circular or elliptic arc\r\n * * LineString3d -- a sequence of points joined by line segments\r\n * * TransitionSpiral -- controlled transition between curvatures\r\n * * Support classes\r\n * * PointString3d -- a sequence of isolated points\r\n * * StrokeOptions -- tolerances to describe stroking accuracy\r\n * * RecursiveCurveProcessor, RecursiveCurveProcessorWithStack -- algorithmic support for trees with CurvePrimitives at the leaf level.\r\n */\r\n// doc:export class CurveDoc { }\r\n/**\r\n * @docs-group-description Numerics\r\n * The Numerics classes have geometric and numeric methods used during large algorithms in other classes.\r\n */\r\n// doc:export class NumericsDoc { }\r\n/**\r\n * @docs-group-description Polyface\r\n * A Polyface is a mesh structure with arrays of points that are shared among multiple incident facets.\r\n */\r\n// doc:export class PolyfaceDoc { }\r\n/**\r\n * @docs-group-description Serialization\r\n * These classes are related to serialization of geometry classes.\r\n * * IModelJson.Reader, IModelJson.Writer -- Conversion of in-memory geometry objects to json objects for persistence and transmission.\r\n */\r\n// doc:export class SerializationDoc { }\r\n/**\r\n * @docs-group-description Solid\r\n * Analytic Solids in the GeometryQuery hierarchy: Box, Sphere, Cone, TorusPipe, LinearSweep, RotationalSweep, RuledSweep\r\n * * Box -- a box solid. This is usually rectangular on all faces, but can in one directly like a view frustum\r\n * * Sphere -- a sphere\r\n * * Cone -- a cone or cylinder\r\n * * TorusPipe -- a pipe elbow\r\n * * LinearSweep -- a linear sweep of a base contour\r\n * * RotationalSweep -- a rotational sweep of a base contour\r\n * * RuledSweep -- two or more similarly structured contours joined by linear rule lines.\r\n */\r\n// doc:export class SolidDOc { }\r\n/**\r\n * @docs-group-description Topology\r\n * The Topology classes provide adjacency structures used in triangulations.\r\n */\r\n// doc:export class TopologyDoc { }\r\n/**\r\n * @docs-group-description RangeSearch\r\n * Support classes for searching collections of ranges.\r\n */\r\nexport * from \"./geometry3d/Angle\";\r\nexport * from \"./geometry3d/AngleSweep\";\r\nexport * from \"./geometry3d/LongitudeLatitudeAltitude\";\r\nexport * from \"./geometry3d/BarycentricTriangle\";\r\nexport * from \"./geometry3d/BilinearPatch\";\r\nexport * from \"./geometry3d/Ellipsoid\";\r\nexport * from \"./geometry3d/FrameBuilder\";\r\nexport * from \"./geometry3d/FrustumAnimation\";\r\nexport * from \"./geometry3d/GeometryHandler\";\r\nexport * from \"./geometry3d/GrowableBlockedArray\";\r\nexport * from \"./geometry3d/GrowableFloat64Array\";\r\nexport * from \"./geometry3d/GrowableXYArray\";\r\nexport * from \"./geometry3d/GrowableXYZArray\";\r\nexport * from \"./geometry3d/IndexedCollectionInterval\";\r\nexport * from \"./geometry3d/IndexedXYCollection\";\r\nexport * from \"./geometry3d/IndexedXYZCollection\";\r\nexport * from \"./geometry3d/Matrix3d\";\r\nexport * from \"./geometry3d/OrderedRotationAngles\";\r\nexport * from \"./geometry3d/Plane3d\";\r\nexport * from \"./geometry3d/Plane3dByOriginAndUnitNormal\";\r\nexport * from \"./geometry3d/Plane3dByOriginAndVectors\";\r\nexport * from \"./geometry3d/Point2dArrayCarrier\";\r\nexport * from \"./geometry3d/Point2dVector2d\";\r\nexport * from \"./geometry3d/Point3dVector3d\";\r\nexport * from \"./geometry3d/PointHelpers\";\r\nexport * from \"./geometry3d/Point3dArrayCarrier\";\r\nexport * from \"./geometry3d/PolylineOps\";\r\nexport * from \"./geometry3d/PolygonOps\";\r\nexport * from \"./geometry3d/Range\";\r\nexport * from \"./geometry3d/Ray2d\";\r\nexport * from \"./geometry3d/Ray3d\";\r\nexport * from \"./geometry3d/Segment1d\";\r\nexport * from \"./geometry3d/Transform\";\r\nexport * from \"./geometry3d/UVSurfaceOps\";\r\nexport * from \"./geometry3d/XYZProps\";\r\nexport * from \"./geometry3d/YawPitchRollAngles\";\r\n\r\nexport * from \"./Geometry\";\r\nexport * from \"./Constant\";\r\nexport * from \"./clipping/BooleanClipFactory\";\r\nexport * from \"./clipping/ClipPlane\";\r\nexport * from \"./clipping/ConvexClipPlaneSet\";\r\nexport * from \"./clipping/UnionOfConvexClipPlaneSets\";\r\nexport * from \"./clipping/ClipPrimitive\";\r\nexport * from \"./clipping/ClipVector\";\r\nexport * from \"./clipping/ClipUtils\";\r\nexport * from \"./numerics/ConvexPolygon2d\";\r\nexport * from \"./geometry4d/PlaneByOriginAndVectors4d\";\r\nexport * from \"./geometry4d/Point4d\";\r\nexport * from \"./geometry4d/Matrix4d\";\r\nexport * from \"./geometry4d/Map4d\";\r\nexport * from \"./geometry4d/MomentData\";\r\nexport * from \"./numerics/BezierPolynomials\";\r\nexport * from \"./numerics/ClusterableArray\";\r\nexport * from \"./numerics/Complex\";\r\nexport * from \"./numerics/ConvexPolygon2d\";\r\nexport * from \"./numerics/PascalCoefficients\";\r\nexport * from \"./numerics/Quadrature\";\r\nexport * from \"./numerics/Range1dArray\";\r\nexport * from \"./numerics/SmallSystem\";\r\nexport * from \"./numerics/TriDiagonalSystem\";\r\n\r\nexport * from \"./curve/Arc3d\";\r\nexport * from \"./curve/ConstructCurveBetweenCurves\";\r\nexport * from \"./curve/CoordinateXYZ\";\r\nexport * from \"./curve/CurveTypes\";\r\nexport * from \"./curve/CurveChainWithDistanceIndex\";\r\nexport * from \"./curve/CurveExtendMode\";\r\nexport * from \"./curve/CurveCollection\";\r\nexport * from \"./curve/CurveCurve\";\r\nexport * from \"./curve/CurveLocationDetail\";\r\nexport * from \"./curve/CurveFactory\";\r\nexport * from \"./curve/CurveOps\";\r\nexport * from \"./curve/CurvePrimitive\";\r\nexport * from \"./curve/CurveProcessor\";\r\nexport * from \"./curve/GeometryQuery\";\r\nexport * from \"./curve/LineSegment3d\";\r\nexport * from \"./curve/LineString3d\";\r\nexport * from \"./curve/Loop\";\r\nexport * from \"./curve/OffsetOptions\";\r\nexport * from \"./curve/ParityRegion\";\r\nexport * from \"./curve/Path\";\r\nexport * from \"./curve/RegionMomentsXY\";\r\nexport * from \"./curve/RegionOps\";\r\nexport * from \"./curve/PointString3d\";\r\nexport * from \"./curve/ProxyCurve\";\r\nexport * from \"./curve/StrokeOptions\";\r\nexport * from \"./curve/spiral/TransitionSpiral3d\";\r\nexport * from \"./curve/spiral/IntegratedSpiral3d\";\r\nexport * from \"./curve/spiral/DirectSpiral3d\";\r\nexport * from \"./curve/UnionRegion\";\r\nexport * from \"./curve/Query/StrokeCountMap\";\r\nexport * from \"./solid/Box\";\r\nexport * from \"./solid/Cone\";\r\nexport * from \"./solid/LinearSweep\";\r\nexport * from \"./solid/RotationalSweep\";\r\nexport * from \"./solid/RuledSweep\";\r\nexport * from \"./solid/SolidPrimitive\";\r\nexport * from \"./solid/Sphere\";\r\nexport * from \"./solid/SweepContour\";\r\nexport * from \"./solid/TorusPipe\";\r\nexport * from \"./bspline/AkimaCurve3d\";\r\nexport * from \"./bspline/Bezier1dNd\";\r\nexport * from \"./bspline/BezierCurveBase\";\r\nexport * from \"./bspline/BezierCurve3d\";\r\nexport * from \"./bspline/BezierCurve3dH\";\r\nexport * from \"./bspline/BSplineCurve\";\r\nexport * from \"./bspline/BSplineCurveOps\";\r\nexport * from \"./bspline/BSpline1dNd\";\r\nexport * from \"./bspline/BSplineCurve3dH\";\r\nexport * from \"./bspline/BSplineSurface\";\r\nexport * from \"./bspline/InterpolationCurve3d\";\r\nexport * from \"./bspline/KnotVector\";\r\nexport * from \"./polyface/AuxData\";\r\nexport * from \"./polyface/BoxTopology\";\r\nexport * from \"./polyface/FacetFaceData\";\r\nexport * from \"./polyface/Polyface\";\r\nexport * from \"./polyface/FacetLocationDetail\";\r\nexport * from \"./polyface/IndexedPolyfaceVisitor\";\r\nexport * from \"./polyface/multiclip/GriddedRaggedRange2dSet\";\r\nexport * from \"./polyface/multiclip/GriddedRaggedRange2dSetWithOverflow\";\r\nexport * from \"./polyface/PolyfaceBuilder\";\r\nexport * from \"./polyface/PolyfaceData\";\r\nexport * from \"./polyface/PolyfaceQuery\";\r\nexport * from \"./polyface/PolyfaceClip\";\r\nexport * from \"./polyface/RangeTree/Point3dArrayRangeTreeContext\";\r\nexport * from \"./polyface/RangeTree/LineString3dRangeTreeContext\";\r\nexport * from \"./polyface/RangeTree/PolyfaceRangeTreeContext\";\r\nexport * from \"./polyface/TaggedNumericData\";\r\nexport * from \"./topology/SpaceTriangulation\";\r\nexport * from \"./serialization/IModelJsonSchema\";\r\nexport * from \"./serialization/DeepCompare\";\r\nexport * from \"./serialization/GeometrySamples\";\r\nexport * from \"./serialization/SerializationHelpers\";\r\nexport { BentleyGeometryFlatBuffer } from \"./serialization/BentleyGeometryFlatBuffer\";\r\n"]}
1
+ {"version":3,"file":"core-geometry.js","sourceRoot":"","sources":["../../src/core-geometry.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n\n/** @packageDocumentation\n * @module Utility\n */\n\n// REMARK:\n// The docs-group-description comments are followed by empty classes with names corresponding to the doc-group.\n// Normally (in committed code) these are commented out.\n// The comments have distinctive strings so that simple search and replace can make the \"real\".\n// This is useful when working on the documentation: When the empty classes are present, VSCode will format the doc comments\n// for and display them when the mouse hovers over the class name.\n\n/**\n * @docs-package-description\n * The core-geometry package contains classes for working with geometry: points, vectors, curves, surfaces, and analytic solids\n */\n/**\n * @docs-group-description CartesianGeometry\n * Points, Vectors, Planes, and Transformations for x,y,z geometry.\n * * Fundamental cartesian geometry objects:\n * * Point2d, Point3d -- points with x,y,z coordinates\n * * Vector2d, Vector3d -- vectors with x,y,z coordinates\n * * Matrix3d -- 3x3 matrix\n * * * commonly used for pure rotations\n * * * scale and skew entries are also allowed.\n * * Transform -- an origin and axes.\n * * Range1d, Range2d, Range3d -- subsets of 1d, 2d, and 3d space bounded by low and high values.\n * * Ray3d -- a ray defined by origin and direction vector\n * * Plane3d -- an abstract base class extended by Plane3dByOriginAndNormal, Plane3dByOriginAndUnitNormal, Point4d, and ClipPlane\n * * Plane3dByOriginAndUnitNormal -- a plane defined by an origin and a single vector which is perpendicular to the plane\n * * plane3dByOriginAndVectors -- a plane defined by an origin and two vectors in the plane.\n * * Angles\n * * Angle -- a strongly typed angle object whose method names make it clear whether input and outputs are degrees or radians.\n * * AngleSweep -- an angular interval\n * * LatitudeLongitudeNumber -- carrier for position and altitude on sphere or ellipsoid\n * * YawPitchAndRollAngles -- 3 angles that define a rotated coordinate system.\n * * Utility classes\n * * FrameBuilder -- construction of coordinate frames from mixed data sources.\n * * ClipPlane -- a single plane\n * * ConvexClipPlaneSet -- an array of planes bounding a convex volume\n * * ClipPlaneSet -- an array of ConvexClipPlaneSet, defining the union of their volumes\n * * BilinearPatch -- twisted quadrilateral defined by 4 points\n * * BarycentricTriangle -- triangle defined by 3 points.\n * * Constant -- various numeric values exported as readonly constants\n */\n// doc:export class CartesianGeometryDoc { }\n/**\n * @docs-group-description ArraysAndInterfaces\n * These classes support array operations and inheritance-based algorithms.\n * * Arrays\n * * GrowableArray -- A carrier for a Float64Array, with methods that hide reallocation of the underlying array as contents are added.\n * * Point2dArray, Point3dArray, Point4dArray, Vector3dArray -- miscellaneous operations on arrays of 2d and 3d points.\n * * Interfaces\n * * GeometryHandler -- a double-dispatch protocol used for efficient implementation of algorithms that work on many geometry types.\n *\n */\n// doc:export class ArraysAndInterfacesDoc { }\n\n/**\n * @docs-group-description Bspline\n * A bspline curve or surface is used for curved freeform geometry defined by controls points (sometimes called poles).\n * * BSplineCurve -- a curve defined by control points (which are not on the curve)\n * * InterpolationCurve -- a curve defined by passthrough points, with \"good\" visual properties\n * * BSplineSurfaceXYZ -- a surface with XYZ\n * * BsplineSurfaceXYZW -- a surface with weighted (rational) XYZ coordinates\n * * KnotVector -- vector of breakpoints in bspline definitions.\n */\n// doc:export class BsplineDoc { }\n\n/**\n * @docs-group-description Curve\n * Curves in the GeometryQuery hierarchy: LineSegment3d, LineString3d, Arc3d, TransitionSpiral3d\n * * CurvePrimitive -- base class for parametric curves\n * * LineSegment3d -- a (bounded) portion of an unbounded line\n * * Arc3d -- a circular or elliptic arc\n * * LineString3d -- a sequence of points joined by line segments\n * * TransitionSpiral -- controlled transition between curvatures\n * * Support classes\n * * PointString3d -- a sequence of isolated points\n * * StrokeOptions -- tolerances to describe stroking accuracy\n * * RecursiveCurveProcessor, RecursiveCurveProcessorWithStack -- algorithmic support for trees with CurvePrimitives at the leaf level.\n */\n// doc:export class CurveDoc { }\n/**\n * @docs-group-description Numerics\n * The Numerics classes have geometric and numeric methods used during large algorithms in other classes.\n */\n// doc:export class NumericsDoc { }\n/**\n * @docs-group-description Polyface\n * A Polyface is a mesh structure with arrays of points that are shared among multiple incident facets.\n */\n// doc:export class PolyfaceDoc { }\n/**\n * @docs-group-description Serialization\n * These classes are related to serialization of geometry classes.\n * * IModelJson.Reader, IModelJson.Writer -- Conversion of in-memory geometry objects to json objects for persistence and transmission.\n */\n// doc:export class SerializationDoc { }\n/**\n * @docs-group-description Solid\n * Analytic Solids in the GeometryQuery hierarchy: Box, Sphere, Cone, TorusPipe, LinearSweep, RotationalSweep, RuledSweep\n * * Box -- a box solid. This is usually rectangular on all faces, but can in one directly like a view frustum\n * * Sphere -- a sphere\n * * Cone -- a cone or cylinder\n * * TorusPipe -- a pipe elbow\n * * LinearSweep -- a linear sweep of a base contour\n * * RotationalSweep -- a rotational sweep of a base contour\n * * RuledSweep -- two or more similarly structured contours joined by linear rule lines.\n */\n// doc:export class SolidDOc { }\n/**\n * @docs-group-description Topology\n * The Topology classes provide adjacency structures used in triangulations.\n */\n// doc:export class TopologyDoc { }\n/**\n * @docs-group-description RangeSearch\n * Support classes for searching collections of ranges.\n */\nexport * from \"./geometry3d/Angle\";\nexport * from \"./geometry3d/AngleSweep\";\nexport * from \"./geometry3d/LongitudeLatitudeAltitude\";\nexport * from \"./geometry3d/BarycentricTriangle\";\nexport * from \"./geometry3d/BilinearPatch\";\nexport * from \"./geometry3d/Ellipsoid\";\nexport * from \"./geometry3d/FrameBuilder\";\nexport * from \"./geometry3d/FrustumAnimation\";\nexport * from \"./geometry3d/GeometryHandler\";\nexport * from \"./geometry3d/GrowableBlockedArray\";\nexport * from \"./geometry3d/GrowableFloat64Array\";\nexport * from \"./geometry3d/GrowableXYArray\";\nexport * from \"./geometry3d/GrowableXYZArray\";\nexport * from \"./geometry3d/IndexedCollectionInterval\";\nexport * from \"./geometry3d/IndexedXYCollection\";\nexport * from \"./geometry3d/IndexedXYZCollection\";\nexport * from \"./geometry3d/Matrix3d\";\nexport * from \"./geometry3d/OrderedRotationAngles\";\nexport * from \"./geometry3d/Plane3d\";\nexport * from \"./geometry3d/Plane3dByOriginAndUnitNormal\";\nexport * from \"./geometry3d/Plane3dByOriginAndVectors\";\nexport * from \"./geometry3d/Point2dArrayCarrier\";\nexport * from \"./geometry3d/Point2dVector2d\";\nexport * from \"./geometry3d/Point3dVector3d\";\nexport * from \"./geometry3d/PointHelpers\";\nexport * from \"./geometry3d/Point3dArrayCarrier\";\nexport * from \"./geometry3d/PolylineOps\";\nexport * from \"./geometry3d/PolygonOps\";\nexport * from \"./geometry3d/Range\";\nexport * from \"./geometry3d/Ray2d\";\nexport * from \"./geometry3d/Ray3d\";\nexport * from \"./geometry3d/Segment1d\";\nexport * from \"./geometry3d/Transform\";\nexport * from \"./geometry3d/UVSurfaceOps\";\nexport * from \"./geometry3d/XYZProps\";\nexport * from \"./geometry3d/YawPitchRollAngles\";\n\nexport * from \"./Geometry\";\nexport * from \"./Constant\";\nexport * from \"./clipping/BooleanClipFactory\";\nexport * from \"./clipping/ClipPlane\";\nexport * from \"./clipping/ConvexClipPlaneSet\";\nexport * from \"./clipping/UnionOfConvexClipPlaneSets\";\nexport * from \"./clipping/ClipPrimitive\";\nexport * from \"./clipping/ClipVector\";\nexport * from \"./clipping/ClipUtils\";\nexport * from \"./numerics/ConvexPolygon2d\";\nexport * from \"./geometry4d/PlaneByOriginAndVectors4d\";\nexport * from \"./geometry4d/Point4d\";\nexport * from \"./geometry4d/Matrix4d\";\nexport * from \"./geometry4d/Map4d\";\nexport * from \"./geometry4d/MomentData\";\nexport * from \"./numerics/BezierPolynomials\";\nexport * from \"./numerics/ClusterableArray\";\nexport * from \"./numerics/Complex\";\nexport * from \"./numerics/ConvexPolygon2d\";\nexport * from \"./numerics/PascalCoefficients\";\nexport * from \"./numerics/Quadrature\";\nexport * from \"./numerics/Range1dArray\";\nexport * from \"./numerics/SmallSystem\";\nexport * from \"./numerics/TriDiagonalSystem\";\n\nexport * from \"./curve/Arc3d\";\nexport * from \"./curve/ConstructCurveBetweenCurves\";\nexport * from \"./curve/CoordinateXYZ\";\nexport * from \"./curve/CurveTypes\";\nexport * from \"./curve/CurveChainWithDistanceIndex\";\nexport * from \"./curve/CurveExtendMode\";\nexport * from \"./curve/CurveCollection\";\nexport * from \"./curve/CurveCurve\";\nexport * from \"./curve/CurveLocationDetail\";\nexport * from \"./curve/CurveFactory\";\nexport * from \"./curve/CurveOps\";\nexport * from \"./curve/CurvePrimitive\";\nexport * from \"./curve/CurveProcessor\";\nexport * from \"./curve/GeometryQuery\";\nexport * from \"./curve/LineSegment3d\";\nexport * from \"./curve/LineString3d\";\nexport * from \"./curve/Loop\";\nexport * from \"./curve/OffsetOptions\";\nexport * from \"./curve/ParityRegion\";\nexport * from \"./curve/Path\";\nexport * from \"./curve/RegionMomentsXY\";\nexport * from \"./curve/RegionOps\";\nexport * from \"./curve/PointString3d\";\nexport * from \"./curve/ProxyCurve\";\nexport * from \"./curve/StrokeOptions\";\nexport * from \"./curve/spiral/TransitionSpiral3d\";\nexport * from \"./curve/spiral/IntegratedSpiral3d\";\nexport * from \"./curve/spiral/DirectSpiral3d\";\nexport * from \"./curve/UnionRegion\";\nexport * from \"./curve/Query/StrokeCountMap\";\nexport * from \"./solid/Box\";\nexport * from \"./solid/Cone\";\nexport * from \"./solid/LinearSweep\";\nexport * from \"./solid/RotationalSweep\";\nexport * from \"./solid/RuledSweep\";\nexport * from \"./solid/SolidPrimitive\";\nexport * from \"./solid/Sphere\";\nexport * from \"./solid/SweepContour\";\nexport * from \"./solid/TorusPipe\";\nexport * from \"./bspline/AkimaCurve3d\";\nexport * from \"./bspline/Bezier1dNd\";\nexport * from \"./bspline/BezierCurveBase\";\nexport * from \"./bspline/BezierCurve3d\";\nexport * from \"./bspline/BezierCurve3dH\";\nexport * from \"./bspline/BSplineCurve\";\nexport * from \"./bspline/BSplineCurveOps\";\nexport * from \"./bspline/BSpline1dNd\";\nexport * from \"./bspline/BSplineCurve3dH\";\nexport * from \"./bspline/BSplineSurface\";\nexport * from \"./bspline/InterpolationCurve3d\";\nexport * from \"./bspline/KnotVector\";\nexport * from \"./polyface/AuxData\";\nexport * from \"./polyface/BoxTopology\";\nexport * from \"./polyface/FacetFaceData\";\nexport * from \"./polyface/Polyface\";\nexport * from \"./polyface/FacetLocationDetail\";\nexport * from \"./polyface/IndexedPolyfaceVisitor\";\nexport * from \"./polyface/IndexedPolyfaceWalker\";\nexport * from \"./polyface/multiclip/GriddedRaggedRange2dSet\";\nexport * from \"./polyface/multiclip/GriddedRaggedRange2dSetWithOverflow\";\nexport * from \"./polyface/PolyfaceBuilder\";\nexport * from \"./polyface/PolyfaceData\";\nexport * from \"./polyface/PolyfaceQuery\";\nexport * from \"./polyface/PolyfaceClip\";\nexport * from \"./polyface/RangeTree/Point3dArrayRangeTreeContext\";\nexport * from \"./polyface/RangeTree/LineString3dRangeTreeContext\";\nexport * from \"./polyface/RangeTree/PolyfaceRangeTreeContext\";\nexport * from \"./polyface/TaggedNumericData\";\nexport * from \"./topology/SpaceTriangulation\";\nexport * from \"./serialization/IModelJsonSchema\";\nexport * from \"./serialization/DeepCompare\";\nexport * from \"./serialization/GeometrySamples\";\nexport * from \"./serialization/SerializationHelpers\";\nexport { BentleyGeometryFlatBuffer } from \"./serialization/BentleyGeometryFlatBuffer\";\n"]}
@@ -167,19 +167,31 @@ export declare class Arc3d extends CurvePrimitive implements BeJSONFunctions {
167
167
  private static _workVectorU;
168
168
  private static _workVectorV;
169
169
  private static _workVectorW;
170
- /** Read property for (clone of) center. */
170
+ /** Read/write the center. Getter returns clone. */
171
171
  get center(): Point3d;
172
+ set center(center: XYAndZ);
173
+ /** Read property for (reference to) center. */
174
+ get centerRef(): Point3d;
172
175
  /** Read property for (clone of) vector0. */
173
176
  get vector0(): Vector3d;
174
177
  /** Read property for (clone of) vector90. */
175
178
  get vector90(): Vector3d;
176
- /** Read property for (clone of) plane normal, with arbitrary length. */
179
+ /**
180
+ * Compute an arc binormal vector with arbitrary length.
181
+ * * The arc parameterization is counter-clockwise with respect to this vector.
182
+ * * This vector is parallel to [[perpendicularVector]] and possibly opposite.
183
+ */
184
+ binormalVector(result?: Vector3d): Vector3d;
185
+ /**
186
+ * Read property for (clone of) plane normal, with arbitrary length.
187
+ * * Does not take arc sweep direction into account. See also [[binormalVector]].
188
+ */
177
189
  get perpendicularVector(): Vector3d;
178
190
  /** Read property for (clone of) matrix of vector0, vector90, unit normal. */
179
191
  matrixClone(): Matrix3d;
180
192
  /** Read property for (reference to) matrix of vector0, vector90, unit normal. */
181
193
  get matrixRef(): Matrix3d;
182
- /** Sweep of the angle. */
194
+ /** Read/write the sweep. Getter returns reference. */
183
195
  get sweep(): AngleSweep;
184
196
  set sweep(value: AngleSweep);
185
197
  /** An Arc3d extends along its complete elliptic arc. */
@@ -620,6 +632,8 @@ export declare class Arc3d extends CurvePrimitive implements BeJSONFunctions {
620
632
  projectedParameterRange(ray: Vector3d | Ray3d, lowHigh?: Range1d): Range1d | undefined;
621
633
  /**
622
634
  * Construct a circular arc chain approximation to the instance elliptical arc.
635
+ * * Visualization can be found at https://www.itwinjs.org/sandbox/SaeedTorabi/ArcApproximationGeneral and
636
+ * https://www.itwinjs.org/sandbox/SaeedTorabi/ArcApproximation
623
637
  * @param options bundle of options for sampling an elliptical arc (use default options if undefined).
624
638
  * @returns the approximating curve chain, the circular instance, or undefined if construction fails.
625
639
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Arc3d.d.ts","sourceRoot":"","sources":["../../../src/curve/Arc3d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Arc3d.d.ts","sourceRoot":"","sources":["../../../src/curve/Arc3d.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,13 @@ var EllipticalArcSampleMethod;
57
57
  * @public
58
58
  */
59
59
  class EllipticalArcApproximationOptions {
60
+ _sampleMethod;
61
+ _numSamplesInQuadrant;
62
+ _maxError;
63
+ _remapFunction;
64
+ _forcePath;
65
+ /** Default error tolerance. */
66
+ static defaultMaxError = Constant_1.Constant.oneCentimeter;
60
67
  constructor(method, numSamplesInQuadrant, maxError, remapFunction, forcePath) {
61
68
  this._sampleMethod = method;
62
69
  this._numSamplesInQuadrant = numSamplesInQuadrant;
@@ -134,8 +141,6 @@ class EllipticalArcApproximationOptions {
134
141
  }
135
142
  }
136
143
  exports.EllipticalArcApproximationOptions = EllipticalArcApproximationOptions;
137
- /** Default error tolerance. */
138
- EllipticalArcApproximationOptions.defaultMaxError = Constant_1.Constant.oneCentimeter;
139
144
  /**
140
145
  * Circular or elliptic arc.
141
146
  * * The angle to point equation is:
@@ -152,14 +157,32 @@ EllipticalArcApproximationOptions.defaultMaxError = Constant_1.Constant.oneCenti
152
157
  * @public
153
158
  */
154
159
  class Arc3d extends CurvePrimitive_1.CurvePrimitive {
160
+ /** String name for schema properties. */
161
+ curvePrimitiveType = "arc";
155
162
  /** Test if this and other are both instances of Arc3d. */
156
163
  isSameGeometryClass(other) {
157
164
  return other instanceof Arc3d;
158
165
  }
159
- /** Read property for (clone of) center. */
166
+ _center;
167
+ _matrix; // columns are [vector0, vector90, unitNormal]
168
+ _sweep; // sweep limits
169
+ static _workPointA = Point3dVector3d_1.Point3d.create();
170
+ static _workPointB = Point3dVector3d_1.Point3d.create();
171
+ static _workPointC = Point3dVector3d_1.Point3d.create();
172
+ static _workVectorU = Point3dVector3d_1.Vector3d.create();
173
+ static _workVectorV = Point3dVector3d_1.Vector3d.create();
174
+ static _workVectorW = Point3dVector3d_1.Vector3d.create();
175
+ /** Read/write the center. Getter returns clone. */
160
176
  get center() {
161
177
  return this._center.clone();
162
178
  }
179
+ set center(center) {
180
+ this._center.setFrom(center);
181
+ }
182
+ /** Read property for (reference to) center. */
183
+ get centerRef() {
184
+ return this._center;
185
+ }
163
186
  /** Read property for (clone of) vector0. */
164
187
  get vector0() {
165
188
  return this._matrix.columnX();
@@ -168,7 +191,19 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
168
191
  get vector90() {
169
192
  return this._matrix.columnY();
170
193
  }
171
- /** Read property for (clone of) plane normal, with arbitrary length. */
194
+ /**
195
+ * Compute an arc binormal vector with arbitrary length.
196
+ * * The arc parameterization is counter-clockwise with respect to this vector.
197
+ * * This vector is parallel to [[perpendicularVector]] and possibly opposite.
198
+ */
199
+ binormalVector(result) {
200
+ const plane = this.fractionToPointAnd2Derivatives(0.0);
201
+ return plane.vectorU.crossProduct(plane.vectorV, result);
202
+ }
203
+ /**
204
+ * Read property for (clone of) plane normal, with arbitrary length.
205
+ * * Does not take arc sweep direction into account. See also [[binormalVector]].
206
+ */
172
207
  get perpendicularVector() {
173
208
  return this._matrix.columnZ();
174
209
  }
@@ -180,7 +215,7 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
180
215
  get matrixRef() {
181
216
  return this._matrix;
182
217
  }
183
- /** Sweep of the angle. */
218
+ /** Read/write the sweep. Getter returns reference. */
184
219
  get sweep() {
185
220
  return this._sweep;
186
221
  }
@@ -194,11 +229,9 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
194
229
  // constructor copies the pointers
195
230
  constructor(center, matrix, sweep) {
196
231
  super();
197
- /** String name for schema properties. */
198
- this.curvePrimitiveType = "arc";
199
232
  this._center = center;
200
233
  this._matrix = matrix;
201
- this._sweep = sweep;
234
+ this._sweep = sweep.clampToFullCircle(sweep);
202
235
  }
203
236
  /**
204
237
  * Return a clone of the arc, with transform applied.
@@ -315,7 +348,7 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
315
348
  const v1DotV90 = vector1.dotProduct(vector90);
316
349
  // solve the standard ellipse equation for the unknown axis length, given local coords of middle (v0.v1/||v0||, v90.v1)
317
350
  const v90Len = Geometry_1.Geometry.safeDivideFraction(v0Len2 * v1DotV90, Math.sqrt(v0Len2 * v0Len2 - v0DotV1 * v0DotV1), 0);
318
- if (Geometry_1.Geometry.isSmallMetricDistanceSquared(v90Len))
351
+ if (Geometry_1.Geometry.isSmallMetricDistanceSquared(v90Len)) // tighter than smallMetricDistance to allow flatter long elliptical arcs
319
352
  return undefined;
320
353
  vector90.scaleInPlace(v90Len);
321
354
  return Arc3d.create(center, vector0, vector90, sweep, result);
@@ -596,6 +629,12 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
596
629
  curveLength() {
597
630
  return this.curveLengthBetweenFractions(0, 1);
598
631
  }
632
+ // !! misspelled Gauss in the published static !! Declare it ok.
633
+ // cspell::word Guass
634
+ /** Gauss point quadrature count for evaluating curve length. (The number of intervals is adjusted to the arc sweep). */
635
+ static quadratureGuassCount = 5;
636
+ /** In quadrature for arc length, use this interval (divided by quickEccentricity). */
637
+ static quadratureIntervalAngleDegrees = 10.0;
599
638
  /**
600
639
  * * If this is a circular arc, return the simple length derived from radius and sweep.
601
640
  * * Otherwise (i.e. if this elliptical) fall through CurvePrimitive integrator.
@@ -1236,6 +1275,8 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
1236
1275
  }
1237
1276
  /**
1238
1277
  * Construct a circular arc chain approximation to the instance elliptical arc.
1278
+ * * Visualization can be found at https://www.itwinjs.org/sandbox/SaeedTorabi/ArcApproximationGeneral and
1279
+ * https://www.itwinjs.org/sandbox/SaeedTorabi/ArcApproximation
1239
1280
  * @param options bundle of options for sampling an elliptical arc (use default options if undefined).
1240
1281
  * @returns the approximating curve chain, the circular instance, or undefined if construction fails.
1241
1282
  */
@@ -1250,16 +1291,4 @@ class Arc3d extends CurvePrimitive_1.CurvePrimitive {
1250
1291
  }
1251
1292
  }
1252
1293
  exports.Arc3d = Arc3d;
1253
- Arc3d._workPointA = Point3dVector3d_1.Point3d.create();
1254
- Arc3d._workPointB = Point3dVector3d_1.Point3d.create();
1255
- Arc3d._workPointC = Point3dVector3d_1.Point3d.create();
1256
- Arc3d._workVectorU = Point3dVector3d_1.Vector3d.create();
1257
- Arc3d._workVectorV = Point3dVector3d_1.Vector3d.create();
1258
- Arc3d._workVectorW = Point3dVector3d_1.Vector3d.create();
1259
- // !! misspelled Gauss in the published static !! Declare it ok.
1260
- // cspell::word Guass
1261
- /** Gauss point quadrature count for evaluating curve length. (The number of intervals is adjusted to the arc sweep). */
1262
- Arc3d.quadratureGuassCount = 5;
1263
- /** In quadrature for arc length, use this interval (divided by quickEccentricity). */
1264
- Arc3d.quadratureIntervalAngleDegrees = 10.0;
1265
1294
  //# sourceMappingURL=Arc3d.js.map