@itwin/core-geometry 5.2.0-dev.8 → 5.3.0-dev.2
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 +36 -1
- package/lib/cjs/Geometry.d.ts +30 -10
- package/lib/cjs/Geometry.d.ts.map +1 -1
- package/lib/cjs/Geometry.js +74 -10
- package/lib/cjs/Geometry.js.map +1 -1
- package/lib/cjs/bspline/AkimaCurve3d.d.ts +19 -6
- package/lib/cjs/bspline/AkimaCurve3d.d.ts.map +1 -1
- package/lib/cjs/bspline/AkimaCurve3d.js +21 -5
- package/lib/cjs/bspline/AkimaCurve3d.js.map +1 -1
- package/lib/cjs/bspline/BSplineCurve.d.ts +3 -3
- package/lib/cjs/bspline/BSplineCurve.d.ts.map +1 -1
- package/lib/cjs/bspline/BSplineCurve.js +6 -6
- package/lib/cjs/bspline/BSplineCurve.js.map +1 -1
- package/lib/cjs/bspline/BSplineCurveOps.d.ts.map +1 -1
- package/lib/cjs/bspline/BSplineCurveOps.js +1 -1
- package/lib/cjs/bspline/BSplineCurveOps.js.map +1 -1
- package/lib/cjs/bspline/BezierCurveBase.d.ts +2 -2
- package/lib/cjs/bspline/BezierCurveBase.d.ts.map +1 -1
- package/lib/cjs/bspline/BezierCurveBase.js +4 -6
- package/lib/cjs/bspline/BezierCurveBase.js.map +1 -1
- package/lib/cjs/bspline/InterpolationCurve3d.d.ts +27 -17
- package/lib/cjs/bspline/InterpolationCurve3d.d.ts.map +1 -1
- package/lib/cjs/bspline/InterpolationCurve3d.js +17 -7
- package/lib/cjs/bspline/InterpolationCurve3d.js.map +1 -1
- package/lib/cjs/clipping/ClipPlane.d.ts +19 -6
- package/lib/cjs/clipping/ClipPlane.d.ts.map +1 -1
- package/lib/cjs/clipping/ClipPlane.js +17 -2
- package/lib/cjs/clipping/ClipPlane.js.map +1 -1
- package/lib/cjs/clipping/ClipUtils.d.ts +14 -1
- package/lib/cjs/clipping/ClipUtils.d.ts.map +1 -1
- package/lib/cjs/clipping/ClipUtils.js +21 -3
- package/lib/cjs/clipping/ClipUtils.js.map +1 -1
- package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts +14 -11
- package/lib/cjs/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
- package/lib/cjs/clipping/ConvexClipPlaneSet.js +23 -16
- package/lib/cjs/clipping/ConvexClipPlaneSet.js.map +1 -1
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.d.ts +20 -3
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -1
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js +22 -5
- package/lib/cjs/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
- package/lib/cjs/curve/Arc3d.d.ts +27 -17
- package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
- package/lib/cjs/curve/Arc3d.js +61 -35
- package/lib/cjs/curve/Arc3d.js.map +1 -1
- package/lib/cjs/curve/CurveCollection.d.ts +1 -0
- package/lib/cjs/curve/CurveCollection.d.ts.map +1 -1
- package/lib/cjs/curve/CurveCollection.js +1 -0
- package/lib/cjs/curve/CurveCollection.js.map +1 -1
- package/lib/cjs/curve/CurveLocationDetail.d.ts +8 -7
- package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -1
- package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
- package/lib/cjs/curve/CurveOps.d.ts +51 -1
- package/lib/cjs/curve/CurveOps.d.ts.map +1 -1
- package/lib/cjs/curve/CurveOps.js +97 -3
- package/lib/cjs/curve/CurveOps.js.map +1 -1
- package/lib/cjs/curve/LineString3d.d.ts +4 -4
- package/lib/cjs/curve/LineString3d.d.ts.map +1 -1
- package/lib/cjs/curve/LineString3d.js +8 -8
- package/lib/cjs/curve/LineString3d.js.map +1 -1
- package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js +3 -3
- package/lib/cjs/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
- package/lib/cjs/curve/Query/PlanarSubdivision.d.ts +6 -2
- package/lib/cjs/curve/Query/PlanarSubdivision.d.ts.map +1 -1
- package/lib/cjs/curve/Query/PlanarSubdivision.js +12 -7
- package/lib/cjs/curve/Query/PlanarSubdivision.js.map +1 -1
- package/lib/cjs/curve/RegionOps.d.ts +9 -4
- package/lib/cjs/curve/RegionOps.d.ts.map +1 -1
- package/lib/cjs/curve/RegionOps.js +10 -5
- package/lib/cjs/curve/RegionOps.js.map +1 -1
- package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
- package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +2 -1
- package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
- package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts +4 -4
- package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
- package/lib/cjs/curve/internalContexts/MultiChainCollector.js +21 -18
- package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -1
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js +30 -50
- package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
- package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts +2 -2
- package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
- package/lib/cjs/curve/spiral/DirectSpiral3d.js +6 -2
- package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -1
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts +2 -2
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +6 -2
- package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -1
- package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts +5 -1
- package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
- package/lib/cjs/curve/spiral/TransitionSpiral3d.js +0 -3
- package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -1
- package/lib/cjs/geometry3d/AngleSweep.d.ts +6 -2
- package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
- package/lib/cjs/geometry3d/AngleSweep.js +12 -3
- package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
- package/lib/cjs/geometry3d/FrameBuilder.d.ts +2 -1
- package/lib/cjs/geometry3d/FrameBuilder.d.ts.map +1 -1
- package/lib/cjs/geometry3d/FrameBuilder.js +14 -18
- package/lib/cjs/geometry3d/FrameBuilder.js.map +1 -1
- package/lib/cjs/geometry3d/Matrix3d.d.ts +1 -1
- package/lib/cjs/geometry3d/Matrix3d.js +1 -1
- package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
- package/lib/cjs/geometry3d/Point2dVector2d.d.ts +18 -2
- package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Point2dVector2d.js +37 -4
- package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
- package/lib/cjs/geometry3d/Point3dVector3d.d.ts +1 -1
- package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Point3dVector3d.js +1 -0
- package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
- package/lib/cjs/geometry3d/PointStreaming.d.ts +8 -0
- package/lib/cjs/geometry3d/PointStreaming.d.ts.map +1 -1
- package/lib/cjs/geometry3d/PointStreaming.js +18 -2
- package/lib/cjs/geometry3d/PointStreaming.js.map +1 -1
- package/lib/cjs/geometry3d/PolygonOps.d.ts +18 -9
- package/lib/cjs/geometry3d/PolygonOps.d.ts.map +1 -1
- package/lib/cjs/geometry3d/PolygonOps.js +53 -26
- package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts +8 -2
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js +10 -4
- package/lib/cjs/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
- package/lib/cjs/geometry3d/PolylineOps.d.ts +14 -3
- package/lib/cjs/geometry3d/PolylineOps.d.ts.map +1 -1
- package/lib/cjs/geometry3d/PolylineOps.js +20 -4
- package/lib/cjs/geometry3d/PolylineOps.js.map +1 -1
- package/lib/cjs/geometry3d/Range.d.ts +34 -32
- package/lib/cjs/geometry3d/Range.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Range.js +28 -21
- package/lib/cjs/geometry3d/Range.js.map +1 -1
- package/lib/cjs/geometry3d/Ray2d.d.ts +16 -6
- package/lib/cjs/geometry3d/Ray2d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Ray2d.js +28 -4
- package/lib/cjs/geometry3d/Ray2d.js.map +1 -1
- package/lib/cjs/geometry3d/Ray3d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Ray3d.js +3 -4
- package/lib/cjs/geometry3d/Ray3d.js.map +1 -1
- package/lib/cjs/geometry3d/Transform.d.ts +1 -1
- package/lib/cjs/geometry3d/Transform.js +1 -1
- package/lib/cjs/geometry3d/Transform.js.map +1 -1
- package/lib/cjs/geometry3d/XYZProps.d.ts +12 -1
- package/lib/cjs/geometry3d/XYZProps.d.ts.map +1 -1
- package/lib/cjs/geometry3d/XYZProps.js +17 -2
- package/lib/cjs/geometry3d/XYZProps.js.map +1 -1
- package/lib/cjs/geometry4d/Matrix4d.d.ts +16 -0
- package/lib/cjs/geometry4d/Matrix4d.d.ts.map +1 -1
- package/lib/cjs/geometry4d/Matrix4d.js +26 -0
- package/lib/cjs/geometry4d/Matrix4d.js.map +1 -1
- package/lib/cjs/numerics/BezierPolynomials.d.ts.map +1 -1
- package/lib/cjs/numerics/BezierPolynomials.js +5 -9
- package/lib/cjs/numerics/BezierPolynomials.js.map +1 -1
- package/lib/cjs/numerics/SmallSystem.d.ts +13 -7
- package/lib/cjs/numerics/SmallSystem.d.ts.map +1 -1
- package/lib/cjs/numerics/SmallSystem.js +13 -7
- package/lib/cjs/numerics/SmallSystem.js.map +1 -1
- package/lib/cjs/polyface/Polyface.d.ts +1 -3
- package/lib/cjs/polyface/Polyface.d.ts.map +1 -1
- package/lib/cjs/polyface/Polyface.js +2 -6
- package/lib/cjs/polyface/Polyface.js.map +1 -1
- package/lib/cjs/polyface/PolyfaceBuilder.d.ts +25 -6
- package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
- package/lib/cjs/polyface/PolyfaceBuilder.js +59 -8
- package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
- package/lib/cjs/polyface/PolyfaceData.d.ts +2 -0
- package/lib/cjs/polyface/PolyfaceData.d.ts.map +1 -1
- package/lib/cjs/polyface/PolyfaceData.js +7 -3
- package/lib/cjs/polyface/PolyfaceData.js.map +1 -1
- package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
- package/lib/cjs/polyface/PolyfaceQuery.js +8 -10
- package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
- package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts +8 -5
- package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts.map +1 -1
- package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js +8 -4
- package/lib/cjs/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
- package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts +3 -3
- package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts.map +1 -1
- package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js +1 -1
- package/lib/cjs/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
- package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts +4 -2
- package/lib/cjs/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
- package/lib/cjs/polyface/RangeTree/RangeTreeNode.js +9 -12
- package/lib/cjs/polyface/RangeTree/RangeTreeNode.js.map +1 -1
- package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.d.ts +8 -3
- package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.d.ts.map +1 -1
- package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js +13 -6
- package/lib/cjs/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
- package/lib/cjs/serialization/DeepCompare.js +1 -1
- package/lib/cjs/serialization/DeepCompare.js.map +1 -1
- package/lib/cjs/serialization/GeometrySamples.d.ts +2 -1
- package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
- package/lib/cjs/serialization/GeometrySamples.js +2 -1
- package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
- package/lib/cjs/topology/Graph.d.ts +38 -12
- package/lib/cjs/topology/Graph.d.ts.map +1 -1
- package/lib/cjs/topology/Graph.js +91 -23
- package/lib/cjs/topology/Graph.js.map +1 -1
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +5 -4
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -1
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +6 -5
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
- package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts +20 -11
- package/lib/cjs/topology/HalfEdgeGraphSearch.d.ts.map +1 -1
- package/lib/cjs/topology/HalfEdgeGraphSearch.js +43 -39
- package/lib/cjs/topology/HalfEdgeGraphSearch.js.map +1 -1
- package/lib/cjs/topology/Merging.d.ts +7 -4
- package/lib/cjs/topology/Merging.d.ts.map +1 -1
- package/lib/cjs/topology/Merging.js +16 -11
- package/lib/cjs/topology/Merging.js.map +1 -1
- package/lib/cjs/topology/Triangulation.d.ts +13 -11
- package/lib/cjs/topology/Triangulation.d.ts.map +1 -1
- package/lib/cjs/topology/Triangulation.js +40 -36
- package/lib/cjs/topology/Triangulation.js.map +1 -1
- package/lib/cjs/topology/Voronoi.d.ts +195 -0
- package/lib/cjs/topology/Voronoi.d.ts.map +1 -0
- package/lib/cjs/topology/Voronoi.js +700 -0
- package/lib/cjs/topology/Voronoi.js.map +1 -0
- package/lib/cjs/topology/XYParitySearchContext.d.ts +1 -1
- package/lib/cjs/topology/XYParitySearchContext.d.ts.map +1 -1
- package/lib/cjs/topology/XYParitySearchContext.js.map +1 -1
- package/lib/esm/Geometry.d.ts +30 -10
- package/lib/esm/Geometry.d.ts.map +1 -1
- package/lib/esm/Geometry.js +74 -10
- package/lib/esm/Geometry.js.map +1 -1
- package/lib/esm/bspline/AkimaCurve3d.d.ts +19 -6
- package/lib/esm/bspline/AkimaCurve3d.d.ts.map +1 -1
- package/lib/esm/bspline/AkimaCurve3d.js +21 -5
- package/lib/esm/bspline/AkimaCurve3d.js.map +1 -1
- package/lib/esm/bspline/BSplineCurve.d.ts +3 -3
- package/lib/esm/bspline/BSplineCurve.d.ts.map +1 -1
- package/lib/esm/bspline/BSplineCurve.js +6 -6
- package/lib/esm/bspline/BSplineCurve.js.map +1 -1
- package/lib/esm/bspline/BSplineCurveOps.d.ts.map +1 -1
- package/lib/esm/bspline/BSplineCurveOps.js +1 -1
- package/lib/esm/bspline/BSplineCurveOps.js.map +1 -1
- package/lib/esm/bspline/BezierCurveBase.d.ts +2 -2
- package/lib/esm/bspline/BezierCurveBase.d.ts.map +1 -1
- package/lib/esm/bspline/BezierCurveBase.js +4 -6
- package/lib/esm/bspline/BezierCurveBase.js.map +1 -1
- package/lib/esm/bspline/InterpolationCurve3d.d.ts +27 -17
- package/lib/esm/bspline/InterpolationCurve3d.d.ts.map +1 -1
- package/lib/esm/bspline/InterpolationCurve3d.js +17 -7
- package/lib/esm/bspline/InterpolationCurve3d.js.map +1 -1
- package/lib/esm/clipping/ClipPlane.d.ts +19 -6
- package/lib/esm/clipping/ClipPlane.d.ts.map +1 -1
- package/lib/esm/clipping/ClipPlane.js +17 -2
- package/lib/esm/clipping/ClipPlane.js.map +1 -1
- package/lib/esm/clipping/ClipUtils.d.ts +14 -1
- package/lib/esm/clipping/ClipUtils.d.ts.map +1 -1
- package/lib/esm/clipping/ClipUtils.js +21 -3
- package/lib/esm/clipping/ClipUtils.js.map +1 -1
- package/lib/esm/clipping/ConvexClipPlaneSet.d.ts +14 -11
- package/lib/esm/clipping/ConvexClipPlaneSet.d.ts.map +1 -1
- package/lib/esm/clipping/ConvexClipPlaneSet.js +23 -16
- package/lib/esm/clipping/ConvexClipPlaneSet.js.map +1 -1
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts +20 -3
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.d.ts.map +1 -1
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js +22 -5
- package/lib/esm/clipping/UnionOfConvexClipPlaneSets.js.map +1 -1
- package/lib/esm/curve/Arc3d.d.ts +27 -17
- package/lib/esm/curve/Arc3d.d.ts.map +1 -1
- package/lib/esm/curve/Arc3d.js +61 -35
- package/lib/esm/curve/Arc3d.js.map +1 -1
- package/lib/esm/curve/CurveCollection.d.ts +1 -0
- package/lib/esm/curve/CurveCollection.d.ts.map +1 -1
- package/lib/esm/curve/CurveCollection.js +1 -0
- package/lib/esm/curve/CurveCollection.js.map +1 -1
- package/lib/esm/curve/CurveLocationDetail.d.ts +8 -7
- package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -1
- package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
- package/lib/esm/curve/CurveOps.d.ts +51 -1
- package/lib/esm/curve/CurveOps.d.ts.map +1 -1
- package/lib/esm/curve/CurveOps.js +98 -4
- package/lib/esm/curve/CurveOps.js.map +1 -1
- package/lib/esm/curve/LineString3d.d.ts +4 -4
- package/lib/esm/curve/LineString3d.d.ts.map +1 -1
- package/lib/esm/curve/LineString3d.js +8 -8
- package/lib/esm/curve/LineString3d.js.map +1 -1
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js +3 -3
- package/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js.map +1 -1
- package/lib/esm/curve/Query/PlanarSubdivision.d.ts +6 -2
- package/lib/esm/curve/Query/PlanarSubdivision.d.ts.map +1 -1
- package/lib/esm/curve/Query/PlanarSubdivision.js +12 -7
- package/lib/esm/curve/Query/PlanarSubdivision.js.map +1 -1
- package/lib/esm/curve/RegionOps.d.ts +9 -4
- package/lib/esm/curve/RegionOps.d.ts.map +1 -1
- package/lib/esm/curve/RegionOps.js +10 -5
- package/lib/esm/curve/RegionOps.js.map +1 -1
- package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
- package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +2 -1
- package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
- package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts +4 -4
- package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
- package/lib/esm/curve/internalContexts/MultiChainCollector.js +21 -18
- package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -1
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +30 -50
- package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
- package/lib/esm/curve/spiral/DirectSpiral3d.d.ts +2 -2
- package/lib/esm/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
- package/lib/esm/curve/spiral/DirectSpiral3d.js +6 -2
- package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -1
- package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts +2 -2
- package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
- package/lib/esm/curve/spiral/IntegratedSpiral3d.js +6 -2
- package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -1
- package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts +5 -1
- package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
- package/lib/esm/curve/spiral/TransitionSpiral3d.js +0 -3
- package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -1
- package/lib/esm/geometry3d/AngleSweep.d.ts +6 -2
- package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
- package/lib/esm/geometry3d/AngleSweep.js +12 -3
- package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
- package/lib/esm/geometry3d/FrameBuilder.d.ts +2 -1
- package/lib/esm/geometry3d/FrameBuilder.d.ts.map +1 -1
- package/lib/esm/geometry3d/FrameBuilder.js +14 -18
- package/lib/esm/geometry3d/FrameBuilder.js.map +1 -1
- package/lib/esm/geometry3d/Matrix3d.d.ts +1 -1
- package/lib/esm/geometry3d/Matrix3d.js +1 -1
- package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
- package/lib/esm/geometry3d/Point2dVector2d.d.ts +18 -2
- package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Point2dVector2d.js +37 -4
- package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
- package/lib/esm/geometry3d/Point3dVector3d.d.ts +1 -1
- package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Point3dVector3d.js +1 -0
- package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
- package/lib/esm/geometry3d/PointStreaming.d.ts +8 -0
- package/lib/esm/geometry3d/PointStreaming.d.ts.map +1 -1
- package/lib/esm/geometry3d/PointStreaming.js +18 -2
- package/lib/esm/geometry3d/PointStreaming.js.map +1 -1
- package/lib/esm/geometry3d/PolygonOps.d.ts +18 -9
- package/lib/esm/geometry3d/PolygonOps.d.ts.map +1 -1
- package/lib/esm/geometry3d/PolygonOps.js +53 -26
- package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts +8 -2
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.d.ts.map +1 -1
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js +10 -4
- package/lib/esm/geometry3d/PolylineCompressionByEdgeOffset.js.map +1 -1
- package/lib/esm/geometry3d/PolylineOps.d.ts +14 -3
- package/lib/esm/geometry3d/PolylineOps.d.ts.map +1 -1
- package/lib/esm/geometry3d/PolylineOps.js +20 -4
- package/lib/esm/geometry3d/PolylineOps.js.map +1 -1
- package/lib/esm/geometry3d/Range.d.ts +34 -32
- package/lib/esm/geometry3d/Range.d.ts.map +1 -1
- package/lib/esm/geometry3d/Range.js +28 -21
- package/lib/esm/geometry3d/Range.js.map +1 -1
- package/lib/esm/geometry3d/Ray2d.d.ts +16 -6
- package/lib/esm/geometry3d/Ray2d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Ray2d.js +28 -4
- package/lib/esm/geometry3d/Ray2d.js.map +1 -1
- package/lib/esm/geometry3d/Ray3d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Ray3d.js +3 -4
- package/lib/esm/geometry3d/Ray3d.js.map +1 -1
- package/lib/esm/geometry3d/Transform.d.ts +1 -1
- package/lib/esm/geometry3d/Transform.js +1 -1
- package/lib/esm/geometry3d/Transform.js.map +1 -1
- package/lib/esm/geometry3d/XYZProps.d.ts +12 -1
- package/lib/esm/geometry3d/XYZProps.d.ts.map +1 -1
- package/lib/esm/geometry3d/XYZProps.js +16 -1
- package/lib/esm/geometry3d/XYZProps.js.map +1 -1
- package/lib/esm/geometry4d/Matrix4d.d.ts +16 -0
- package/lib/esm/geometry4d/Matrix4d.d.ts.map +1 -1
- package/lib/esm/geometry4d/Matrix4d.js +26 -0
- package/lib/esm/geometry4d/Matrix4d.js.map +1 -1
- package/lib/esm/numerics/BezierPolynomials.d.ts.map +1 -1
- package/lib/esm/numerics/BezierPolynomials.js +5 -9
- package/lib/esm/numerics/BezierPolynomials.js.map +1 -1
- package/lib/esm/numerics/SmallSystem.d.ts +13 -7
- package/lib/esm/numerics/SmallSystem.d.ts.map +1 -1
- package/lib/esm/numerics/SmallSystem.js +13 -7
- package/lib/esm/numerics/SmallSystem.js.map +1 -1
- package/lib/esm/polyface/Polyface.d.ts +1 -3
- package/lib/esm/polyface/Polyface.d.ts.map +1 -1
- package/lib/esm/polyface/Polyface.js +2 -6
- package/lib/esm/polyface/Polyface.js.map +1 -1
- package/lib/esm/polyface/PolyfaceBuilder.d.ts +25 -6
- package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
- package/lib/esm/polyface/PolyfaceBuilder.js +59 -8
- package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
- package/lib/esm/polyface/PolyfaceData.d.ts +2 -0
- package/lib/esm/polyface/PolyfaceData.d.ts.map +1 -1
- package/lib/esm/polyface/PolyfaceData.js +7 -3
- package/lib/esm/polyface/PolyfaceData.js.map +1 -1
- package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
- package/lib/esm/polyface/PolyfaceQuery.js +8 -10
- package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
- package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts +8 -5
- package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.d.ts.map +1 -1
- package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js +8 -4
- package/lib/esm/polyface/RangeTree/Point3dArrayRangeTreeContext.js.map +1 -1
- package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts +3 -3
- package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.d.ts.map +1 -1
- package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js +1 -1
- package/lib/esm/polyface/RangeTree/PolyfaceRangeTreeContext.js.map +1 -1
- package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts +4 -2
- package/lib/esm/polyface/RangeTree/RangeTreeNode.d.ts.map +1 -1
- package/lib/esm/polyface/RangeTree/RangeTreeNode.js +9 -12
- package/lib/esm/polyface/RangeTree/RangeTreeNode.js.map +1 -1
- package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.d.ts +8 -3
- package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.d.ts.map +1 -1
- package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js +13 -6
- package/lib/esm/polyface/RangeTree/RangeTreeSearchHandlers.js.map +1 -1
- package/lib/esm/serialization/DeepCompare.js +1 -1
- package/lib/esm/serialization/DeepCompare.js.map +1 -1
- package/lib/esm/serialization/GeometrySamples.d.ts +2 -1
- package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
- package/lib/esm/serialization/GeometrySamples.js +2 -1
- package/lib/esm/serialization/GeometrySamples.js.map +1 -1
- package/lib/esm/topology/Graph.d.ts +38 -12
- package/lib/esm/topology/Graph.d.ts.map +1 -1
- package/lib/esm/topology/Graph.js +92 -24
- package/lib/esm/topology/Graph.js.map +1 -1
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +5 -4
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -1
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +6 -5
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -1
- package/lib/esm/topology/HalfEdgeGraphSearch.d.ts +20 -11
- package/lib/esm/topology/HalfEdgeGraphSearch.d.ts.map +1 -1
- package/lib/esm/topology/HalfEdgeGraphSearch.js +43 -39
- package/lib/esm/topology/HalfEdgeGraphSearch.js.map +1 -1
- package/lib/esm/topology/Merging.d.ts +7 -4
- package/lib/esm/topology/Merging.d.ts.map +1 -1
- package/lib/esm/topology/Merging.js +17 -12
- package/lib/esm/topology/Merging.js.map +1 -1
- package/lib/esm/topology/Triangulation.d.ts +13 -11
- package/lib/esm/topology/Triangulation.d.ts.map +1 -1
- package/lib/esm/topology/Triangulation.js +40 -36
- package/lib/esm/topology/Triangulation.js.map +1 -1
- package/lib/esm/topology/Voronoi.d.ts +195 -0
- package/lib/esm/topology/Voronoi.d.ts.map +1 -0
- package/lib/esm/topology/Voronoi.js +696 -0
- package/lib/esm/topology/Voronoi.js.map +1 -0
- package/lib/esm/topology/XYParitySearchContext.d.ts +1 -1
- package/lib/esm/topology/XYParitySearchContext.d.ts.map +1 -1
- package/lib/esm/topology/XYParitySearchContext.js.map +1 -1
- package/package.json +3 -3
|
@@ -69,7 +69,7 @@ export type NodeToNumberFunction = (node: HalfEdge) => number;
|
|
|
69
69
|
*/
|
|
70
70
|
export type HalfEdgeToBooleanFunction = (node: HalfEdge) => boolean;
|
|
71
71
|
/**
|
|
72
|
-
* Function signature for function of a node and a mask, returning a
|
|
72
|
+
* Function signature for function of a node and a mask, returning a boolean.
|
|
73
73
|
* @internal
|
|
74
74
|
*/
|
|
75
75
|
export type HalfEdgeAndMaskToBooleanFunction = (node: HalfEdge, mask: HalfEdgeMask) => boolean;
|
|
@@ -159,8 +159,9 @@ export declare class HalfEdge implements HalfEdgeUserData {
|
|
|
159
159
|
get faceSuccessor(): HalfEdge;
|
|
160
160
|
/** Half edge on the other side of this edge. */
|
|
161
161
|
get edgeMate(): HalfEdge;
|
|
162
|
+
/** HalfEdge ids are sequentially assigned per session (not per graph!). */
|
|
162
163
|
private static _totalNodesCreated;
|
|
163
|
-
constructor(
|
|
164
|
+
private constructor();
|
|
164
165
|
/**
|
|
165
166
|
* Take numStep face steps and return y coordinate.
|
|
166
167
|
* * Positive steps are through faceSuccessor.
|
|
@@ -252,6 +253,11 @@ export declare class HalfEdge implements HalfEdgeUserData {
|
|
|
252
253
|
* @param mask mask bits to clear
|
|
253
254
|
*/
|
|
254
255
|
clearMask(mask: HalfEdgeMask): void;
|
|
256
|
+
/** Set or clear mask bits from this HalfEdge.
|
|
257
|
+
* @param mask mask bits
|
|
258
|
+
* @param clear whether to clear the mask. Default is false (set the mask).
|
|
259
|
+
*/
|
|
260
|
+
applyMask(mask: HalfEdgeMask, clear?: boolean): void;
|
|
255
261
|
/**
|
|
256
262
|
* Set a mask at all nodes around a vertex.
|
|
257
263
|
* @param mask mask to apply to the half edges around this HalfEdge's vertex loop.
|
|
@@ -363,15 +369,13 @@ export declare class HalfEdge implements HalfEdgeUserData {
|
|
|
363
369
|
static filterIsMaskOff(node: HalfEdge, mask: HalfEdgeMask): boolean;
|
|
364
370
|
/**
|
|
365
371
|
* Create an edge with initial id,x,y at each end.
|
|
366
|
-
* @param id0 id for first node.
|
|
367
372
|
* @param x0 x coordinate for first node.
|
|
368
373
|
* @param y0 y coordinate for first node.
|
|
369
|
-
* @param id1 id for second node.
|
|
370
374
|
* @param x1 x coordinate for second node.
|
|
371
375
|
* @param y1 y coordinate for second node.
|
|
372
376
|
* @returns the reference to the new node at (x0,y0).
|
|
373
377
|
*/
|
|
374
|
-
static createEdgeXYXY(
|
|
378
|
+
static createEdgeXYXY(x0: number, y0: number, x1: number, y1: number): HalfEdge;
|
|
375
379
|
/**
|
|
376
380
|
*"Pinch" is the universal operator for manipulating a node's next and previous pointers.
|
|
377
381
|
* * It is its own inverse: applying it twice on the same inputs (i.e., `pinch(a,b); pinch(a,b);`) gets back to
|
|
@@ -517,12 +521,12 @@ export declare class HalfEdge implements HalfEdgeUserData {
|
|
|
517
521
|
/**
|
|
518
522
|
* Announce edges in the super face loop, starting with the instance.
|
|
519
523
|
* * A super face admits a `faceSuccessor` traversal, where the next edge at the far vertex is the first one lacking `skipMask` in a `vertexPredecessor` traversal.
|
|
520
|
-
* @param
|
|
521
|
-
* @param announceEdge function
|
|
522
|
-
* @param announceSkipped optional function
|
|
523
|
-
* @return whether a super face was found
|
|
524
|
+
* @param skipEdge mask preset on edges to skip, or a function that is called to decide whether to skip an edge.
|
|
525
|
+
* @param announceEdge function that is called at each edge that is not skipped.
|
|
526
|
+
* @param announceSkipped optional function that is called at each edge that is skipped.
|
|
527
|
+
* @return whether a super face was found, or `false` if the traversal fails to return to the instance vertex.
|
|
524
528
|
*/
|
|
525
|
-
announceEdgesInSuperFace(
|
|
529
|
+
announceEdgesInSuperFace(skipEdge: HalfEdgeMask | HalfEdgeToBooleanFunction, announceEdge: NodeFunction, announceSkipped?: NodeFunction): boolean;
|
|
526
530
|
/**
|
|
527
531
|
* Evaluate `f(node)` at each node around `this` node's face loop. Collect the function values.
|
|
528
532
|
* @param f optional node function. If `undefined`, collect the nodes themselves.
|
|
@@ -543,6 +547,11 @@ export declare class HalfEdge implements HalfEdgeUserData {
|
|
|
543
547
|
* @returns the array of function values.
|
|
544
548
|
*/
|
|
545
549
|
collectAroundVertex(f?: NodeFunction): any[];
|
|
550
|
+
/**
|
|
551
|
+
* Announce edges in the vertex loop, starting with the instance and proceeding in a `vertexSuccessor` traversal.
|
|
552
|
+
* @param announceEdge function to call at each edge
|
|
553
|
+
*/
|
|
554
|
+
announceEdgesAroundVertex(announceEdge: NodeFunction): void;
|
|
546
555
|
/**
|
|
547
556
|
* Evaluate `f(node)` at each node around `this` node's face loop. Sum the function values.
|
|
548
557
|
* @param f node to number function.
|
|
@@ -662,7 +671,6 @@ export declare class HalfEdgeGraph {
|
|
|
662
671
|
/** Simple array with pointers to all the half edges in the graph. */
|
|
663
672
|
allHalfEdges: HalfEdge[];
|
|
664
673
|
private _maskManager;
|
|
665
|
-
private _numNodesCreated;
|
|
666
674
|
constructor();
|
|
667
675
|
/**
|
|
668
676
|
* Ask for a mask (from the graph's free pool) for caller's use.
|
|
@@ -747,9 +755,17 @@ export declare class HalfEdgeGraph {
|
|
|
747
755
|
decommission(): void;
|
|
748
756
|
/**
|
|
749
757
|
* Create two nodes of a new edge.
|
|
758
|
+
* @param x0 x-coordinate of the start node.
|
|
759
|
+
* @param y0 y-coordinate of the start node.
|
|
760
|
+
* @param x1 x-coordinate of the end node.
|
|
761
|
+
* @param y1 y-coordinate of the end node.
|
|
762
|
+
* @param edgeTag0 (optional) edge tag for the start node.
|
|
763
|
+
* @param edgeTag1 (optional) edge tag for the end node.
|
|
764
|
+
* @param faceTag0 (optional) face tag for the start node.
|
|
765
|
+
* @param faceTag1 (optional) face tag for the end node.
|
|
750
766
|
* @returns the reference to the new node at (x0,y0).
|
|
751
767
|
*/
|
|
752
|
-
addEdgeXY(x0: number, y0: number, x1: number, y1: number): HalfEdge;
|
|
768
|
+
addEdgeXY(x0: number, y0: number, x1: number, y1: number, edgeTag0?: number, edgeTag1?: number, faceTag0?: number, faceTag1?: number): HalfEdge;
|
|
753
769
|
/** Clear selected `mask` bits in all nodes of the graph. */
|
|
754
770
|
clearMask(mask: HalfEdgeMask): void;
|
|
755
771
|
/** Set selected `mask` bits in all nodes of the graph. */
|
|
@@ -826,5 +842,15 @@ export declare class HalfEdgeGraph {
|
|
|
826
842
|
* @return the number of nodes deleted (twice the number of deleted edges).
|
|
827
843
|
*/
|
|
828
844
|
deleteIsolatedEdges(): number;
|
|
845
|
+
/**
|
|
846
|
+
* Construct a map from id to vertex index.
|
|
847
|
+
* * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the vertex loop of `e`.
|
|
848
|
+
*/
|
|
849
|
+
constructIdToVertexIndexMap(): Map<number, number>;
|
|
850
|
+
/**
|
|
851
|
+
* Construct a map from id to face index.
|
|
852
|
+
* * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the face loop of `e`.
|
|
853
|
+
*/
|
|
854
|
+
constructIdToFaceIndexMap(): Map<number, number>;
|
|
829
855
|
}
|
|
830
856
|
//# sourceMappingURL=Graph.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/topology/Graph.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/topology/Graph.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAQvE;;;;;;;;;;;GAWG;AACH,oBAAY,YAAY;IACtB;;;;;MAKE;IAEF,QAAQ,IAAa;IACrB;;;;OAIG;IAEH,aAAa,IAAa;IAC1B;;;;;OAKG;IACH,YAAY,IAAa;IACzB,iFAAiF;IACjF,WAAW,IAAa;IACxB,2EAA2E;IAC3E,gBAAgB,KAAa;IAC7B,wDAAwD;IACxD,iBAAiB,MAAa;IAC9B,2CAA2C;IAC3C,SAAS,MAAa;IACtB,uFAAuF;IACvF,OAAO,QAAa;IACpB,oBAAoB;IACpB,SAAS,IAAa;IACtB,oEAAoE;IACpE,mBAAmB,aAAa;IAChC,oBAAoB;IACpB,QAAQ,aAAa;CACtB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,GAAG,CAAC;AACnD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,MAAM,CAAC;AAC9D;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC;AACpE;;;GAGG;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;AAC/F;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC;AAClF;;;;;GAKG;AACH,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AACD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,QAAS,YAAW,gBAAgB;IAC/C,sDAAsD;IAC/C,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACI,QAAQ,EAAE,MAAM,CAAC;IACxB,2BAA2B;IACpB,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B;IACpB,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B;IACpB,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC1B,oEAAoE;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACI,OAAO,CAAC,EAAE,GAAG,CAAC;IACrB;;;OAGG;IACI,OAAO,CAAC,EAAE,GAAG,CAAC;IACrB,OAAO,CAAC,GAAG,CAAS;IACpB,uFAAuF;IACvF,IAAW,EAAE,WAEZ;IACD,OAAO,CAAC,gBAAgB,CAAW;IACnC,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,SAAS,CAAW;IAC5B,2CAA2C;IAC3C,IAAW,eAAe,IAAI,QAAQ,CAErC;IACD,uCAAuC;IACvC,IAAW,aAAa,IAAI,QAAQ,CAEnC;IACD,gDAAgD;IAChD,IAAW,QAAQ,IAAI,QAAQ,CAE9B;IACD,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAK;IACtC,OAAO;IAmBP;;;;OAIG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAUzC;;;;;OAKG;WACW,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,GAAG,QAAQ;IAa3E;;;;;;OAMG;WACW,iCAAiC,CAC7C,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAC9D,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAAE,EAAE,EAAE,MAAM,YAAI,EAC9D,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,GAC9B,QAAQ;IAaX;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,kDAAkD;IAClD,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B;;;;;;;;;OASG;WACW,SAAS,CACrB,KAAK,EAAE,SAAS,GAAG,QAAQ,EAC3B,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,GAC9B,QAAQ;IA6BX;;;;;;;;;;OAUG;WACW,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAE,OAAc,GAAG,QAAQ,GAAG,SAAS;IAoB7F;;;;;;;;;OASG;WACW,yBAAyB,CACrC,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,GAC9B,QAAQ;IAiBX,0CAA0C;IAC1C,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAE/B;IACF;;;;OAIG;WACW,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAShF,yEAAyE;IACzE,IAAW,eAAe,IAAI,QAAQ,CAErC;IACD,wEAAwE;IACxE,IAAW,iBAAiB,IAAI,QAAQ,CAEvC;IACD;;;OAGG;IACI,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAGxC;;;OAGG;IACI,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAG1C;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAG1C;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAe,GAAG,IAAI;IAMlE;;;OAGG;IACI,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAQpD,8CAA8C;IACvC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAShE;;;OAGG;IACI,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAOlD;;;OAGG;IACI,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAIlD;;;OAGG;IACI,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAIpD,oDAAoD;IAC7C,oBAAoB,IAAI,MAAM;IASrC,4EAA4E;IACrE,gBAAgB,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IASjD,0EAA0E;IACnE,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAS/C;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,GAAG,OAAO;IAiB7E;;;;;OAKG;IACI,2BAA2B,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,GAAE,OAAe,GAAG,IAAI;IAapG,iDAAiD;IAC1C,sBAAsB,IAAI,MAAM;IASvC;;;;OAIG;IACI,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,GAAG,MAAM;IAkB7E;;;;OAIG;IACI,qBAAqB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,GAAG,MAAM;IAkB/E;;;;;;OAMG;IACI,oBAAoB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,EAAE,OAAO,GAAE,OAAe,GAAG,QAAQ,GAAG,SAAS;IAStH;;;;;OAKG;IACI,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,GAAG,QAAQ,GAAG,SAAS;IAS1F;;;;;OAKG;IACI,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,GAAG,QAAQ,GAAG,SAAS;IAQ1F;;;OAGG;IACI,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAKjD;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,QAAQ;IAKhC;;;OAGG;IACI,MAAM,CAAC,GAAG,EAAE,MAAM;IAKzB;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAG7C;;;;OAIG;WACW,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO;IAGzE;;;;OAIG;WACW,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO;IAG1E;;;;;;;OAOG;WACW,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ;IAOtF;;;;;;OAMG;WACW,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ;IAWpD,uDAAuD;IACvD,IAAW,UAAU,IAAI,OAAO,CAE/B;IACD;;;OAGG;IACI,kBAAkB,IAAI,QAAQ,GAAG,SAAS;IAQjD;;;OAGG;IACI,YAAY;IAKnB,kGAAkG;WACpF,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,GAAG;IAG7C,6DAA6D;WAC/C,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAG9C,uEAAuE;WACzD,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAGpD,4EAA4E;WAC9D,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,EAAE,CAAA;KAAE;IAGxF,sFAAsF;WACxE,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAItD,kFAAkF;WACpE,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAGvD;;;;OAIG;WACW,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAYtD,6CAA6C;WAC/B,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE;IAGhD,gFAAgF;IACzE,uBAAuB,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAG3D,qDAAqD;IAC9C,qBAAqB,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IASzD,qDAAqD;IAC9C,uBAAuB,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAS3D;;;;;;;;OAQG;WACW,qBAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,GAAG,OAAO;IAoCvF,iGAAiG;WACnF,uBAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAMnG,iGAAiG;WACnF,6BAA6B,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAM3H,8FAA8F;WAChF,wBAAwB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,MAAM;IAMjG;;;;;;;;;;;;OAYG;WACW,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,GAAE,MAAU,GAAG,OAAO;IAUnH;;;;;;;;;OASG;IACI,cAAc,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO;IAKtD;;;;;;;;OAQG;IACI,YAAY,CAAC,SAAS,GAAE,MAA4C,GAAG,OAAO;IAUrF,gFAAgF;IACzE,WAAW,IAAI,IAAI;IAK1B;;;OAGG;IACH,IAAW,cAAc,IAAI,OAAO,CAEnC;IACD,kGAAkG;IAC3F,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IASxC,yEAAyE;WAC3D,uBAAuB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAG9D,oEAAoE;WACtD,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAG3D;;;;OAIG;WACW,qBAAqB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM;IAU7E,8DAA8D;WAChD,sBAAsB,CAAC,IAAI,EAAE,QAAQ;IAGnD,kFAAkF;IAC3E,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO;IAGlD,yEAAyE;IAClE,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAG1C,0EAA0E;IACnE,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAG3C;;;;;;;OAOG;IACI,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE;IAa/G;;;OAGG;IACI,mBAAmB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAO5D;;;;;;;OAOG;IACI,wBAAwB,CAC7B,QAAQ,EAAE,YAAY,GAAG,yBAAyB,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC,EAAE,YAAY,GAC7G,OAAO;IA2BV;;;;OAIG;IACI,iBAAiB,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,GAAG,EAAE;IASjD;;;;;;OAMG;IACI,8BAA8B,CACnC,IAAI,EAAE,YAAY,EAAE,KAAK,GAAE,OAAc,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,GAC7D,QAAQ,EAAE;IAab;;;;OAIG;IACI,mBAAmB,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,GAAG,EAAE;IASnD;;;OAGG;IACI,yBAAyB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAOlE;;;;OAIG;IACI,aAAa,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM;IASrD;;;;OAIG;IACI,eAAe,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM;IASvD,0EAA0E;IACnE,mBAAmB,CAAC,IAAI,EAAE,YAAY;IAO7C,gFAAgF;IACzE,qBAAqB,CAAC,IAAI,EAAE,YAAY;IAO/C;;;;;OAKG;IACI,cAAc,IAAI,MAAM;IAkC/B;;;;OAIG;IACI,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAQrE;;;;OAIG;IACI,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IASrE;;;;;;OAMG;IACI,sCAAsC,CAC3C,aAAa,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GACrE,OAAO;IAUV,mDAAmD;IAC5C,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAG5C,mDAAmD;IAC5C,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO;IAG5C,8DAA8D;IACvD,oBAAoB,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAIxD,8DAA8D;IACvD,oBAAoB,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAIxD;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI5C;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI5C;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI5C;;;;;;;OAOG;WACW,+BAA+B,CAC3C,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,GACpD,QAAQ,GAAG,SAAS;IAkBvB;;;;;;OAMG;WACW,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ;IAW/F;;;;;;OAMG;WACW,wBAAwB,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAYtF;;;;;;;OAOG;IACI,YAAY,CACjB,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,GACxG,IAAI;IAaP;;;;;;OAMG;IACI,iBAAiB,CAAC,UAAU,GAAE,YAAuC,GAAG,OAAO;CAkBvF;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,qEAAqE;IAC9D,YAAY,EAAE,QAAQ,EAAE,CAAC;IAChC,OAAO,CAAC,YAAY,CAAc;;IAKlC;;;OAGG;IACI,QAAQ,CAAC,mBAAmB,GAAE,OAAc,GAAG,YAAY;IAOlE,sCAAsC;IAC/B,QAAQ,CAAC,IAAI,EAAE,YAAY;IAGlC;;;;;;OAMG;IACI,gBAAgB,CACrB,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAC9D,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,GAC7D,QAAQ;IAGX;;;;;;;;;OASG;IACI,cAAc,CAAC,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,GAAG,QAAQ;IAG/D;;;OAGG;IACI,qBAAqB,CAC1B,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,EAAE,EAAE,MAAM,YAAI,EACd,IAAI,EAAE,QAAQ,EACd,EAAE,GAAE,MAAU,GACb,QAAQ;IAOX;;;OAGG;IACI,0BAA0B,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,GAAE,MAAU,GAAG,QAAQ;IAU3G;;;;;;OAMG;IACI,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAKvF;;;;;;;;;OASG;IACI,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,QAAQ,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,EAAE,EAAE,GAAE,MAAU,GAAG,QAAQ;IAGtH;;;;;;;;;OASG;IACI,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAG1D;;;;;;;;OAQG;IACI,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAKtE;;;OAGG;IACI,YAAY;IAOnB;;;;;;;;;;;OAWG;IACI,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ;IAUtJ,4DAA4D;IACrD,SAAS,CAAC,IAAI,EAAE,YAAY;IAInC,0DAA0D;IACnD,OAAO,CAAC,IAAI,EAAE,YAAY;IAIjC,6DAA6D;IACtD,WAAW,CAAC,IAAI,EAAE,YAAY;IAIrC;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAO5C;;;;;OAKG;IACI,eAAe,IAAI,aAAa,EAAE;IAOzC,+DAA+D;IACxD,gBAAgB,IAAI,MAAM;IAUjC,6DAA6D;IACtD,cAAc,IAAI,MAAM;IAU/B,wFAAwF;IACjF,4BAA4B,CAAC,MAAM,EAAE,gCAAgC,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM;IAWzG,+FAA+F;IACxF,kBAAkB,IAAI,QAAQ,EAAE;IAUvC,6FAA6F;IACtF,gBAAgB,IAAI,QAAQ,EAAE;IAUrC;;;;;;OAMG;IACI,mBAAmB,CAAC,cAAc,EAAE,iBAAiB,GAAG,IAAI;IAUnE;;;;;;OAMG;IACI,iBAAiB,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAU/D;;;;;;;OAOG;IACI,aAAa,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAY3D;;;;;;OAMG;IACI,aAAa,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAM3D,+CAA+C;IACxC,UAAU,IAAI,MAAM;IAG3B,2DAA2D;IACpD,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAKnD;;;;OAIG;IACI,kBAAkB,CAAC,cAAc,EAAE,YAAY,GAAG,MAAM;IAc/D;;;OAGG;IACI,mBAAmB,IAAI,MAAM;IAapC;;;MAGE;IACK,2BAA2B,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAmBzD;;;MAGE;IACK,yBAAyB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAmBxD"}
|
|
@@ -138,9 +138,12 @@ class HalfEdge {
|
|
|
138
138
|
get edgeMate() {
|
|
139
139
|
return this._edgeMate;
|
|
140
140
|
}
|
|
141
|
+
/** HalfEdge ids are sequentially assigned per session (not per graph!). */
|
|
141
142
|
static _totalNodesCreated = 0;
|
|
142
143
|
constructor(x = 0, y = 0, z = 0, i = 0) {
|
|
143
144
|
this._id = HalfEdge._totalNodesCreated++;
|
|
145
|
+
if (!Number.isSafeInteger(HalfEdge._totalNodesCreated))
|
|
146
|
+
HalfEdge._totalNodesCreated = 0;
|
|
144
147
|
this.i = i;
|
|
145
148
|
this.maskBits = 0x00000000;
|
|
146
149
|
this.x = x;
|
|
@@ -370,6 +373,16 @@ class HalfEdge {
|
|
|
370
373
|
clearMask(mask) {
|
|
371
374
|
this.maskBits &= ~mask;
|
|
372
375
|
}
|
|
376
|
+
/** Set or clear mask bits from this HalfEdge.
|
|
377
|
+
* @param mask mask bits
|
|
378
|
+
* @param clear whether to clear the mask. Default is false (set the mask).
|
|
379
|
+
*/
|
|
380
|
+
applyMask(mask, clear = false) {
|
|
381
|
+
if (clear)
|
|
382
|
+
this.clearMask(mask);
|
|
383
|
+
else
|
|
384
|
+
this.setMask(mask);
|
|
385
|
+
}
|
|
373
386
|
/**
|
|
374
387
|
* Set a mask at all nodes around a vertex.
|
|
375
388
|
* @param mask mask to apply to the half edges around this HalfEdge's vertex loop.
|
|
@@ -645,21 +658,17 @@ class HalfEdge {
|
|
|
645
658
|
}
|
|
646
659
|
/**
|
|
647
660
|
* Create an edge with initial id,x,y at each end.
|
|
648
|
-
* @param id0 id for first node.
|
|
649
661
|
* @param x0 x coordinate for first node.
|
|
650
662
|
* @param y0 y coordinate for first node.
|
|
651
|
-
* @param id1 id for second node.
|
|
652
663
|
* @param x1 x coordinate for second node.
|
|
653
664
|
* @param y1 y coordinate for second node.
|
|
654
665
|
* @returns the reference to the new node at (x0,y0).
|
|
655
666
|
*/
|
|
656
|
-
static createEdgeXYXY(
|
|
667
|
+
static createEdgeXYXY(x0, y0, x1, y1) {
|
|
657
668
|
const node0 = new HalfEdge(x0, y0);
|
|
658
669
|
const node1 = new HalfEdge(x1, y1);
|
|
659
670
|
node0._faceSuccessor = node0._facePredecessor = node0._edgeMate = node1;
|
|
660
671
|
node1._faceSuccessor = node1._facePredecessor = node1._edgeMate = node0;
|
|
661
|
-
node0._id = id0;
|
|
662
|
-
node1._id = id1;
|
|
663
672
|
return node0;
|
|
664
673
|
}
|
|
665
674
|
/**
|
|
@@ -973,18 +982,19 @@ class HalfEdge {
|
|
|
973
982
|
/**
|
|
974
983
|
* Announce edges in the super face loop, starting with the instance.
|
|
975
984
|
* * A super face admits a `faceSuccessor` traversal, where the next edge at the far vertex is the first one lacking `skipMask` in a `vertexPredecessor` traversal.
|
|
976
|
-
* @param
|
|
977
|
-
* @param announceEdge function
|
|
978
|
-
* @param announceSkipped optional function
|
|
979
|
-
* @return whether a super face was found
|
|
985
|
+
* @param skipEdge mask preset on edges to skip, or a function that is called to decide whether to skip an edge.
|
|
986
|
+
* @param announceEdge function that is called at each edge that is not skipped.
|
|
987
|
+
* @param announceSkipped optional function that is called at each edge that is skipped.
|
|
988
|
+
* @return whether a super face was found, or `false` if the traversal fails to return to the instance vertex.
|
|
980
989
|
*/
|
|
981
|
-
announceEdgesInSuperFace(
|
|
982
|
-
const maxIter =
|
|
990
|
+
announceEdgesInSuperFace(skipEdge, announceEdge, announceSkipped) {
|
|
991
|
+
const maxIter = 10000; // safeguard against infinite loops
|
|
983
992
|
let iter = 0;
|
|
993
|
+
const mySkipEdge = skipEdge instanceof Function ? skipEdge : (he) => he.isMaskSet(skipEdge);
|
|
984
994
|
const findNextNodeAroundVertex = (he) => {
|
|
985
995
|
let vNode = he;
|
|
986
996
|
do {
|
|
987
|
-
if (!vNode
|
|
997
|
+
if (!mySkipEdge(vNode))
|
|
988
998
|
return vNode;
|
|
989
999
|
announceSkipped?.(vNode);
|
|
990
1000
|
vNode = vNode.vertexPredecessor;
|
|
@@ -1001,6 +1011,7 @@ class HalfEdge {
|
|
|
1001
1011
|
if (!node)
|
|
1002
1012
|
return false;
|
|
1003
1013
|
} while (node !== firstNode && iter++ < maxIter);
|
|
1014
|
+
(0, core_bentley_1.assert)(iter < maxIter, "Infinite loop detected in HalfEdge.announceEdgesInSuperFace");
|
|
1004
1015
|
return iter < maxIter;
|
|
1005
1016
|
}
|
|
1006
1017
|
/**
|
|
@@ -1051,6 +1062,17 @@ class HalfEdge {
|
|
|
1051
1062
|
} while (node !== this);
|
|
1052
1063
|
return nodes;
|
|
1053
1064
|
}
|
|
1065
|
+
/**
|
|
1066
|
+
* Announce edges in the vertex loop, starting with the instance and proceeding in a `vertexSuccessor` traversal.
|
|
1067
|
+
* @param announceEdge function to call at each edge
|
|
1068
|
+
*/
|
|
1069
|
+
announceEdgesAroundVertex(announceEdge) {
|
|
1070
|
+
let node = this;
|
|
1071
|
+
do {
|
|
1072
|
+
announceEdge(node);
|
|
1073
|
+
node = node.vertexSuccessor;
|
|
1074
|
+
} while (node !== this);
|
|
1075
|
+
}
|
|
1054
1076
|
/**
|
|
1055
1077
|
* Evaluate `f(node)` at each node around `this` node's face loop. Sum the function values.
|
|
1056
1078
|
* @param f node to number function.
|
|
@@ -1324,7 +1346,6 @@ class HalfEdgeGraph {
|
|
|
1324
1346
|
/** Simple array with pointers to all the half edges in the graph. */
|
|
1325
1347
|
allHalfEdges;
|
|
1326
1348
|
_maskManager;
|
|
1327
|
-
_numNodesCreated = 0;
|
|
1328
1349
|
constructor() {
|
|
1329
1350
|
this.allHalfEdges = [];
|
|
1330
1351
|
this._maskManager = MaskManager_1.MaskManager.create(HalfEdgeMask.ALL_GRAB_DROP_MASKS);
|
|
@@ -1451,13 +1472,24 @@ class HalfEdgeGraph {
|
|
|
1451
1472
|
}
|
|
1452
1473
|
/**
|
|
1453
1474
|
* Create two nodes of a new edge.
|
|
1475
|
+
* @param x0 x-coordinate of the start node.
|
|
1476
|
+
* @param y0 y-coordinate of the start node.
|
|
1477
|
+
* @param x1 x-coordinate of the end node.
|
|
1478
|
+
* @param y1 y-coordinate of the end node.
|
|
1479
|
+
* @param edgeTag0 (optional) edge tag for the start node.
|
|
1480
|
+
* @param edgeTag1 (optional) edge tag for the end node.
|
|
1481
|
+
* @param faceTag0 (optional) face tag for the start node.
|
|
1482
|
+
* @param faceTag1 (optional) face tag for the end node.
|
|
1454
1483
|
* @returns the reference to the new node at (x0,y0).
|
|
1455
1484
|
*/
|
|
1456
|
-
addEdgeXY(x0, y0, x1, y1) {
|
|
1457
|
-
const baseNode = HalfEdge.createEdgeXYXY(
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1485
|
+
addEdgeXY(x0, y0, x1, y1, edgeTag0, edgeTag1, faceTag0, faceTag1) {
|
|
1486
|
+
const baseNode = HalfEdge.createEdgeXYXY(x0, y0, x1, y1);
|
|
1487
|
+
const farNode = baseNode.faceSuccessor;
|
|
1488
|
+
baseNode.edgeTag = edgeTag0;
|
|
1489
|
+
baseNode.faceTag = faceTag0;
|
|
1490
|
+
farNode.edgeTag = edgeTag1;
|
|
1491
|
+
farNode.faceTag = faceTag1;
|
|
1492
|
+
this.allHalfEdges.push(baseNode, farNode);
|
|
1461
1493
|
return baseNode;
|
|
1462
1494
|
}
|
|
1463
1495
|
/** Clear selected `mask` bits in all nodes of the graph. */
|
|
@@ -1472,9 +1504,8 @@ class HalfEdgeGraph {
|
|
|
1472
1504
|
}
|
|
1473
1505
|
/** Toggle selected `mask` bits in all nodes of the graph. */
|
|
1474
1506
|
reverseMask(mask) {
|
|
1475
|
-
for (const node of this.allHalfEdges)
|
|
1507
|
+
for (const node of this.allHalfEdges)
|
|
1476
1508
|
node.maskBits ^= mask;
|
|
1477
|
-
}
|
|
1478
1509
|
}
|
|
1479
1510
|
/**
|
|
1480
1511
|
* Return the number of nodes that have a specified mask bit set.
|
|
@@ -1495,10 +1526,9 @@ class HalfEdgeGraph {
|
|
|
1495
1526
|
*/
|
|
1496
1527
|
collectSegments() {
|
|
1497
1528
|
const segments = [];
|
|
1498
|
-
for (const node of this.allHalfEdges)
|
|
1529
|
+
for (const node of this.allHalfEdges)
|
|
1499
1530
|
if (node.id < node.edgeMate.id)
|
|
1500
|
-
segments.push(LineSegment3d_1.LineSegment3d.
|
|
1501
|
-
}
|
|
1531
|
+
segments.push(LineSegment3d_1.LineSegment3d.createXYXY(node.x, node.y, node.faceSuccessor.x, node.faceSuccessor.y));
|
|
1502
1532
|
return segments;
|
|
1503
1533
|
}
|
|
1504
1534
|
/** Returns the number of vertex loops in a graph structure. */
|
|
@@ -1660,6 +1690,44 @@ class HalfEdgeGraph {
|
|
|
1660
1690
|
this.allHalfEdges.length = numAccepted;
|
|
1661
1691
|
return numDeleted;
|
|
1662
1692
|
}
|
|
1693
|
+
/**
|
|
1694
|
+
* Construct a map from id to vertex index.
|
|
1695
|
+
* * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the vertex loop of `e`.
|
|
1696
|
+
*/
|
|
1697
|
+
constructIdToVertexIndexMap() {
|
|
1698
|
+
const idToIndexMap = new Map();
|
|
1699
|
+
this.allHalfEdges.forEach((e, i) => idToIndexMap.set(e.id, i));
|
|
1700
|
+
this.announceVertexLoops((_g, vertex) => {
|
|
1701
|
+
let minIndex = this.allHalfEdges.length;
|
|
1702
|
+
vertex.announceEdgesAroundVertex((e) => {
|
|
1703
|
+
const index = idToIndexMap.get(e.id);
|
|
1704
|
+
if (index !== undefined && index < minIndex)
|
|
1705
|
+
minIndex = index;
|
|
1706
|
+
});
|
|
1707
|
+
vertex.announceEdgesAroundVertex((e) => idToIndexMap.set(e.id, minIndex));
|
|
1708
|
+
return true;
|
|
1709
|
+
});
|
|
1710
|
+
return idToIndexMap;
|
|
1711
|
+
}
|
|
1712
|
+
/**
|
|
1713
|
+
* Construct a map from id to face index.
|
|
1714
|
+
* * For a given HalfEdge `e`, the key is `e.id` and the value is the minimum index in `graph.allHalfEdges` of all edges in the face loop of `e`.
|
|
1715
|
+
*/
|
|
1716
|
+
constructIdToFaceIndexMap() {
|
|
1717
|
+
const idToIndexMap = new Map();
|
|
1718
|
+
this.allHalfEdges.forEach((e, i) => idToIndexMap.set(e.id, i));
|
|
1719
|
+
this.announceFaceLoops((_g, face) => {
|
|
1720
|
+
let minIndex = this.allHalfEdges.length;
|
|
1721
|
+
face.announceEdgesInFace((e) => {
|
|
1722
|
+
const index = idToIndexMap.get(e.id);
|
|
1723
|
+
if (index !== undefined && index < minIndex)
|
|
1724
|
+
minIndex = index;
|
|
1725
|
+
});
|
|
1726
|
+
face.announceEdgesInFace((e) => idToIndexMap.set(e.id, minIndex));
|
|
1727
|
+
return true;
|
|
1728
|
+
});
|
|
1729
|
+
return idToIndexMap;
|
|
1730
|
+
}
|
|
1663
1731
|
}
|
|
1664
1732
|
exports.HalfEdgeGraph = HalfEdgeGraph;
|
|
1665
1733
|
//# sourceMappingURL=Graph.js.map
|