Automatic Drawing Generation

Software Screenshot:
Automatic Drawing Generation
Software Details:
Version: 0.8.0 updated
Upload Date: 14 Apr 15
Developer: Fontana Nicola
Distribution Type: Freeware
Downloads: 7

Rating: nan/5 (Total Votes: 0)

Automatic Drawing Generation (ADG) is a cross-platform, free and open source software project implemented in C and Lua as a GObject-based library that offers a non-interactive Cairo canvas, which has been designed for generating technical drawings.

Features at a glance

Being highly customizable, Automatic Drawing Generation features support for distinct local and global matrices, support for multiple output formats, including PDF, PNG, PS, GDI and X11, complete support to GObject introspection offering easy creation of language bindings, as well as support for model and view separation.

Additionally, the project comes with a demo application, which will help developers who want to implement the ADG library on their project to learn how to use it, showing them the capabilities of the canvas, which can be used directly from C. Lua bindings are also available in the Automatic Drawing Generation project.

Getting started with the ADG library

Installing the ADG (Automatic Drawing Generation) library on a GNU/Linux operating system is an easy task, as you will have to download the latest version of the program from Softoware, where it is distributed as a TAR archive, save the file somewhere on your computer, unpack it and open a terminal emulator application.

In the Terminal app, use the ‘cd’ command to navigate to the location of the extracted archive files (e.g. cd /home/softoware/adg-0.7.5), run the ‘./configure && make’ command to configure and compile the software, followed by the ‘sudo make install’ command to install it system wide.

Under the hood and supported operating systems

The ADG library is supported on a wide range of operating systems, including Linux, Solaris, FreeBSD, Microsoft Windows and Mac OS X. The C and Lua programming languages have been used to write this library, which is fully compatible with 64-bit and 32-bit instruction set architectures.

What is new in this release:

  • The project has been adapted to adg-lua in order to be able to publish the online Web demo on a standard LAMP server.
  • The compatibility of the project with outdated systems has been improved.
  • Compilation without GTK+ support has been tested: the canvas is now working properly on a system without an X server installed.

What is new in version 0.7.6:

  • The project has been adapted to adg-lua in order to be able to publish the online Web demo on a standard LAMP server.
  • The compatibility of the project with outdated systems has been improved.
  • Compilation without GTK+ support has been tested: the canvas is now working properly on a system without an X server installed.

What is new in version 0.7.2:

  • Out of the box bindings are now fully working: the adg-demo program provided by adg-lua (http://adg.entidi.com/lua/) is on par with the official adg-demo in C.
  • AdgDress is inherited from GEnum instead of being a handcrafted solution.
  • A lot of specialized code has been removed, so the mapping between numbers and names in bindings is automatic.
  • Consistency in widget names has been improved, allowing you to simplify signal connections on the Lua side.

What is new in version 0.7.1:

  • Out of the box support for LGI (dynamic Lua bindings based on GObject introspection) is now actively maintained and effectively used for testing APIs.
  • The GBoxed wrappers for Cairo structs such as cairo_matrix_t have been dropped in favor of the native support provided by the cairo-gobject library.
  • GObject wrappers for CPML structs such as pairs, primitives, and segments have been moved into CPML. This makes redundant the presence of wrappers on the ADG side.

What is new in version 0.7.0:

  • The autoscaling feature is now available, and a series of predefined scale factors are applied until the proper one is found.
  • The demo program autoscales the drawing on a right-click on the drawing area.
  • The introspection support has been improved, making it possible to have LGI (Lua) bindings working out of the box.
  • The typedef hack has been dropped in favor of a private forwarder header.
  • The dash pattern of AdgLineStyle can now be customized by binding to it an AdgDash instance.

What is new in version 0.6.6:

  • The project has been ported to GTK+3 on Windows platforms to.
  • A Win64 installer is available. adg-demo now embeds icons of different sizes, ranging from 16x16 to 128x128 pixels.
  • The look-up falls back to srcdir so that the icons can also be used without installing the program.
  • Several new APIs have been added to help with this relocation.
  • The Windows installers have many cosmetic improvements.
  • The NSIS code has been cleaned up.

What is new in version 0.6.4:

  • The Lua bindings, based on lgob, are now availabe as a separated project (adg-lua). The glue code is automatically generated by using GObject introspection.
  • The build system can detect and use GTK+3 and gladeui-2.0 if found. GTK+2 and gladeui-1.0 are still available and can be forced at configure time.
  • The rendering of AdgRDim has been enhanced:when the "outside" property is enabled, the leader line will extend beyoud the arc to quote for a styleable distance and the marker will be reveresed.
  • The best text frontend is selected at configure time. When pango is available, will be preferred over the cairo toy text APIs.

What is new in version 0.6.3:

  • The text manipulation logic has been moved inside the AdgTextual interface and a new entity based on pango (AdgText) has been added. Also AdgToyText implements AdgTextual so all the text entities are now interchangeable.
  • The demo program has a new dialog page that allows to customize the title block of the drawing. The zoom hints have been moved outside the paper so the drawing can be considered finalized.
  • The CPML library has its own test framework. Anyway tests have been improved generally so it is now possible to generate a report by using "make test-report".
  • The missing extents computation on AdgRDim, AdgADim and AdgArrow are now in place. By calling adg-demo with the -E option it is possible to visually verify the extents status.
  • A bunch of bugs, most notably the wrong glade catalogdir detection and some extents computation, have been resolved.

What is new in version 0.6.2:

  • The localization infrastructure has been added and tested by adding the italian translation.
  • The AdgGtkArea widget is now capable of interactively change zoom and pan in global space by dragging and/or rotating the wheel while keeping the shift pressed.
  • A new class has been implemented: AdgGtkLayout is an AdgGtkArea based widget that implements the scrolling natively, hence it can be added directly to a GtkScrolledWindow container.

What is new in version 0.6.1:

  • The canvas now has printing support when compiled with GTK+ enabled.
  • The media setup can be associated to the canvas so this data can be accessed to provide a consistent behavior between different backends.
  • The demo program can now render the drawing to an SVG file.
  • Generated files are stored in the user document directory.
  • Incomplete entities now fail gracefully instead of complaining for insufficient data.
  • This provides an easy way to implement optional machinings: the optional groove in the adg-demo program is working by leveraging this feature.

Requirements:

  • gtk+
  • Cairo
  • GLib2

Similar Software

Arg_parser
Arg_parser

14 Apr 15

C-KIT-GUI-GTK
C-KIT-GUI-GTK

17 Feb 15

Qt Jambi
Qt Jambi

12 May 15

Comments to Automatic Drawing Generation

Comments not found
Add Comment
Turn on images!