Exact engine defaults to --grid-resolution 2

Resolution 2 reaches 0.5 mm pitch pins and cut unconnected items on both
rc4 boards; since lazy via checks it costs about 2x in time, not 4x.
The grid engine keeps 1, the old grid exactly.
This commit is contained in:
2026-09-27 12:00:19 -06:00
parent 19b17378fa
commit c49c79604d
+6 -5
View File
@@ -113,10 +113,10 @@ def build_parser() -> argparse.ArgumentParser:
parser.add_argument(
"--grid-resolution",
type=int,
default=1,
default=None,
metavar="K",
help="grid and exact engines: cells K times finer than trace + clearance "
"(default 1); 2 or more reaches fine-pitch pins, at some cost in time",
help="grid and exact engines: cells K times finer than trace + clearance; "
"default 2 for exact (reaches 0.5 mm pitch pins), 1 for grid",
)
parser.add_argument(
"--heuristic-weight",
@@ -182,7 +182,7 @@ def main(argv: list[str] | None = None) -> int:
rip_up=rip_up,
max_passes=max_passes,
edge_clearance_mm=args.edge_clearance,
resolution=args.grid_resolution,
resolution=2 if args.grid_resolution is None else args.grid_resolution,
heuristic_weight=args.heuristic_weight,
)
elif args.engine == "room":
@@ -193,7 +193,8 @@ def main(argv: list[str] | None = None) -> int:
else:
result = build_routing_result(
dsn, layers=layers, rip_up=rip_up, max_passes=max_passes,
edge_clearance_mm=args.edge_clearance, resolution=args.grid_resolution,
edge_clearance_mm=args.edge_clearance,
resolution=1 if args.grid_resolution is None else args.grid_resolution,
)
ses_text = write_ses(dsn, result)