Skip to content
This repository was archived by the owner on Jun 19, 2024. It is now read-only.

curtacircuitos/pcb-tools

Repository files navigation

ATTENTION

pcb-tools is currently without a maintainer. Code is provided as is. Check #228 to a list of possible alternatives. PyGerber or other forks of pcb-tools might be what you need.

pcb-tools

CI Coverage Docs

Tools to handle Gerber and Excellon files in Python.

Usage Example:

import gerber
from gerber.render import GerberCairoContext

# Read gerber and Excellon files
top_copper = gerber.read('example.GTL')
nc_drill = gerber.read('example.txt')

# Rendering context
ctx = GerberCairoContext()

# Create SVG image
top_copper.render(ctx)
nc_drill.render(ctx, 'composite.svg')

Rendering Examples:

Top Composite rendering

Composite Top Image Composite Bottom Image

Source code for this example can be found here.

Install from source:

$ git clone https://github.com/curtacircuitos/pcb-tools.git
$ cd pcb-tools
$ pip install -r requirements.txt
$ python setup.py install

Documentation:

PCB Tools Documentation

Development and Testing:

Dependencies for developing and testing pcb-tools are listed in requirements-dev.txt. Use of a virtual environment is strongly recommended.

$ virtualenv venv
$ source venv/bin/activate
(venv)$ pip install -r requirements-dev.txt
(venv)$ pip install -e .

We use pytest to run pcb-tools's suite of unittests and doctests.

(venv)$ pytest

About

Tools to work with PCB data (Gerber, Excellon, NC files) using Python.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 22

Languages