Giter Club home page Giter Club logo

gerbv's Introduction

Gerbv โ€“ a Gerber file viewer Build StatusCoverage Status

Gerbv was originally developed as part of the gEDA Project but is now separately maintained.

Download

Official releases are published on GitHub Releases. Moreover, CI generated binaries are published on gerbv.github.io. Be aware however that they are not manually verified!

About Gerbv

  • Gerbv is a viewer for Gerber RS-274X files, Excellon drill files, and CSV pick-and-place files. (Note: RS-274D files are not supported.)
  • Gerbv is a native Linux application, and it runs on many common Unix platforms.
  • Gerbv is free/open-source software.
  • The core functionality of Gerbv is located in a separate library (libgerbv), allowing developers to include Gerber parsing/editing/exporting/rendering into other programs.
  • Gerbv is one of the utilities originally affiliated with the gEDA project, an umbrella organization dedicated to producing free software tools for electronic design.

About this fork

While Gerbv is great software, the development on Source Force has stalled since many years with patches accumulating in the tracker and mailing list.

This fork aims at providing a maintained Gerbv source, containing mostly bugfixes.

To communicate with the original Gerbv developers, please post your query on the following mailing list:

This is a friendly fork and I'm willing to invite other people to join the Gerbv GitHub organization.

Applied patches from SourceForge

Supported platforms

Gerbv has been built and tested on

  • Debian 10 (amd64)
  • Fedora 36 (amd64)
  • Ubuntu 22.04 (amd64)
  • Windows 10 (amd64 cross compiled from Fedora as well as native x86/amd64 using MSYS2)

Information for developers

Gerbv is split into a core functional library and a GUI portion. Developers wishing to incorporate Gerber parsing/editing/exporting/rendering into other programs are welcome to use libgerbv. Complete API documentation for libgerbv is here, as well as many example programs using libgerbv.

Click for Example 1

Description: Loads example1-input.gbx into a project, and then exports the layer back to another RS274X file

code example

Click for Example 2

Description: Loads example2-input.gbx, duplicates it and offsets it to the right by the width of the layer, merges the two images, and exports the merged image back to another RS274X file. Note: this example code uses the gerbv_image

code example

Click for Example 3

Description: Loads example3-input.gbx, duplicates it and offsets it to the right by the width of the layer, changed the rendered color of the second image, then exports a PNG rendering of the overlaid images.

code example

Click for Example 4

Description: Loads example4-input.gbx, searches through the file and removes any entities with a width less than 60mils, and re-exports the modified image to a new RS274X file.

code example

Click for Example 5

Description: Demonstrate the basic drawing functions available in libgerbv by drawing a smiley face and exporting the layer to a new RS274X file.

code example

Click for Example 6

Description: Demonstrate how to embed a libgerbv render window into a new application to create a custom viewer

code example

Security

The current focus of gerbv is to provide a utility to view and manipulate trusted gerber files. When using gerbv, you should not view files from untrusted sources without extra precautions.

Nevertheless, we acknowledge that libgerbv will be used to handle untrusted input, maybe even provided over the network. In those cases we strongly advise to treat libgerbv as any codec and isolate its operations from the rest of your application.

License

Gerbv and all associated files is placed under the GNU Public License (GPL) version 2.0. See the toplevel COPYING file for more information.

Programs and associated files are: Copyright 2001, 2002 by Stefan Petersen and the respective original authors (which are listed on the respective files)

gerbv's People

Contributors

alyoshin avatar chrysn avatar dl8dtl avatar dmcmahill avatar efa avatar ericjarosch avatar eyal0 avatar florianh80 avatar helmutg avatar jesusdoza avatar kitanokitsune avatar kliment avatar martonmiklos avatar mvorisek avatar nikor avatar nosuchprocess avatar ooxi avatar paragonrobotics avatar pcjc2 avatar petteriaimonen avatar rfuest avatar tijuca avatar uwebonnes avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.