heitzmann / gdspy

Python module for creating GDSII stream files, usually CAD layouts.
Boost Software License 1.0
348 stars 126 forks source link
cad gdsii microfabrication python

GDSPY README

Boost Software License - Version 1.0 Documentation Status tests Appveyor Status Downloads

Gdspy is a Python module for creation and manipulation of GDSII stream files. Key features for the creation of complex CAD layouts are included:

Gdspy also includes a simple layout viewer.

Typical applications of Gdspy are in the fields of electronic chip design, planar lightwave circuit design, and mechanical engineering.

Future of Gdspy

In trying to improve the performance of Gdspy for large layouts, we ended up concluding that the best way to reach our goal was to rewrite the critical parts of the library as a C extension. It turns out that beside obvious functions, method calling has a big impact in performance due to the overhead it introduces. The best solution was to re-design the whole project as a C++ library with a thin Python wrapper: thus was born Gdstk, the GDSII Tool Kit.

Therefore, version 1.6 will be the last major release of Gdspy, with development focused only on bug fixes. Users are encouraged to move from Gdspy to Gdstk: although their API is not 100% compatible, the new module should be familiar enough to allow a quick transition.

Installation

Dependencies:

Linux / OS X

Option 1: using pip:

python -m pip install --user gdspy

Option 2: download the source from github and build/install with:

python setup.py install

Windows

The preferred option is to install pre-compiled binaries from here.

Installation via pip and building from source as above are also possible, but an appropriate build environment is required for compilation of the C extension modules.

Documentation

The complete documentation is available here.

The source files can be found in the docs directory.

Support

Help support Gdspy development by donating via PayPal or sponsoring me on GitHub

History of changes

Version 1.6.13 (Apr 26, 2023)

Version 1.6.12 (Jun 2, 2022)

Version 1.6.11 (Jan 14, 2022)

Version 1.6.10 (Nov 14, 2021)

Version 1.6.9 (Sep 23, 2021)

Version 1.6.8 (Aug 2, 2021)

Version 1.6.7 (Jul 14, 2021)

Version 1.6.6 (Jun 09, 2021)

Version 1.6.5 (Jun 08, 2021)

Version 1.6.4 (Apr 23, 2021)

Version 1.6.3 (Dec 28, 2020)

Version 1.6.2 (Dec 18, 2020)

Version 1.6.1 (Oct 22, 2020)

Version 1.6 (Aug 12, 2020)

Version 1.5.2 (Feb 01, 2020)

Version 1.5 (Dec 20, 2019)

Version 1.4.3 (Nov 11, 2019)

Version 1.4.2 (Oct 01, 2019)

Version 1.4.1 (Sep 20, 2019)

Version 1.4 (May 18, 2019)

Version 1.3.2 (Mar 14, 2019)

Version 1.3.1 (Jun 29, 2018)

Version 1.2.1 (Dec 5, 2017)

Version 1.2 (Oct 21, 2017)

Version 1.1.2 (Mar 19, 2017)

Version 1.1.1 (Jan 27, 2017)

Version 1.1 (Jan 20, 2017)

Version 1.0 (Sep 11, 2016)

Version 0.9 (Jul 17, 2016)

Version 0.8.1 (May 6, 2016)

Version 0.7.1 (June 26, 2015)

Version 0.7 (June 12, 2015)

Version 0.6 (March 31, 2014)

Version 0.5 (October 30, 2013) - NOT COMPATIBLE WITH PREVIOUS VERSIONS

Version 0.4.1 (June 5, 2013)

Version 0.4 (October 25, 2012)

Version 0.3.1 (May 24, 2012)

Version 0.3a (May 03, 2012)

Version 0.3 (April 25, 2012)

Version 0.2.9 (December 14, 2011)

Version 0.2.8 (June 21, 2011)

Version 0.2.7 (April 2, 2011)

Version 0.2.6 (February 28, 2011)

Version 0.2.5 (December 10, 2010)

Version 0.2.4 (September 04, 2010)

Version 0.2.3 (August 09, 2010)

Version 0.2.2 (July 29, 2010)

Version 0.2.1 (July 29, 2010)

Version 0.2.0 (July 19, 2010)

Version 0.1.9 (June 04, 2010)

Version 0.1.8 (May 10, 2010)

Version 0.1.7 (April 12, 2010)

Version 0.1.6 (December 15, 2009)

Version 0.1.5a (November 15, 2009)

Version 0.1.4 (October 5, 2009)

Version 0.1.3a (July 29 2009)

Version 0.1.3 (July 27, 2009)

Version 0.1.2 (July 11, 2009)

Version 0.1.1 (May 12, 2009)

Version 0.1.0 (May 1, 2009)