skidl.arrange module

Arrange part units for best schematic wiring.

class skidl.arrange.Arranger(circuit, grid_hgt=3, grid_wid=3)[source]

Bases: object

apply()[source]

Apply an assignment stored in regions to parts.

arrange_kl()[source]

Optimally arrange the parts across regions using Kernighan-Lin.

arrange_randomly()[source]

Arrange the parts randomly across the regions.

clear()[source]

Clear the parts from the regions.

cost()[source]

Compute the cost of the arrangement of parts to regions.

expand_grid(mul_hgt, mul_wid)[source]

Expand the number of rows/columns in the grid of regions.

prearranged()[source]

Apply the (x,y) position of parts to update the regions.

class skidl.arrange.PartNet(net)[source]

Bases: object

Stores the parts attached to a particular net.

calc_bbox()[source]
cost(regions)[source]
class skidl.arrange.Region(x, y)[source]

Bases: skidl.coord.Point

Stores an (x,y) coord and a list of the parts stored within it.

add(part)[source]
clear()[source]
cost()[source]
rmv(part)[source]