skip to navigation
skip to content

gdsCAD 0.4.0

A simple Python package for creating or reading GDSII layout files.

Package Documentation

Latest Version: 0.4.5

gdsCAD -- Simple GDSII design in Python

gdsCAD is a simple, but powerful, Python package for creating, reading, and
manipulating GDSII layout files. It's suitable for scripting and interactive
use. It excels particularly in generating designs with multiple incrementally
adjusted objects. gdsCAD uses matplotlib to visualize everything from individual
geometry primitives to the entire layout.


Complete documentation can be found at:


The package can be downloaded for installation via easy_install at

.. image::

A Simple Example

Here is a simple example that shows the creation of some text with alignment
features. It involves the creation of drawing geometry, ``Cell`` and
a ``Layout`` . The result is saved as a GDSII file, and also displayed
to the screen::

import os.path
from gdsCAD import *

# Create some things to draw:
amarks = templates.AlignmentMarks(('A', 'C'), (1,2))
text = shapes.Label('Hello\nworld!', 200, (0, 0))
box = shapes.Box((-500, -400), (1500, 400), 10, layer=2)

# Create a Cell to hold the objects
cell = core.Cell('EXAMPLE')
cell.add([text, box])
cell.add(amarks, origin=(-200, 0))
cell.add(amarks, origin=(1200, 0))

# Create two copies of the Cell
top = core.Cell('TOP')
cell_array = core.CellArray(cell, 1, 2, (0, 850))

# Add the copied cell to a Layout and save
layout = core.Layout('LIBRARY')

Recent Changes
v0.4.0 (07.05.14)
* Several performance improvements: Layout saving, reference selection, and bounding
boxes should all be faster
* Layout save now only uniquifies cell names that are not already unique
v0.3.7 (14.02.14) More colors for layer numbers greater than six (Matthias Blaicher)
v0.3.6 (12.12.13) **bugfix**
* Fixed installation to include missing resource files
v0.3.5 (11.12.13 PM) **bugfix**
* Introduced automatic version numbering
* git_version module is now included in distribution (Thanks Matthias)
v0.3.2 (11.12.13)
* CellArray spacing can now be non-orthogonal
* Block will now take cell spacing information from the attribute cell.spacing
v0.3.1 (06.12.13)
* Added support for `Hershey Fonts <http:"" wiki="" hershey_font="">`_.
* Thanks to Matthias Blaicher.  
File Type Py Version Uploaded on Size
gdsCAD-0.4.0.tar.gz (md5) Source 2014-05-22 437KB
  • Downloads (All Versions):
  • 26 downloads in the last day
  • 326 downloads in the last week
  • 1570 downloads in the last month