common/collision/strategies/helpers
library
Functions
-
bestSlotCenterDistanceRatio(Rect rect, List<Rect> slots)
→ double
-
-
bestSlotClearance(Rect rect, List<Rect> slots)
→ double
-
-
candidateAlignmentOffsets({required Offset anchorPx, required Size size, required Alignment currentAlignment, required EdgeInsets margin, required bool rotate, required double mapRotationRad})
→ List<Offset>
-
-
clampRadius(Offset o, double maxR)
→ Offset
-
-
computeSlots(Rect anchorRect, double anchorPad, double maxRadius)
→ List<Rect>
-
-
connectorEntryPoint(Rect rect, Offset anchor)
→ Offset
-
-
connectorObstaclePenalty(Offset start, Offset end, List<Rect> obstacles, {double avoidDistance = 10.0, double intersectWeight = 160.0, double proximityWeight = 24.0})
→ double
-
-
dirOrFallback(Offset prev, Offset outward)
→ Offset
-
-
fans(Offset outward, double step, double maxR)
→ Iterable<Offset>
-
-
goldenSpiral({required double step, required double maxR, double? startAngle})
→ Iterable<Offset>
-
Golden spiral sampling with good angular distribution.
-
insideSlotsOrMostly(Rect cand, List<Rect> slots, {double minCover = 0.95})
→ bool
-
-
overlapsAnySlot(Rect cand, List<Rect> slots)
→ bool
-
-
placementScore({required Offset candidate, required Offset previous, required Offset outward, Offset? connectorStart, Offset? connectorEnd, Rect? candidateRect, List<Rect> slots = const [], List<Rect> obstacles = const [], double previousWeight = 0.65, double originWeight = 0.2, double directionWeight = 16.0, double lengthWeight = 0.18, double clearanceWeight = 8.0, double coverageWeight = 16.0, double slotCenterWeight = 18.0, double connectorIntersectWeight = 160.0, double connectorProximityWeight = 24.0, double connectorAvoidDistance = 10.0})
→ double
-
-
ring(int k, double step)
→ Iterable<Offset>
-
-
rot(Offset v, double a)
→ Offset
-
-
screenPriority<T>(CollisionNode<T> node, Offset viewCenter, MapCamera cam)
→ int
-
-
segmentDistanceToRect(Offset a, Offset b, Rect rect)
→ double
-
-
segmentIntersectsRect(Offset a, Offset b, Rect rect)
→ bool
-
-
slotCoverageRatio(Rect rect, List<Rect> slots)
→ double
-
-
sortSlotsByDir(List<Rect> slots, Offset anchorPx, Offset dir)
→ List<Rect>
-