@itwin/core-geometry 3.0.0-dev.76 → 3.0.0-dev.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1049 -0
- package/lib/{Constant.d.ts → cjs/Constant.d.ts} +0 -0
- package/lib/cjs/Constant.d.ts.map +1 -0
- package/lib/{Constant.js → cjs/Constant.js} +0 -0
- package/lib/cjs/Constant.js.map +1 -0
- package/lib/{Geometry.d.ts → cjs/Geometry.d.ts} +0 -0
- package/lib/cjs/Geometry.d.ts.map +1 -0
- package/lib/{Geometry.js → cjs/Geometry.js} +0 -0
- package/lib/cjs/Geometry.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/AkimaCurve3d.d.ts +0 -0
- package/lib/cjs/bspline/AkimaCurve3d.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/AkimaCurve3d.js +0 -0
- package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSpline1dNd.d.ts +0 -0
- package/lib/cjs/bspline/BSpline1dNd.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSpline1dNd.js +0 -0
- package/lib/cjs/bspline/BSpline1dNd.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurve.d.ts +0 -0
- package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurve.js +0 -0
- package/lib/cjs/bspline/BSplineCurve.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurve3dH.d.ts +0 -0
- package/lib/cjs/bspline/BSplineCurve3dH.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurve3dH.js +0 -0
- package/lib/cjs/bspline/BSplineCurve3dH.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurveOps.d.ts +0 -0
- package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineCurveOps.js +0 -0
- package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -0
- package/lib/cjs/bspline/BSplineSurface.d.ts +491 -0
- package/lib/cjs/bspline/BSplineSurface.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BSplineSurface.js +0 -0
- package/lib/cjs/bspline/BSplineSurface.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/Bezier1dNd.d.ts +0 -0
- package/lib/cjs/bspline/Bezier1dNd.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/Bezier1dNd.js +0 -0
- package/lib/cjs/bspline/Bezier1dNd.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurve3d.d.ts +0 -0
- package/lib/cjs/bspline/BezierCurve3d.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurve3d.js +0 -0
- package/lib/cjs/bspline/BezierCurve3d.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurve3dH.d.ts +0 -0
- package/lib/cjs/bspline/BezierCurve3dH.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurve3dH.js +0 -0
- package/lib/cjs/bspline/BezierCurve3dH.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurveBase.d.ts +0 -0
- package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/BezierCurveBase.js +0 -0
- package/lib/cjs/bspline/BezierCurveBase.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/InterpolationCurve3d.d.ts +0 -0
- package/lib/cjs/bspline/InterpolationCurve3d.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/InterpolationCurve3d.js +0 -0
- package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/KnotVector.d.ts +0 -0
- package/lib/cjs/bspline/KnotVector.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/KnotVector.js +0 -0
- package/lib/cjs/bspline/KnotVector.js.map +1 -0
- package/lib/{bspline → cjs/bspline}/SurfaceLocationDetail.d.ts +0 -0
- package/lib/cjs/bspline/SurfaceLocationDetail.d.ts.map +1 -0
- package/lib/{bspline → cjs/bspline}/SurfaceLocationDetail.js +0 -0
- package/lib/cjs/bspline/SurfaceLocationDetail.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/AlternatingConvexClipTree.d.ts +0 -0
- package/lib/cjs/clipping/AlternatingConvexClipTree.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/AlternatingConvexClipTree.js +0 -0
- package/lib/cjs/clipping/AlternatingConvexClipTree.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/BooleanClipFactory.d.ts +0 -0
- package/lib/cjs/clipping/BooleanClipFactory.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/BooleanClipFactory.js +0 -0
- package/lib/cjs/clipping/BooleanClipFactory.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/BooleanClipNode.d.ts +0 -0
- package/lib/cjs/clipping/BooleanClipNode.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/BooleanClipNode.js +0 -0
- package/lib/cjs/clipping/BooleanClipNode.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipPlane.d.ts +0 -0
- package/lib/cjs/clipping/ClipPlane.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipPlane.js +0 -0
- package/lib/cjs/clipping/ClipPlane.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipPrimitive.d.ts +0 -0
- package/lib/cjs/clipping/ClipPrimitive.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipPrimitive.js +0 -0
- package/lib/cjs/clipping/ClipPrimitive.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipUtils.d.ts +0 -0
- package/lib/cjs/clipping/ClipUtils.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipUtils.js +0 -0
- package/lib/cjs/clipping/ClipUtils.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipVector.d.ts +0 -0
- package/lib/cjs/clipping/ClipVector.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/ClipVector.js +0 -0
- package/lib/cjs/clipping/ClipVector.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/ConvexClipPlaneSet.d.ts +0 -0
- package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/ConvexClipPlaneSet.js +0 -0
- package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/UnionOfConvexClipPlaneSets.d.ts +0 -0
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/UnionOfConvexClipPlaneSets.js +0 -0
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -0
- package/lib/{clipping → cjs/clipping}/internalContexts/LineStringOffsetClipperContext.d.ts +0 -0
- package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +1 -0
- package/lib/{clipping → cjs/clipping}/internalContexts/LineStringOffsetClipperContext.js +0 -0
- package/lib/cjs/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -0
- package/lib/{core-geometry.d.ts → cjs/core-geometry.d.ts} +0 -0
- package/lib/cjs/core-geometry.d.ts.map +1 -0
- package/lib/{core-geometry.js → cjs/core-geometry.js} +0 -0
- package/lib/cjs/core-geometry.js.map +1 -0
- package/lib/{curve → cjs/curve}/Arc3d.d.ts +0 -0
- package/lib/cjs/curve/Arc3d.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Arc3d.js +0 -0
- package/lib/cjs/curve/Arc3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/ChainCollectorContext.d.ts +0 -0
- package/lib/cjs/curve/ChainCollectorContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/ChainCollectorContext.js +0 -0
- package/lib/cjs/curve/ChainCollectorContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/ConstructCurveBetweenCurves.d.ts +0 -0
- package/lib/cjs/curve/ConstructCurveBetweenCurves.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/ConstructCurveBetweenCurves.js +0 -0
- package/lib/cjs/curve/ConstructCurveBetweenCurves.js.map +1 -0
- package/lib/{curve → cjs/curve}/CoordinateXYZ.d.ts +0 -0
- package/lib/cjs/curve/CoordinateXYZ.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CoordinateXYZ.js +0 -0
- package/lib/cjs/curve/CoordinateXYZ.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveChain.d.ts +0 -0
- package/lib/cjs/curve/CurveChain.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveChain.js +0 -0
- package/lib/cjs/curve/CurveChain.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveChainWithDistanceIndex.d.ts +0 -0
- package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveChainWithDistanceIndex.js +0 -0
- package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCollection.d.ts +0 -0
- package/lib/cjs/curve/CurveCollection.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCollection.js +0 -0
- package/lib/cjs/curve/CurveCollection.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurve.d.ts +0 -0
- package/lib/cjs/curve/CurveCurve.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurve.js +0 -0
- package/lib/cjs/curve/CurveCurve.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveCloseApproachXY.d.ts +0 -0
- package/lib/cjs/curve/CurveCurveCloseApproachXY.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveCloseApproachXY.js +0 -0
- package/lib/cjs/curve/CurveCurveCloseApproachXY.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveIntersectXY.d.ts +0 -0
- package/lib/cjs/curve/CurveCurveIntersectXY.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveIntersectXY.js +0 -0
- package/lib/cjs/curve/CurveCurveIntersectXY.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveIntersectXYZ.d.ts +0 -0
- package/lib/cjs/curve/CurveCurveIntersectXYZ.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveCurveIntersectXYZ.js +0 -0
- package/lib/cjs/curve/CurveCurveIntersectXYZ.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveExtendMode.d.ts +0 -0
- package/lib/cjs/curve/CurveExtendMode.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveExtendMode.js +0 -0
- package/lib/cjs/curve/CurveExtendMode.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveFactory.d.ts +0 -0
- package/lib/cjs/curve/CurveFactory.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveFactory.js +0 -0
- package/lib/cjs/curve/CurveFactory.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveLocationDetail.d.ts +0 -0
- package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveLocationDetail.js +0 -0
- package/lib/cjs/curve/CurveLocationDetail.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurvePrimitive.d.ts +0 -0
- package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurvePrimitive.js +0 -0
- package/lib/cjs/curve/CurvePrimitive.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveProcessor.d.ts +0 -0
- package/lib/cjs/curve/CurveProcessor.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveProcessor.js +0 -0
- package/lib/cjs/curve/CurveProcessor.js.map +1 -0
- package/lib/{curve → cjs/curve}/CurveWireMomentsXYZ.d.ts +0 -0
- package/lib/cjs/curve/CurveWireMomentsXYZ.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/CurveWireMomentsXYZ.js +0 -0
- package/lib/cjs/curve/CurveWireMomentsXYZ.js.map +1 -0
- package/lib/{curve → cjs/curve}/GeometryQuery.d.ts +0 -0
- package/lib/cjs/curve/GeometryQuery.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/GeometryQuery.js +0 -0
- package/lib/cjs/curve/GeometryQuery.js.map +1 -0
- package/lib/{curve → cjs/curve}/LineSegment3d.d.ts +0 -0
- package/lib/cjs/curve/LineSegment3d.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/LineSegment3d.js +0 -0
- package/lib/cjs/curve/LineSegment3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/LineString3d.d.ts +0 -0
- package/lib/cjs/curve/LineString3d.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/LineString3d.js +0 -0
- package/lib/cjs/curve/LineString3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/Loop.d.ts +0 -0
- package/lib/cjs/curve/Loop.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Loop.js +0 -0
- package/lib/cjs/curve/Loop.js.map +1 -0
- package/lib/{curve → cjs/curve}/ParityRegion.d.ts +0 -0
- package/lib/cjs/curve/ParityRegion.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/ParityRegion.js +0 -0
- package/lib/cjs/curve/ParityRegion.js.map +1 -0
- package/lib/{curve → cjs/curve}/Path.d.ts +0 -0
- package/lib/cjs/curve/Path.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Path.js +0 -0
- package/lib/cjs/curve/Path.js.map +1 -0
- package/lib/{curve → cjs/curve}/PointString3d.d.ts +0 -0
- package/lib/cjs/curve/PointString3d.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/PointString3d.js +0 -0
- package/lib/cjs/curve/PointString3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/ProxyCurve.d.ts +0 -0
- package/lib/cjs/curve/ProxyCurve.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/ProxyCurve.js +0 -0
- package/lib/cjs/curve/ProxyCurve.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/ConsolidateAdjacentPrimitivesContext.d.ts +0 -0
- package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/ConsolidateAdjacentPrimitivesContext.js +0 -0
- package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/CurveSplitContext.d.ts +0 -0
- package/lib/cjs/curve/Query/CurveSplitContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/CurveSplitContext.js +0 -0
- package/lib/cjs/curve/Query/CurveSplitContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/CylindricalRange.d.ts +0 -0
- package/lib/cjs/curve/Query/CylindricalRange.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/CylindricalRange.js +0 -0
- package/lib/cjs/curve/Query/CylindricalRange.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/InOutTests.d.ts +0 -0
- package/lib/cjs/curve/Query/InOutTests.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/InOutTests.js +0 -0
- package/lib/cjs/curve/Query/InOutTests.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/PlanarSubdivision.d.ts +0 -0
- package/lib/cjs/curve/Query/PlanarSubdivision.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/PlanarSubdivision.js +0 -0
- package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/StrokeCountChain.d.ts +0 -0
- package/lib/cjs/curve/Query/StrokeCountChain.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/StrokeCountChain.js +0 -0
- package/lib/cjs/curve/Query/StrokeCountChain.js.map +1 -0
- package/lib/{curve → cjs/curve}/Query/StrokeCountMap.d.ts +0 -0
- package/lib/cjs/curve/Query/StrokeCountMap.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/Query/StrokeCountMap.js +0 -0
- package/lib/cjs/curve/Query/StrokeCountMap.js.map +1 -0
- package/lib/{curve → cjs/curve}/RegionMomentsXY.d.ts +0 -0
- package/lib/cjs/curve/RegionMomentsXY.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/RegionMomentsXY.js +0 -0
- package/lib/cjs/curve/RegionMomentsXY.js.map +1 -0
- package/lib/{curve → cjs/curve}/RegionOps.d.ts +0 -0
- package/lib/cjs/curve/RegionOps.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/RegionOps.js +0 -0
- package/lib/cjs/curve/RegionOps.js.map +1 -0
- package/lib/{curve → cjs/curve}/RegionOpsClassificationSweeps.d.ts +0 -0
- package/lib/cjs/curve/RegionOpsClassificationSweeps.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/RegionOpsClassificationSweeps.js +0 -0
- package/lib/cjs/curve/RegionOpsClassificationSweeps.js.map +1 -0
- package/lib/{curve → cjs/curve}/StrokeOptions.d.ts +0 -0
- package/lib/cjs/curve/StrokeOptions.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/StrokeOptions.js +0 -0
- package/lib/cjs/curve/StrokeOptions.js.map +1 -0
- package/lib/{curve → cjs/curve}/UnionRegion.d.ts +0 -0
- package/lib/cjs/curve/UnionRegion.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/UnionRegion.js +0 -0
- package/lib/cjs/curve/UnionRegion.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CloneCurvesContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/CloneCurvesContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CloneCurvesContext.js +0 -0
- package/lib/cjs/curve/internalContexts/CloneCurvesContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CloneWithExpandedLineStrings.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CloneWithExpandedLineStrings.js +0 -0
- package/lib/cjs/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CountLinearPartsSearchContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/CountLinearPartsSearchContext.js +0 -0
- package/lib/cjs/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/GapSearchContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/GapSearchContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/GapSearchContext.js +0 -0
- package/lib/cjs/curve/internalContexts/GapSearchContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/MultiChainCollector.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/MultiChainCollector.js +0 -0
- package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/PlaneAltitudeRangeContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/PlaneAltitudeRangeContext.js +0 -0
- package/lib/cjs/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/PolygonOffsetContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/PolygonOffsetContext.js +0 -0
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/SumLengthsContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/SumLengthsContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/SumLengthsContext.js +0 -0
- package/lib/cjs/curve/internalContexts/SumLengthsContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/TransformInPlaceContext.d.ts +0 -0
- package/lib/cjs/curve/internalContexts/TransformInPlaceContext.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/internalContexts/TransformInPlaceContext.js +0 -0
- package/lib/cjs/curve/internalContexts/TransformInPlaceContext.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/AustralianRailCorpXYEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/AustralianRailCorpXYEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/ClothoidSeries.d.ts +0 -0
- package/lib/cjs/curve/spiral/ClothoidSeries.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/ClothoidSeries.js +0 -0
- package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/CubicEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/CubicEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/CubicEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/CzechSpiralEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/CzechSpiralEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/DirectHalfCosineSpiralEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/DirectHalfCosineSpiralEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -0
- package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts +265 -0
- package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts.map +1 -0
- package/lib/cjs/curve/spiral/DirectSpiral3d.js +473 -0
- package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -0
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts +158 -0
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -0
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +364 -0
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/MXCubicAlongArcSpiralEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/NormalizedTransition.d.ts +0 -0
- package/lib/cjs/curve/spiral/NormalizedTransition.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/NormalizedTransition.js +0 -0
- package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/PolishCubicSpiralEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/PolishCubicSpiralEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/TransitionConditionalProperties.d.ts +0 -0
- package/lib/cjs/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/TransitionConditionalProperties.js +0 -0
- package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/TransitionSpiral3d.d.ts +0 -0
- package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/TransitionSpiral3d.js +0 -0
- package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/XYCurveEvaluator.d.ts +0 -0
- package/lib/cjs/curve/spiral/XYCurveEvaluator.d.ts.map +1 -0
- package/lib/{curve → cjs/curve}/spiral/XYCurveEvaluator.js +0 -0
- package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Angle.d.ts +0 -0
- package/lib/cjs/geometry3d/Angle.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Angle.js +0 -0
- package/lib/cjs/geometry3d/Angle.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/AngleSweep.d.ts +0 -0
- package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/AngleSweep.js +0 -0
- package/lib/cjs/geometry3d/AngleSweep.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/BarycentricTriangle.d.ts +0 -0
- package/lib/cjs/geometry3d/BarycentricTriangle.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/BarycentricTriangle.js +0 -0
- package/lib/cjs/geometry3d/BarycentricTriangle.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/BilinearPatch.d.ts +0 -0
- package/lib/cjs/geometry3d/BilinearPatch.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/BilinearPatch.js +0 -0
- package/lib/cjs/geometry3d/BilinearPatch.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/CoincidentGeometryOps.d.ts +0 -0
- package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/CoincidentGeometryOps.js +0 -0
- package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Ellipsoid.d.ts +0 -0
- package/lib/cjs/geometry3d/Ellipsoid.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Ellipsoid.js +0 -0
- package/lib/cjs/geometry3d/Ellipsoid.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/FrameBuilder.d.ts +0 -0
- package/lib/cjs/geometry3d/FrameBuilder.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/FrameBuilder.js +0 -0
- package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/FrustumAnimation.d.ts +0 -0
- package/lib/cjs/geometry3d/FrustumAnimation.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/FrustumAnimation.js +0 -0
- package/lib/cjs/geometry3d/FrustumAnimation.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GeometryHandler.d.ts +0 -0
- package/lib/cjs/geometry3d/GeometryHandler.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GeometryHandler.js +0 -0
- package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableBlockedArray.d.ts +0 -0
- package/lib/cjs/geometry3d/GrowableBlockedArray.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableBlockedArray.js +0 -0
- package/lib/cjs/geometry3d/GrowableBlockedArray.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableFloat64Array.d.ts +0 -0
- package/lib/cjs/geometry3d/GrowableFloat64Array.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableFloat64Array.js +0 -0
- package/lib/cjs/geometry3d/GrowableFloat64Array.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableXYArray.d.ts +0 -0
- package/lib/cjs/geometry3d/GrowableXYArray.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableXYArray.js +0 -0
- package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableXYZArray.d.ts +0 -0
- package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/GrowableXYZArray.js +0 -0
- package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedCollectionInterval.d.ts +0 -0
- package/lib/cjs/geometry3d/IndexedCollectionInterval.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedCollectionInterval.js +0 -0
- package/lib/cjs/geometry3d/IndexedCollectionInterval.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedXYCollection.d.ts +0 -0
- package/lib/cjs/geometry3d/IndexedXYCollection.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedXYCollection.js +0 -0
- package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedXYZCollection.d.ts +0 -0
- package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/IndexedXYZCollection.js +0 -0
- package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/LongitudeLatitudeAltitude.d.ts +0 -0
- package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/LongitudeLatitudeAltitude.js +0 -0
- package/lib/cjs/geometry3d/LongitudeLatitudeAltitude.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Matrix3d.d.ts +0 -0
- package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Matrix3d.js +0 -0
- package/lib/cjs/geometry3d/Matrix3d.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/OrderedRotationAngles.d.ts +0 -0
- package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/OrderedRotationAngles.js +0 -0
- package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndUnitNormal.d.ts +0 -0
- package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndUnitNormal.js +0 -0
- package/lib/cjs/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndVectors.d.ts +0 -0
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Plane3dByOriginAndVectors.js +0 -0
- package/lib/cjs/geometry3d/Plane3dByOriginAndVectors.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point2dArrayCarrier.d.ts +0 -0
- package/lib/cjs/geometry3d/Point2dArrayCarrier.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point2dArrayCarrier.js +0 -0
- package/lib/cjs/geometry3d/Point2dArrayCarrier.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point2dVector2d.d.ts +0 -0
- package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point2dVector2d.js +0 -0
- package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point3dArrayCarrier.d.ts +0 -0
- package/lib/cjs/geometry3d/Point3dArrayCarrier.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point3dArrayCarrier.js +0 -0
- package/lib/cjs/geometry3d/Point3dArrayCarrier.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point3dVector3d.d.ts +0 -0
- package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Point3dVector3d.js +0 -0
- package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PointHelpers.d.ts +0 -0
- package/lib/cjs/geometry3d/PointHelpers.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PointHelpers.js +0 -0
- package/lib/cjs/geometry3d/PointHelpers.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PointStreaming.d.ts +0 -0
- package/lib/cjs/geometry3d/PointStreaming.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PointStreaming.js +0 -0
- package/lib/cjs/geometry3d/PointStreaming.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolygonOps.d.ts +0 -0
- package/lib/cjs/geometry3d/PolygonOps.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolygonOps.js +0 -0
- package/lib/cjs/geometry3d/PolygonOps.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolylineCompressionByEdgeOffset.d.ts +0 -0
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolylineCompressionByEdgeOffset.js +0 -0
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolylineOps.d.ts +0 -0
- package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/PolylineOps.js +0 -0
- package/lib/cjs/geometry3d/PolylineOps.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Range.d.ts +0 -0
- package/lib/cjs/geometry3d/Range.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Range.js +0 -0
- package/lib/cjs/geometry3d/Range.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Ray3d.d.ts +0 -0
- package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Ray3d.js +0 -0
- package/lib/cjs/geometry3d/Ray3d.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/ReusableObjectCache.d.ts +0 -0
- package/lib/cjs/geometry3d/ReusableObjectCache.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/ReusableObjectCache.js +0 -0
- package/lib/cjs/geometry3d/ReusableObjectCache.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Segment1d.d.ts +0 -0
- package/lib/cjs/geometry3d/Segment1d.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Segment1d.js +0 -0
- package/lib/cjs/geometry3d/Segment1d.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/SortablePolygon.d.ts +0 -0
- package/lib/cjs/geometry3d/SortablePolygon.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/SortablePolygon.js +0 -0
- package/lib/cjs/geometry3d/SortablePolygon.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Transform.d.ts +0 -0
- package/lib/cjs/geometry3d/Transform.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/Transform.js +0 -0
- package/lib/cjs/geometry3d/Transform.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/UVSurfaceOps.d.ts +0 -0
- package/lib/cjs/geometry3d/UVSurfaceOps.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/UVSurfaceOps.js +0 -0
- package/lib/cjs/geometry3d/UVSurfaceOps.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/XYZProps.d.ts +0 -0
- package/lib/cjs/geometry3d/XYZProps.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/XYZProps.js +0 -0
- package/lib/cjs/geometry3d/XYZProps.js.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/YawPitchRollAngles.d.ts +0 -0
- package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts.map +1 -0
- package/lib/{geometry3d → cjs/geometry3d}/YawPitchRollAngles.js +0 -0
- package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Map4d.d.ts +0 -0
- package/lib/cjs/geometry4d/Map4d.d.ts.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Map4d.js +0 -0
- package/lib/cjs/geometry4d/Map4d.js.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Matrix4d.d.ts +0 -0
- package/lib/cjs/geometry4d/Matrix4d.d.ts.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Matrix4d.js +0 -0
- package/lib/cjs/geometry4d/Matrix4d.js.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/MomentData.d.ts +0 -0
- package/lib/cjs/geometry4d/MomentData.d.ts.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/MomentData.js +0 -0
- package/lib/cjs/geometry4d/MomentData.js.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/PlaneByOriginAndVectors4d.d.ts +0 -0
- package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/PlaneByOriginAndVectors4d.js +0 -0
- package/lib/cjs/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Point4d.d.ts +0 -0
- package/lib/cjs/geometry4d/Point4d.d.ts.map +1 -0
- package/lib/{geometry4d → cjs/geometry4d}/Point4d.js +0 -0
- package/lib/cjs/geometry4d/Point4d.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/BandedSystem.d.ts +0 -0
- package/lib/cjs/numerics/BandedSystem.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/BandedSystem.js +0 -0
- package/lib/cjs/numerics/BandedSystem.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/BezierPolynomials.d.ts +0 -0
- package/lib/cjs/numerics/BezierPolynomials.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/BezierPolynomials.js +0 -0
- package/lib/cjs/numerics/BezierPolynomials.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/ClusterableArray.d.ts +0 -0
- package/lib/cjs/numerics/ClusterableArray.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/ClusterableArray.js +0 -0
- package/lib/cjs/numerics/ClusterableArray.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/Complex.d.ts +0 -0
- package/lib/cjs/numerics/Complex.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/Complex.js +0 -0
- package/lib/cjs/numerics/Complex.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/ConvexPolygon2d.d.ts +0 -0
- package/lib/cjs/numerics/ConvexPolygon2d.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/ConvexPolygon2d.js +0 -0
- package/lib/cjs/numerics/ConvexPolygon2d.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/Newton.d.ts +0 -0
- package/lib/cjs/numerics/Newton.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/Newton.js +0 -0
- package/lib/cjs/numerics/Newton.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/PascalCoefficients.d.ts +0 -0
- package/lib/cjs/numerics/PascalCoefficients.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/PascalCoefficients.js +0 -0
- package/lib/cjs/numerics/PascalCoefficients.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/PolarData.d.ts +0 -0
- package/lib/cjs/numerics/PolarData.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/PolarData.js +0 -0
- package/lib/cjs/numerics/PolarData.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/Polynomials.d.ts +0 -0
- package/lib/cjs/numerics/Polynomials.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/Polynomials.js +0 -0
- package/lib/cjs/numerics/Polynomials.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/Quadrature.d.ts +0 -0
- package/lib/cjs/numerics/Quadrature.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/Quadrature.js +0 -0
- package/lib/cjs/numerics/Quadrature.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/Range1dArray.d.ts +0 -0
- package/lib/cjs/numerics/Range1dArray.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/Range1dArray.js +0 -0
- package/lib/cjs/numerics/Range1dArray.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/TriDiagonalSystem.d.ts +0 -0
- package/lib/cjs/numerics/TriDiagonalSystem.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/TriDiagonalSystem.js +0 -0
- package/lib/cjs/numerics/TriDiagonalSystem.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/UnionFind.d.ts +0 -0
- package/lib/cjs/numerics/UnionFind.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/UnionFind.js +0 -0
- package/lib/cjs/numerics/UnionFind.js.map +1 -0
- package/lib/{numerics → cjs/numerics}/UsageSums.d.ts +0 -0
- package/lib/cjs/numerics/UsageSums.d.ts.map +1 -0
- package/lib/{numerics → cjs/numerics}/UsageSums.js +0 -0
- package/lib/cjs/numerics/UsageSums.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/AuxData.d.ts +0 -0
- package/lib/cjs/polyface/AuxData.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/AuxData.js +0 -0
- package/lib/cjs/polyface/AuxData.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/BoxTopology.d.ts +0 -0
- package/lib/cjs/polyface/BoxTopology.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/BoxTopology.js +0 -0
- package/lib/cjs/polyface/BoxTopology.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/FacetFaceData.d.ts +0 -0
- package/lib/cjs/polyface/FacetFaceData.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/FacetFaceData.js +0 -0
- package/lib/cjs/polyface/FacetFaceData.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/FacetOrientation.d.ts +0 -0
- package/lib/cjs/polyface/FacetOrientation.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/FacetOrientation.js +0 -0
- package/lib/cjs/polyface/FacetOrientation.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/GreedyTriangulationBetweenLineStrings.d.ts +0 -0
- package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/GreedyTriangulationBetweenLineStrings.js +0 -0
- package/lib/cjs/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/IndexedEdgeMatcher.d.ts +0 -0
- package/lib/cjs/polyface/IndexedEdgeMatcher.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/IndexedEdgeMatcher.js +0 -0
- package/lib/cjs/polyface/IndexedEdgeMatcher.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/IndexedPolyfaceVisitor.d.ts +0 -0
- package/lib/cjs/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/IndexedPolyfaceVisitor.js +0 -0
- package/lib/cjs/polyface/IndexedPolyfaceVisitor.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/Polyface.d.ts +0 -0
- package/lib/cjs/polyface/Polyface.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/Polyface.js +0 -0
- package/lib/cjs/polyface/Polyface.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceBuilder.d.ts +0 -0
- package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceBuilder.js +0 -0
- package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceClip.d.ts +0 -0
- package/lib/cjs/polyface/PolyfaceClip.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceClip.js +0 -0
- package/lib/cjs/polyface/PolyfaceClip.js.map +1 -0
- package/lib/cjs/polyface/PolyfaceData.d.ts +206 -0
- package/lib/cjs/polyface/PolyfaceData.d.ts.map +1 -0
- package/lib/cjs/polyface/PolyfaceData.js +531 -0
- package/lib/cjs/polyface/PolyfaceData.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceQuery.d.ts +0 -0
- package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/PolyfaceQuery.js +0 -0
- package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/RangeLengthData.d.ts +0 -0
- package/lib/cjs/polyface/RangeLengthData.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/RangeLengthData.js +0 -0
- package/lib/cjs/polyface/RangeLengthData.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/TaggedNumericData.d.ts +0 -0
- package/lib/cjs/polyface/TaggedNumericData.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/TaggedNumericData.js +0 -0
- package/lib/cjs/polyface/TaggedNumericData.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/TriangleCandidate.d.ts +0 -0
- package/lib/cjs/polyface/TriangleCandidate.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/TriangleCandidate.js +0 -0
- package/lib/cjs/polyface/TriangleCandidate.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/BuildAverageNormalsContext.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/BuildAverageNormalsContext.js +0 -0
- package/lib/cjs/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSet.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSet.js +0 -0
- package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/GriddedRaggedRange2dSetWithOverflow.js +0 -0
- package/lib/cjs/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/LinearSearchRange2dArray.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/LinearSearchRange2dArray.js +0 -0
- package/lib/cjs/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/Range2dSearchInterface.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/Range2dSearchInterface.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/Range2dSearchInterface.js +0 -0
- package/lib/cjs/polyface/multiclip/Range2dSearchInterface.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/RangeSearch.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/RangeSearch.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/RangeSearch.js +0 -0
- package/lib/cjs/polyface/multiclip/RangeSearch.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/SweepLineStringToFacetContext.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/SweepLineStringToFacetContext.js +0 -0
- package/lib/cjs/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/XYPointBuckets.d.ts +0 -0
- package/lib/cjs/polyface/multiclip/XYPointBuckets.d.ts.map +1 -0
- package/lib/{polyface → cjs/polyface}/multiclip/XYPointBuckets.js +0 -0
- package/lib/cjs/polyface/multiclip/XYPointBuckets.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBAccessors.d.ts +0 -0
- package/lib/cjs/serialization/BGFBAccessors.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBAccessors.js +0 -0
- package/lib/cjs/serialization/BGFBAccessors.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBReader.d.ts +0 -0
- package/lib/cjs/serialization/BGFBReader.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBReader.js +0 -0
- package/lib/cjs/serialization/BGFBReader.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBWriter.d.ts +0 -0
- package/lib/cjs/serialization/BGFBWriter.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/BGFBWriter.js +0 -0
- package/lib/cjs/serialization/BGFBWriter.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/BentleyGeometryFlatBuffer.d.ts +0 -0
- package/lib/cjs/serialization/BentleyGeometryFlatBuffer.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/BentleyGeometryFlatBuffer.js +0 -0
- package/lib/cjs/serialization/BentleyGeometryFlatBuffer.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/DeepCompare.d.ts +0 -0
- package/lib/cjs/serialization/DeepCompare.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/DeepCompare.js +0 -0
- package/lib/cjs/serialization/DeepCompare.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/GeometrySamples.d.ts +0 -0
- package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/GeometrySamples.js +0 -0
- package/lib/cjs/serialization/GeometrySamples.js.map +1 -0
- package/lib/{serialization → cjs/serialization}/IModelJsonSchema.d.ts +0 -0
- package/lib/cjs/serialization/IModelJsonSchema.d.ts.map +1 -0
- package/lib/{serialization → cjs/serialization}/IModelJsonSchema.js +0 -0
- package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -0
- package/lib/{solid → cjs/solid}/Box.d.ts +0 -0
- package/lib/cjs/solid/Box.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/Box.js +0 -0
- package/lib/cjs/solid/Box.js.map +1 -0
- package/lib/{solid → cjs/solid}/Cone.d.ts +0 -0
- package/lib/cjs/solid/Cone.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/Cone.js +0 -0
- package/lib/cjs/solid/Cone.js.map +1 -0
- package/lib/{solid → cjs/solid}/LinearSweep.d.ts +0 -0
- package/lib/cjs/solid/LinearSweep.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/LinearSweep.js +0 -0
- package/lib/cjs/solid/LinearSweep.js.map +1 -0
- package/lib/{solid → cjs/solid}/RotationalSweep.d.ts +0 -0
- package/lib/cjs/solid/RotationalSweep.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/RotationalSweep.js +0 -0
- package/lib/cjs/solid/RotationalSweep.js.map +1 -0
- package/lib/{solid → cjs/solid}/RuledSweep.d.ts +0 -0
- package/lib/cjs/solid/RuledSweep.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/RuledSweep.js +0 -0
- package/lib/cjs/solid/RuledSweep.js.map +1 -0
- package/lib/{solid → cjs/solid}/SolidPrimitive.d.ts +0 -0
- package/lib/cjs/solid/SolidPrimitive.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/SolidPrimitive.js +0 -0
- package/lib/cjs/solid/SolidPrimitive.js.map +1 -0
- package/lib/{solid → cjs/solid}/Sphere.d.ts +0 -0
- package/lib/cjs/solid/Sphere.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/Sphere.js +0 -0
- package/lib/cjs/solid/Sphere.js.map +1 -0
- package/lib/{solid → cjs/solid}/SweepContour.d.ts +0 -0
- package/lib/cjs/solid/SweepContour.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/SweepContour.js +0 -0
- package/lib/cjs/solid/SweepContour.js.map +1 -0
- package/lib/{solid → cjs/solid}/TorusPipe.d.ts +0 -0
- package/lib/cjs/solid/TorusPipe.d.ts.map +1 -0
- package/lib/{solid → cjs/solid}/TorusPipe.js +0 -0
- package/lib/cjs/solid/TorusPipe.js.map +1 -0
- package/lib/{topology → cjs/topology}/ChainMerge.d.ts +0 -0
- package/lib/cjs/topology/ChainMerge.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/ChainMerge.js +0 -0
- package/lib/cjs/topology/ChainMerge.js.map +1 -0
- package/lib/{topology → cjs/topology}/Graph.d.ts +0 -0
- package/lib/cjs/topology/Graph.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/Graph.js +0 -0
- package/lib/cjs/topology/Graph.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphSearch.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphSearch.js +0 -0
- package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphSpineContext.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgeGraphSpineContext.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphSpineContext.js +0 -0
- package/lib/cjs/topology/HalfEdgeGraphSpineContext.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphValidation.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgeGraphValidation.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeGraphValidation.js +0 -0
- package/lib/cjs/topology/HalfEdgeGraphValidation.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeMarkSet.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgeMarkSet.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeMarkSet.js +0 -0
- package/lib/cjs/topology/HalfEdgeMarkSet.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeNodeXYZUV.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgeNodeXYZUV.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgeNodeXYZUV.js +0 -0
- package/lib/cjs/topology/HalfEdgeNodeXYZUV.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePointInGraphSearch.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgePointInGraphSearch.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePointInGraphSearch.js +0 -0
- package/lib/cjs/topology/HalfEdgePointInGraphSearch.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePositionDetail.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgePositionDetail.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePositionDetail.js +0 -0
- package/lib/cjs/topology/HalfEdgePositionDetail.js.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePriorityQueue.d.ts +0 -0
- package/lib/cjs/topology/HalfEdgePriorityQueue.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/HalfEdgePriorityQueue.js +0 -0
- package/lib/cjs/topology/HalfEdgePriorityQueue.js.map +1 -0
- package/lib/{topology → cjs/topology}/InsertAndRetriangulateContext.d.ts +0 -0
- package/lib/cjs/topology/InsertAndRetriangulateContext.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/InsertAndRetriangulateContext.js +0 -0
- package/lib/cjs/topology/InsertAndRetriangulateContext.js.map +1 -0
- package/lib/{topology → cjs/topology}/MaskManager.d.ts +0 -0
- package/lib/cjs/topology/MaskManager.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/MaskManager.js +0 -0
- package/lib/cjs/topology/MaskManager.js.map +1 -0
- package/lib/{topology → cjs/topology}/Merging.d.ts +0 -0
- package/lib/cjs/topology/Merging.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/Merging.js +0 -0
- package/lib/cjs/topology/Merging.js.map +1 -0
- package/lib/{topology → cjs/topology}/RegularizeFace.d.ts +0 -0
- package/lib/cjs/topology/RegularizeFace.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/RegularizeFace.js +0 -0
- package/lib/cjs/topology/RegularizeFace.js.map +1 -0
- package/lib/{topology → cjs/topology}/SignedDataSummary.d.ts +0 -0
- package/lib/cjs/topology/SignedDataSummary.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/SignedDataSummary.js +0 -0
- package/lib/cjs/topology/SignedDataSummary.js.map +1 -0
- package/lib/{topology → cjs/topology}/Triangulation.d.ts +0 -0
- package/lib/cjs/topology/Triangulation.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/Triangulation.js +0 -0
- package/lib/cjs/topology/Triangulation.js.map +1 -0
- package/lib/{topology → cjs/topology}/XYParitySearchContext.d.ts +0 -0
- package/lib/cjs/topology/XYParitySearchContext.d.ts.map +1 -0
- package/lib/{topology → cjs/topology}/XYParitySearchContext.js +0 -0
- package/lib/cjs/topology/XYParitySearchContext.js.map +1 -0
- package/lib/esm/Constant.d.ts +26 -0
- package/lib/esm/Constant.d.ts.map +1 -0
- package/lib/esm/Constant.js +30 -0
- package/lib/esm/Constant.js.map +1 -0
- package/lib/esm/Geometry.d.ts +498 -0
- package/lib/esm/Geometry.d.ts.map +1 -0
- package/lib/esm/Geometry.js +776 -0
- package/lib/esm/Geometry.js.map +1 -0
- package/lib/esm/bspline/AkimaCurve3d.d.ts +97 -0
- package/lib/esm/bspline/AkimaCurve3d.d.ts.map +1 -0
- package/lib/esm/bspline/AkimaCurve3d.js +158 -0
- package/lib/esm/bspline/AkimaCurve3d.js.map +1 -0
- package/lib/esm/bspline/BSpline1dNd.d.ts +96 -0
- package/lib/esm/bspline/BSpline1dNd.d.ts.map +1 -0
- package/lib/esm/bspline/BSpline1dNd.js +191 -0
- package/lib/esm/bspline/BSpline1dNd.js.map +1 -0
- package/lib/esm/bspline/BSplineCurve.d.ts +310 -0
- package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -0
- package/lib/esm/bspline/BSplineCurve.js +608 -0
- package/lib/esm/bspline/BSplineCurve.js.map +1 -0
- package/lib/esm/bspline/BSplineCurve3dH.d.ts +140 -0
- package/lib/esm/bspline/BSplineCurve3dH.d.ts.map +1 -0
- package/lib/esm/bspline/BSplineCurve3dH.js +421 -0
- package/lib/esm/bspline/BSplineCurve3dH.js.map +1 -0
- package/lib/esm/bspline/BSplineCurveOps.d.ts +159 -0
- package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -0
- package/lib/esm/bspline/BSplineCurveOps.js +805 -0
- package/lib/esm/bspline/BSplineCurveOps.js.map +1 -0
- package/lib/esm/bspline/BSplineSurface.d.ts +491 -0
- package/lib/esm/bspline/BSplineSurface.d.ts.map +1 -0
- package/lib/esm/bspline/BSplineSurface.js +837 -0
- package/lib/esm/bspline/BSplineSurface.js.map +1 -0
- package/lib/esm/bspline/Bezier1dNd.d.ts +113 -0
- package/lib/esm/bspline/Bezier1dNd.d.ts.map +1 -0
- package/lib/esm/bspline/Bezier1dNd.js +341 -0
- package/lib/esm/bspline/Bezier1dNd.js.map +1 -0
- package/lib/esm/bspline/BezierCurve3d.d.ts +76 -0
- package/lib/esm/bspline/BezierCurve3d.d.ts.map +1 -0
- package/lib/esm/bspline/BezierCurve3d.js +214 -0
- package/lib/esm/bspline/BezierCurve3d.js.map +1 -0
- package/lib/esm/bspline/BezierCurve3dH.d.ts +107 -0
- package/lib/esm/bspline/BezierCurve3dH.d.ts.map +1 -0
- package/lib/esm/bspline/BezierCurve3dH.js +348 -0
- package/lib/esm/bspline/BezierCurve3dH.js.map +1 -0
- package/lib/esm/bspline/BezierCurveBase.d.ts +111 -0
- package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -0
- package/lib/esm/bspline/BezierCurveBase.js +196 -0
- package/lib/esm/bspline/BezierCurveBase.js.map +1 -0
- package/lib/esm/bspline/InterpolationCurve3d.d.ts +163 -0
- package/lib/esm/bspline/InterpolationCurve3d.d.ts.map +1 -0
- package/lib/esm/bspline/InterpolationCurve3d.js +281 -0
- package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -0
- package/lib/esm/bspline/KnotVector.d.ts +160 -0
- package/lib/esm/bspline/KnotVector.d.ts.map +1 -0
- package/lib/esm/bspline/KnotVector.js +427 -0
- package/lib/esm/bspline/KnotVector.js.map +1 -0
- package/lib/esm/bspline/SurfaceLocationDetail.d.ts +52 -0
- package/lib/esm/bspline/SurfaceLocationDetail.d.ts.map +1 -0
- package/lib/esm/bspline/SurfaceLocationDetail.js +55 -0
- package/lib/esm/bspline/SurfaceLocationDetail.js.map +1 -0
- package/lib/esm/clipping/AlternatingConvexClipTree.d.ts +165 -0
- package/lib/esm/clipping/AlternatingConvexClipTree.d.ts.map +1 -0
- package/lib/esm/clipping/AlternatingConvexClipTree.js +519 -0
- package/lib/esm/clipping/AlternatingConvexClipTree.js.map +1 -0
- package/lib/esm/clipping/BooleanClipFactory.d.ts +80 -0
- package/lib/esm/clipping/BooleanClipFactory.d.ts.map +1 -0
- package/lib/esm/clipping/BooleanClipFactory.js +198 -0
- package/lib/esm/clipping/BooleanClipFactory.js.map +1 -0
- package/lib/esm/clipping/BooleanClipNode.d.ts +103 -0
- package/lib/esm/clipping/BooleanClipNode.d.ts.map +1 -0
- package/lib/esm/clipping/BooleanClipNode.js +255 -0
- package/lib/esm/clipping/BooleanClipNode.js.map +1 -0
- package/lib/esm/clipping/ClipPlane.d.ts +258 -0
- package/lib/esm/clipping/ClipPlane.d.ts.map +1 -0
- package/lib/esm/clipping/ClipPlane.js +505 -0
- package/lib/esm/clipping/ClipPlane.js.map +1 -0
- package/lib/esm/clipping/ClipPrimitive.d.ts +270 -0
- package/lib/esm/clipping/ClipPrimitive.d.ts.map +1 -0
- package/lib/esm/clipping/ClipPrimitive.js +620 -0
- package/lib/esm/clipping/ClipPrimitive.js.map +1 -0
- package/lib/esm/clipping/ClipUtils.d.ts +278 -0
- package/lib/esm/clipping/ClipUtils.d.ts.map +1 -0
- package/lib/esm/clipping/ClipUtils.js +593 -0
- package/lib/esm/clipping/ClipUtils.js.map +1 -0
- package/lib/esm/clipping/ClipVector.d.ts +154 -0
- package/lib/esm/clipping/ClipVector.d.ts.map +1 -0
- package/lib/esm/clipping/ClipVector.js +388 -0
- package/lib/esm/clipping/ClipVector.js.map +1 -0
- package/lib/esm/clipping/ConvexClipPlaneSet.d.ts +250 -0
- package/lib/esm/clipping/ConvexClipPlaneSet.d.ts.map +1 -0
- package/lib/esm/clipping/ConvexClipPlaneSet.js +685 -0
- package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -0
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts +126 -0
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -0
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js +325 -0
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -0
- package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.d.ts +42 -0
- package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +1 -0
- package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js +160 -0
- package/lib/esm/clipping/internalContexts/LineStringOffsetClipperContext.js.map +1 -0
- package/lib/esm/core-geometry.d.ts +228 -0
- package/lib/esm/core-geometry.d.ts.map +1 -0
- package/lib/esm/core-geometry.js +247 -0
- package/lib/esm/core-geometry.js.map +1 -0
- package/lib/esm/curve/Arc3d.d.ts +477 -0
- package/lib/esm/curve/Arc3d.d.ts.map +1 -0
- package/lib/esm/curve/Arc3d.js +905 -0
- package/lib/esm/curve/Arc3d.js.map +1 -0
- package/lib/esm/curve/ChainCollectorContext.d.ts +65 -0
- package/lib/esm/curve/ChainCollectorContext.d.ts.map +1 -0
- package/lib/esm/curve/ChainCollectorContext.js +175 -0
- package/lib/esm/curve/ChainCollectorContext.js.map +1 -0
- package/lib/esm/curve/ConstructCurveBetweenCurves.d.ts +46 -0
- package/lib/esm/curve/ConstructCurveBetweenCurves.d.ts.map +1 -0
- package/lib/esm/curve/ConstructCurveBetweenCurves.js +112 -0
- package/lib/esm/curve/ConstructCurveBetweenCurves.js.map +1 -0
- package/lib/esm/curve/CoordinateXYZ.d.ts +54 -0
- package/lib/esm/curve/CoordinateXYZ.d.ts.map +1 -0
- package/lib/esm/curve/CoordinateXYZ.js +75 -0
- package/lib/esm/curve/CoordinateXYZ.js.map +1 -0
- package/lib/esm/curve/CurveChain.d.ts +17 -0
- package/lib/esm/curve/CurveChain.d.ts.map +1 -0
- package/lib/esm/curve/CurveChain.js +6 -0
- package/lib/esm/curve/CurveChain.js.map +1 -0
- package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +234 -0
- package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -0
- package/lib/esm/curve/CurveChainWithDistanceIndex.js +513 -0
- package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -0
- package/lib/esm/curve/CurveCollection.d.ts +204 -0
- package/lib/esm/curve/CurveCollection.d.ts.map +1 -0
- package/lib/esm/curve/CurveCollection.js +338 -0
- package/lib/esm/curve/CurveCollection.js.map +1 -0
- package/lib/esm/curve/CurveCurve.d.ts +56 -0
- package/lib/esm/curve/CurveCurve.d.ts.map +1 -0
- package/lib/esm/curve/CurveCurve.js +96 -0
- package/lib/esm/curve/CurveCurve.js.map +1 -0
- package/lib/esm/curve/CurveCurveCloseApproachXY.d.ts +158 -0
- package/lib/esm/curve/CurveCurveCloseApproachXY.d.ts.map +1 -0
- package/lib/esm/curve/CurveCurveCloseApproachXY.js +720 -0
- package/lib/esm/curve/CurveCurveCloseApproachXY.js.map +1 -0
- package/lib/esm/curve/CurveCurveIntersectXY.d.ts +148 -0
- package/lib/esm/curve/CurveCurveIntersectXY.d.ts.map +1 -0
- package/lib/esm/curve/CurveCurveIntersectXY.js +814 -0
- package/lib/esm/curve/CurveCurveIntersectXY.js.map +1 -0
- package/lib/esm/curve/CurveCurveIntersectXYZ.d.ts +101 -0
- package/lib/esm/curve/CurveCurveIntersectXYZ.d.ts.map +1 -0
- package/lib/esm/curve/CurveCurveIntersectXYZ.js +669 -0
- package/lib/esm/curve/CurveCurveIntersectXYZ.js.map +1 -0
- package/lib/esm/curve/CurveExtendMode.d.ts +50 -0
- package/lib/esm/curve/CurveExtendMode.d.ts.map +1 -0
- package/lib/esm/curve/CurveExtendMode.js +96 -0
- package/lib/esm/curve/CurveExtendMode.js.map +1 -0
- package/lib/esm/curve/CurveFactory.d.ts +122 -0
- package/lib/esm/curve/CurveFactory.d.ts.map +1 -0
- package/lib/esm/curve/CurveFactory.js +491 -0
- package/lib/esm/curve/CurveFactory.js.map +1 -0
- package/lib/esm/curve/CurveLocationDetail.d.ts +207 -0
- package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -0
- package/lib/esm/curve/CurveLocationDetail.js +392 -0
- package/lib/esm/curve/CurveLocationDetail.js.map +1 -0
- package/lib/esm/curve/CurvePrimitive.d.ts +363 -0
- package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -0
- package/lib/esm/curve/CurvePrimitive.js +774 -0
- package/lib/esm/curve/CurvePrimitive.js.map +1 -0
- package/lib/esm/curve/CurveProcessor.d.ts +76 -0
- package/lib/esm/curve/CurveProcessor.d.ts.map +1 -0
- package/lib/esm/curve/CurveProcessor.js +122 -0
- package/lib/esm/curve/CurveProcessor.js.map +1 -0
- package/lib/esm/curve/CurveWireMomentsXYZ.d.ts +25 -0
- package/lib/esm/curve/CurveWireMomentsXYZ.d.ts.map +1 -0
- package/lib/esm/curve/CurveWireMomentsXYZ.js +65 -0
- package/lib/esm/curve/CurveWireMomentsXYZ.js.map +1 -0
- package/lib/esm/curve/GeometryQuery.d.ts +93 -0
- package/lib/esm/curve/GeometryQuery.d.ts.map +1 -0
- package/lib/esm/curve/GeometryQuery.js +68 -0
- package/lib/esm/curve/GeometryQuery.js.map +1 -0
- package/lib/esm/curve/LineSegment3d.d.ts +176 -0
- package/lib/esm/curve/LineSegment3d.d.ts.map +1 -0
- package/lib/esm/curve/LineSegment3d.js +315 -0
- package/lib/esm/curve/LineSegment3d.js.map +1 -0
- package/lib/esm/curve/LineString3d.d.ts +419 -0
- package/lib/esm/curve/LineString3d.d.ts.map +1 -0
- package/lib/esm/curve/LineString3d.js +1280 -0
- package/lib/esm/curve/LineString3d.js.map +1 -0
- package/lib/esm/curve/Loop.d.ts +82 -0
- package/lib/esm/curve/Loop.d.ts.map +1 -0
- package/lib/esm/curve/Loop.js +93 -0
- package/lib/esm/curve/Loop.js.map +1 -0
- package/lib/esm/curve/ParityRegion.d.ts +59 -0
- package/lib/esm/curve/ParityRegion.d.ts.map +1 -0
- package/lib/esm/curve/ParityRegion.js +113 -0
- package/lib/esm/curve/ParityRegion.js.map +1 -0
- package/lib/esm/curve/Path.d.ts +47 -0
- package/lib/esm/curve/Path.d.ts.map +1 -0
- package/lib/esm/curve/Path.js +71 -0
- package/lib/esm/curve/Path.js.map +1 -0
- package/lib/esm/curve/PointString3d.d.ts +78 -0
- package/lib/esm/curve/PointString3d.d.ts.map +1 -0
- package/lib/esm/curve/PointString3d.js +174 -0
- package/lib/esm/curve/PointString3d.js.map +1 -0
- package/lib/esm/curve/ProxyCurve.d.ts +59 -0
- package/lib/esm/curve/ProxyCurve.d.ts.map +1 -0
- package/lib/esm/curve/ProxyCurve.js +78 -0
- package/lib/esm/curve/ProxyCurve.js.map +1 -0
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts +25 -0
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +1 -0
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +111 -0
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -0
- package/lib/esm/curve/Query/CurveSplitContext.d.ts +16 -0
- package/lib/esm/curve/Query/CurveSplitContext.d.ts.map +1 -0
- package/lib/esm/curve/Query/CurveSplitContext.js +107 -0
- package/lib/esm/curve/Query/CurveSplitContext.js.map +1 -0
- package/lib/esm/curve/Query/CylindricalRange.d.ts +46 -0
- package/lib/esm/curve/Query/CylindricalRange.d.ts.map +1 -0
- package/lib/esm/curve/Query/CylindricalRange.js +111 -0
- package/lib/esm/curve/Query/CylindricalRange.js.map +1 -0
- package/lib/esm/curve/Query/InOutTests.d.ts +32 -0
- package/lib/esm/curve/Query/InOutTests.d.ts.map +1 -0
- package/lib/esm/curve/Query/InOutTests.js +116 -0
- package/lib/esm/curve/Query/InOutTests.js.map +1 -0
- package/lib/esm/curve/Query/PlanarSubdivision.d.ts +16 -0
- package/lib/esm/curve/Query/PlanarSubdivision.d.ts.map +1 -0
- package/lib/esm/curve/Query/PlanarSubdivision.js +220 -0
- package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -0
- package/lib/esm/curve/Query/StrokeCountChain.d.ts +186 -0
- package/lib/esm/curve/Query/StrokeCountChain.d.ts.map +1 -0
- package/lib/esm/curve/Query/StrokeCountChain.js +429 -0
- package/lib/esm/curve/Query/StrokeCountChain.js.map +1 -0
- package/lib/esm/curve/Query/StrokeCountMap.d.ts +94 -0
- package/lib/esm/curve/Query/StrokeCountMap.d.ts.map +1 -0
- package/lib/esm/curve/Query/StrokeCountMap.js +138 -0
- package/lib/esm/curve/Query/StrokeCountMap.js.map +1 -0
- package/lib/esm/curve/RegionMomentsXY.d.ts +61 -0
- package/lib/esm/curve/RegionMomentsXY.d.ts.map +1 -0
- package/lib/esm/curve/RegionMomentsXY.js +156 -0
- package/lib/esm/curve/RegionMomentsXY.js.map +1 -0
- package/lib/esm/curve/RegionOps.d.ts +320 -0
- package/lib/esm/curve/RegionOps.d.ts.map +1 -0
- package/lib/esm/curve/RegionOps.js +642 -0
- package/lib/esm/curve/RegionOps.js.map +1 -0
- package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts +263 -0
- package/lib/esm/curve/RegionOpsClassificationSweeps.d.ts.map +1 -0
- package/lib/esm/curve/RegionOpsClassificationSweeps.js +703 -0
- package/lib/esm/curve/RegionOpsClassificationSweeps.js.map +1 -0
- package/lib/esm/curve/StrokeOptions.d.ts +94 -0
- package/lib/esm/curve/StrokeOptions.d.ts.map +1 -0
- package/lib/esm/curve/StrokeOptions.js +149 -0
- package/lib/esm/curve/StrokeOptions.js.map +1 -0
- package/lib/esm/curve/UnionRegion.d.ts +49 -0
- package/lib/esm/curve/UnionRegion.d.ts.map +1 -0
- package/lib/esm/curve/UnionRegion.js +75 -0
- package/lib/esm/curve/UnionRegion.js.map +1 -0
- package/lib/esm/curve/internalContexts/CloneCurvesContext.d.ts +23 -0
- package/lib/esm/curve/internalContexts/CloneCurvesContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/CloneCurvesContext.js +62 -0
- package/lib/esm/curve/internalContexts/CloneCurvesContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.d.ts +16 -0
- package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js +36 -0
- package/lib/esm/curve/internalContexts/CloneWithExpandedLineStrings.js.map +1 -0
- package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.d.ts +18 -0
- package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js +32 -0
- package/lib/esm/curve/internalContexts/CountLinearPartsSearchContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/GapSearchContext.d.ts +16 -0
- package/lib/esm/curve/internalContexts/GapSearchContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/GapSearchContext.js +34 -0
- package/lib/esm/curve/internalContexts/GapSearchContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts +114 -0
- package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/MultiChainCollector.js +403 -0
- package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -0
- package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.d.ts +38 -0
- package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js +88 -0
- package/lib/esm/curve/internalContexts/PlaneAltitudeRangeContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts +117 -0
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +686 -0
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/SumLengthsContext.d.ts +17 -0
- package/lib/esm/curve/internalContexts/SumLengthsContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/SumLengthsContext.js +21 -0
- package/lib/esm/curve/internalContexts/SumLengthsContext.js.map +1 -0
- package/lib/esm/curve/internalContexts/TransformInPlaceContext.d.ts +19 -0
- package/lib/esm/curve/internalContexts/TransformInPlaceContext.d.ts.map +1 -0
- package/lib/esm/curve/internalContexts/TransformInPlaceContext.js +19 -0
- package/lib/esm/curve/internalContexts/TransformInPlaceContext.js.map +1 -0
- package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts +41 -0
- package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js +124 -0
- package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/ClothoidSeries.d.ts +66 -0
- package/lib/esm/curve/spiral/ClothoidSeries.d.ts.map +1 -0
- package/lib/esm/curve/spiral/ClothoidSeries.js +220 -0
- package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -0
- package/lib/esm/curve/spiral/CubicEvaluator.d.ts +43 -0
- package/lib/esm/curve/spiral/CubicEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/CubicEvaluator.js +67 -0
- package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts +108 -0
- package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/CzechSpiralEvaluator.js +198 -0
- package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts +39 -0
- package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js +88 -0
- package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/DirectSpiral3d.d.ts +265 -0
- package/lib/esm/curve/spiral/DirectSpiral3d.d.ts.map +1 -0
- package/lib/esm/curve/spiral/DirectSpiral3d.js +469 -0
- package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -0
- package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts +158 -0
- package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -0
- package/lib/esm/curve/spiral/IntegratedSpiral3d.js +360 -0
- package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -0
- package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +38 -0
- package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +72 -0
- package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/NormalizedTransition.d.ts +140 -0
- package/lib/esm/curve/spiral/NormalizedTransition.d.ts.map +1 -0
- package/lib/esm/curve/spiral/NormalizedTransition.js +182 -0
- package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -0
- package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts +50 -0
- package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js +109 -0
- package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -0
- package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts +53 -0
- package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -0
- package/lib/esm/curve/spiral/TransitionConditionalProperties.js +142 -0
- package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -0
- package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts +101 -0
- package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts.map +1 -0
- package/lib/esm/curve/spiral/TransitionSpiral3d.js +106 -0
- package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -0
- package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts +80 -0
- package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts.map +1 -0
- package/lib/esm/curve/spiral/XYCurveEvaluator.js +103 -0
- package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -0
- package/lib/esm/geometry3d/Angle.d.ts +214 -0
- package/lib/esm/geometry3d/Angle.d.ts.map +1 -0
- package/lib/esm/geometry3d/Angle.js +399 -0
- package/lib/esm/geometry3d/Angle.js.map +1 -0
- package/lib/esm/geometry3d/AngleSweep.d.ts +187 -0
- package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -0
- package/lib/esm/geometry3d/AngleSweep.js +325 -0
- package/lib/esm/geometry3d/AngleSweep.js.map +1 -0
- package/lib/esm/geometry3d/BarycentricTriangle.d.ts +51 -0
- package/lib/esm/geometry3d/BarycentricTriangle.d.ts.map +1 -0
- package/lib/esm/geometry3d/BarycentricTriangle.js +97 -0
- package/lib/esm/geometry3d/BarycentricTriangle.js.map +1 -0
- package/lib/esm/geometry3d/BilinearPatch.d.ts +107 -0
- package/lib/esm/geometry3d/BilinearPatch.d.ts.map +1 -0
- package/lib/esm/geometry3d/BilinearPatch.js +200 -0
- package/lib/esm/geometry3d/BilinearPatch.js.map +1 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts +56 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts.map +1 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.js +196 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -0
- package/lib/esm/geometry3d/Ellipsoid.d.ts +388 -0
- package/lib/esm/geometry3d/Ellipsoid.d.ts.map +1 -0
- package/lib/esm/geometry3d/Ellipsoid.js +1069 -0
- package/lib/esm/geometry3d/Ellipsoid.js.map +1 -0
- package/lib/esm/geometry3d/FrameBuilder.d.ts +91 -0
- package/lib/esm/geometry3d/FrameBuilder.d.ts.map +1 -0
- package/lib/esm/geometry3d/FrameBuilder.js +315 -0
- package/lib/esm/geometry3d/FrameBuilder.js.map +1 -0
- package/lib/esm/geometry3d/FrustumAnimation.d.ts +59 -0
- package/lib/esm/geometry3d/FrustumAnimation.d.ts.map +1 -0
- package/lib/esm/geometry3d/FrustumAnimation.js +119 -0
- package/lib/esm/geometry3d/FrustumAnimation.js.map +1 -0
- package/lib/esm/geometry3d/GeometryHandler.d.ts +329 -0
- package/lib/esm/geometry3d/GeometryHandler.d.ts.map +1 -0
- package/lib/esm/geometry3d/GeometryHandler.js +169 -0
- package/lib/esm/geometry3d/GeometryHandler.js.map +1 -0
- package/lib/esm/geometry3d/GrowableBlockedArray.d.ts +71 -0
- package/lib/esm/geometry3d/GrowableBlockedArray.d.ts.map +1 -0
- package/lib/esm/geometry3d/GrowableBlockedArray.js +158 -0
- package/lib/esm/geometry3d/GrowableBlockedArray.js.map +1 -0
- package/lib/esm/geometry3d/GrowableFloat64Array.d.ts +132 -0
- package/lib/esm/geometry3d/GrowableFloat64Array.d.ts.map +1 -0
- package/lib/esm/geometry3d/GrowableFloat64Array.js +249 -0
- package/lib/esm/geometry3d/GrowableFloat64Array.js.map +1 -0
- package/lib/esm/geometry3d/GrowableXYArray.d.ts +204 -0
- package/lib/esm/geometry3d/GrowableXYArray.d.ts.map +1 -0
- package/lib/esm/geometry3d/GrowableXYArray.js +621 -0
- package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -0
- package/lib/esm/geometry3d/GrowableXYZArray.d.ts +324 -0
- package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -0
- package/lib/esm/geometry3d/GrowableXYZArray.js +975 -0
- package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -0
- package/lib/esm/geometry3d/IndexedCollectionInterval.d.ts +63 -0
- package/lib/esm/geometry3d/IndexedCollectionInterval.d.ts.map +1 -0
- package/lib/esm/geometry3d/IndexedCollectionInterval.js +105 -0
- package/lib/esm/geometry3d/IndexedCollectionInterval.js.map +1 -0
- package/lib/esm/geometry3d/IndexedXYCollection.d.ts +69 -0
- package/lib/esm/geometry3d/IndexedXYCollection.d.ts.map +1 -0
- package/lib/esm/geometry3d/IndexedXYCollection.js +16 -0
- package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -0
- package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +149 -0
- package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -0
- package/lib/esm/geometry3d/IndexedXYZCollection.js +98 -0
- package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -0
- package/lib/esm/geometry3d/LongitudeLatitudeAltitude.d.ts +63 -0
- package/lib/esm/geometry3d/LongitudeLatitudeAltitude.d.ts.map +1 -0
- package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js +119 -0
- package/lib/esm/geometry3d/LongitudeLatitudeAltitude.js.map +1 -0
- package/lib/esm/geometry3d/Matrix3d.d.ts +885 -0
- package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -0
- package/lib/esm/geometry3d/Matrix3d.js +2269 -0
- package/lib/esm/geometry3d/Matrix3d.js.map +1 -0
- package/lib/esm/geometry3d/OrderedRotationAngles.d.ts +61 -0
- package/lib/esm/geometry3d/OrderedRotationAngles.d.ts.map +1 -0
- package/lib/esm/geometry3d/OrderedRotationAngles.js +228 -0
- package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts +122 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +1 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js +237 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndUnitNormal.js.map +1 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts +119 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.d.ts.map +1 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js +238 -0
- package/lib/esm/geometry3d/Plane3dByOriginAndVectors.js.map +1 -0
- package/lib/esm/geometry3d/Point2dArrayCarrier.d.ts +74 -0
- package/lib/esm/geometry3d/Point2dArrayCarrier.d.ts.map +1 -0
- package/lib/esm/geometry3d/Point2dArrayCarrier.js +111 -0
- package/lib/esm/geometry3d/Point2dArrayCarrier.js.map +1 -0
- package/lib/esm/geometry3d/Point2dVector2d.d.ts +209 -0
- package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -0
- package/lib/esm/geometry3d/Point2dVector2d.js +461 -0
- package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -0
- package/lib/esm/geometry3d/Point3dArrayCarrier.d.ts +142 -0
- package/lib/esm/geometry3d/Point3dArrayCarrier.d.ts.map +1 -0
- package/lib/esm/geometry3d/Point3dArrayCarrier.js +233 -0
- package/lib/esm/geometry3d/Point3dArrayCarrier.js.map +1 -0
- package/lib/esm/geometry3d/Point3dVector3d.d.ts +699 -0
- package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -0
- package/lib/esm/geometry3d/Point3dVector3d.js +1294 -0
- package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -0
- package/lib/esm/geometry3d/PointHelpers.d.ts +263 -0
- package/lib/esm/geometry3d/PointHelpers.d.ts.map +1 -0
- package/lib/esm/geometry3d/PointHelpers.js +898 -0
- package/lib/esm/geometry3d/PointHelpers.js.map +1 -0
- package/lib/esm/geometry3d/PointStreaming.d.ts +87 -0
- package/lib/esm/geometry3d/PointStreaming.d.ts.map +1 -0
- package/lib/esm/geometry3d/PointStreaming.js +181 -0
- package/lib/esm/geometry3d/PointStreaming.js.map +1 -0
- package/lib/esm/geometry3d/PolygonOps.d.ts +306 -0
- package/lib/esm/geometry3d/PolygonOps.d.ts.map +1 -0
- package/lib/esm/geometry3d/PolygonOps.js +986 -0
- package/lib/esm/geometry3d/PolygonOps.js.map +1 -0
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts +81 -0
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -0
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +274 -0
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -0
- package/lib/esm/geometry3d/PolylineOps.d.ts +63 -0
- package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -0
- package/lib/esm/geometry3d/PolylineOps.js +172 -0
- package/lib/esm/geometry3d/PolylineOps.js.map +1 -0
- package/lib/esm/geometry3d/Range.d.ts +599 -0
- package/lib/esm/geometry3d/Range.d.ts.map +1 -0
- package/lib/esm/geometry3d/Range.js +1424 -0
- package/lib/esm/geometry3d/Range.js.map +1 -0
- package/lib/esm/geometry3d/Ray3d.d.ts +146 -0
- package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -0
- package/lib/esm/geometry3d/Ray3d.js +325 -0
- package/lib/esm/geometry3d/Ray3d.js.map +1 -0
- package/lib/esm/geometry3d/ReusableObjectCache.d.ts +55 -0
- package/lib/esm/geometry3d/ReusableObjectCache.d.ts.map +1 -0
- package/lib/esm/geometry3d/ReusableObjectCache.js +82 -0
- package/lib/esm/geometry3d/ReusableObjectCache.js.map +1 -0
- package/lib/esm/geometry3d/Segment1d.d.ts +106 -0
- package/lib/esm/geometry3d/Segment1d.d.ts.map +1 -0
- package/lib/esm/geometry3d/Segment1d.js +169 -0
- package/lib/esm/geometry3d/Segment1d.js.map +1 -0
- package/lib/esm/geometry3d/SortablePolygon.d.ts +50 -0
- package/lib/esm/geometry3d/SortablePolygon.d.ts.map +1 -0
- package/lib/esm/geometry3d/SortablePolygon.js +312 -0
- package/lib/esm/geometry3d/SortablePolygon.js.map +1 -0
- package/lib/esm/geometry3d/Transform.d.ts +275 -0
- package/lib/esm/geometry3d/Transform.d.ts.map +1 -0
- package/lib/esm/geometry3d/Transform.js +570 -0
- package/lib/esm/geometry3d/Transform.js.map +1 -0
- package/lib/esm/geometry3d/UVSurfaceOps.d.ts +43 -0
- package/lib/esm/geometry3d/UVSurfaceOps.d.ts.map +1 -0
- package/lib/esm/geometry3d/UVSurfaceOps.js +98 -0
- package/lib/esm/geometry3d/UVSurfaceOps.js.map +1 -0
- package/lib/esm/geometry3d/XYZProps.d.ts +143 -0
- package/lib/esm/geometry3d/XYZProps.d.ts.map +1 -0
- package/lib/esm/geometry3d/XYZProps.js +6 -0
- package/lib/esm/geometry3d/XYZProps.js.map +1 -0
- package/lib/esm/geometry3d/YawPitchRollAngles.d.ts +111 -0
- package/lib/esm/geometry3d/YawPitchRollAngles.d.ts.map +1 -0
- package/lib/esm/geometry3d/YawPitchRollAngles.js +195 -0
- package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -0
- package/lib/esm/geometry4d/Map4d.d.ts +73 -0
- package/lib/esm/geometry4d/Map4d.d.ts.map +1 -0
- package/lib/esm/geometry4d/Map4d.js +147 -0
- package/lib/esm/geometry4d/Map4d.js.map +1 -0
- package/lib/esm/geometry4d/Matrix4d.d.ts +284 -0
- package/lib/esm/geometry4d/Matrix4d.d.ts.map +1 -0
- package/lib/esm/geometry4d/Matrix4d.js +739 -0
- package/lib/esm/geometry4d/Matrix4d.js.map +1 -0
- package/lib/esm/geometry4d/MomentData.d.ts +180 -0
- package/lib/esm/geometry4d/MomentData.d.ts.map +1 -0
- package/lib/esm/geometry4d/MomentData.js +384 -0
- package/lib/esm/geometry4d/MomentData.js.map +1 -0
- package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.d.ts +43 -0
- package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +1 -0
- package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js +81 -0
- package/lib/esm/geometry4d/PlaneByOriginAndVectors4d.js.map +1 -0
- package/lib/esm/geometry4d/Point4d.d.ts +257 -0
- package/lib/esm/geometry4d/Point4d.d.ts.map +1 -0
- package/lib/esm/geometry4d/Point4d.js +552 -0
- package/lib/esm/geometry4d/Point4d.js.map +1 -0
- package/lib/esm/numerics/BandedSystem.d.ts +39 -0
- package/lib/esm/numerics/BandedSystem.d.ts.map +1 -0
- package/lib/esm/numerics/BandedSystem.js +156 -0
- package/lib/esm/numerics/BandedSystem.js.map +1 -0
- package/lib/esm/numerics/BezierPolynomials.d.ts +462 -0
- package/lib/esm/numerics/BezierPolynomials.d.ts.map +1 -0
- package/lib/esm/numerics/BezierPolynomials.js +1189 -0
- package/lib/esm/numerics/BezierPolynomials.js.map +1 -0
- package/lib/esm/numerics/ClusterableArray.d.ts +162 -0
- package/lib/esm/numerics/ClusterableArray.d.ts.map +1 -0
- package/lib/esm/numerics/ClusterableArray.js +477 -0
- package/lib/esm/numerics/ClusterableArray.js.map +1 -0
- package/lib/esm/numerics/Complex.d.ts +63 -0
- package/lib/esm/numerics/Complex.d.ts.map +1 -0
- package/lib/esm/numerics/Complex.js +116 -0
- package/lib/esm/numerics/Complex.js.map +1 -0
- package/lib/esm/numerics/ConvexPolygon2d.d.ts +86 -0
- package/lib/esm/numerics/ConvexPolygon2d.d.ts.map +1 -0
- package/lib/esm/numerics/ConvexPolygon2d.js +313 -0
- package/lib/esm/numerics/ConvexPolygon2d.js.map +1 -0
- package/lib/esm/numerics/Newton.d.ts +188 -0
- package/lib/esm/numerics/Newton.d.ts.map +1 -0
- package/lib/esm/numerics/Newton.js +247 -0
- package/lib/esm/numerics/Newton.js.map +1 -0
- package/lib/esm/numerics/PascalCoefficients.d.ts +33 -0
- package/lib/esm/numerics/PascalCoefficients.d.ts.map +1 -0
- package/lib/esm/numerics/PascalCoefficients.js +91 -0
- package/lib/esm/numerics/PascalCoefficients.js.map +1 -0
- package/lib/esm/numerics/PolarData.d.ts +42 -0
- package/lib/esm/numerics/PolarData.d.ts.map +1 -0
- package/lib/esm/numerics/PolarData.js +162 -0
- package/lib/esm/numerics/PolarData.js.map +1 -0
- package/lib/esm/numerics/Polynomials.d.ts +653 -0
- package/lib/esm/numerics/Polynomials.d.ts.map +1 -0
- package/lib/esm/numerics/Polynomials.js +1697 -0
- package/lib/esm/numerics/Polynomials.js.map +1 -0
- package/lib/esm/numerics/Quadrature.d.ts +91 -0
- package/lib/esm/numerics/Quadrature.d.ts.map +1 -0
- package/lib/esm/numerics/Quadrature.js +199 -0
- package/lib/esm/numerics/Quadrature.js.map +1 -0
- package/lib/esm/numerics/Range1dArray.d.ts +80 -0
- package/lib/esm/numerics/Range1dArray.d.ts.map +1 -0
- package/lib/esm/numerics/Range1dArray.js +358 -0
- package/lib/esm/numerics/Range1dArray.js.map +1 -0
- package/lib/esm/numerics/TriDiagonalSystem.d.ts +51 -0
- package/lib/esm/numerics/TriDiagonalSystem.d.ts.map +1 -0
- package/lib/esm/numerics/TriDiagonalSystem.js +270 -0
- package/lib/esm/numerics/TriDiagonalSystem.js.map +1 -0
- package/lib/esm/numerics/UnionFind.d.ts +49 -0
- package/lib/esm/numerics/UnionFind.d.ts.map +1 -0
- package/lib/esm/numerics/UnionFind.js +117 -0
- package/lib/esm/numerics/UnionFind.js.map +1 -0
- package/lib/esm/numerics/UsageSums.d.ts +86 -0
- package/lib/esm/numerics/UsageSums.d.ts.map +1 -0
- package/lib/esm/numerics/UsageSums.js +128 -0
- package/lib/esm/numerics/UsageSums.js.map +1 -0
- package/lib/esm/polyface/AuxData.d.ts +112 -0
- package/lib/esm/polyface/AuxData.d.ts.map +1 -0
- package/lib/esm/polyface/AuxData.js +228 -0
- package/lib/esm/polyface/AuxData.js.map +1 -0
- package/lib/esm/polyface/BoxTopology.d.ts +38 -0
- package/lib/esm/polyface/BoxTopology.d.ts.map +1 -0
- package/lib/esm/polyface/BoxTopology.js +99 -0
- package/lib/esm/polyface/BoxTopology.js.map +1 -0
- package/lib/esm/polyface/FacetFaceData.d.ts +44 -0
- package/lib/esm/polyface/FacetFaceData.d.ts.map +1 -0
- package/lib/esm/polyface/FacetFaceData.js +142 -0
- package/lib/esm/polyface/FacetFaceData.js.map +1 -0
- package/lib/esm/polyface/FacetOrientation.d.ts +39 -0
- package/lib/esm/polyface/FacetOrientation.d.ts.map +1 -0
- package/lib/esm/polyface/FacetOrientation.js +192 -0
- package/lib/esm/polyface/FacetOrientation.js.map +1 -0
- package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.d.ts +61 -0
- package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +1 -0
- package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js +245 -0
- package/lib/esm/polyface/GreedyTriangulationBetweenLineStrings.js.map +1 -0
- package/lib/esm/polyface/IndexedEdgeMatcher.d.ts +87 -0
- package/lib/esm/polyface/IndexedEdgeMatcher.d.ts.map +1 -0
- package/lib/esm/polyface/IndexedEdgeMatcher.js +192 -0
- package/lib/esm/polyface/IndexedEdgeMatcher.js.map +1 -0
- package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts +109 -0
- package/lib/esm/polyface/IndexedPolyfaceVisitor.d.ts.map +1 -0
- package/lib/esm/polyface/IndexedPolyfaceVisitor.js +237 -0
- package/lib/esm/polyface/IndexedPolyfaceVisitor.js.map +1 -0
- package/lib/esm/polyface/Polyface.d.ts +254 -0
- package/lib/esm/polyface/Polyface.d.ts.map +1 -0
- package/lib/esm/polyface/Polyface.js +501 -0
- package/lib/esm/polyface/Polyface.js.map +1 -0
- package/lib/esm/polyface/PolyfaceBuilder.d.ts +395 -0
- package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -0
- package/lib/esm/polyface/PolyfaceBuilder.js +1634 -0
- package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -0
- package/lib/esm/polyface/PolyfaceClip.d.ts +172 -0
- package/lib/esm/polyface/PolyfaceClip.d.ts.map +1 -0
- package/lib/esm/polyface/PolyfaceClip.js +565 -0
- package/lib/esm/polyface/PolyfaceClip.js.map +1 -0
- package/lib/esm/polyface/PolyfaceData.d.ts +206 -0
- package/lib/esm/polyface/PolyfaceData.d.ts.map +1 -0
- package/lib/esm/polyface/PolyfaceData.js +527 -0
- package/lib/esm/polyface/PolyfaceData.js.map +1 -0
- package/lib/esm/polyface/PolyfaceQuery.d.ts +302 -0
- package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -0
- package/lib/esm/polyface/PolyfaceQuery.js +947 -0
- package/lib/esm/polyface/PolyfaceQuery.js.map +1 -0
- package/lib/esm/polyface/RangeLengthData.d.ts +31 -0
- package/lib/esm/polyface/RangeLengthData.d.ts.map +1 -0
- package/lib/esm/polyface/RangeLengthData.js +39 -0
- package/lib/esm/polyface/RangeLengthData.js.map +1 -0
- package/lib/esm/polyface/TaggedNumericData.d.ts +95 -0
- package/lib/esm/polyface/TaggedNumericData.d.ts.map +1 -0
- package/lib/esm/polyface/TaggedNumericData.js +160 -0
- package/lib/esm/polyface/TaggedNumericData.js.map +1 -0
- package/lib/esm/polyface/TriangleCandidate.d.ts +64 -0
- package/lib/esm/polyface/TriangleCandidate.d.ts.map +1 -0
- package/lib/esm/polyface/TriangleCandidate.js +116 -0
- package/lib/esm/polyface/TriangleCandidate.js.map +1 -0
- package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.d.ts +29 -0
- package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js +160 -0
- package/lib/esm/polyface/multiclip/BuildAverageNormalsContext.js.map +1 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.d.ts +81 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js +159 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSet.js.map +1 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts +53 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js +74 -0
- package/lib/esm/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +1 -0
- package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.d.ts +44 -0
- package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js +80 -0
- package/lib/esm/polyface/multiclip/LinearSearchRange2dArray.js.map +1 -0
- package/lib/esm/polyface/multiclip/Range2dSearchInterface.d.ts +32 -0
- package/lib/esm/polyface/multiclip/Range2dSearchInterface.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/Range2dSearchInterface.js +9 -0
- package/lib/esm/polyface/multiclip/Range2dSearchInterface.js.map +1 -0
- package/lib/esm/polyface/multiclip/RangeSearch.d.ts +27 -0
- package/lib/esm/polyface/multiclip/RangeSearch.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/RangeSearch.js +49 -0
- package/lib/esm/polyface/multiclip/RangeSearch.js.map +1 -0
- package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts +25 -0
- package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js +90 -0
- package/lib/esm/polyface/multiclip/SweepLineStringToFacetContext.js.map +1 -0
- package/lib/esm/polyface/multiclip/XYPointBuckets.d.ts +73 -0
- package/lib/esm/polyface/multiclip/XYPointBuckets.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/XYPointBuckets.js +192 -0
- package/lib/esm/polyface/multiclip/XYPointBuckets.js.map +1 -0
- package/lib/esm/serialization/BGFBAccessors.d.ts +3426 -0
- package/lib/esm/serialization/BGFBAccessors.d.ts.map +1 -0
- package/lib/esm/serialization/BGFBAccessors.js +5543 -0
- package/lib/esm/serialization/BGFBAccessors.js.map +1 -0
- package/lib/esm/serialization/BGFBReader.d.ts +118 -0
- package/lib/esm/serialization/BGFBReader.d.ts.map +1 -0
- package/lib/esm/serialization/BGFBReader.js +661 -0
- package/lib/esm/serialization/BGFBReader.js.map +1 -0
- package/lib/esm/serialization/BGFBWriter.d.ts +69 -0
- package/lib/esm/serialization/BGFBWriter.d.ts.map +1 -0
- package/lib/esm/serialization/BGFBWriter.js +587 -0
- package/lib/esm/serialization/BGFBWriter.js.map +1 -0
- package/lib/esm/serialization/BentleyGeometryFlatBuffer.d.ts +23 -0
- package/lib/esm/serialization/BentleyGeometryFlatBuffer.d.ts.map +1 -0
- package/lib/esm/serialization/BentleyGeometryFlatBuffer.js +26 -0
- package/lib/esm/serialization/BentleyGeometryFlatBuffer.js.map +1 -0
- package/lib/esm/serialization/DeepCompare.d.ts +41 -0
- package/lib/esm/serialization/DeepCompare.d.ts.map +1 -0
- package/lib/esm/serialization/DeepCompare.js +185 -0
- package/lib/esm/serialization/DeepCompare.js.map +1 -0
- package/lib/esm/serialization/GeometrySamples.d.ts +616 -0
- package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -0
- package/lib/esm/serialization/GeometrySamples.js +2124 -0
- package/lib/esm/serialization/GeometrySamples.js.map +1 -0
- package/lib/esm/serialization/IModelJsonSchema.d.ts +671 -0
- package/lib/esm/serialization/IModelJsonSchema.d.ts.map +1 -0
- package/lib/esm/serialization/IModelJsonSchema.js +1523 -0
- package/lib/esm/serialization/IModelJsonSchema.js.map +1 -0
- package/lib/esm/solid/Box.d.ts +122 -0
- package/lib/esm/solid/Box.d.ts.map +1 -0
- package/lib/esm/solid/Box.js +229 -0
- package/lib/esm/solid/Box.js.map +1 -0
- package/lib/esm/solid/Cone.d.ts +119 -0
- package/lib/esm/solid/Cone.d.ts.map +1 -0
- package/lib/esm/solid/Cone.js +267 -0
- package/lib/esm/solid/Cone.js.map +1 -0
- package/lib/esm/solid/LinearSweep.d.ts +81 -0
- package/lib/esm/solid/LinearSweep.d.ts.map +1 -0
- package/lib/esm/solid/LinearSweep.js +143 -0
- package/lib/esm/solid/LinearSweep.js.map +1 -0
- package/lib/esm/solid/RotationalSweep.d.ts +71 -0
- package/lib/esm/solid/RotationalSweep.d.ts.map +1 -0
- package/lib/esm/solid/RotationalSweep.js +139 -0
- package/lib/esm/solid/RotationalSweep.js.map +1 -0
- package/lib/esm/solid/RuledSweep.d.ts +76 -0
- package/lib/esm/solid/RuledSweep.d.ts.map +1 -0
- package/lib/esm/solid/RuledSweep.js +202 -0
- package/lib/esm/solid/RuledSweep.js.map +1 -0
- package/lib/esm/solid/SolidPrimitive.d.ts +63 -0
- package/lib/esm/solid/SolidPrimitive.d.ts.map +1 -0
- package/lib/esm/solid/SolidPrimitive.js +23 -0
- package/lib/esm/solid/SolidPrimitive.js.map +1 -0
- package/lib/esm/solid/Sphere.d.ts +120 -0
- package/lib/esm/solid/Sphere.d.ts.map +1 -0
- package/lib/esm/solid/Sphere.js +294 -0
- package/lib/esm/solid/Sphere.js.map +1 -0
- package/lib/esm/solid/SweepContour.d.ts +82 -0
- package/lib/esm/solid/SweepContour.d.ts.map +1 -0
- package/lib/esm/solid/SweepContour.js +250 -0
- package/lib/esm/solid/SweepContour.js.map +1 -0
- package/lib/esm/solid/TorusPipe.d.ts +123 -0
- package/lib/esm/solid/TorusPipe.d.ts.map +1 -0
- package/lib/esm/solid/TorusPipe.js +296 -0
- package/lib/esm/solid/TorusPipe.js.map +1 -0
- package/lib/esm/topology/ChainMerge.d.ts +119 -0
- package/lib/esm/topology/ChainMerge.d.ts.map +1 -0
- package/lib/esm/topology/ChainMerge.js +280 -0
- package/lib/esm/topology/ChainMerge.js.map +1 -0
- package/lib/esm/topology/Graph.d.ts +591 -0
- package/lib/esm/topology/Graph.d.ts.map +1 -0
- package/lib/esm/topology/Graph.js +1156 -0
- package/lib/esm/topology/Graph.js.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphSearch.d.ts +125 -0
- package/lib/esm/topology/HalfEdgeGraphSearch.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphSearch.js +296 -0
- package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphSpineContext.d.ts +98 -0
- package/lib/esm/topology/HalfEdgeGraphSpineContext.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphSpineContext.js +519 -0
- package/lib/esm/topology/HalfEdgeGraphSpineContext.js.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphValidation.d.ts +52 -0
- package/lib/esm/topology/HalfEdgeGraphValidation.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphValidation.js +107 -0
- package/lib/esm/topology/HalfEdgeGraphValidation.js.map +1 -0
- package/lib/esm/topology/HalfEdgeMarkSet.d.ts +232 -0
- package/lib/esm/topology/HalfEdgeMarkSet.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeMarkSet.js +369 -0
- package/lib/esm/topology/HalfEdgeMarkSet.js.map +1 -0
- package/lib/esm/topology/HalfEdgeNodeXYZUV.d.ts +51 -0
- package/lib/esm/topology/HalfEdgeNodeXYZUV.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeNodeXYZUV.js +93 -0
- package/lib/esm/topology/HalfEdgeNodeXYZUV.js.map +1 -0
- package/lib/esm/topology/HalfEdgePointInGraphSearch.d.ts +34 -0
- package/lib/esm/topology/HalfEdgePointInGraphSearch.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgePointInGraphSearch.js +252 -0
- package/lib/esm/topology/HalfEdgePointInGraphSearch.js.map +1 -0
- package/lib/esm/topology/HalfEdgePositionDetail.d.ts +97 -0
- package/lib/esm/topology/HalfEdgePositionDetail.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgePositionDetail.js +173 -0
- package/lib/esm/topology/HalfEdgePositionDetail.js.map +1 -0
- package/lib/esm/topology/HalfEdgePriorityQueue.d.ts +34 -0
- package/lib/esm/topology/HalfEdgePriorityQueue.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgePriorityQueue.js +68 -0
- package/lib/esm/topology/HalfEdgePriorityQueue.js.map +1 -0
- package/lib/esm/topology/InsertAndRetriangulateContext.d.ts +38 -0
- package/lib/esm/topology/InsertAndRetriangulateContext.d.ts.map +1 -0
- package/lib/esm/topology/InsertAndRetriangulateContext.js +239 -0
- package/lib/esm/topology/InsertAndRetriangulateContext.js.map +1 -0
- package/lib/esm/topology/MaskManager.d.ts +33 -0
- package/lib/esm/topology/MaskManager.d.ts.map +1 -0
- package/lib/esm/topology/MaskManager.js +63 -0
- package/lib/esm/topology/MaskManager.js.map +1 -0
- package/lib/esm/topology/Merging.d.ts +90 -0
- package/lib/esm/topology/Merging.d.ts.map +1 -0
- package/lib/esm/topology/Merging.js +362 -0
- package/lib/esm/topology/Merging.js.map +1 -0
- package/lib/esm/topology/RegularizeFace.d.ts +106 -0
- package/lib/esm/topology/RegularizeFace.d.ts.map +1 -0
- package/lib/esm/topology/RegularizeFace.js +367 -0
- package/lib/esm/topology/RegularizeFace.js.map +1 -0
- package/lib/esm/topology/SignedDataSummary.d.ts +37 -0
- package/lib/esm/topology/SignedDataSummary.d.ts.map +1 -0
- package/lib/esm/topology/SignedDataSummary.js +54 -0
- package/lib/esm/topology/SignedDataSummary.js.map +1 -0
- package/lib/esm/topology/Triangulation.d.ts +230 -0
- package/lib/esm/topology/Triangulation.d.ts.map +1 -0
- package/lib/esm/topology/Triangulation.js +945 -0
- package/lib/esm/topology/Triangulation.js.map +1 -0
- package/lib/esm/topology/XYParitySearchContext.d.ts +54 -0
- package/lib/esm/topology/XYParitySearchContext.d.ts.map +1 -0
- package/lib/esm/topology/XYParitySearchContext.js +138 -0
- package/lib/esm/topology/XYParitySearchContext.js.map +1 -0
- package/package.json +11 -8
- package/lib/Constant.d.ts.map +0 -1
- package/lib/Constant.js.map +0 -1
- package/lib/Geometry.d.ts.map +0 -1
- package/lib/Geometry.js.map +0 -1
- package/lib/bspline/AkimaCurve3d.d.ts.map +0 -1
- package/lib/bspline/AkimaCurve3d.js.map +0 -1
- package/lib/bspline/BSpline1dNd.d.ts.map +0 -1
- package/lib/bspline/BSpline1dNd.js.map +0 -1
- package/lib/bspline/BSplineCurve.d.ts.map +0 -1
- package/lib/bspline/BSplineCurve.js.map +0 -1
- package/lib/bspline/BSplineCurve3dH.d.ts.map +0 -1
- package/lib/bspline/BSplineCurve3dH.js.map +0 -1
- package/lib/bspline/BSplineCurveOps.d.ts.map +0 -1
- package/lib/bspline/BSplineCurveOps.js.map +0 -1
- package/lib/bspline/BSplineSurface.d.ts +0 -485
- package/lib/bspline/BSplineSurface.d.ts.map +0 -1
- package/lib/bspline/BSplineSurface.js.map +0 -1
- package/lib/bspline/Bezier1dNd.d.ts.map +0 -1
- package/lib/bspline/Bezier1dNd.js.map +0 -1
- package/lib/bspline/BezierCurve3d.d.ts.map +0 -1
- package/lib/bspline/BezierCurve3d.js.map +0 -1
- package/lib/bspline/BezierCurve3dH.d.ts.map +0 -1
- package/lib/bspline/BezierCurve3dH.js.map +0 -1
- package/lib/bspline/BezierCurveBase.d.ts.map +0 -1
- package/lib/bspline/BezierCurveBase.js.map +0 -1
- package/lib/bspline/InterpolationCurve3d.d.ts.map +0 -1
- package/lib/bspline/InterpolationCurve3d.js.map +0 -1
- package/lib/bspline/KnotVector.d.ts.map +0 -1
- package/lib/bspline/KnotVector.js.map +0 -1
- package/lib/bspline/SurfaceLocationDetail.d.ts.map +0 -1
- package/lib/bspline/SurfaceLocationDetail.js.map +0 -1
- package/lib/clipping/AlternatingConvexClipTree.d.ts.map +0 -1
- package/lib/clipping/AlternatingConvexClipTree.js.map +0 -1
- package/lib/clipping/BooleanClipFactory.d.ts.map +0 -1
- package/lib/clipping/BooleanClipFactory.js.map +0 -1
- package/lib/clipping/BooleanClipNode.d.ts.map +0 -1
- package/lib/clipping/BooleanClipNode.js.map +0 -1
- package/lib/clipping/ClipPlane.d.ts.map +0 -1
- package/lib/clipping/ClipPlane.js.map +0 -1
- package/lib/clipping/ClipPrimitive.d.ts.map +0 -1
- package/lib/clipping/ClipPrimitive.js.map +0 -1
- package/lib/clipping/ClipUtils.d.ts.map +0 -1
- package/lib/clipping/ClipUtils.js.map +0 -1
- package/lib/clipping/ClipVector.d.ts.map +0 -1
- package/lib/clipping/ClipVector.js.map +0 -1
- package/lib/clipping/ConvexClipPlaneSet.d.ts.map +0 -1
- package/lib/clipping/ConvexClipPlaneSet.js.map +0 -1
- package/lib/clipping/UnionOfConvexClipPlaneSets.d.ts.map +0 -1
- package/lib/clipping/UnionOfConvexClipPlaneSets.js.map +0 -1
- package/lib/clipping/internalContexts/LineStringOffsetClipperContext.d.ts.map +0 -1
- package/lib/clipping/internalContexts/LineStringOffsetClipperContext.js.map +0 -1
- package/lib/core-geometry.d.ts.map +0 -1
- package/lib/core-geometry.js.map +0 -1
- package/lib/curve/Arc3d.d.ts.map +0 -1
- package/lib/curve/Arc3d.js.map +0 -1
- package/lib/curve/ChainCollectorContext.d.ts.map +0 -1
- package/lib/curve/ChainCollectorContext.js.map +0 -1
- package/lib/curve/ConstructCurveBetweenCurves.d.ts.map +0 -1
- package/lib/curve/ConstructCurveBetweenCurves.js.map +0 -1
- package/lib/curve/CoordinateXYZ.d.ts.map +0 -1
- package/lib/curve/CoordinateXYZ.js.map +0 -1
- package/lib/curve/CurveChain.d.ts.map +0 -1
- package/lib/curve/CurveChain.js.map +0 -1
- package/lib/curve/CurveChainWithDistanceIndex.d.ts.map +0 -1
- package/lib/curve/CurveChainWithDistanceIndex.js.map +0 -1
- package/lib/curve/CurveCollection.d.ts.map +0 -1
- package/lib/curve/CurveCollection.js.map +0 -1
- package/lib/curve/CurveCurve.d.ts.map +0 -1
- package/lib/curve/CurveCurve.js.map +0 -1
- package/lib/curve/CurveCurveCloseApproachXY.d.ts.map +0 -1
- package/lib/curve/CurveCurveCloseApproachXY.js.map +0 -1
- package/lib/curve/CurveCurveIntersectXY.d.ts.map +0 -1
- package/lib/curve/CurveCurveIntersectXY.js.map +0 -1
- package/lib/curve/CurveCurveIntersectXYZ.d.ts.map +0 -1
- package/lib/curve/CurveCurveIntersectXYZ.js.map +0 -1
- package/lib/curve/CurveExtendMode.d.ts.map +0 -1
- package/lib/curve/CurveExtendMode.js.map +0 -1
- package/lib/curve/CurveFactory.d.ts.map +0 -1
- package/lib/curve/CurveFactory.js.map +0 -1
- package/lib/curve/CurveLocationDetail.d.ts.map +0 -1
- package/lib/curve/CurveLocationDetail.js.map +0 -1
- package/lib/curve/CurvePrimitive.d.ts.map +0 -1
- package/lib/curve/CurvePrimitive.js.map +0 -1
- package/lib/curve/CurveProcessor.d.ts.map +0 -1
- package/lib/curve/CurveProcessor.js.map +0 -1
- package/lib/curve/CurveWireMomentsXYZ.d.ts.map +0 -1
- package/lib/curve/CurveWireMomentsXYZ.js.map +0 -1
- package/lib/curve/GeometryQuery.d.ts.map +0 -1
- package/lib/curve/GeometryQuery.js.map +0 -1
- package/lib/curve/LineSegment3d.d.ts.map +0 -1
- package/lib/curve/LineSegment3d.js.map +0 -1
- package/lib/curve/LineString3d.d.ts.map +0 -1
- package/lib/curve/LineString3d.js.map +0 -1
- package/lib/curve/Loop.d.ts.map +0 -1
- package/lib/curve/Loop.js.map +0 -1
- package/lib/curve/ParityRegion.d.ts.map +0 -1
- package/lib/curve/ParityRegion.js.map +0 -1
- package/lib/curve/Path.d.ts.map +0 -1
- package/lib/curve/Path.js.map +0 -1
- package/lib/curve/PointString3d.d.ts.map +0 -1
- package/lib/curve/PointString3d.js.map +0 -1
- package/lib/curve/ProxyCurve.d.ts.map +0 -1
- package/lib/curve/ProxyCurve.js.map +0 -1
- package/lib/curve/Query/ConsolidateAdjacentPrimitivesContext.d.ts.map +0 -1
- package/lib/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +0 -1
- package/lib/curve/Query/CurveSplitContext.d.ts.map +0 -1
- package/lib/curve/Query/CurveSplitContext.js.map +0 -1
- package/lib/curve/Query/CylindricalRange.d.ts.map +0 -1
- package/lib/curve/Query/CylindricalRange.js.map +0 -1
- package/lib/curve/Query/InOutTests.d.ts.map +0 -1
- package/lib/curve/Query/InOutTests.js.map +0 -1
- package/lib/curve/Query/PlanarSubdivision.d.ts.map +0 -1
- package/lib/curve/Query/PlanarSubdivision.js.map +0 -1
- package/lib/curve/Query/StrokeCountChain.d.ts.map +0 -1
- package/lib/curve/Query/StrokeCountChain.js.map +0 -1
- package/lib/curve/Query/StrokeCountMap.d.ts.map +0 -1
- package/lib/curve/Query/StrokeCountMap.js.map +0 -1
- package/lib/curve/RegionMomentsXY.d.ts.map +0 -1
- package/lib/curve/RegionMomentsXY.js.map +0 -1
- package/lib/curve/RegionOps.d.ts.map +0 -1
- package/lib/curve/RegionOps.js.map +0 -1
- package/lib/curve/RegionOpsClassificationSweeps.d.ts.map +0 -1
- package/lib/curve/RegionOpsClassificationSweeps.js.map +0 -1
- package/lib/curve/StrokeOptions.d.ts.map +0 -1
- package/lib/curve/StrokeOptions.js.map +0 -1
- package/lib/curve/UnionRegion.d.ts.map +0 -1
- package/lib/curve/UnionRegion.js.map +0 -1
- package/lib/curve/internalContexts/CloneCurvesContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/CloneCurvesContext.js.map +0 -1
- package/lib/curve/internalContexts/CloneWithExpandedLineStrings.d.ts.map +0 -1
- package/lib/curve/internalContexts/CloneWithExpandedLineStrings.js.map +0 -1
- package/lib/curve/internalContexts/CountLinearPartsSearchContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/CountLinearPartsSearchContext.js.map +0 -1
- package/lib/curve/internalContexts/GapSearchContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/GapSearchContext.js.map +0 -1
- package/lib/curve/internalContexts/MultiChainCollector.d.ts.map +0 -1
- package/lib/curve/internalContexts/MultiChainCollector.js.map +0 -1
- package/lib/curve/internalContexts/PlaneAltitudeRangeContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/PlaneAltitudeRangeContext.js.map +0 -1
- package/lib/curve/internalContexts/PolygonOffsetContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/PolygonOffsetContext.js.map +0 -1
- package/lib/curve/internalContexts/SumLengthsContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/SumLengthsContext.js.map +0 -1
- package/lib/curve/internalContexts/TransformInPlaceContext.d.ts.map +0 -1
- package/lib/curve/internalContexts/TransformInPlaceContext.js.map +0 -1
- package/lib/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/AustralianRailCorpXYEvaluator.js.map +0 -1
- package/lib/curve/spiral/ClothoidSeries.d.ts.map +0 -1
- package/lib/curve/spiral/ClothoidSeries.js.map +0 -1
- package/lib/curve/spiral/CubicEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/CubicEvaluator.js.map +0 -1
- package/lib/curve/spiral/CzechSpiralEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/CzechSpiralEvaluator.js.map +0 -1
- package/lib/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +0 -1
- package/lib/curve/spiral/DirectSpiral3d.d.ts +0 -264
- package/lib/curve/spiral/DirectSpiral3d.d.ts.map +0 -1
- package/lib/curve/spiral/DirectSpiral3d.js +0 -464
- package/lib/curve/spiral/DirectSpiral3d.js.map +0 -1
- package/lib/curve/spiral/IntegratedSpiral3d.d.ts +0 -154
- package/lib/curve/spiral/IntegratedSpiral3d.d.ts.map +0 -1
- package/lib/curve/spiral/IntegratedSpiral3d.js +0 -351
- package/lib/curve/spiral/IntegratedSpiral3d.js.map +0 -1
- package/lib/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +0 -1
- package/lib/curve/spiral/NormalizedTransition.d.ts.map +0 -1
- package/lib/curve/spiral/NormalizedTransition.js.map +0 -1
- package/lib/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/PolishCubicSpiralEvaluator.js.map +0 -1
- package/lib/curve/spiral/TransitionConditionalProperties.d.ts.map +0 -1
- package/lib/curve/spiral/TransitionConditionalProperties.js.map +0 -1
- package/lib/curve/spiral/TransitionSpiral3d.d.ts.map +0 -1
- package/lib/curve/spiral/TransitionSpiral3d.js.map +0 -1
- package/lib/curve/spiral/XYCurveEvaluator.d.ts.map +0 -1
- package/lib/curve/spiral/XYCurveEvaluator.js.map +0 -1
- package/lib/geometry3d/Angle.d.ts.map +0 -1
- package/lib/geometry3d/Angle.js.map +0 -1
- package/lib/geometry3d/AngleSweep.d.ts.map +0 -1
- package/lib/geometry3d/AngleSweep.js.map +0 -1
- package/lib/geometry3d/BarycentricTriangle.d.ts.map +0 -1
- package/lib/geometry3d/BarycentricTriangle.js.map +0 -1
- package/lib/geometry3d/BilinearPatch.d.ts.map +0 -1
- package/lib/geometry3d/BilinearPatch.js.map +0 -1
- package/lib/geometry3d/CoincidentGeometryOps.d.ts.map +0 -1
- package/lib/geometry3d/CoincidentGeometryOps.js.map +0 -1
- package/lib/geometry3d/Ellipsoid.d.ts.map +0 -1
- package/lib/geometry3d/Ellipsoid.js.map +0 -1
- package/lib/geometry3d/FrameBuilder.d.ts.map +0 -1
- package/lib/geometry3d/FrameBuilder.js.map +0 -1
- package/lib/geometry3d/FrustumAnimation.d.ts.map +0 -1
- package/lib/geometry3d/FrustumAnimation.js.map +0 -1
- package/lib/geometry3d/GeometryHandler.d.ts.map +0 -1
- package/lib/geometry3d/GeometryHandler.js.map +0 -1
- package/lib/geometry3d/GrowableBlockedArray.d.ts.map +0 -1
- package/lib/geometry3d/GrowableBlockedArray.js.map +0 -1
- package/lib/geometry3d/GrowableFloat64Array.d.ts.map +0 -1
- package/lib/geometry3d/GrowableFloat64Array.js.map +0 -1
- package/lib/geometry3d/GrowableXYArray.d.ts.map +0 -1
- package/lib/geometry3d/GrowableXYArray.js.map +0 -1
- package/lib/geometry3d/GrowableXYZArray.d.ts.map +0 -1
- package/lib/geometry3d/GrowableXYZArray.js.map +0 -1
- package/lib/geometry3d/IndexedCollectionInterval.d.ts.map +0 -1
- package/lib/geometry3d/IndexedCollectionInterval.js.map +0 -1
- package/lib/geometry3d/IndexedXYCollection.d.ts.map +0 -1
- package/lib/geometry3d/IndexedXYCollection.js.map +0 -1
- package/lib/geometry3d/IndexedXYZCollection.d.ts.map +0 -1
- package/lib/geometry3d/IndexedXYZCollection.js.map +0 -1
- package/lib/geometry3d/LongitudeLatitudeAltitude.d.ts.map +0 -1
- package/lib/geometry3d/LongitudeLatitudeAltitude.js.map +0 -1
- package/lib/geometry3d/Matrix3d.d.ts.map +0 -1
- package/lib/geometry3d/Matrix3d.js.map +0 -1
- package/lib/geometry3d/OrderedRotationAngles.d.ts.map +0 -1
- package/lib/geometry3d/OrderedRotationAngles.js.map +0 -1
- package/lib/geometry3d/Plane3dByOriginAndUnitNormal.d.ts.map +0 -1
- package/lib/geometry3d/Plane3dByOriginAndUnitNormal.js.map +0 -1
- package/lib/geometry3d/Plane3dByOriginAndVectors.d.ts.map +0 -1
- package/lib/geometry3d/Plane3dByOriginAndVectors.js.map +0 -1
- package/lib/geometry3d/Point2dArrayCarrier.d.ts.map +0 -1
- package/lib/geometry3d/Point2dArrayCarrier.js.map +0 -1
- package/lib/geometry3d/Point2dVector2d.d.ts.map +0 -1
- package/lib/geometry3d/Point2dVector2d.js.map +0 -1
- package/lib/geometry3d/Point3dArrayCarrier.d.ts.map +0 -1
- package/lib/geometry3d/Point3dArrayCarrier.js.map +0 -1
- package/lib/geometry3d/Point3dVector3d.d.ts.map +0 -1
- package/lib/geometry3d/Point3dVector3d.js.map +0 -1
- package/lib/geometry3d/PointHelpers.d.ts.map +0 -1
- package/lib/geometry3d/PointHelpers.js.map +0 -1
- package/lib/geometry3d/PointStreaming.d.ts.map +0 -1
- package/lib/geometry3d/PointStreaming.js.map +0 -1
- package/lib/geometry3d/PolygonOps.d.ts.map +0 -1
- package/lib/geometry3d/PolygonOps.js.map +0 -1
- package/lib/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +0 -1
- package/lib/geometry3d/PolylineCompressionByEdgeOffset.js.map +0 -1
- package/lib/geometry3d/PolylineOps.d.ts.map +0 -1
- package/lib/geometry3d/PolylineOps.js.map +0 -1
- package/lib/geometry3d/Range.d.ts.map +0 -1
- package/lib/geometry3d/Range.js.map +0 -1
- package/lib/geometry3d/Ray3d.d.ts.map +0 -1
- package/lib/geometry3d/Ray3d.js.map +0 -1
- package/lib/geometry3d/ReusableObjectCache.d.ts.map +0 -1
- package/lib/geometry3d/ReusableObjectCache.js.map +0 -1
- package/lib/geometry3d/Segment1d.d.ts.map +0 -1
- package/lib/geometry3d/Segment1d.js.map +0 -1
- package/lib/geometry3d/SortablePolygon.d.ts.map +0 -1
- package/lib/geometry3d/SortablePolygon.js.map +0 -1
- package/lib/geometry3d/Transform.d.ts.map +0 -1
- package/lib/geometry3d/Transform.js.map +0 -1
- package/lib/geometry3d/UVSurfaceOps.d.ts.map +0 -1
- package/lib/geometry3d/UVSurfaceOps.js.map +0 -1
- package/lib/geometry3d/XYZProps.d.ts.map +0 -1
- package/lib/geometry3d/XYZProps.js.map +0 -1
- package/lib/geometry3d/YawPitchRollAngles.d.ts.map +0 -1
- package/lib/geometry3d/YawPitchRollAngles.js.map +0 -1
- package/lib/geometry4d/Map4d.d.ts.map +0 -1
- package/lib/geometry4d/Map4d.js.map +0 -1
- package/lib/geometry4d/Matrix4d.d.ts.map +0 -1
- package/lib/geometry4d/Matrix4d.js.map +0 -1
- package/lib/geometry4d/MomentData.d.ts.map +0 -1
- package/lib/geometry4d/MomentData.js.map +0 -1
- package/lib/geometry4d/PlaneByOriginAndVectors4d.d.ts.map +0 -1
- package/lib/geometry4d/PlaneByOriginAndVectors4d.js.map +0 -1
- package/lib/geometry4d/Point4d.d.ts.map +0 -1
- package/lib/geometry4d/Point4d.js.map +0 -1
- package/lib/numerics/BandedSystem.d.ts.map +0 -1
- package/lib/numerics/BandedSystem.js.map +0 -1
- package/lib/numerics/BezierPolynomials.d.ts.map +0 -1
- package/lib/numerics/BezierPolynomials.js.map +0 -1
- package/lib/numerics/ClusterableArray.d.ts.map +0 -1
- package/lib/numerics/ClusterableArray.js.map +0 -1
- package/lib/numerics/Complex.d.ts.map +0 -1
- package/lib/numerics/Complex.js.map +0 -1
- package/lib/numerics/ConvexPolygon2d.d.ts.map +0 -1
- package/lib/numerics/ConvexPolygon2d.js.map +0 -1
- package/lib/numerics/Newton.d.ts.map +0 -1
- package/lib/numerics/Newton.js.map +0 -1
- package/lib/numerics/PascalCoefficients.d.ts.map +0 -1
- package/lib/numerics/PascalCoefficients.js.map +0 -1
- package/lib/numerics/PolarData.d.ts.map +0 -1
- package/lib/numerics/PolarData.js.map +0 -1
- package/lib/numerics/Polynomials.d.ts.map +0 -1
- package/lib/numerics/Polynomials.js.map +0 -1
- package/lib/numerics/Quadrature.d.ts.map +0 -1
- package/lib/numerics/Quadrature.js.map +0 -1
- package/lib/numerics/Range1dArray.d.ts.map +0 -1
- package/lib/numerics/Range1dArray.js.map +0 -1
- package/lib/numerics/TriDiagonalSystem.d.ts.map +0 -1
- package/lib/numerics/TriDiagonalSystem.js.map +0 -1
- package/lib/numerics/UnionFind.d.ts.map +0 -1
- package/lib/numerics/UnionFind.js.map +0 -1
- package/lib/numerics/UsageSums.d.ts.map +0 -1
- package/lib/numerics/UsageSums.js.map +0 -1
- package/lib/polyface/AuxData.d.ts.map +0 -1
- package/lib/polyface/AuxData.js.map +0 -1
- package/lib/polyface/BoxTopology.d.ts.map +0 -1
- package/lib/polyface/BoxTopology.js.map +0 -1
- package/lib/polyface/FacetFaceData.d.ts.map +0 -1
- package/lib/polyface/FacetFaceData.js.map +0 -1
- package/lib/polyface/FacetOrientation.d.ts.map +0 -1
- package/lib/polyface/FacetOrientation.js.map +0 -1
- package/lib/polyface/GreedyTriangulationBetweenLineStrings.d.ts.map +0 -1
- package/lib/polyface/GreedyTriangulationBetweenLineStrings.js.map +0 -1
- package/lib/polyface/IndexedEdgeMatcher.d.ts.map +0 -1
- package/lib/polyface/IndexedEdgeMatcher.js.map +0 -1
- package/lib/polyface/IndexedPolyfaceVisitor.d.ts.map +0 -1
- package/lib/polyface/IndexedPolyfaceVisitor.js.map +0 -1
- package/lib/polyface/Polyface.d.ts.map +0 -1
- package/lib/polyface/Polyface.js.map +0 -1
- package/lib/polyface/PolyfaceBuilder.d.ts.map +0 -1
- package/lib/polyface/PolyfaceBuilder.js.map +0 -1
- package/lib/polyface/PolyfaceClip.d.ts.map +0 -1
- package/lib/polyface/PolyfaceClip.js.map +0 -1
- package/lib/polyface/PolyfaceData.d.ts +0 -170
- package/lib/polyface/PolyfaceData.d.ts.map +0 -1
- package/lib/polyface/PolyfaceData.js +0 -531
- package/lib/polyface/PolyfaceData.js.map +0 -1
- package/lib/polyface/PolyfaceQuery.d.ts.map +0 -1
- package/lib/polyface/PolyfaceQuery.js.map +0 -1
- package/lib/polyface/RangeLengthData.d.ts.map +0 -1
- package/lib/polyface/RangeLengthData.js.map +0 -1
- package/lib/polyface/TaggedNumericData.d.ts.map +0 -1
- package/lib/polyface/TaggedNumericData.js.map +0 -1
- package/lib/polyface/TriangleCandidate.d.ts.map +0 -1
- package/lib/polyface/TriangleCandidate.js.map +0 -1
- package/lib/polyface/multiclip/BuildAverageNormalsContext.d.ts.map +0 -1
- package/lib/polyface/multiclip/BuildAverageNormalsContext.js.map +0 -1
- package/lib/polyface/multiclip/GriddedRaggedRange2dSet.d.ts.map +0 -1
- package/lib/polyface/multiclip/GriddedRaggedRange2dSet.js.map +0 -1
- package/lib/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.d.ts.map +0 -1
- package/lib/polyface/multiclip/GriddedRaggedRange2dSetWithOverflow.js.map +0 -1
- package/lib/polyface/multiclip/LinearSearchRange2dArray.d.ts.map +0 -1
- package/lib/polyface/multiclip/LinearSearchRange2dArray.js.map +0 -1
- package/lib/polyface/multiclip/Range2dSearchInterface.d.ts.map +0 -1
- package/lib/polyface/multiclip/Range2dSearchInterface.js.map +0 -1
- package/lib/polyface/multiclip/RangeSearch.d.ts.map +0 -1
- package/lib/polyface/multiclip/RangeSearch.js.map +0 -1
- package/lib/polyface/multiclip/SweepLineStringToFacetContext.d.ts.map +0 -1
- package/lib/polyface/multiclip/SweepLineStringToFacetContext.js.map +0 -1
- package/lib/polyface/multiclip/XYPointBuckets.d.ts.map +0 -1
- package/lib/polyface/multiclip/XYPointBuckets.js.map +0 -1
- package/lib/serialization/BGFBAccessors.d.ts.map +0 -1
- package/lib/serialization/BGFBAccessors.js.map +0 -1
- package/lib/serialization/BGFBReader.d.ts.map +0 -1
- package/lib/serialization/BGFBReader.js.map +0 -1
- package/lib/serialization/BGFBWriter.d.ts.map +0 -1
- package/lib/serialization/BGFBWriter.js.map +0 -1
- package/lib/serialization/BentleyGeometryFlatBuffer.d.ts.map +0 -1
- package/lib/serialization/BentleyGeometryFlatBuffer.js.map +0 -1
- package/lib/serialization/DeepCompare.d.ts.map +0 -1
- package/lib/serialization/DeepCompare.js.map +0 -1
- package/lib/serialization/GeometrySamples.d.ts.map +0 -1
- package/lib/serialization/GeometrySamples.js.map +0 -1
- package/lib/serialization/IModelJsonSchema.d.ts.map +0 -1
- package/lib/serialization/IModelJsonSchema.js.map +0 -1
- package/lib/solid/Box.d.ts.map +0 -1
- package/lib/solid/Box.js.map +0 -1
- package/lib/solid/Cone.d.ts.map +0 -1
- package/lib/solid/Cone.js.map +0 -1
- package/lib/solid/LinearSweep.d.ts.map +0 -1
- package/lib/solid/LinearSweep.js.map +0 -1
- package/lib/solid/RotationalSweep.d.ts.map +0 -1
- package/lib/solid/RotationalSweep.js.map +0 -1
- package/lib/solid/RuledSweep.d.ts.map +0 -1
- package/lib/solid/RuledSweep.js.map +0 -1
- package/lib/solid/SolidPrimitive.d.ts.map +0 -1
- package/lib/solid/SolidPrimitive.js.map +0 -1
- package/lib/solid/Sphere.d.ts.map +0 -1
- package/lib/solid/Sphere.js.map +0 -1
- package/lib/solid/SweepContour.d.ts.map +0 -1
- package/lib/solid/SweepContour.js.map +0 -1
- package/lib/solid/TorusPipe.d.ts.map +0 -1
- package/lib/solid/TorusPipe.js.map +0 -1
- package/lib/topology/ChainMerge.d.ts.map +0 -1
- package/lib/topology/ChainMerge.js.map +0 -1
- package/lib/topology/Graph.d.ts.map +0 -1
- package/lib/topology/Graph.js.map +0 -1
- package/lib/topology/HalfEdgeGraphSearch.d.ts.map +0 -1
- package/lib/topology/HalfEdgeGraphSearch.js.map +0 -1
- package/lib/topology/HalfEdgeGraphSpineContext.d.ts.map +0 -1
- package/lib/topology/HalfEdgeGraphSpineContext.js.map +0 -1
- package/lib/topology/HalfEdgeGraphValidation.d.ts.map +0 -1
- package/lib/topology/HalfEdgeGraphValidation.js.map +0 -1
- package/lib/topology/HalfEdgeMarkSet.d.ts.map +0 -1
- package/lib/topology/HalfEdgeMarkSet.js.map +0 -1
- package/lib/topology/HalfEdgeNodeXYZUV.d.ts.map +0 -1
- package/lib/topology/HalfEdgeNodeXYZUV.js.map +0 -1
- package/lib/topology/HalfEdgePointInGraphSearch.d.ts.map +0 -1
- package/lib/topology/HalfEdgePointInGraphSearch.js.map +0 -1
- package/lib/topology/HalfEdgePositionDetail.d.ts.map +0 -1
- package/lib/topology/HalfEdgePositionDetail.js.map +0 -1
- package/lib/topology/HalfEdgePriorityQueue.d.ts.map +0 -1
- package/lib/topology/HalfEdgePriorityQueue.js.map +0 -1
- package/lib/topology/InsertAndRetriangulateContext.d.ts.map +0 -1
- package/lib/topology/InsertAndRetriangulateContext.js.map +0 -1
- package/lib/topology/MaskManager.d.ts.map +0 -1
- package/lib/topology/MaskManager.js.map +0 -1
- package/lib/topology/Merging.d.ts.map +0 -1
- package/lib/topology/Merging.js.map +0 -1
- package/lib/topology/RegularizeFace.d.ts.map +0 -1
- package/lib/topology/RegularizeFace.js.map +0 -1
- package/lib/topology/SignedDataSummary.d.ts.map +0 -1
- package/lib/topology/SignedDataSummary.js.map +0 -1
- package/lib/topology/Triangulation.d.ts.map +0 -1
- package/lib/topology/Triangulation.js.map +0 -1
- package/lib/topology/XYParitySearchContext.d.ts.map +0 -1
- package/lib/topology/XYParitySearchContext.js.map +0 -1
|
@@ -0,0 +1,1424 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
/** @packageDocumentation
|
|
6
|
+
* @module CartesianGeometry
|
|
7
|
+
*/
|
|
8
|
+
import { AxisIndex, Geometry } from "../Geometry";
|
|
9
|
+
import { Matrix3d } from "./Matrix3d";
|
|
10
|
+
import { Point2d } from "./Point2dVector2d";
|
|
11
|
+
import { Point3d } from "./Point3dVector3d";
|
|
12
|
+
import { PointStreamRangeCollector, VariantPointDataStream } from "./PointStreaming";
|
|
13
|
+
import { Transform } from "./Transform";
|
|
14
|
+
// allow _EXTREME_POSITIVE and _EXTREME_NEGATIVE
|
|
15
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
16
|
+
/**
|
|
17
|
+
* Base class for Range1d, Range2d, Range3d.
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export class RangeBase {
|
|
21
|
+
/** Return 0 if high<= low, otherwise `1/(high-low)` for use in fractionalizing */
|
|
22
|
+
static npcScaleFactor(low, high) { return (high <= low) ? 0.0 : 1.0 / (high - low); }
|
|
23
|
+
/** Return true if x is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' */
|
|
24
|
+
static isExtremeValue(x) { return Math.abs(x) >= RangeBase._EXTREME_POSITIVE; }
|
|
25
|
+
/** Return true if any x or y or z is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' */
|
|
26
|
+
static isExtremePoint3d(xyz) { return RangeBase.isExtremeValue(xyz.x) || RangeBase.isExtremeValue(xyz.y) || RangeBase.isExtremeValue(xyz.z); }
|
|
27
|
+
/** Return true if either of x,y is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' */
|
|
28
|
+
static isExtremePoint2d(xy) { return RangeBase.isExtremeValue(xy.x) || RangeBase.isExtremeValue(xy.y); }
|
|
29
|
+
/**
|
|
30
|
+
* Return the min absolute distance from any point of `[lowA,highA]' to any point of `[lowB,highB]'.
|
|
31
|
+
* * Both low,high pairs have order expectations: The condition `high < low` means null interval.
|
|
32
|
+
* * If there is interval overlap, the distance is zero.
|
|
33
|
+
* @param lowA low of interval A
|
|
34
|
+
* @param highA high of interval A
|
|
35
|
+
* @param lowB low of interval B
|
|
36
|
+
* @param highB high of interval B
|
|
37
|
+
*/
|
|
38
|
+
static rangeToRangeAbsoluteDistance(lowA, highA, lowB, highB) {
|
|
39
|
+
if (highA < lowA)
|
|
40
|
+
return RangeBase._EXTREME_POSITIVE;
|
|
41
|
+
if (highB < lowB)
|
|
42
|
+
return RangeBase._EXTREME_POSITIVE;
|
|
43
|
+
if (highB < lowA)
|
|
44
|
+
return lowA - highB;
|
|
45
|
+
if (highB <= highA)
|
|
46
|
+
return 0.0;
|
|
47
|
+
if (lowB <= highA)
|
|
48
|
+
return 0.0;
|
|
49
|
+
return lowB - highA;
|
|
50
|
+
}
|
|
51
|
+
/** Given a coordinate and pair of range limits, return the smallest distance to the range.
|
|
52
|
+
* * This is zero for any point inside the range
|
|
53
|
+
* * This is _EXTREME_POSITIVE if the range limits are inverted
|
|
54
|
+
* * Otherwise (i.e. x is outside a finite range) the distance to the near endpoint.
|
|
55
|
+
*/
|
|
56
|
+
static coordinateToRangeAbsoluteDistance(x, low, high) {
|
|
57
|
+
if (high < low)
|
|
58
|
+
return RangeBase._EXTREME_POSITIVE;
|
|
59
|
+
if (x < low)
|
|
60
|
+
return low - x;
|
|
61
|
+
if (x > high)
|
|
62
|
+
return x - high;
|
|
63
|
+
return 0.0;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/** Number considered impossibly large possibly for a coordinate in a range. */
|
|
67
|
+
RangeBase._EXTREME_POSITIVE = 1.0e200;
|
|
68
|
+
/** Number considered to be impossibly negative for a coordinate in a range. */
|
|
69
|
+
RangeBase._EXTREME_NEGATIVE = -1.0e200;
|
|
70
|
+
/**
|
|
71
|
+
* Axis aligned range in 3D.
|
|
72
|
+
* * member `low` contains minimum coordinate of range box
|
|
73
|
+
* * member `high` contains maximum coordinate of range box
|
|
74
|
+
* * The range is considered null (empty) if any low member is larger than its high counterpart.
|
|
75
|
+
* @public
|
|
76
|
+
*/
|
|
77
|
+
export class Range3d extends RangeBase {
|
|
78
|
+
// explicit ctor - no enforcement of value relationships
|
|
79
|
+
constructor(lowX = RangeBase._EXTREME_POSITIVE, lowY = RangeBase._EXTREME_POSITIVE, lowZ = RangeBase._EXTREME_POSITIVE, highX = RangeBase._EXTREME_NEGATIVE, highY = RangeBase._EXTREME_NEGATIVE, highZ = RangeBase._EXTREME_NEGATIVE) {
|
|
80
|
+
super();
|
|
81
|
+
this.low = Point3d.create(lowX, lowY, lowZ);
|
|
82
|
+
this.high = Point3d.create(highX, highY, highZ);
|
|
83
|
+
}
|
|
84
|
+
/** Set this transform to values that indicate it has no geometric contents. */
|
|
85
|
+
setNull() {
|
|
86
|
+
this.low.x = RangeBase._EXTREME_POSITIVE;
|
|
87
|
+
this.low.y = RangeBase._EXTREME_POSITIVE;
|
|
88
|
+
this.low.z = RangeBase._EXTREME_POSITIVE;
|
|
89
|
+
this.high.x = RangeBase._EXTREME_NEGATIVE;
|
|
90
|
+
this.high.y = RangeBase._EXTREME_NEGATIVE;
|
|
91
|
+
this.high.z = RangeBase._EXTREME_NEGATIVE;
|
|
92
|
+
}
|
|
93
|
+
/** Freeze this instance (and its members) so it is read-only */
|
|
94
|
+
freeze() { this.low.freeze(); this.high.freeze(); return Object.freeze(this); }
|
|
95
|
+
/** Flatten the low and high coordinates of any json object with low.x .. high.z into an array of 6 doubles */
|
|
96
|
+
static toFloat64Array(val) { return Float64Array.of(val.low.x, val.low.y, val.low.z, val.high.x, val.high.y, val.high.z); }
|
|
97
|
+
/** Flatten the low and high coordinates of this into an array of 6 doubles */
|
|
98
|
+
toFloat64Array() { return Range3d.toFloat64Array(this); }
|
|
99
|
+
/**
|
|
100
|
+
* Construct a Range3d from an array of double-precision values
|
|
101
|
+
* @param f64 the array, which should contain exactly 6 values in this order: lowX, lowY, lowZ, highX, highY, highZ
|
|
102
|
+
* @return a new Range3d object
|
|
103
|
+
*/
|
|
104
|
+
static fromFloat64Array(f64) {
|
|
105
|
+
if (f64.length !== 6)
|
|
106
|
+
throw new Error("invalid array");
|
|
107
|
+
return new this(f64[0], f64[1], f64[2], f64[3], f64[4], f64[5]);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Construct a Range3d from an un-typed array. This mostly useful when interpreting ECSQL query results of the 'blob' type, where you know that that result is a Range3d.
|
|
111
|
+
* @param buffer untyped array
|
|
112
|
+
* @return a new Range3d object
|
|
113
|
+
*/
|
|
114
|
+
static fromArrayBuffer(buffer) { return this.fromFloat64Array(new Float64Array(buffer)); }
|
|
115
|
+
/** Returns true if this and other have equal low and high parts, or both are null ranges. */
|
|
116
|
+
isAlmostEqual(other, tol) {
|
|
117
|
+
return (this.low.isAlmostEqual(other.low, tol) && this.high.isAlmostEqual(other.high, tol))
|
|
118
|
+
|| (this.isNull && other.isNull);
|
|
119
|
+
}
|
|
120
|
+
/** copy low and high values from other. */
|
|
121
|
+
setFrom(other) { this.low.setFrom(other.low); this.high.setFrom(other.high); }
|
|
122
|
+
/** Return a new Range3d copied from a range or derived type */
|
|
123
|
+
static createFrom(other, result) {
|
|
124
|
+
if (result) {
|
|
125
|
+
result.setFrom(other);
|
|
126
|
+
return result;
|
|
127
|
+
}
|
|
128
|
+
return this.createXYZXYZOrCorrectToNull(other.low.x, other.low.y, other.low.z, other.high.x, other.high.y, other.high.z, result);
|
|
129
|
+
}
|
|
130
|
+
/** set this range (in place) from json such as
|
|
131
|
+
* * key-value pairs: `{low:[1,2,3], high:[4,5,6]}`
|
|
132
|
+
* * array of points: `[[1,2,3],[9,3,4],[-2,1,3] ...]`
|
|
133
|
+
* * Lowest level points can be `[1,2,3]` or `{x:1,y:2,z:3}`
|
|
134
|
+
*/
|
|
135
|
+
setFromJSON(json) {
|
|
136
|
+
if (!json)
|
|
137
|
+
return;
|
|
138
|
+
this.setNull();
|
|
139
|
+
if (Array.isArray(json)) {
|
|
140
|
+
const point = Point3d.create();
|
|
141
|
+
for (const value of json) {
|
|
142
|
+
point.setFromJSON(value);
|
|
143
|
+
this.extendPoint(point);
|
|
144
|
+
}
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const low = Point3d.fromJSON(json.low);
|
|
148
|
+
const high = Point3d.fromJSON(json.high);
|
|
149
|
+
if (!RangeBase.isExtremePoint3d(low) && !RangeBase.isExtremePoint3d(high)) {
|
|
150
|
+
this.extendPoint(low);
|
|
151
|
+
this.extendPoint(high);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/** Return a JSON object `{low: ... , high: ...}`
|
|
155
|
+
* with points formatted by `Point3d.toJSON()`
|
|
156
|
+
*/
|
|
157
|
+
toJSON() { return { low: this.low.toJSON(), high: this.high.toJSON() }; }
|
|
158
|
+
/** Use `setFromJSON` to parse `json` into a new Range3d instance. */
|
|
159
|
+
static fromJSON(json) {
|
|
160
|
+
const result = new this();
|
|
161
|
+
result.setFromJSON(json);
|
|
162
|
+
return result;
|
|
163
|
+
}
|
|
164
|
+
// internal use only -- directly set all coordinates, test only if directed.
|
|
165
|
+
setDirect(xA, yA, zA, xB, yB, zB, correctToNull) {
|
|
166
|
+
this.low.x = xA;
|
|
167
|
+
this.low.y = yA;
|
|
168
|
+
this.low.z = zA;
|
|
169
|
+
this.high.x = xB;
|
|
170
|
+
this.high.y = yB;
|
|
171
|
+
this.high.z = zB;
|
|
172
|
+
if (correctToNull) {
|
|
173
|
+
if (this.low.x > this.high.x
|
|
174
|
+
|| this.low.y > this.high.y
|
|
175
|
+
|| this.low.z > this.high.z)
|
|
176
|
+
this.setNull();
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/** Return a copy */
|
|
180
|
+
clone(result) {
|
|
181
|
+
result = result ? result : new this.constructor();
|
|
182
|
+
result.setDirect(this.low.x, this.low.y, this.low.z, this.high.x, this.high.y, this.high.z, false);
|
|
183
|
+
return result;
|
|
184
|
+
}
|
|
185
|
+
/** Return a copy, translated by adding `shift` components in all directions.
|
|
186
|
+
* * The translate of a null range is also a null range.
|
|
187
|
+
*/
|
|
188
|
+
cloneTranslated(shift, result) {
|
|
189
|
+
result = result ? result : new this.constructor();
|
|
190
|
+
if (!this.isNull)
|
|
191
|
+
result.setDirect(this.low.x + shift.x, this.low.y + shift.y, this.low.z + shift.z, this.high.x + shift.x, this.high.y + shift.y, this.high.z + shift.z, false);
|
|
192
|
+
return result;
|
|
193
|
+
}
|
|
194
|
+
/** Return a range initialized to have no content. */
|
|
195
|
+
static createNull(result) {
|
|
196
|
+
result = result ? result : new this();
|
|
197
|
+
result.setNull();
|
|
198
|
+
return result;
|
|
199
|
+
}
|
|
200
|
+
/** Extend (modify in place) so that the range is large enough to include the supplied points. */
|
|
201
|
+
extend(...point) {
|
|
202
|
+
let p;
|
|
203
|
+
for (p of point)
|
|
204
|
+
this.extendPoint(p);
|
|
205
|
+
}
|
|
206
|
+
/** Return a range large enough to include the supplied points. If no points are given, the range is a null range */
|
|
207
|
+
static create(...point) {
|
|
208
|
+
const result = Range3d.createNull();
|
|
209
|
+
let p;
|
|
210
|
+
for (p of point)
|
|
211
|
+
result.extendPoint(p);
|
|
212
|
+
return result;
|
|
213
|
+
}
|
|
214
|
+
/** Create a range from freely structured MultiLineStringDataVariant. */
|
|
215
|
+
static createFromVariantData(data) {
|
|
216
|
+
const collector = new PointStreamRangeCollector();
|
|
217
|
+
VariantPointDataStream.streamXYZ(data, collector);
|
|
218
|
+
return collector.claimResult();
|
|
219
|
+
}
|
|
220
|
+
/** create a Range3d enclosing the transformed points. */
|
|
221
|
+
static createTransformed(transform, ...point) {
|
|
222
|
+
const result = this.createNull();
|
|
223
|
+
let p;
|
|
224
|
+
for (p of point)
|
|
225
|
+
result.extendTransformedXYZ(transform, p.x, p.y, p.z);
|
|
226
|
+
return result;
|
|
227
|
+
}
|
|
228
|
+
/** create a Range3d enclosing the transformed points. */
|
|
229
|
+
static createTransformedArray(transform, points) {
|
|
230
|
+
const result = this.createNull();
|
|
231
|
+
result.extendArray(points, transform);
|
|
232
|
+
return result;
|
|
233
|
+
}
|
|
234
|
+
/** create a Range3d enclosing the points after inverse transform. */
|
|
235
|
+
static createInverseTransformedArray(transform, points) {
|
|
236
|
+
const result = this.createNull();
|
|
237
|
+
result.extendInverseTransformedArray(points, transform);
|
|
238
|
+
return result;
|
|
239
|
+
}
|
|
240
|
+
/** Set the range to be a single point supplied as x,y,z values */
|
|
241
|
+
setXYZ(x, y, z) {
|
|
242
|
+
this.low.x = this.high.x = x;
|
|
243
|
+
this.low.y = this.high.y = y;
|
|
244
|
+
this.low.z = this.high.z = z;
|
|
245
|
+
}
|
|
246
|
+
/** Create a single point range */
|
|
247
|
+
static createXYZ(x, y, z, result) {
|
|
248
|
+
result = result ? result : new this();
|
|
249
|
+
result.setDirect(x, y, z, x, y, z, false);
|
|
250
|
+
return result;
|
|
251
|
+
}
|
|
252
|
+
/** Create a box with 2 pairs of xyz candidates. Theses are compared and shuffled as needed for the box. */
|
|
253
|
+
static createXYZXYZ(xA, yA, zA, xB, yB, zB, result) {
|
|
254
|
+
result = result ? result : new this();
|
|
255
|
+
result.setDirect(Math.min(xA, xB), Math.min(yA, yB), Math.min(zA, zB), Math.max(xA, xB), Math.max(yA, yB), Math.max(zA, zB), false);
|
|
256
|
+
return result;
|
|
257
|
+
}
|
|
258
|
+
/** Create a box with 2 pairs of xyz candidates. If any direction has order flip, create null. */
|
|
259
|
+
static createXYZXYZOrCorrectToNull(xA, yA, zA, xB, yB, zB, result) {
|
|
260
|
+
result = result ? result : new this();
|
|
261
|
+
if (xA > xB || yA > yB || zA > zB)
|
|
262
|
+
return this.createNull(result);
|
|
263
|
+
result.setDirect(Math.min(xA, xB), Math.min(yA, yB), Math.min(zA, zB), Math.max(xA, xB), Math.max(yA, yB), Math.max(zA, zB), true);
|
|
264
|
+
return result;
|
|
265
|
+
}
|
|
266
|
+
/** Creates a 3d range from a 2d range's low and high members, setting the corresponding z values to the value given. */
|
|
267
|
+
static createRange2d(range, z = 0, result) {
|
|
268
|
+
const retVal = result ? result : new this();
|
|
269
|
+
retVal.setNull();
|
|
270
|
+
retVal.extendXYZ(range.low.x, range.low.y, z);
|
|
271
|
+
retVal.extendXYZ(range.high.x, range.high.y, z);
|
|
272
|
+
return retVal;
|
|
273
|
+
}
|
|
274
|
+
/** Create a range around an array of points. */
|
|
275
|
+
static createArray(points, result) {
|
|
276
|
+
result = result ? result : new this();
|
|
277
|
+
result.setNull();
|
|
278
|
+
let point;
|
|
279
|
+
for (point of points)
|
|
280
|
+
result.extendPoint(point);
|
|
281
|
+
return result;
|
|
282
|
+
}
|
|
283
|
+
/** extend a range around an array of points (optionally transformed) */
|
|
284
|
+
extendArray(points, transform) {
|
|
285
|
+
if (Array.isArray(points))
|
|
286
|
+
if (transform)
|
|
287
|
+
for (const point of points)
|
|
288
|
+
this.extendTransformedXYZ(transform, point.x, point.y, point.z);
|
|
289
|
+
else
|
|
290
|
+
for (const point of points)
|
|
291
|
+
this.extendXYZ(point.x, point.y, point.z);
|
|
292
|
+
else // growable array -- this should be implemented without point extraction !!!
|
|
293
|
+
if (transform)
|
|
294
|
+
for (let i = 0; i < points.length; i++)
|
|
295
|
+
this.extendTransformedXYZ(transform, points.getXAtUncheckedPointIndex(i), points.getYAtUncheckedPointIndex(i), points.getZAtUncheckedPointIndex(i));
|
|
296
|
+
else
|
|
297
|
+
for (let i = 0; i < points.length; i++)
|
|
298
|
+
this.extendXYZ(points.getXAtUncheckedPointIndex(i), points.getYAtUncheckedPointIndex(i), points.getZAtUncheckedPointIndex(i));
|
|
299
|
+
}
|
|
300
|
+
/** extend a range around an array of points (optionally transformed) */
|
|
301
|
+
extendInverseTransformedArray(points, transform) {
|
|
302
|
+
if (Array.isArray(points))
|
|
303
|
+
for (const point of points)
|
|
304
|
+
this.extendInverseTransformedXYZ(transform, point.x, point.y, point.z);
|
|
305
|
+
else // growable array -- this should be implemented without point extraction !!!
|
|
306
|
+
for (let i = 0; i < points.length; i++)
|
|
307
|
+
this.extendInverseTransformedXYZ(transform, points.getXAtUncheckedPointIndex(i), points.getYAtUncheckedPointIndex(i), points.getZAtUncheckedPointIndex(i));
|
|
308
|
+
}
|
|
309
|
+
/** multiply the point x,y,z by transform and use the coordinate to extend this range.
|
|
310
|
+
*/
|
|
311
|
+
extendTransformedXYZ(transform, x, y, z) {
|
|
312
|
+
const origin = transform.origin;
|
|
313
|
+
const coffs = transform.matrix.coffs;
|
|
314
|
+
this.extendXYZ(origin.x + coffs[0] * x + coffs[1] * y + coffs[2] * z, origin.y + coffs[3] * x + coffs[4] * y + coffs[5] * z, origin.z + coffs[6] * x + coffs[7] * y + coffs[8] * z);
|
|
315
|
+
}
|
|
316
|
+
/** multiply the point x,y,z,w by transform and use the coordinate to extend this range.
|
|
317
|
+
*/
|
|
318
|
+
extendTransformedXYZW(transform, x, y, z, w) {
|
|
319
|
+
const origin = transform.origin;
|
|
320
|
+
const coffs = transform.matrix.coffs;
|
|
321
|
+
this.extendXYZW(origin.x * w + coffs[0] * x + coffs[1] * y + coffs[2] * z, origin.y * w + coffs[3] * x + coffs[4] * y + coffs[5] * z, origin.z * w + coffs[6] * x + coffs[7] * y + coffs[8] * z, w);
|
|
322
|
+
}
|
|
323
|
+
/** multiply the point x,y,z by transform and use the coordinate to extend this range.
|
|
324
|
+
*/
|
|
325
|
+
extendInverseTransformedXYZ(transform, x, y, z) {
|
|
326
|
+
const origin = transform.origin;
|
|
327
|
+
if (!transform.matrix.computeCachedInverse(true))
|
|
328
|
+
return false;
|
|
329
|
+
const coffs = transform.matrix.inverseCoffs;
|
|
330
|
+
const xx = x - origin.x;
|
|
331
|
+
const yy = y - origin.y;
|
|
332
|
+
const zz = z - origin.z;
|
|
333
|
+
this.extendXYZ(coffs[0] * xx + coffs[1] * yy + coffs[2] * zz, coffs[3] * xx + coffs[4] * yy + coffs[5] * zz, coffs[6] * xx + coffs[7] * yy + coffs[8] * zz);
|
|
334
|
+
return true;
|
|
335
|
+
}
|
|
336
|
+
/** Extend the range by the two transforms applied to xyz */
|
|
337
|
+
extendTransformTransformedXYZ(transformA, transformB, x, y, z) {
|
|
338
|
+
const origin = transformB.origin;
|
|
339
|
+
const coffs = transformB.matrix.coffs;
|
|
340
|
+
this.extendTransformedXYZ(transformA, origin.x + coffs[0] * x + coffs[1] * y + coffs[2] * z, origin.y + coffs[3] * x + coffs[4] * y + coffs[5] * z, origin.z + coffs[6] * x + coffs[7] * y + coffs[8] * z);
|
|
341
|
+
}
|
|
342
|
+
/** Test if the box has high<low for any of x,y,z, condition. Note that a range around a single point is NOT null. */
|
|
343
|
+
get isNull() {
|
|
344
|
+
return this.high.x < this.low.x
|
|
345
|
+
|| this.high.y < this.low.y
|
|
346
|
+
|| this.high.z < this.low.z;
|
|
347
|
+
}
|
|
348
|
+
/** Test if data has high<low for any of x,y,z, condition. Note that a range around a single point is NOT null. */
|
|
349
|
+
static isNull(data) {
|
|
350
|
+
return data.high.x < data.low.x
|
|
351
|
+
|| data.high.y < data.low.y
|
|
352
|
+
|| data.high.z < data.low.z;
|
|
353
|
+
}
|
|
354
|
+
/** Test of the range contains a single point. */
|
|
355
|
+
get isSinglePoint() {
|
|
356
|
+
return this.high.x === this.low.x
|
|
357
|
+
&& this.high.y === this.low.y
|
|
358
|
+
&& this.high.z === this.low.z;
|
|
359
|
+
}
|
|
360
|
+
/** Return the midpoint of the diagonal. No test for null range. */
|
|
361
|
+
get center() { return this.low.interpolate(.5, this.high); }
|
|
362
|
+
/** return the low x coordinate */
|
|
363
|
+
get xLow() { return this.low.x; }
|
|
364
|
+
/** return the low y coordinate */
|
|
365
|
+
get yLow() { return this.low.y; }
|
|
366
|
+
/** return the low z coordinate */
|
|
367
|
+
get zLow() { return this.low.z; }
|
|
368
|
+
/** return the high x coordinate */
|
|
369
|
+
get xHigh() { return this.high.x; }
|
|
370
|
+
/** return the high y coordinate */
|
|
371
|
+
get yHigh() { return this.high.y; }
|
|
372
|
+
/** return the high z coordinate */
|
|
373
|
+
get zHigh() { return this.high.z; }
|
|
374
|
+
/** Return the length of the box in the x direction */
|
|
375
|
+
xLength() { const a = this.high.x - this.low.x; return a > 0.0 ? a : 0.0; }
|
|
376
|
+
/** Return the length of the box in the y direction */
|
|
377
|
+
yLength() { const a = this.high.y - this.low.y; return a > 0.0 ? a : 0.0; }
|
|
378
|
+
/** Return the length of the box in the z direction */
|
|
379
|
+
zLength() { const a = this.high.z - this.low.z; return a > 0.0 ? a : 0.0; }
|
|
380
|
+
/** Return the largest of the x,y, z lengths of the range. */
|
|
381
|
+
maxLength() { return Math.max(this.xLength(), this.yLength(), this.zLength()); }
|
|
382
|
+
/** return the diagonal vector. There is no check for isNull -- if the range isNull(), the vector will have very large negative coordinates. */
|
|
383
|
+
diagonal(result) { return this.low.vectorTo(this.high, result); }
|
|
384
|
+
/** Return the diagonal vector. There is no check for isNull -- if the range isNull(), the vector will have very large negative coordinates. */
|
|
385
|
+
diagonalFractionToPoint(fraction, result) { return this.low.interpolate(fraction, this.high, result); }
|
|
386
|
+
/** Return a point given by fractional positions on the XYZ axes. This is done with no check for isNull !!! */
|
|
387
|
+
fractionToPoint(fractionX, fractionY, fractionZ, result) {
|
|
388
|
+
return this.low.interpolateXYZ(fractionX, fractionY, fractionZ, this.high, result);
|
|
389
|
+
}
|
|
390
|
+
/** Return a point given by fractional positions on the XYZ axes.
|
|
391
|
+
* Returns undefined if the range is null.
|
|
392
|
+
*/
|
|
393
|
+
localXYZToWorld(fractionX, fractionY, fractionZ, result) {
|
|
394
|
+
if (this.isNull)
|
|
395
|
+
return undefined;
|
|
396
|
+
return this.low.interpolateXYZ(fractionX, fractionY, fractionZ, this.high, result);
|
|
397
|
+
}
|
|
398
|
+
/** Return a point given by fractional positions on the XYZ axes.
|
|
399
|
+
* * Returns undefined if the range is null.
|
|
400
|
+
*/
|
|
401
|
+
localToWorld(xyz, result) {
|
|
402
|
+
return this.localXYZToWorld(xyz.x, xyz.y, xyz.z, result);
|
|
403
|
+
}
|
|
404
|
+
/** Replace fractional coordinates by world coordinates.
|
|
405
|
+
* @returns false if null range.
|
|
406
|
+
*/
|
|
407
|
+
localToWorldArrayInPlace(points) {
|
|
408
|
+
if (this.isNull)
|
|
409
|
+
return false;
|
|
410
|
+
for (const p of points)
|
|
411
|
+
this.low.interpolateXYZ(p.x, p.y, p.z, this.high, p);
|
|
412
|
+
return false;
|
|
413
|
+
}
|
|
414
|
+
/** Return fractional coordinates of point within the range.
|
|
415
|
+
* * returns undefined if the range is null.
|
|
416
|
+
* * returns undefined if any direction (x,y,z) has zero length
|
|
417
|
+
*/
|
|
418
|
+
worldToLocal(point, result) {
|
|
419
|
+
const ax = RangeBase.npcScaleFactor(this.low.x, this.high.x);
|
|
420
|
+
const ay = RangeBase.npcScaleFactor(this.low.y, this.high.y);
|
|
421
|
+
const az = RangeBase.npcScaleFactor(this.low.z, this.high.z);
|
|
422
|
+
if (ax === 0.0 || ay === 0.0 || az === 0.0)
|
|
423
|
+
return undefined;
|
|
424
|
+
return Point3d.create((point.x - this.low.x) * ax, (point.y - this.low.y) * ay, (point.z - this.low.z) * az, result);
|
|
425
|
+
}
|
|
426
|
+
/** Return fractional coordinates of point within the range.
|
|
427
|
+
* * returns undefined if the range is null.
|
|
428
|
+
* * returns undefined if any direction (x,y,z) has zero length
|
|
429
|
+
*/
|
|
430
|
+
worldToLocalArrayInPlace(point) {
|
|
431
|
+
const ax = RangeBase.npcScaleFactor(this.low.x, this.high.x);
|
|
432
|
+
const ay = RangeBase.npcScaleFactor(this.low.y, this.high.y);
|
|
433
|
+
const az = RangeBase.npcScaleFactor(this.low.z, this.high.z);
|
|
434
|
+
if (ax === 0.0 || ay === 0.0 || az === 0.0)
|
|
435
|
+
return false;
|
|
436
|
+
for (const p of point)
|
|
437
|
+
Point3d.create((p.x - this.low.x) * ax, (p.y - this.low.y) * ay, (p.z - this.low.z) * az, p);
|
|
438
|
+
return true;
|
|
439
|
+
}
|
|
440
|
+
/** Return an array with the 8 corners on order wth "x varies fastest, then y, then z"
|
|
441
|
+
* * points preallocated in `result` are reused if result.length >= 8.
|
|
442
|
+
* * in reuse case, result.length is trimmed to 8
|
|
443
|
+
*/
|
|
444
|
+
corners(result) {
|
|
445
|
+
if (result !== undefined && result.length >= 8) {
|
|
446
|
+
result[0].set(this.low.x, this.low.y, this.low.z);
|
|
447
|
+
result[1].set(this.high.x, this.low.y, this.low.z);
|
|
448
|
+
result[2].set(this.low.x, this.high.y, this.low.z);
|
|
449
|
+
result[3].set(this.high.x, this.high.y, this.low.z);
|
|
450
|
+
result[4].set(this.low.x, this.low.y, this.high.z);
|
|
451
|
+
result[5].set(this.high.x, this.low.y, this.high.z);
|
|
452
|
+
result[6].set(this.low.x, this.high.y, this.high.z);
|
|
453
|
+
result[7].set(this.high.x, this.high.y, this.high.z);
|
|
454
|
+
result.length = 8;
|
|
455
|
+
return result;
|
|
456
|
+
}
|
|
457
|
+
return [
|
|
458
|
+
Point3d.create(this.low.x, this.low.y, this.low.z),
|
|
459
|
+
Point3d.create(this.high.x, this.low.y, this.low.z),
|
|
460
|
+
Point3d.create(this.low.x, this.high.y, this.low.z),
|
|
461
|
+
Point3d.create(this.high.x, this.high.y, this.low.z),
|
|
462
|
+
Point3d.create(this.low.x, this.low.y, this.high.z),
|
|
463
|
+
Point3d.create(this.high.x, this.low.y, this.high.z),
|
|
464
|
+
Point3d.create(this.low.x, this.high.y, this.high.z),
|
|
465
|
+
Point3d.create(this.high.x, this.high.y, this.high.z)
|
|
466
|
+
];
|
|
467
|
+
}
|
|
468
|
+
/** Return an array with indices of the corners of a face
|
|
469
|
+
* * face 0 has negative x normal
|
|
470
|
+
* * face 1 has positive x normal
|
|
471
|
+
* * face 2 has negative y normal
|
|
472
|
+
* * face 3 has positive y normal
|
|
473
|
+
* * face 4 has negative z normal
|
|
474
|
+
* * face 5 has positive z normal
|
|
475
|
+
* * Any other value returns face 5
|
|
476
|
+
* * faces are CCW as viewed from outside.
|
|
477
|
+
*/
|
|
478
|
+
static faceCornerIndices(index) {
|
|
479
|
+
if (index === 0)
|
|
480
|
+
return [0, 4, 6, 2];
|
|
481
|
+
if (index === 1)
|
|
482
|
+
return [1, 3, 7, 5];
|
|
483
|
+
if (index === 2)
|
|
484
|
+
return [0, 1, 5, 4];
|
|
485
|
+
if (index === 3)
|
|
486
|
+
return [3, 2, 6, 7];
|
|
487
|
+
if (index === 4)
|
|
488
|
+
return [0, 2, 3, 1];
|
|
489
|
+
return [4, 5, 7, 6];
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* Return a rectangle that is the cross section as viewed from above (z direction) and at zFraction
|
|
493
|
+
* @param zFraction plane altitude within the 0..1 z fraction range
|
|
494
|
+
* @param upwardNormal true for CCW as viewed from above
|
|
495
|
+
* @param addClosure true to add closure edge back to the start
|
|
496
|
+
* @returns
|
|
497
|
+
*/
|
|
498
|
+
rectangleXY(zFraction = 0.0, upwardNormal = true, addClosure = true) {
|
|
499
|
+
if (this.isNull)
|
|
500
|
+
return undefined;
|
|
501
|
+
const points = [
|
|
502
|
+
this.fractionToPoint(0, 0, zFraction),
|
|
503
|
+
this.fractionToPoint(1, 0, zFraction),
|
|
504
|
+
this.fractionToPoint(1, 1, zFraction),
|
|
505
|
+
this.fractionToPoint(0, 1, zFraction),
|
|
506
|
+
];
|
|
507
|
+
if (addClosure)
|
|
508
|
+
points.push(points[0].clone());
|
|
509
|
+
if (!upwardNormal)
|
|
510
|
+
points.reverse();
|
|
511
|
+
return points;
|
|
512
|
+
}
|
|
513
|
+
/** Return the largest absolute value among any coordinates in the box corners. */
|
|
514
|
+
maxAbs() {
|
|
515
|
+
if (this.isNull)
|
|
516
|
+
return 0.0;
|
|
517
|
+
return Math.max(this.low.maxAbs(), this.high.maxAbs());
|
|
518
|
+
}
|
|
519
|
+
/** returns true if the x direction size is nearly zero */
|
|
520
|
+
get isAlmostZeroX() { return Geometry.isSmallMetricDistance(this.xLength()); }
|
|
521
|
+
/** returns true if the y direction size is nearly zero */
|
|
522
|
+
get isAlmostZeroY() { return Geometry.isSmallMetricDistance(this.yLength()); }
|
|
523
|
+
/** returns true if the z direction size is nearly zero */
|
|
524
|
+
get isAlmostZeroZ() { return Geometry.isSmallMetricDistance(this.zLength()); }
|
|
525
|
+
/** Test if a point given as x,y,z is within the range. */
|
|
526
|
+
containsXYZ(x, y, z) {
|
|
527
|
+
return x >= this.low.x
|
|
528
|
+
&& y >= this.low.y
|
|
529
|
+
&& z >= this.low.z
|
|
530
|
+
&& x <= this.high.x
|
|
531
|
+
&& y <= this.high.y
|
|
532
|
+
&& z <= this.high.z;
|
|
533
|
+
}
|
|
534
|
+
/** Test if a point given as x,y is within the range. (Ignoring z of range) */
|
|
535
|
+
containsXY(x, y) {
|
|
536
|
+
return x >= this.low.x
|
|
537
|
+
&& y >= this.low.y
|
|
538
|
+
&& x <= this.high.x
|
|
539
|
+
&& y <= this.high.y;
|
|
540
|
+
}
|
|
541
|
+
/** Test if a point is within the range. */
|
|
542
|
+
containsPoint(point) { return this.containsXYZ(point.x, point.y, point.z); }
|
|
543
|
+
/** Test if the x,y coordinates of a point are within the range. */
|
|
544
|
+
containsPointXY(point) {
|
|
545
|
+
return point.x >= this.low.x
|
|
546
|
+
&& point.y >= this.low.y
|
|
547
|
+
&& point.x <= this.high.x
|
|
548
|
+
&& point.y <= this.high.y;
|
|
549
|
+
}
|
|
550
|
+
/** Test of other range is within this range */
|
|
551
|
+
containsRange(other) {
|
|
552
|
+
return other.low.x >= this.low.x
|
|
553
|
+
&& other.low.y >= this.low.y
|
|
554
|
+
&& other.low.z >= this.low.z
|
|
555
|
+
&& other.high.x <= this.high.x
|
|
556
|
+
&& other.high.y <= this.high.y
|
|
557
|
+
&& other.high.z <= this.high.z;
|
|
558
|
+
}
|
|
559
|
+
/** Test if there is any intersection with other range */
|
|
560
|
+
intersectsRange(other) {
|
|
561
|
+
return !(this.low.x > other.high.x
|
|
562
|
+
|| this.low.y > other.high.y
|
|
563
|
+
|| this.low.z > other.high.z
|
|
564
|
+
|| other.low.x > this.high.x
|
|
565
|
+
|| other.low.y > this.high.y
|
|
566
|
+
|| other.low.z > this.high.z);
|
|
567
|
+
}
|
|
568
|
+
/** Test if there is any intersection with other range */
|
|
569
|
+
intersectsRangeXY(other) {
|
|
570
|
+
return !(this.low.x > other.high.x
|
|
571
|
+
|| this.low.y > other.high.y
|
|
572
|
+
|| other.low.x > this.high.x
|
|
573
|
+
|| other.low.y > this.high.y);
|
|
574
|
+
}
|
|
575
|
+
/** Return 0 if the point is within the range, otherwise the distance to the closest face or corner */
|
|
576
|
+
distanceToPoint(point) {
|
|
577
|
+
if (this.isNull)
|
|
578
|
+
return RangeBase._EXTREME_POSITIVE;
|
|
579
|
+
return Math.min(Geometry.hypotenuseXYZ(RangeBase.coordinateToRangeAbsoluteDistance(point.x, this.low.x, this.high.x), RangeBase.coordinateToRangeAbsoluteDistance(point.y, this.low.y, this.high.y), RangeBase.coordinateToRangeAbsoluteDistance(point.z, this.low.z, this.high.z)), RangeBase._EXTREME_POSITIVE);
|
|
580
|
+
}
|
|
581
|
+
/** returns 0 if the ranges have any overlap, otherwise the shortest absolute distance from one to the other. */
|
|
582
|
+
distanceToRange(other) {
|
|
583
|
+
return Math.min(Geometry.hypotenuseXYZ(RangeBase.rangeToRangeAbsoluteDistance(this.low.x, this.high.x, other.low.x, other.high.x), RangeBase.rangeToRangeAbsoluteDistance(this.low.y, this.high.y, other.low.y, other.high.y), RangeBase.rangeToRangeAbsoluteDistance(this.low.z, this.high.z, other.low.z, other.high.z)), RangeBase._EXTREME_POSITIVE);
|
|
584
|
+
}
|
|
585
|
+
/** Expand this range by distances a (possibly signed) in all directions */
|
|
586
|
+
extendXYZ(x, y, z) {
|
|
587
|
+
if (x < this.low.x)
|
|
588
|
+
this.low.x = x;
|
|
589
|
+
if (x > this.high.x)
|
|
590
|
+
this.high.x = x;
|
|
591
|
+
if (y < this.low.y)
|
|
592
|
+
this.low.y = y;
|
|
593
|
+
if (y > this.high.y)
|
|
594
|
+
this.high.y = y;
|
|
595
|
+
if (z < this.low.z)
|
|
596
|
+
this.low.z = z;
|
|
597
|
+
if (z > this.high.z)
|
|
598
|
+
this.high.z = z;
|
|
599
|
+
}
|
|
600
|
+
/** Expand this range by distances a in only the x direction. */
|
|
601
|
+
extendXOnly(x) {
|
|
602
|
+
if (x < this.low.x)
|
|
603
|
+
this.low.x = x;
|
|
604
|
+
if (x > this.high.x)
|
|
605
|
+
this.high.x = x;
|
|
606
|
+
}
|
|
607
|
+
/** Expand this range by distances a in only the x direction. */
|
|
608
|
+
extendYOnly(y) {
|
|
609
|
+
if (y < this.low.y)
|
|
610
|
+
this.low.y = y;
|
|
611
|
+
if (y > this.high.y)
|
|
612
|
+
this.high.y = y;
|
|
613
|
+
}
|
|
614
|
+
/** Expand this range by distances a in only the x direction. */
|
|
615
|
+
extendZOnly(z) {
|
|
616
|
+
if (z < this.low.z)
|
|
617
|
+
this.low.z = z;
|
|
618
|
+
if (z > this.high.z)
|
|
619
|
+
this.high.z = z;
|
|
620
|
+
}
|
|
621
|
+
/** Expand one component of this range */
|
|
622
|
+
extendSingleAxis(a, axisIndex) {
|
|
623
|
+
if (axisIndex === AxisIndex.X)
|
|
624
|
+
this.extendXOnly(a);
|
|
625
|
+
if (axisIndex === AxisIndex.Y)
|
|
626
|
+
this.extendYOnly(a);
|
|
627
|
+
if (axisIndex === AxisIndex.Z)
|
|
628
|
+
this.extendZOnly(a);
|
|
629
|
+
}
|
|
630
|
+
/** Expand this range by distances a (weighted and possibly signed) in all directions */
|
|
631
|
+
extendXYZW(x, y, z, w) {
|
|
632
|
+
if (!Geometry.isSmallMetricDistance(w))
|
|
633
|
+
this.extendXYZ(x / w, y / w, z / w);
|
|
634
|
+
}
|
|
635
|
+
/** Expand this range to include a point. */
|
|
636
|
+
extendPoint(point, transform) {
|
|
637
|
+
if (transform) {
|
|
638
|
+
this.extendTransformedXYZ(transform, point.x, point.y, point.z);
|
|
639
|
+
}
|
|
640
|
+
else {
|
|
641
|
+
this.extendXYZ(point.x, point.y, point.z);
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
/** Expand this range to include a transformed point. */
|
|
645
|
+
extendTransformedPoint(transform, point) {
|
|
646
|
+
this.extendTransformedXYZ(transform, point.x, point.y, point.z);
|
|
647
|
+
}
|
|
648
|
+
/** Expand this range to include a range. */
|
|
649
|
+
extendRange(other) {
|
|
650
|
+
if (!Range3d.isNull(other)) {
|
|
651
|
+
this.extendXYZ(other.low.x, other.low.y, other.low.z);
|
|
652
|
+
this.extendXYZ(other.high.x, other.high.y, other.high.z);
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
/** Return the intersection of ranges. */
|
|
656
|
+
intersect(other, result) {
|
|
657
|
+
if (!this.intersectsRange(other))
|
|
658
|
+
return Range3d.createNull(result);
|
|
659
|
+
return Range3d.createXYZXYZOrCorrectToNull(Math.max(this.low.x, other.low.x), Math.max(this.low.y, other.low.y), Math.max(this.low.z, other.low.z), Math.min(this.high.x, other.high.x), Math.min(this.high.y, other.high.y), Math.min(this.high.z, other.high.z), result);
|
|
660
|
+
}
|
|
661
|
+
/** Return the union of ranges. */
|
|
662
|
+
union(other, result) {
|
|
663
|
+
if (this.isNull)
|
|
664
|
+
return other.clone(result);
|
|
665
|
+
if (other.isNull)
|
|
666
|
+
return this.clone(result);
|
|
667
|
+
// we trust null ranges have EXTREME values, so a null in either input leads to expected results.
|
|
668
|
+
return Range3d.createXYZXYZOrCorrectToNull(Math.min(this.low.x, other.low.x), Math.min(this.low.y, other.low.y), Math.min(this.low.z, other.low.z), Math.max(this.high.x, other.high.x), Math.max(this.high.y, other.high.y), Math.max(this.high.z, other.high.z), result);
|
|
669
|
+
}
|
|
670
|
+
/**
|
|
671
|
+
* move low and high points by scaleFactor around the center point.
|
|
672
|
+
* @param scaleFactor scale factor applied to low, high distance from center.
|
|
673
|
+
*/
|
|
674
|
+
scaleAboutCenterInPlace(scaleFactor) {
|
|
675
|
+
if (!this.isNull) {
|
|
676
|
+
scaleFactor = Math.abs(scaleFactor);
|
|
677
|
+
// do the scalar stuff to avoid making a temporary object ....
|
|
678
|
+
const xMid = 0.5 * (this.low.x + this.high.x);
|
|
679
|
+
const yMid = 0.5 * (this.low.y + this.high.y);
|
|
680
|
+
const zMid = 0.5 * (this.low.z + this.high.z);
|
|
681
|
+
this.high.x = Geometry.interpolate(xMid, scaleFactor, this.high.x);
|
|
682
|
+
this.high.y = Geometry.interpolate(yMid, scaleFactor, this.high.y);
|
|
683
|
+
this.high.z = Geometry.interpolate(zMid, scaleFactor, this.high.z);
|
|
684
|
+
this.low.x = Geometry.interpolate(xMid, scaleFactor, this.low.x);
|
|
685
|
+
this.low.y = Geometry.interpolate(yMid, scaleFactor, this.low.y);
|
|
686
|
+
this.low.z = Geometry.interpolate(zMid, scaleFactor, this.low.z);
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
/**
|
|
690
|
+
* move all limits by a fixed amount.
|
|
691
|
+
* * positive delta expands the range size
|
|
692
|
+
* * negative delta reduces the range size
|
|
693
|
+
* * if any dimension reduces below zero size, the whole range becomes null
|
|
694
|
+
* @param delta shift to apply.
|
|
695
|
+
*/
|
|
696
|
+
expandInPlace(delta) {
|
|
697
|
+
this.setDirect(this.low.x - delta, this.low.y - delta, this.low.z - delta, this.high.x + delta, this.high.y + delta, this.high.z + delta, true);
|
|
698
|
+
}
|
|
699
|
+
/** Create a local to world transform from this range. */
|
|
700
|
+
getLocalToWorldTransform(result) {
|
|
701
|
+
return Transform.createOriginAndMatrix(Point3d.create(this.low.x, this.low.y, this.low.z), Matrix3d.createRowValues(this.high.x - this.low.x, 0, 0, 0, this.high.y - this.low.y, 0, 0, 0, this.high.z - this.low.z), result);
|
|
702
|
+
}
|
|
703
|
+
/**
|
|
704
|
+
* Creates an NPC to world transformation to go from 000...111 to the globally aligned cube with diagonally opposite corners that are the
|
|
705
|
+
* min and max of this range. The diagonal component for any degenerate direction is 1.
|
|
706
|
+
*/
|
|
707
|
+
getNpcToWorldRangeTransform(result) {
|
|
708
|
+
const transform = this.getLocalToWorldTransform(result);
|
|
709
|
+
const matrix = transform.matrix;
|
|
710
|
+
if (matrix.coffs[0] === 0)
|
|
711
|
+
matrix.coffs[0] = 1;
|
|
712
|
+
if (matrix.coffs[4] === 0)
|
|
713
|
+
matrix.coffs[4] = 1;
|
|
714
|
+
if (matrix.coffs[8] === 0)
|
|
715
|
+
matrix.coffs[8] = 1;
|
|
716
|
+
return transform;
|
|
717
|
+
}
|
|
718
|
+
/** Ensure that the length of each dimension of this AxisAlignedBox3d is at least a minimum size. If not, expand to minimum about the center.
|
|
719
|
+
* @param min The minimum length for each dimension.
|
|
720
|
+
*/
|
|
721
|
+
ensureMinLengths(min = .001) {
|
|
722
|
+
let size = (min - this.xLength()) / 2.0;
|
|
723
|
+
if (size > 0) {
|
|
724
|
+
this.low.x -= size;
|
|
725
|
+
this.high.x += size;
|
|
726
|
+
}
|
|
727
|
+
size = (min - this.yLength()) / 2.0;
|
|
728
|
+
if (size > 0) {
|
|
729
|
+
this.low.y -= size;
|
|
730
|
+
this.high.y += size;
|
|
731
|
+
}
|
|
732
|
+
size = (min - this.zLength()) / 2.0;
|
|
733
|
+
if (size > 0) {
|
|
734
|
+
this.low.z -= size;
|
|
735
|
+
this.high.z += size;
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
/**
|
|
740
|
+
* Range on a 1d axis
|
|
741
|
+
* * `low` and `high` members are always non-null objects
|
|
742
|
+
* * having `low > high` indicates an empty range.
|
|
743
|
+
* * the range contains x values for which `low <= x <= high`
|
|
744
|
+
* @public
|
|
745
|
+
*/
|
|
746
|
+
export class Range1d extends RangeBase {
|
|
747
|
+
// explicit ctor - no enforcement of value relationships
|
|
748
|
+
constructor(low = RangeBase._EXTREME_POSITIVE, high = RangeBase._EXTREME_NEGATIVE) {
|
|
749
|
+
super();
|
|
750
|
+
this.low = low;
|
|
751
|
+
this.high = high; // duplicates set_direct, but compiler is not convinced they are set.
|
|
752
|
+
this.setDirect(low, high);
|
|
753
|
+
}
|
|
754
|
+
/** reset the low and high to null range state. */
|
|
755
|
+
setNull() {
|
|
756
|
+
this.low = RangeBase._EXTREME_POSITIVE;
|
|
757
|
+
this.high = RangeBase._EXTREME_NEGATIVE;
|
|
758
|
+
}
|
|
759
|
+
// internal use only -- directly set all coordinates, test only if directed.
|
|
760
|
+
setDirect(low, high, correctToNull = false) {
|
|
761
|
+
this.low = low;
|
|
762
|
+
this.high = high;
|
|
763
|
+
if (correctToNull && low > high)
|
|
764
|
+
this.setNull();
|
|
765
|
+
}
|
|
766
|
+
/** Returns true if this and other have equal low and high parts, or both are null ranges. */
|
|
767
|
+
isAlmostEqual(other) {
|
|
768
|
+
return (Geometry.isSameCoordinate(this.low, other.low) && Geometry.isSameCoordinate(this.high, other.high))
|
|
769
|
+
|| (this.isNull && other.isNull);
|
|
770
|
+
}
|
|
771
|
+
/** copy contents from other Range1d. */
|
|
772
|
+
setFrom(other) { this.low = other.low; this.high = other.high; }
|
|
773
|
+
/** Convert from a JSON object of one of these forms:
|
|
774
|
+
*
|
|
775
|
+
* * Any array of numbers: `[value,value, value]`
|
|
776
|
+
* * An object with low and high as properties: `{low:lowValue, high: highValue}`
|
|
777
|
+
*/
|
|
778
|
+
setFromJSON(json) {
|
|
779
|
+
this.setNull();
|
|
780
|
+
if (Array.isArray(json)) {
|
|
781
|
+
let value;
|
|
782
|
+
for (value of json) {
|
|
783
|
+
if (Number.isFinite(value))
|
|
784
|
+
this.extendX(value);
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
else if (json.low !== undefined && Number.isFinite(json.low) && json.high !== undefined && Number.isFinite(json.high)) {
|
|
788
|
+
this.extendX(json.low);
|
|
789
|
+
this.extendX(json.high);
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
/** Use `setFromJSON` to parse `json` into a new Range1d instance. */
|
|
793
|
+
static fromJSON(json) {
|
|
794
|
+
const result = new this();
|
|
795
|
+
if (json)
|
|
796
|
+
result.setFromJSON(json);
|
|
797
|
+
return result;
|
|
798
|
+
}
|
|
799
|
+
/** Convert to a JSON object of form
|
|
800
|
+
* ```
|
|
801
|
+
* [lowValue,highValue]
|
|
802
|
+
* ```
|
|
803
|
+
*/
|
|
804
|
+
toJSON() { if (this.isNull)
|
|
805
|
+
return new Array();
|
|
806
|
+
else
|
|
807
|
+
return [this.low, this.high]; }
|
|
808
|
+
/** return a new Range1d with contents of this.
|
|
809
|
+
* @param result optional result.
|
|
810
|
+
*/
|
|
811
|
+
clone(result) {
|
|
812
|
+
result = result ? result : new this.constructor();
|
|
813
|
+
result.setDirect(this.low, this.high);
|
|
814
|
+
return result;
|
|
815
|
+
}
|
|
816
|
+
/** return a new Range1d with contents of this.
|
|
817
|
+
* @param result optional result.
|
|
818
|
+
*/
|
|
819
|
+
static createFrom(other, result) {
|
|
820
|
+
result = result ? result : new this();
|
|
821
|
+
result.setDirect(other.low, other.high);
|
|
822
|
+
return result;
|
|
823
|
+
}
|
|
824
|
+
/** Create a range with no content.
|
|
825
|
+
* @param result optional result.
|
|
826
|
+
*/
|
|
827
|
+
static createNull(result) {
|
|
828
|
+
result = result ? result : new this();
|
|
829
|
+
result.setNull();
|
|
830
|
+
return result;
|
|
831
|
+
}
|
|
832
|
+
/** create a range with `delta` added to low and high
|
|
833
|
+
* * If `this` is a null range, return a null range.
|
|
834
|
+
*/
|
|
835
|
+
cloneTranslated(delta, result) {
|
|
836
|
+
result = result ? result : this.clone();
|
|
837
|
+
if (!result.isNull) {
|
|
838
|
+
result.low += delta;
|
|
839
|
+
result.high += delta;
|
|
840
|
+
}
|
|
841
|
+
return result;
|
|
842
|
+
}
|
|
843
|
+
/**
|
|
844
|
+
* Set this range to be a single value.
|
|
845
|
+
* @param x value to use as both low and high.
|
|
846
|
+
*/
|
|
847
|
+
setX(x) { this.low = this.high = x; }
|
|
848
|
+
/** Create a single point box */
|
|
849
|
+
static createX(x, result) {
|
|
850
|
+
result = result ? result : new this();
|
|
851
|
+
result.setDirect(x, x);
|
|
852
|
+
return result;
|
|
853
|
+
}
|
|
854
|
+
/**
|
|
855
|
+
* Set this range to (min(x0,x1), max(x0,x1))
|
|
856
|
+
* @param x0 first value
|
|
857
|
+
* @param x1 second value
|
|
858
|
+
*/
|
|
859
|
+
setXXUnordered(x0, x1) {
|
|
860
|
+
if (x0 <= x1) {
|
|
861
|
+
this.low = x0;
|
|
862
|
+
this.high = x1;
|
|
863
|
+
}
|
|
864
|
+
else {
|
|
865
|
+
this.low = x1;
|
|
866
|
+
this.high = x0;
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
get isExact01() {
|
|
870
|
+
return this.low === 0.0 && this.high === 1.0;
|
|
871
|
+
}
|
|
872
|
+
/** Create a box from two values. Values are reversed if needed
|
|
873
|
+
* @param xA first value
|
|
874
|
+
* @param xB second value
|
|
875
|
+
*/
|
|
876
|
+
static createXX(xA, xB, result) {
|
|
877
|
+
result = result ? result : new this();
|
|
878
|
+
result.setDirect(Math.min(xA, xB), Math.max(xA, xB));
|
|
879
|
+
return result;
|
|
880
|
+
}
|
|
881
|
+
/** Create a box from two values, but null range if the values are reversed
|
|
882
|
+
* @param xA first value
|
|
883
|
+
* @param xB second value
|
|
884
|
+
*/
|
|
885
|
+
static createXXOrCorrectToNull(xA, xB, result) {
|
|
886
|
+
if (xB < xA)
|
|
887
|
+
return Range1d.createNull(result);
|
|
888
|
+
result = result ? result : new this();
|
|
889
|
+
result.setDirect(Math.min(xA, xB), Math.max(xA, xB));
|
|
890
|
+
return result;
|
|
891
|
+
}
|
|
892
|
+
/** Create a range containing all the values in an array.
|
|
893
|
+
* @param values array of points to be contained in the range.
|
|
894
|
+
* @param result optional result.
|
|
895
|
+
*/
|
|
896
|
+
static createArray(values, result) {
|
|
897
|
+
result = result ? result : new this();
|
|
898
|
+
let x;
|
|
899
|
+
for (x of values)
|
|
900
|
+
result.extendX(x);
|
|
901
|
+
return result;
|
|
902
|
+
}
|
|
903
|
+
/** extend to include an array of values */
|
|
904
|
+
extendArray(values) {
|
|
905
|
+
let x;
|
|
906
|
+
for (x of values)
|
|
907
|
+
this.extendX(x);
|
|
908
|
+
}
|
|
909
|
+
/** extend to include `values` at indices `beginIndex <= i < endIndex]`
|
|
910
|
+
* @param values array of values
|
|
911
|
+
* @param beginIndex first index to include
|
|
912
|
+
* @param numValue number of values to access
|
|
913
|
+
*/
|
|
914
|
+
extendArraySubset(values, beginIndex, numValue) {
|
|
915
|
+
const endIndex = beginIndex + numValue;
|
|
916
|
+
for (let i = beginIndex; i < endIndex; i++)
|
|
917
|
+
this.extendX(values[i]);
|
|
918
|
+
}
|
|
919
|
+
/** Test if the box has high<low Note that a range around a single point is NOT null. */
|
|
920
|
+
get isNull() {
|
|
921
|
+
return this.high < this.low;
|
|
922
|
+
}
|
|
923
|
+
/** Test of the range contains a single point. */
|
|
924
|
+
get isSinglePoint() {
|
|
925
|
+
return this.high === this.low;
|
|
926
|
+
}
|
|
927
|
+
/** Return the length of the range in the x direction */
|
|
928
|
+
length() { const a = this.high - this.low; return a > 0.0 ? a : 0.0; }
|
|
929
|
+
/** return a point given by fractional positions within the range. This is done with no check for isNull !!! */
|
|
930
|
+
fractionToPoint(fraction) {
|
|
931
|
+
return Geometry.interpolate(this.low, fraction, this.high);
|
|
932
|
+
}
|
|
933
|
+
/** Return the largest absolute value among the box limits. */
|
|
934
|
+
maxAbs() {
|
|
935
|
+
if (this.isNull)
|
|
936
|
+
return 0.0;
|
|
937
|
+
return Math.max(Math.abs(this.low), Math.abs(this.high));
|
|
938
|
+
}
|
|
939
|
+
/** Test if the x direction size is nearly zero */
|
|
940
|
+
get isAlmostZeroLength() { return Geometry.isSmallMetricDistance(this.length()); }
|
|
941
|
+
/** Test if a number is within the range. */
|
|
942
|
+
containsX(x) {
|
|
943
|
+
return x >= this.low
|
|
944
|
+
&& x <= this.high;
|
|
945
|
+
}
|
|
946
|
+
/** Test of other range is within this range */
|
|
947
|
+
containsRange(other) {
|
|
948
|
+
return other.low >= this.low
|
|
949
|
+
&& other.high <= this.high;
|
|
950
|
+
}
|
|
951
|
+
/** Test if there is any intersection with other range */
|
|
952
|
+
intersectsRange(other) {
|
|
953
|
+
return !(this.low > other.high || other.low > this.high);
|
|
954
|
+
}
|
|
955
|
+
/**
|
|
956
|
+
* Intersect this range with a range defined by parameters x0 and x1
|
|
957
|
+
* * For x1 > x0, that range is null, and the intersection is null.
|
|
958
|
+
* * For x0 <= x1, the input is a non-null range.
|
|
959
|
+
* * The intersection range replaces the contents of this.
|
|
960
|
+
*
|
|
961
|
+
*/
|
|
962
|
+
intersectRangeXXInPlace(x0, x1) {
|
|
963
|
+
if (x1 < x0 || x1 < this.low || x0 > this.high) {
|
|
964
|
+
this.setNull();
|
|
965
|
+
}
|
|
966
|
+
else {
|
|
967
|
+
if (x1 < this.high)
|
|
968
|
+
this.high = x1;
|
|
969
|
+
if (x0 > this.low)
|
|
970
|
+
this.low = x0;
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
/** returns 0 if the ranges have any overlap, otherwise the shortest absolute distance from one to the other. */
|
|
974
|
+
distanceToRange(other) {
|
|
975
|
+
return RangeBase.rangeToRangeAbsoluteDistance(this.low, this.high, other.low, other.high);
|
|
976
|
+
}
|
|
977
|
+
/** Return 0 if the point is within the range, otherwise the (unsigned) distance to the closest face or corner */
|
|
978
|
+
distanceToX(x) {
|
|
979
|
+
if (this.isNull)
|
|
980
|
+
return RangeBase._EXTREME_POSITIVE;
|
|
981
|
+
return RangeBase.coordinateToRangeAbsoluteDistance(x, this.low, this.high);
|
|
982
|
+
}
|
|
983
|
+
/** Expand this range by a single coordinate */
|
|
984
|
+
extendX(x) {
|
|
985
|
+
if (x < this.low)
|
|
986
|
+
this.low = x;
|
|
987
|
+
if (x > this.high)
|
|
988
|
+
this.high = x;
|
|
989
|
+
}
|
|
990
|
+
/** Expand this range to include a range. */
|
|
991
|
+
extendRange(other) {
|
|
992
|
+
if (!other.isNull) {
|
|
993
|
+
this.extendX(other.low);
|
|
994
|
+
this.extendX(other.high);
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
/** Extend only the low limit to x. Return true if the low limit is changed. */
|
|
998
|
+
extendLow(x) {
|
|
999
|
+
if (this.isNull || x < this.low) {
|
|
1000
|
+
this.low = x;
|
|
1001
|
+
return true;
|
|
1002
|
+
}
|
|
1003
|
+
return false;
|
|
1004
|
+
}
|
|
1005
|
+
/** Extend only the high limit to x. Return true if the high limit is changed. */
|
|
1006
|
+
extendHigh(x) {
|
|
1007
|
+
if (this.isNull || x > this.high) {
|
|
1008
|
+
this.high = x;
|
|
1009
|
+
return true;
|
|
1010
|
+
}
|
|
1011
|
+
return false;
|
|
1012
|
+
}
|
|
1013
|
+
/** Return the intersection of ranges. */
|
|
1014
|
+
intersect(other, result) {
|
|
1015
|
+
if (!this.intersectsRange(other))
|
|
1016
|
+
return Range1d.createNull(result);
|
|
1017
|
+
return Range1d.createXXOrCorrectToNull(Math.max(this.low, other.low), Math.min(this.high, other.high), result);
|
|
1018
|
+
}
|
|
1019
|
+
/** Return the union of ranges. */
|
|
1020
|
+
/** Return the intersection of ranges. */
|
|
1021
|
+
union(other, result) {
|
|
1022
|
+
// we trust null ranges have EXTREME values, so a null in either input leads to expected results.
|
|
1023
|
+
return Range1d.createXX(Math.min(this.low, other.low), Math.max(this.high, other.high), result);
|
|
1024
|
+
}
|
|
1025
|
+
/**
|
|
1026
|
+
* move low and high points by scaleFactor around the center point.
|
|
1027
|
+
* @param scaleFactor scale factor applied to low, high distance from center.
|
|
1028
|
+
*/
|
|
1029
|
+
scaleAboutCenterInPlace(scaleFactor) {
|
|
1030
|
+
if (!this.isNull) {
|
|
1031
|
+
scaleFactor = Math.abs(scaleFactor);
|
|
1032
|
+
// do the scalar stuff to avoid making a temporary object ....
|
|
1033
|
+
const xMid = 0.5 * (this.low + this.high);
|
|
1034
|
+
this.high = Geometry.interpolate(xMid, scaleFactor, this.high);
|
|
1035
|
+
this.low = Geometry.interpolate(xMid, scaleFactor, this.low);
|
|
1036
|
+
}
|
|
1037
|
+
}
|
|
1038
|
+
/**
|
|
1039
|
+
* move all limits by a fixed amount.
|
|
1040
|
+
* * positive delta expands the range size
|
|
1041
|
+
* * negative delta reduces the range size
|
|
1042
|
+
* * if any dimension reduces below zero size, the whole range becomes null
|
|
1043
|
+
* @param delta shift to apply.
|
|
1044
|
+
*/
|
|
1045
|
+
expandInPlace(delta) {
|
|
1046
|
+
this.setDirect(this.low - delta, this.high + delta, true);
|
|
1047
|
+
}
|
|
1048
|
+
/**
|
|
1049
|
+
* clip this range to a linear half space condition
|
|
1050
|
+
* * if `limitA > limitB` the limit space is empty
|
|
1051
|
+
* * make this range null
|
|
1052
|
+
* * return false;
|
|
1053
|
+
* * otherwise (i.e `limitA <= limitB`)
|
|
1054
|
+
* * solve `a + u * f = limitA' and `a + u * f = limitA`
|
|
1055
|
+
* * if unable to solve (i.e. u near zero), `a` alone determines whether to (a) leave this interval unchanged or (b) reduce to nothing.
|
|
1056
|
+
* * the `f` values are an interval in the space of this `Range1d`
|
|
1057
|
+
* * restrict the range to that interval (i.e intersect existing (low,high) with the fraction interval.
|
|
1058
|
+
* * return true if the range is non-null after the clip.
|
|
1059
|
+
* @param a constant of linear map
|
|
1060
|
+
* @param u coefficient of linear map
|
|
1061
|
+
* @param limitA crossing value, assumed in range relation with limitB
|
|
1062
|
+
* @param limitB crossing value, assumed in range relation with limitB
|
|
1063
|
+
* @param limitIsHigh true if the limit is an upper limit on mapped values.
|
|
1064
|
+
*
|
|
1065
|
+
*/
|
|
1066
|
+
clipLinearMapToInterval(a, u, limitA, limitB) {
|
|
1067
|
+
// f = (limit - a) / u
|
|
1068
|
+
if (limitB < limitA || this.high < this.low)
|
|
1069
|
+
return false;
|
|
1070
|
+
const fractionA = Geometry.conditionalDivideFraction(limitA - a, u);
|
|
1071
|
+
const fractionB = Geometry.conditionalDivideFraction(limitB - a, u);
|
|
1072
|
+
// single point case
|
|
1073
|
+
if (fractionA === undefined || fractionB === undefined) {
|
|
1074
|
+
if (limitA <= a && a <= limitB)
|
|
1075
|
+
return true;
|
|
1076
|
+
this.setNull();
|
|
1077
|
+
return false;
|
|
1078
|
+
}
|
|
1079
|
+
if (fractionA < fractionB) {
|
|
1080
|
+
if (fractionA > this.low)
|
|
1081
|
+
this.low = fractionA;
|
|
1082
|
+
if (fractionB < this.high)
|
|
1083
|
+
this.high = fractionB;
|
|
1084
|
+
}
|
|
1085
|
+
else {
|
|
1086
|
+
if (fractionA < this.high)
|
|
1087
|
+
this.high = fractionA;
|
|
1088
|
+
if (fractionB > this.low)
|
|
1089
|
+
this.low = fractionB;
|
|
1090
|
+
}
|
|
1091
|
+
if (this.high < this.low) {
|
|
1092
|
+
this.setNull();
|
|
1093
|
+
return false;
|
|
1094
|
+
}
|
|
1095
|
+
return true;
|
|
1096
|
+
}
|
|
1097
|
+
}
|
|
1098
|
+
/**
|
|
1099
|
+
* Range box in xy plane
|
|
1100
|
+
* @public
|
|
1101
|
+
*/
|
|
1102
|
+
export class Range2d extends RangeBase {
|
|
1103
|
+
// explicit ctor - no enforcement of value relationships
|
|
1104
|
+
constructor(lowX = Range2d._EXTREME_POSITIVE, lowY = Range2d._EXTREME_POSITIVE, highX = Range2d._EXTREME_NEGATIVE, highY = Range2d._EXTREME_NEGATIVE) {
|
|
1105
|
+
super();
|
|
1106
|
+
this.low = Point2d.create(lowX, lowY);
|
|
1107
|
+
this.high = Point2d.create(highX, highY);
|
|
1108
|
+
}
|
|
1109
|
+
/** reset the low and high to null range state. */
|
|
1110
|
+
setNull() {
|
|
1111
|
+
this.low.x = RangeBase._EXTREME_POSITIVE;
|
|
1112
|
+
this.low.y = RangeBase._EXTREME_POSITIVE;
|
|
1113
|
+
this.high.x = RangeBase._EXTREME_NEGATIVE;
|
|
1114
|
+
this.high.y = RangeBase._EXTREME_NEGATIVE;
|
|
1115
|
+
}
|
|
1116
|
+
/** Flatten the low and high coordinates of any json object with low.x .. high.y into an array of 4 doubles */
|
|
1117
|
+
static toFloat64Array(val) { return Float64Array.of(val.low.x, val.low.y, val.high.x, val.high.y); }
|
|
1118
|
+
/** Flatten the low and high coordinates of this instance into an array of 4 doubles */
|
|
1119
|
+
toFloat64Array() { return Range2d.toFloat64Array(this); }
|
|
1120
|
+
/**
|
|
1121
|
+
* Construct a Range2d from an array of double-precision values
|
|
1122
|
+
* @param f64 the array, which should contain exactly 4 values in this order: lowX, lowY, highX, highY
|
|
1123
|
+
* @return a new Range2d object
|
|
1124
|
+
*/
|
|
1125
|
+
static fromFloat64Array(f64) {
|
|
1126
|
+
if (f64.length !== 4)
|
|
1127
|
+
throw new Error("invalid array");
|
|
1128
|
+
return new this(f64[0], f64[1], f64[2], f64[3]);
|
|
1129
|
+
}
|
|
1130
|
+
/**
|
|
1131
|
+
* Construct a Range2d from an un-typed array. This mostly useful when interpreting ECSQL query results of the 'blob' type, where you know that that result is a Range3d.
|
|
1132
|
+
* @param buffer untyped array
|
|
1133
|
+
* @return a new Range2d object
|
|
1134
|
+
*/
|
|
1135
|
+
static fromArrayBuffer(buffer) { return this.fromFloat64Array(new Float64Array(buffer)); }
|
|
1136
|
+
/** Returns true if this and other have equal low and high parts, or both are null ranges. */
|
|
1137
|
+
isAlmostEqual(other) {
|
|
1138
|
+
return (this.low.isAlmostEqual(other.low) && this.high.isAlmostEqual(other.high))
|
|
1139
|
+
|| (this.isNull && other.isNull);
|
|
1140
|
+
}
|
|
1141
|
+
/** copy all content from any `other` that has low and high xy data. */
|
|
1142
|
+
setFrom(other) {
|
|
1143
|
+
this.low.set(other.low.x, other.low.y);
|
|
1144
|
+
this.high.set(other.high.x, other.high.y);
|
|
1145
|
+
}
|
|
1146
|
+
/** create a new Range2d from any `other` that has low and high xy data. */
|
|
1147
|
+
static createFrom(other, result) {
|
|
1148
|
+
if (result) {
|
|
1149
|
+
result.setFrom(other);
|
|
1150
|
+
return result;
|
|
1151
|
+
}
|
|
1152
|
+
return this.createXYXYOrCorrectToNull(other.low.x, other.low.y, other.high.x, other.high.y, result);
|
|
1153
|
+
}
|
|
1154
|
+
/** treat any array of numbers as numbers to be inserted !!! */
|
|
1155
|
+
setFromJSON(json) {
|
|
1156
|
+
this.setNull();
|
|
1157
|
+
if (Array.isArray(json)) {
|
|
1158
|
+
const point = Point2d.create();
|
|
1159
|
+
for (const value of json) {
|
|
1160
|
+
point.setFromJSON(value);
|
|
1161
|
+
this.extendPoint(point);
|
|
1162
|
+
}
|
|
1163
|
+
return;
|
|
1164
|
+
}
|
|
1165
|
+
const low = Point2d.fromJSON(json.low);
|
|
1166
|
+
const high = Point2d.fromJSON(json.high);
|
|
1167
|
+
if (!RangeBase.isExtremePoint2d(low) && !RangeBase.isExtremePoint2d(high)) {
|
|
1168
|
+
this.extendPoint(low);
|
|
1169
|
+
this.extendPoint(high);
|
|
1170
|
+
}
|
|
1171
|
+
}
|
|
1172
|
+
/** Freeze this instance (and its members) so it is read-only */
|
|
1173
|
+
freeze() { this.low.freeze(); this.high.freeze(); return Object.freeze(this); }
|
|
1174
|
+
/** return json array with two points as produced by `Point2d.toJSON` */
|
|
1175
|
+
toJSON() { return this.isNull ? [] : [this.low.toJSON(), this.high.toJSON()]; }
|
|
1176
|
+
/** Use `setFromJSON` to parse `json` into a new Range2d instance. */
|
|
1177
|
+
static fromJSON(json) {
|
|
1178
|
+
const result = new this();
|
|
1179
|
+
if (json)
|
|
1180
|
+
result.setFromJSON(json);
|
|
1181
|
+
return result;
|
|
1182
|
+
}
|
|
1183
|
+
// internal use only -- directly set all coordinates, without tests.
|
|
1184
|
+
setDirect(xA, yA, xB, yB, correctToNull) {
|
|
1185
|
+
this.low.x = xA;
|
|
1186
|
+
this.low.y = yA;
|
|
1187
|
+
this.high.x = xB;
|
|
1188
|
+
this.high.y = yB;
|
|
1189
|
+
if (correctToNull) {
|
|
1190
|
+
if (this.low.x > this.high.x || this.low.y > this.high.y)
|
|
1191
|
+
this.setNull();
|
|
1192
|
+
}
|
|
1193
|
+
}
|
|
1194
|
+
/** return a clone of this range (or copy to optional result) */
|
|
1195
|
+
clone(result) {
|
|
1196
|
+
result = result ? result : new this.constructor();
|
|
1197
|
+
result.setDirect(this.low.x, this.low.y, this.high.x, this.high.y, false);
|
|
1198
|
+
return result;
|
|
1199
|
+
}
|
|
1200
|
+
/** create a range with no content. */
|
|
1201
|
+
static createNull(result) {
|
|
1202
|
+
result = result ? result : new this();
|
|
1203
|
+
result.setNull();
|
|
1204
|
+
return result;
|
|
1205
|
+
}
|
|
1206
|
+
/** Set low and hight to a single xy value. */
|
|
1207
|
+
setXY(x, y) {
|
|
1208
|
+
this.low.x = this.high.x = x;
|
|
1209
|
+
this.low.y = this.high.y = y;
|
|
1210
|
+
}
|
|
1211
|
+
/** Create a single point box */
|
|
1212
|
+
static createXY(x, y, result) {
|
|
1213
|
+
result = result ? result : new this();
|
|
1214
|
+
result.setDirect(x, y, x, y, false);
|
|
1215
|
+
return result;
|
|
1216
|
+
}
|
|
1217
|
+
/** Create a box with 2 pairs of xy candidates. Theses are compared and shuffled as needed for the box. */
|
|
1218
|
+
static createXYXY(xA, yA, xB, yB, result) {
|
|
1219
|
+
result = result ? result : new this();
|
|
1220
|
+
result.setDirect(Math.min(xA, xB), Math.min(yA, yB), Math.max(xA, xB), Math.max(yA, yB), false);
|
|
1221
|
+
return result;
|
|
1222
|
+
}
|
|
1223
|
+
/** Create a box with 3 pairs of xy candidates. Theses are compared and shuffled as needed for the box. */
|
|
1224
|
+
static createXYXYXY(xA, yA, xB, yB, xC, yC, result) {
|
|
1225
|
+
result = result ? result : new this();
|
|
1226
|
+
result.setDirect(Math.min(xA, xB, xC), Math.min(yA, yB, yC), Math.max(xA, xB, xC), Math.max(yA, yB, yC), false);
|
|
1227
|
+
return result;
|
|
1228
|
+
}
|
|
1229
|
+
/** Create a box with 2 pairs of xy candidates. If any direction has order flip, create null. */
|
|
1230
|
+
static createXYXYOrCorrectToNull(xA, yA, xB, yB, result) {
|
|
1231
|
+
if (xA > xB || yA > yB)
|
|
1232
|
+
return this.createNull(result);
|
|
1233
|
+
result = result ? result : new this();
|
|
1234
|
+
result.setDirect(Math.min(xA, xB), Math.min(yA, yB), Math.max(xA, xB), Math.max(yA, yB), true);
|
|
1235
|
+
return result;
|
|
1236
|
+
}
|
|
1237
|
+
/** Create a range around an array of points. */
|
|
1238
|
+
static createArray(points, result) {
|
|
1239
|
+
result = result ? result : new this();
|
|
1240
|
+
let point;
|
|
1241
|
+
for (point of points)
|
|
1242
|
+
result.extendPoint(point);
|
|
1243
|
+
return result;
|
|
1244
|
+
}
|
|
1245
|
+
/** Test if the box has high<low for any of x,y, condition. Note that a range around a single point is NOT null. */
|
|
1246
|
+
get isNull() {
|
|
1247
|
+
return this.high.x < this.low.x
|
|
1248
|
+
|| this.high.y < this.low.y;
|
|
1249
|
+
}
|
|
1250
|
+
/** Test if the box has high strictly less than low for any of x,y, condition. Note that a range around a single point is NOT null. */
|
|
1251
|
+
static isNull(range) {
|
|
1252
|
+
return range.high.x < range.low.x
|
|
1253
|
+
|| range.high.y < range.low.y;
|
|
1254
|
+
}
|
|
1255
|
+
/** Test of the range contains a single point. */
|
|
1256
|
+
get isSinglePoint() {
|
|
1257
|
+
return this.high.x === this.low.x
|
|
1258
|
+
&& this.high.y === this.low.y;
|
|
1259
|
+
}
|
|
1260
|
+
/** Return the midpoint of the diagonal. No test for null range. */
|
|
1261
|
+
get center() { return this.low.interpolate(.5, this.high); }
|
|
1262
|
+
/** return the low x coordinate */
|
|
1263
|
+
get xLow() { return this.low.x; }
|
|
1264
|
+
/** return the low y coordinate */
|
|
1265
|
+
get yLow() { return this.low.y; }
|
|
1266
|
+
/** return the high x coordinate */
|
|
1267
|
+
get xHigh() { return this.high.x; }
|
|
1268
|
+
/** return the high y coordinate */
|
|
1269
|
+
get yHigh() { return this.high.y; }
|
|
1270
|
+
/** Length of the box in the x direction */
|
|
1271
|
+
xLength() { const a = this.high.x - this.low.x; return a > 0.0 ? a : 0.0; }
|
|
1272
|
+
/** Length of the box in the y direction */
|
|
1273
|
+
yLength() { const a = this.high.y - this.low.y; return a > 0.0 ? a : 0.0; }
|
|
1274
|
+
/** return the diagonal vector. There is no check for isNull -- if the range isNull(), the vector will have very large negative coordinates. */
|
|
1275
|
+
diagonal(result) { return this.low.vectorTo(this.high, result); }
|
|
1276
|
+
/** return the diagonal vector. There is no check for isNull -- if the range isNull(), the vector will have very large negative coordinates. */
|
|
1277
|
+
diagonalFractionToPoint(fraction, result) { return this.low.interpolate(fraction, this.high, result); }
|
|
1278
|
+
/** return a point given by fractional positions on the XY axes. This is done with no check for isNull !!! */
|
|
1279
|
+
fractionToPoint(fractionX, fractionY, result) {
|
|
1280
|
+
return this.low.interpolateXY(fractionX, fractionY, this.high, result);
|
|
1281
|
+
}
|
|
1282
|
+
/** Return an array with the 4 corners.
|
|
1283
|
+
* * if asLoop is false, 4 corners are "x varies fastest, then y"
|
|
1284
|
+
* * if asLoop is true, 5 corners are in CCW order WITH CLOSURE
|
|
1285
|
+
*/
|
|
1286
|
+
corners3d(asLoop = false, z = 0) {
|
|
1287
|
+
if (asLoop)
|
|
1288
|
+
return [
|
|
1289
|
+
Point3d.create(this.low.x, this.low.y, z),
|
|
1290
|
+
Point3d.create(this.high.x, this.low.y, z),
|
|
1291
|
+
Point3d.create(this.high.x, this.high.y, z),
|
|
1292
|
+
Point3d.create(this.low.x, this.high.y, z),
|
|
1293
|
+
Point3d.create(this.low.x, this.low.y, z)
|
|
1294
|
+
];
|
|
1295
|
+
return [
|
|
1296
|
+
Point3d.create(this.low.x, this.low.y, z),
|
|
1297
|
+
Point3d.create(this.high.x, this.low.y, z),
|
|
1298
|
+
Point3d.create(this.low.x, this.high.y, z),
|
|
1299
|
+
Point3d.create(this.high.x, this.high.y, z)
|
|
1300
|
+
];
|
|
1301
|
+
}
|
|
1302
|
+
/** Largest absolute value among any coordinates in the box corners. */
|
|
1303
|
+
maxAbs() {
|
|
1304
|
+
if (this.isNull)
|
|
1305
|
+
return 0.0;
|
|
1306
|
+
return Math.max(this.low.maxAbs(), this.high.maxAbs());
|
|
1307
|
+
}
|
|
1308
|
+
/** Test if the x direction size is nearly zero */
|
|
1309
|
+
get isAlmostZeroX() { return Geometry.isSmallMetricDistance(this.xLength()); }
|
|
1310
|
+
/** Test if the y direction size is nearly zero */
|
|
1311
|
+
get isAlmostZeroY() { return Geometry.isSmallMetricDistance(this.yLength()); }
|
|
1312
|
+
/** Test if a point given as x,y is within the range. */
|
|
1313
|
+
containsXY(x, y) {
|
|
1314
|
+
return x >= this.low.x
|
|
1315
|
+
&& y >= this.low.y
|
|
1316
|
+
&& x <= this.high.x
|
|
1317
|
+
&& y <= this.high.y;
|
|
1318
|
+
}
|
|
1319
|
+
/** Test if a point is within the range. */
|
|
1320
|
+
containsPoint(point) { return this.containsXY(point.x, point.y); }
|
|
1321
|
+
/** Test of other range is within this range */
|
|
1322
|
+
containsRange(other) {
|
|
1323
|
+
return other.low.x >= this.low.x
|
|
1324
|
+
&& other.low.y >= this.low.y
|
|
1325
|
+
&& other.high.x <= this.high.x
|
|
1326
|
+
&& other.high.y <= this.high.y;
|
|
1327
|
+
}
|
|
1328
|
+
/** Test if there is any intersection with other range */
|
|
1329
|
+
intersectsRange(other) {
|
|
1330
|
+
return !(this.low.x > other.high.x
|
|
1331
|
+
|| this.low.y > other.high.y
|
|
1332
|
+
|| other.low.x > this.high.x
|
|
1333
|
+
|| other.low.y > this.high.y);
|
|
1334
|
+
}
|
|
1335
|
+
/** Return 0 if the point is within the range, otherwise the distance to the closest face or corner */
|
|
1336
|
+
distanceToPoint(point) {
|
|
1337
|
+
if (this.isNull)
|
|
1338
|
+
return Range2d._EXTREME_POSITIVE;
|
|
1339
|
+
return Math.min(Geometry.hypotenuseXY(RangeBase.coordinateToRangeAbsoluteDistance(point.x, this.low.x, this.high.x), RangeBase.coordinateToRangeAbsoluteDistance(point.y, this.low.y, this.high.y)), Range2d._EXTREME_POSITIVE);
|
|
1340
|
+
}
|
|
1341
|
+
/** Return 0 if the point is within the range, otherwise the distance to the closest face or corner */
|
|
1342
|
+
distanceToRange(other) {
|
|
1343
|
+
return Math.min(Geometry.hypotenuseXY(RangeBase.rangeToRangeAbsoluteDistance(this.low.x, this.high.x, other.low.x, other.high.x), RangeBase.rangeToRangeAbsoluteDistance(this.low.y, this.high.y, other.low.y, other.high.y)), Range2d._EXTREME_POSITIVE);
|
|
1344
|
+
}
|
|
1345
|
+
/** Expand this range to include a point given by x,y */
|
|
1346
|
+
extendXY(x, y) {
|
|
1347
|
+
if (x < this.low.x)
|
|
1348
|
+
this.low.x = x;
|
|
1349
|
+
if (x > this.high.x)
|
|
1350
|
+
this.high.x = x;
|
|
1351
|
+
if (y < this.low.y)
|
|
1352
|
+
this.low.y = y;
|
|
1353
|
+
if (y > this.high.y)
|
|
1354
|
+
this.high.y = y;
|
|
1355
|
+
}
|
|
1356
|
+
/** Expand this range to include a point given by x,y */
|
|
1357
|
+
extendTransformedXY(transform, x, y) {
|
|
1358
|
+
const x1 = transform.multiplyComponentXYZ(0, x, y, 0);
|
|
1359
|
+
const y1 = transform.multiplyComponentXYZ(1, x, y, 0);
|
|
1360
|
+
this.extendXY(x1, y1);
|
|
1361
|
+
}
|
|
1362
|
+
/** Expand this range to include a point. */
|
|
1363
|
+
extendPoint(point) { this.extendXY(point.x, point.y); }
|
|
1364
|
+
/** Expand this range to include a range. */
|
|
1365
|
+
extendRange(other) {
|
|
1366
|
+
if (!Range2d.isNull(other)) {
|
|
1367
|
+
this.extendXY(other.low.x, other.low.y);
|
|
1368
|
+
this.extendXY(other.high.x, other.high.y);
|
|
1369
|
+
}
|
|
1370
|
+
}
|
|
1371
|
+
/** Return the intersection of ranges. */
|
|
1372
|
+
intersect(other, result) {
|
|
1373
|
+
if (!this.intersectsRange(other))
|
|
1374
|
+
return Range2d.createNull(result);
|
|
1375
|
+
return Range2d.createXYXY(Math.max(this.low.x, other.low.x), Math.max(this.low.y, other.low.y), Math.min(this.high.x, other.high.x), Math.min(this.high.y, other.high.y), result);
|
|
1376
|
+
}
|
|
1377
|
+
/** Return the union of ranges. */
|
|
1378
|
+
union(other, result) {
|
|
1379
|
+
if (this.isNull)
|
|
1380
|
+
return Range2d.createFrom(other, result);
|
|
1381
|
+
if (Range2d.isNull(other))
|
|
1382
|
+
return this.clone(result);
|
|
1383
|
+
// we trust null ranges have EXTREME values, so a null in either input leads to expected results.
|
|
1384
|
+
return Range2d.createXYXY(Math.min(this.low.x, other.low.x), Math.min(this.low.y, other.low.y), Math.max(this.high.x, other.high.x), Math.max(this.high.y, other.high.y), result);
|
|
1385
|
+
}
|
|
1386
|
+
/**
|
|
1387
|
+
* move low and high points by scaleFactor around the center point.
|
|
1388
|
+
* @param scaleFactor scale factor applied to low, high distance from center.
|
|
1389
|
+
*/
|
|
1390
|
+
scaleAboutCenterInPlace(scaleFactor) {
|
|
1391
|
+
if (!this.isNull) {
|
|
1392
|
+
scaleFactor = Math.abs(scaleFactor);
|
|
1393
|
+
// do the scalar stuff to avoid making a temporary object ....
|
|
1394
|
+
const xMid = 0.5 * (this.low.x + this.high.x);
|
|
1395
|
+
const yMid = 0.5 * (this.low.y + this.high.y);
|
|
1396
|
+
this.high.x = Geometry.interpolate(xMid, scaleFactor, this.high.x);
|
|
1397
|
+
this.high.y = Geometry.interpolate(yMid, scaleFactor, this.high.y);
|
|
1398
|
+
this.low.x = Geometry.interpolate(xMid, scaleFactor, this.low.x);
|
|
1399
|
+
this.low.y = Geometry.interpolate(yMid, scaleFactor, this.low.y);
|
|
1400
|
+
}
|
|
1401
|
+
}
|
|
1402
|
+
/**
|
|
1403
|
+
* move all limits by a fixed amount.
|
|
1404
|
+
* * positive delta expands the range size
|
|
1405
|
+
* * negative delta reduces the range size
|
|
1406
|
+
* * if any dimension reduces below zero size, the whole range becomes null
|
|
1407
|
+
* @param delta shift to apply.
|
|
1408
|
+
*/
|
|
1409
|
+
expandInPlace(delta) {
|
|
1410
|
+
this.setDirect(this.low.x - delta, this.low.y - delta, this.high.x + delta, this.high.y + delta, true);
|
|
1411
|
+
}
|
|
1412
|
+
/** Return fractional coordinates of point within the range.
|
|
1413
|
+
* * returns undefined if the range is null.
|
|
1414
|
+
* * returns undefined if any direction (x,y) has zero length
|
|
1415
|
+
*/
|
|
1416
|
+
worldToLocal(point, result) {
|
|
1417
|
+
const ax = RangeBase.npcScaleFactor(this.low.x, this.high.x);
|
|
1418
|
+
const ay = RangeBase.npcScaleFactor(this.low.y, this.high.y);
|
|
1419
|
+
if (ax === 0.0 || ay === 0.0)
|
|
1420
|
+
return undefined;
|
|
1421
|
+
return Point2d.create((point.x - this.low.x) * ax, (point.y - this.low.y) * ay, result);
|
|
1422
|
+
}
|
|
1423
|
+
}
|
|
1424
|
+
//# sourceMappingURL=Range.js.map
|