QisMLib Header

QisGerber Extension/API

This Gerber import library extension to QisMLib is intended enable a user to quickly convert a Gerber file into a layout database without need for external programs or libraries. Once imported, the data can be processed as if it had originated as a GDSII/OASIS layout file.

The underlying algorithms and capabilities are taken from Artwork's GBRUnion program; if you are familiar with GBRUnion then using this API will be very straightforward.

QisGerber's relationship to the QisMLib platform.

When running the QisMLib installer, you will be prompted to select from the list of extensions. Make sure QisMGerber (at the bottom of the list) is selected.

Plug In

The plug-in that provides the QisMGerber functionality is ${install}/artwork/qismgerber64.dll. If you are using your own config file (something other than ${install}/artwork/qismlib.cfg) please be sure to list "EXTENSION=${install}\artwork\qismgerber64.dll" in it.

Header/API b

${install}/include/qismgerber.h is the header file for the QisMGerber API. It is fully documented inline and at this link: qismgerber_api.html


Scripting support is availble for the QisMGerber API. In ${install}/scripts, you'll find two new scripts:

Execute the corresponding bat files to see them in action.


In ${install}/samplecode, you'll now find two new sample c++ files:

Unlike the object-oriented style of the older sample code, these have a procedural style to simplify reading. They also follow the same flow as the corresponding scripts so that you can see a 1-1 correspondence between the script commands and the c++ code.

Also in ${install}/samplecode is a new empty VS2008 project set up to build a sample app out of the box. Add any one of those qm_*.cpp files to the project and build. qm_app.exe will be created in ${install}/artwork. Run it without any arguments to see the command-line options.

Under Development

The progress update during QisMGerber::Load_gerber needs to be refined. At the moment, there is quite a bit of time between successive updates for large Gerber files

The ability to gracefully interrupt QisMGerber::Load_gerber is not implemented in this version. Only the framework to do so via the API is there.

The error reporting scheme needs to be refined. At the moment, if the Gerber load fails, the error message points you to a directory containing all the necessary files that will help us understand the problem. In the future, the error message string itself will provide a summary of what went wrong.


The QisGerber extension requires a license for product ID 2756. The license is checked-out only for the duration of database creation.

417 Ingalls St. Unit C, Santa Cruz, CA 95060 831.426.6163  email: info@artwork.com