Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
adg-0.2.1.tar.bz2 | 2008-05-21 | 340.3 kB | |
Totals: 1 Item | 340.3 kB | 0 |
General information =================== Automatic Drawing Generation is GObject-based library that provides a non-interactive cairo canvas specifically designed for generating technical drawings. If you want to develop an application that needs to show and print drawings where some data change but the overall design is always the same, the ADG library can be quite useful. In manufacturing industries this is often a good choice and could help to greatly improve the productivity of technical offices. You could reach similar targets using parametric CADs but a custom application provides the following benefits: * more customizable; * quicker and not so bloated as a parametric CAD; * can be easily connected to a database; * an ADG based filter can generate drawing on-fly: this feature could be used in web-based application. For further details, visit the ADG home page (http://adg.entidi.com/). Design overview =============== The project grew up around the GObject (http://www.gtk.org/) library: the ADG canvas is developed in plain C using the object-oriented approach supplied by GObject. The mathematical and geometrical algorithms, together with some useful function to manipulate cairo paths, are kept in a separated library. Although the CPML library (Cairo Path Manipulation Library) is scattered across the ADG tree, it can be easily splitted on its own in future, if requested. The rendering is based on the cairo engine (http://cairographics.org/), so the ADG project fully shares strong and weak points of the underlying cairo library. For the optional database connectivity, my suggestion is to take a look to the libgda (http://www.gnome-db.org/) project, partly because it is a good and actively maintained project and partly because it uses the ADG technologies (object-oriented C code using GObject), so can be easily integrated in a single application. External dependencies ===================== The ADG library has the following dependencies: * glib (http://www.gtk.org/) 2.10.1 or later (required) * cairo (http://cairographics.org/) 1.7.4 or later (required) * gtk+ (http://www.gtk.org/) 2.12.0 or later (optional), needed by the adg-demo program * gtk-doc (http://www.gtk.org/gtk-doc/) 1.9 or later (optional), used to regenerate the API documentation The required packages must be installed prior the ADG building: they should be provided by nearly every decent unix-like system. The ADG is mainly developed on GNU/Linux systems but its dependecies are known to be cross platform so a porting should be quite easy (if not automatic). Installation ============ The ADG build system is based on GNU autotools, the de-facto standard for managing free software projects. 1. Download the ADG tarball and put it somewhere in your file system, where you have write access (your home directory is a good candidate). You can browse the old releases or get the latest tarball from sourceforge (http://sourceforge.net/projects/adg/files/). 2. Unpack the tarball. Use the version you downloaded in the previous step instead of 0.6.0: ------------------------------------------------------------------ tar xjvf adg-0.6.0.tar.bz2 ------------------------------------------------------------------ 3. Configure the build. You can set different options while configuring: check the output of ./configure --help to get all the available options. Furthermore, the INSTALL file gives you a detailed description of the common options. ------------------------------------------------------------------ cd adg-0.6.0 ./configure ------------------------------------------------------------------ 4. Build the ADG library. ------------------------------------------------------------------ make ------------------------------------------------------------------ Once the building has finished, you are able to run the demo program without installing anything. Just try it out: ------------------------------------------------------------------ ./demo/adg-demo ------------------------------------------------------------------ 5. Install the ADG library on your system. You must have root privileges to do that or you have to configure a target directory (the --prefix option in configure) that is user-writable. ------------------------------------------------------------------ make install ------------------------------------------------------------------ If you have sudo access you can use it by prefixing the installation command to temporary gain root privileges: ------------------------------------------------------------------ sudo make install ------------------------------------------------------------------ 6. You can uninstall the ADG whenever you want by typing: ------------------------------------------------------------------ make uninstall ------------------------------------------------------------------ from inside the ADG build directory (or sudo make uninstall). Just be sure to have the same privileges you had when installing it.