Project

libeagle

0.0
No commit activity in last 3 years
No release in over 3 years
CadSoft Eagle Ruby Library
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

LibEagle Code Climate

LibEagle is a library for Cadsoft Eagle PCB Design Software. Eagle uses xml based files. This library implements Eagle xml files and converts it to Objects and reverse.

Requirements:

Installation:

Bundler:

gem 'libeagle'	

Rubygems:

$ gem install libeagle

Usage:

The usage is really simple first you include gem in your file:

require "libeagle"

Parsing:

Parsing eagle files (schematic, board or library) or block of eagle elements (packages, devices, symbols and etc.) you have two options parse from file or string:

eagle = LibEagle::Parser.parseFile(file_name)
 => #<LibEagle::Eagle:0x007fd5ca956738>

or string:

eagle = LibEagle::Parser.parseXML("…")
 => #<LibEagle::Eagle:0x007fd5ca956738>

Hand Crafting:

To Create eagle files with hands or dynamically. Just use as simple objects:

eagle = LibEagle::Eagle.new
# Create a drawing object
eagle.object_drawing = LibEagle::Drawing.new

Setting attributes

eagle.attribute_version = "6.0"

Setting object

eagle.object_drawing = LibEagle::Drawing.new

XML Saving:

After creating, parsing, editing if you want to save file use .saveXML will generate xml code of that object:

eagle = LibEagle::Eagle.new
eagle.attribute_version = "6.0"
eagle.saveXML
 => "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<!DOCTYPE eagle SYSTEM \"eagle.dtd\">\n<eagle version=\"6.0\">\n</eagle>\n"

Todo:

  1. Create API DOcs
  2. Optimize source code

Thank you:

  • Martin DeMello (for pointing out how to optimize code)

Contributing:

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

Copyright (c) 2012 Aurimas Niekis Dual licensed under the MIT license and GPL license.

Links: