@tscircuit/capacity-autorouter 0.0.721 → 0.0.723
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/README.md +5 -0
- package/dist/index.d.ts +8 -3
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -60,6 +60,7 @@ interface SimpleRouteJson {
|
|
|
60
60
|
obstacles: Obstacle[]
|
|
61
61
|
connections: Array<SimpleRouteConnection>
|
|
62
62
|
buses?: Array<SimpleRouteBus>
|
|
63
|
+
allowViaInPad?: boolean
|
|
63
64
|
bounds: { minX: number; maxX: number; minY: number; maxY: number }
|
|
64
65
|
traces?: SimplifiedPcbTraces // Optional for input
|
|
65
66
|
}
|
|
@@ -92,6 +93,10 @@ interface SimpleRouteBus {
|
|
|
92
93
|
bus. Bus metadata is preserved in the output so routing implementations can
|
|
93
94
|
apply the constraint without losing the original membership or ordering.
|
|
94
95
|
|
|
96
|
+
Via-in-pad repair is disabled by default because it generally requires filled
|
|
97
|
+
and capped vias. Set `allowViaInPad: true` only when the fabrication process
|
|
98
|
+
supports it.
|
|
99
|
+
|
|
95
100
|
### Output Format
|
|
96
101
|
|
|
97
102
|
The `getOutputSimpleRouteJson()` method returns the original `SimpleRouteJson` with a populated `traces` property. The traces are represented as `SimplifiedPcbTraces`:
|
package/dist/index.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export { DrcError, DrcEvaluator, DrcSnapshot, GlobalDrcBranchPortfolioSolver, Gl
|
|
|
15
15
|
import { DatasetSample, HighDensityRepairSolver } from 'high-density-repair02';
|
|
16
16
|
import { LayerMergeMode, ConvexRegionsComputeResult, SerializedPolyHyperGraph } from 'pcb-poly-hyper-graph';
|
|
17
17
|
import { PolyHyperGraphLoadResult, PolyHyperGraphSolver } from 'tiny-hypergraph-poly/lib/index';
|
|
18
|
-
import {
|
|
18
|
+
import { PostProcessingSolver } from '@tscircuit/length-matching-solver';
|
|
19
19
|
|
|
20
20
|
interface CacheProvider {
|
|
21
21
|
isSyncCache: boolean;
|
|
@@ -111,6 +111,11 @@ interface SimpleRouteJson {
|
|
|
111
111
|
connections: Array<SimpleRouteConnection>;
|
|
112
112
|
differentialPairs?: Array<DifferentialPair>;
|
|
113
113
|
buses?: Array<SimpleRouteBus>;
|
|
114
|
+
/**
|
|
115
|
+
* Allows DRC repair to place layer transitions inside connected pads.
|
|
116
|
+
* Defaults to false because via-in-pad generally requires filled and capped vias.
|
|
117
|
+
*/
|
|
118
|
+
allowViaInPad?: boolean;
|
|
114
119
|
bounds: {
|
|
115
120
|
minX: number;
|
|
116
121
|
maxX: number;
|
|
@@ -5796,7 +5801,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
|
|
|
5796
5801
|
strawSolver?: StrawSolver;
|
|
5797
5802
|
deadEndSolver?: DeadEndSolver;
|
|
5798
5803
|
traceSimplificationSolver?: TraceSimplificationSolver;
|
|
5799
|
-
|
|
5804
|
+
postProcessingSolver?: PostProcessingSolver;
|
|
5800
5805
|
availableSegmentPointSolver?: AvailableSegmentPointSolver;
|
|
5801
5806
|
portPointPathingSolver?: TinyHypergraphPortPointPathingSolver;
|
|
5802
5807
|
multiSectionPortPointOptimizer?: MultiSectionPortPointOptimizer;
|
|
@@ -5826,7 +5831,7 @@ declare class AutoroutingPipelineSolver7_MultiGraph extends BaseSolver {
|
|
|
5826
5831
|
sharedEdgeSegmentsWithNecessaryCrampedPortPoints?: SharedEdgeSegment[];
|
|
5827
5832
|
highDensityNodePortPoints?: NodeWithPortPoints[];
|
|
5828
5833
|
cacheProvider: CacheProvider | null;
|
|
5829
|
-
pipelineDef: (PipelineStep$2<typeof PreprocessSimpleRouteJsonSolver$1> | PipelineStep$2<typeof ComponentDetectionSolver> | PipelineStep$2<typeof EscapeViaLocationSolver> | PipelineStep$2<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$2<typeof MultiGraphTopologyPlannerSolver> | PipelineStep$2<typeof TopologyMergingSolver> | PipelineStep$2<typeof NodeDimensionSubdivisionSolver> | PipelineStep$2<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$2<typeof AvailableSegmentPointSolver> | PipelineStep$2<typeof MultiTargetNecessaryCrampedPortPointSolver> | PipelineStep$2<typeof TinyHypergraphPortPointPathingSolver> | PipelineStep$2<typeof UniformPortDistributionSolver> | PipelineStep$2<typeof HighDensitySolver> | PipelineStep$2<typeof HighDensityForceImproveSolver> | PipelineStep$2<typeof Pipeline4HighDensityRepairSolver> | PipelineStep$2<typeof MultipleHighDensityRouteStitchSolver3> | PipelineStep$2<typeof TraceSimplificationSolver> | PipelineStep$2<typeof
|
|
5834
|
+
pipelineDef: (PipelineStep$2<typeof PreprocessSimpleRouteJsonSolver$1> | PipelineStep$2<typeof ComponentDetectionSolver> | PipelineStep$2<typeof EscapeViaLocationSolver> | PipelineStep$2<typeof NetToPointPairsSolver2_OffBoardConnection> | PipelineStep$2<typeof MultiGraphTopologyPlannerSolver> | PipelineStep$2<typeof TopologyMergingSolver> | PipelineStep$2<typeof NodeDimensionSubdivisionSolver> | PipelineStep$2<typeof CapacityMeshEdgeSolver2_NodeTreeOptimization> | PipelineStep$2<typeof AvailableSegmentPointSolver> | PipelineStep$2<typeof MultiTargetNecessaryCrampedPortPointSolver> | PipelineStep$2<typeof TinyHypergraphPortPointPathingSolver> | PipelineStep$2<typeof UniformPortDistributionSolver> | PipelineStep$2<typeof HighDensitySolver> | PipelineStep$2<typeof HighDensityForceImproveSolver> | PipelineStep$2<typeof Pipeline4HighDensityRepairSolver> | PipelineStep$2<typeof MultipleHighDensityRouteStitchSolver3> | PipelineStep$2<typeof TraceSimplificationSolver> | PipelineStep$2<typeof TraceWidthSolver> | PipelineStep$2<typeof GlobalDrcForceImproveSolver> | PipelineStep$2<typeof GlobalDrcBranchPortfolioSolver> | PipelineStep$2<typeof PostProcessingSolver>)[];
|
|
5830
5835
|
constructor(srj: SimpleRouteJson, opts?: CapacityMeshSolverOptions$2);
|
|
5831
5836
|
private setSimpleRouteJson;
|
|
5832
5837
|
getConstructorParams(): readonly [SimpleRouteJson, CapacityMeshSolverOptions$2];
|