Fix node_label() function to work with self-intersection
[geda-pcb/gde.git] / src / data.c
blobc938389a120d9912211dd88d4cbaafb4d0066f5d
1 /* $Id$ */
3 /*
4 * COPYRIGHT
6 * PCB, interactive printed circuit board design
7 * Copyright (C) 1994,1995,1996 Thomas Nau
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 * Contact addresses for paper mail and Email:
24 * Thomas Nau, Schlehenweg 15, 88471 Baustetten, Germany
25 * Thomas.Nau@rz.uni-ulm.de
29 /* just defines common identifiers
31 #ifdef HAVE_CONFIG_H
32 #include "config.h"
33 #endif
35 #include "data.h"
37 #ifdef HAVE_LIBDMALLOC
38 #include <dmalloc.h>
39 #endif
41 RCSID ("$Id$");
43 /* ---------------------------------------------------------------------------
44 * some shared identifiers
47 CrosshairType Crosshair; /* information about cursor settings */
48 MarkType Marked; /* a cross-hair mark */
49 OutputType Output; /* some widgets ... used for drawing */
50 PCBTypePtr PCB; /* pointer to layout struct */
52 char *Progname;
53 SettingType Settings;
54 int LayerStack[MAX_LAYER]; /* determines the layer draw order */
56 BufferType Buffers[MAX_BUFFER]; /* my buffers */
57 LibraryType Library; /* the library */
58 Boolean Bumped; /* if the undo serial number has changed */
59 Boolean render; /* whether or not to re-render the pixmap */
61 LocationType Xorig, Yorig; /* origin offset for drawing in pixmap */
63 int addedLines;
65 LocationType vxl, vxh, vyl, vyh; /* visible pcb coordinates */
67 BoxType theScreen; /* box of screen in pcb coordinates */
68 BoxType clipBox; /* box for clipping of drawing */
70 double Zoom_Multiplier = 0.01;
72 /* { 1.5625, 2.2097, 3.125, 4.4194, 6.25, 8.8388,
73 12.5, 17.6777, 25, 35.3553, 50, 70.7106, 100,
74 141.421, 200, 282.848, 400, 565.685, 800, 1131.37,
75 1600, 2262.74, 3200, 4525.48, 6400 };