Skip to content

Commit

Permalink
Improve documentation regarding GUI
Browse files Browse the repository at this point in the history
  • Loading branch information
yaqwsx committed Jan 3, 2022
1 parent 48d7dea commit eed67f7
Show file tree
Hide file tree
Showing 6 changed files with 58 additions and 20 deletions.
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ tasks in a standard KiCAD workflow like:

## Do You Enjoy KiKit or Does It Save You Time?

Then definitely consider [**supporting me on GitHub
Sponsors**](https://github.com/sponsors/yaqwsx) or buy me a coffee:

[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E2181LU)
Then definitely consider:
- [**supporting me on GitHub Sponsors**](https://github.com/sponsors/yaqwsx)
- or become my [Patreon](https://patreon.com/yaqwsx),
- or buy me a coffee: [![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E2181LU)

Your support will allow me to allocate time to properly maintain my projects
like this.
Expand All @@ -39,6 +39,8 @@ therefore, you can install it via pip:
pip3 install kikit
```

Then you can install the Pcbnew action plugins via KiCAD's PCM.

For more detailed instructions with steps to enable GUI plugins, please see the
[installation guide](doc/installation.md).

Expand Down
30 changes: 15 additions & 15 deletions doc/panelization.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,9 @@ include components sticking out of the board outline, you can specify tolerance

#### `appendBoard`
```
appendBoard(self, filename, destination, sourceArea=None, origin=Origin.Center,
rotationAngle=0, shrink=False, tolerance=0, bufferOutline=1000,
netRenamer=None, refRenamer=None, inheritDrc=True,
appendBoard(self, filename, destination, sourceArea=None, origin=Origin.Center,
rotationAngle=0, shrink=False, tolerance=0, bufferOutline=1000,
netRenamer=None, refRenamer=None, inheritDrc=True,
interpretAnnotations=True)
```

Expand All @@ -103,7 +103,7 @@ None

#### `addCornerFiducials`
```
addCornerFiducials(self, fidCount, horizontalOffset, verticalOffset,
addCornerFiducials(self, fidCount, horizontalOffset, verticalOffset,
copperDiameter, openingDiameter)
```
Add up to 4 fiducials to the top-left, top-right, bottom-left and
Expand All @@ -120,7 +120,7 @@ None

#### `addCornerTooling`
```
addCornerTooling(self, holeCount, horizontalOffset, verticalOffset, diameter,
addCornerTooling(self, holeCount, horizontalOffset, verticalOffset, diameter,
paste=False)
```
Add up to 4 tooling holes to the top-left, top-right, bottom-left and
Expand Down Expand Up @@ -166,9 +166,9 @@ diameter. The paste option allows to place the hole on the paste layers.

#### `addText`
```
addText(self, text, position, orientation=0, width=1500000, height=1500000,
thickness=300000, hJustify=EDA_TEXT_HJUSTIFY_T.GR_TEXT_HJUSTIFY_CENTER,
vJustify=EDA_TEXT_VJUSTIFY_T.GR_TEXT_VJUSTIFY_CENTER,
addText(self, text, position, orientation=0, width=1500000, height=1500000,
thickness=300000, hJustify=EDA_TEXT_HJUSTIFY_T.GR_TEXT_HJUSTIFY_CENTER,
vJustify=EDA_TEXT_VJUSTIFY_T.GR_TEXT_VJUSTIFY_CENTER,
layer=Layer.F_SilkS)
```
Add text at given position to the panel. If appending to the bottom
Expand All @@ -188,9 +188,9 @@ Adds a horizontal V-CUT at pos (integer in KiCAD units).

#### `appendBoard`
```
appendBoard(self, filename, destination, sourceArea=None, origin=Origin.Center,
rotationAngle=0, shrink=False, tolerance=0, bufferOutline=1000,
netRenamer=None, refRenamer=None, inheritDrc=True,
appendBoard(self, filename, destination, sourceArea=None, origin=Origin.Center,
rotationAngle=0, shrink=False, tolerance=0, bufferOutline=1000,
netRenamer=None, refRenamer=None, inheritDrc=True,
interpretAnnotations=True)
```
Appends a board to the panel.
Expand Down Expand Up @@ -256,7 +256,7 @@ Add tab annotations to the corners of the individual substrates.

#### `buildTabAnnotationsFixed`
```
buildTabAnnotationsFixed(self, hcount, vcount, hwidth, vwidth, minDistance,
buildTabAnnotationsFixed(self, hcount, vcount, hwidth, vwidth, minDistance,
ghostSubstrates)
```
Add tab annotations for the individual substrates based on number of
Expand Down Expand Up @@ -372,9 +372,9 @@ Generate vertical cuts for the frame corners and return them

#### `makeGrid`
```
makeGrid(self, boardfile, sourceArea, rows, cols, destination, verSpace,
horSpace, rotation,
placementClass=<class 'kikit.panelize.BasicGridPosition'>,
makeGrid(self, boardfile, sourceArea, rows, cols, destination, verSpace,
horSpace, rotation,
placementClass=<class 'kikit.panelize.BasicGridPosition'>,
netRenamePattern=Board_{n}-{orig}, refRenamePattern=Board_{n}-{orig})
```
Place the given board in a regular grid pattern with given spacing
Expand Down
5 changes: 4 additions & 1 deletion doc/panelizeCli.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ structure. The configuration contains several categories (e.g., `layout`,
(e.g., `tabsCount`). All categories and their parameters are described further
below.

Note that you can use the [pcbnew action plugin](panelizeGui.md) to
interactively construct the panelization configuration structure.

# Configurations

The configuration can be supplied to KiKit via a JSON file with comments and
Expand Down Expand Up @@ -45,7 +48,7 @@ following
"type": "auto",
"millradius": "0mm",
"copperfill": false
}
}
}
```

Expand Down
33 changes: 33 additions & 0 deletions doc/panelizeGui.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Panelization GUI

The panelization feature of KiKit is also available via GUI in the KiCAD's PCB
editor (Pcbnew). The main use-case for the GUI is to quickly construct the
desired KiKit command and fine-tune the panel. It also serves as a quick help in
case you are not sure about parameter naming.

The GUI is designed to be run in a standalone instance of Pcbnew (not executed
from a project) as the generated panel replaces the currently open board.

You can invoke the GUI via clicking on the panelization icon:

![Pcbnew toolbar with the icon](resources/panelizeToolbar.png)

Then the following window will open:

![Panelization plugin Window](resources/panelizeWindow.png)

There are three parts of the window:

- the left column where you can edit individual parameter sections. These
sections are in 1:1 correspondence to the panelization CLI. For the help on
their meaning please refer to [CLI documentation](panelizeCli.md)
- the right column with:
- the constructed KiKit command (that you can put into your Makefile)
- the constructed JSON preset that you can save and later use.

Note that both, the command and JSON preset, does not include a parameter if it
is the same with the default, built-in, preset.

Once you are happy with the parameters, you can click the "Panelize" button and
the panel will appear in the Pcbnew work area. You can then edit the parameters
and regenerate the panel.
Binary file added doc/resources/panelizeToolbar.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/resources/panelizeWindow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit eed67f7

Please sign in to comment.