@tscircuit/capacity-autorouter 0.0.779 → 0.0.780

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/dist/index.d.ts CHANGED
@@ -2454,8 +2454,8 @@ type Phase$1 = "via_removal" | "crossing_via_reduction" | "via_merging" | "path_
2454
2454
  /**
2455
2455
  * TraceSimplificationSolver consolidates trace optimization by iteratively applying
2456
2456
  * via removal, crossing via reduction, via merging, and path simplification
2457
- * phases. It reduces redundant vias and simplifies routing paths through
2458
- * configurable iterations.
2457
+ * phases. The second via-removal pass can route short local detours around
2458
+ * blocking pads while removing a via pair.
2459
2459
  *
2460
2460
  * The solver operates in four alternating phases per iteration:
2461
2461
  * 1. "via_removal" - Removes unnecessary vias from routes using UselessViaRemovalSolver
@@ -6589,7 +6589,9 @@ declare class SingleRouteUselessViaRemovalSolver extends BaseSolver {
6589
6589
  OBSTACLE_MARGIN: number;
6590
6590
  GEOMETRY_SHORTCUT_TRACE_MARGIN: number;
6591
6591
  GEOMETRY_SHORTCUT_OBSTACLE_MARGIN: number;
6592
+ MAX_GEOMETRY_SHORTCUT_ADDED_LENGTH: number;
6592
6593
  ENABLE_GEOMETRY_SHORTCUTS: boolean;
6594
+ ENABLE_OBSTACLE_DETOUR_SHORTCUTS: boolean;
6593
6595
  geometryShortcutsApplied: number;
6594
6596
  multilayerSectionsCollapsed: number;
6595
6597
  constructor(params: {
@@ -6604,10 +6606,14 @@ declare class SingleRouteUselessViaRemovalSolver extends BaseSolver {
6604
6606
  geometryShortcutTraceMargin?: number;
6605
6607
  geometryShortcutObstacleMargin?: number;
6606
6608
  enableGeometryShortcuts?: boolean;
6609
+ enableObstacleDetourShortcuts?: boolean;
6607
6610
  });
6608
6611
  private getPathLength;
6609
6612
  private normalizeShortcutPath;
6610
6613
  private shortcutCrossesOutline;
6614
+ private getObstacleDetourPaths;
6615
+ private getDirectGeometryShortcut;
6616
+ private getObstacleDetourShortcut;
6611
6617
  private findGeometryShortcut;
6612
6618
  private applyGeometryShortcut;
6613
6619
  private findMultilayerSectionCollapse;
@@ -6625,6 +6631,7 @@ declare class SingleRouteUselessViaRemovalSolver extends BaseSolver {
6625
6631
  geometryShortcutTraceMargin: number;
6626
6632
  geometryShortcutObstacleMargin: number;
6627
6633
  enableGeometryShortcuts: boolean;
6634
+ enableObstacleDetourShortcuts: boolean;
6628
6635
  };
6629
6636
  getOptimizedHdRoute(): HighDensityRoute;
6630
6637
  visualize(): GraphicsObject;
@@ -6645,6 +6652,7 @@ interface UselessViaRemovalSolverInput {
6645
6652
  geometryShortcutTraceMargin?: number;
6646
6653
  geometryShortcutObstacleMargin?: number;
6647
6654
  enableGeometryShortcuts?: boolean;
6655
+ enableObstacleDetourShortcuts?: boolean;
6648
6656
  }
6649
6657
  declare class UselessViaRemovalSolver extends BaseSolver {
6650
6658
  private input;