diff options
author | opiopan <opiopan@gmail.com> | 2019-03-21 22:00:32 +0900 |
---|---|---|
committer | opiopan <opiopan@gmail.com> | 2019-03-21 22:00:32 +0900 |
commit | 9febca7da6a730b3b3ca3a54129a9f88e5c44d14 (patch) | |
tree | 3f260096ab0c40eca527195630ab004208b4ee78 /README.md | |
download | gerbonara-9febca7da6a730b3b3ca3a54129a9f88e5c44d14.tar.gz gerbonara-9febca7da6a730b3b3ca3a54129a9f88e5c44d14.tar.bz2 gerbonara-9febca7da6a730b3b3ca3a54129a9f88e5c44d14.zip |
initial commit
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..e3fb731 --- /dev/null +++ b/README.md @@ -0,0 +1,74 @@ +PCB tools extension +=== +PCB tools extension is a Python library to panelize gerber files. +This library is designed based on [PCB tools](https://github.com/curtacircuitos/pcb-tools) which provides cool functionality to handle PCB such as generationg PCB image from gerber files. + +PCB tools extension adds following function to PCB tools. + +- Rotate PCB data (imprementation is not completed) +- Save loding PCB data +- Merge multiple PCB data +- Translate DXF file to gerber data + +Only RS-274x format and Excellon drill format data can be handled by current version of this library. + +## How to panelize +Following code is a example to panelize two top metal layer files. + +``` python +import gerberex + +ctx = gerberex.GerberComposition() + +metal1 = gerberex.read('board1.gtl') +ctx.merge(metal1) + +metal2 = gerberex.read('board2.gtl') +metal2.to_metric() +metal2.offset(30, 0) +ctx.merge(metal2) + +ctx.dump('panelized-board.gtl') +``` + +In case of Excellon drill data, you have to use ```DrillCompositon``` instead of ```GerberComposition```. + +```python +import gerberex + +ctx = gerberex.DrillComposition() + +drill1 = gerberex.read('board1.txt') +ctx.merge(drill1) + +drill2 = gerberex.read('board2.txt') +drill2.to_metric() +drill2.offset(30, 0) +ctx.merge(drill2) + +ctx.dump('panelized-board.txt') +``` + +## DXF file translation +You can also load a dxf file and handle that as same as RX-274x gerber file.<br> +This function is useful to generate outline data of pnanelized PCB boad. + +```python +import gerberex + +ctx = gerberex.GerberComposition() +dxf = gerberex.read('outline.dxf') +ctx.merge(dxf) +``` +## Panelized board image Example +This image is generated by original [PCB tools](https://github.com/curtacircuitos/pcb-tools) fucntion. + +<p align="center"> +<img alt="description" src="https://raw.githubusercontent.com/wiki/opiopan/pcb-tools-extension/images/panelized.jpg" width=750> +</p> + + +## Installation +```shell +$ git clone https://github.com/opiopan/pcb-tools-extension.git +$ pip install pcb-tools-extension
\ No newline at end of file |