[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Maximum line width in pcb?



On Mon, 12 Nov 2007 19:28:08 +0000, Peter Clifton wrote:

> On Mon, 2007-11-12 at 13:05 -0500, DJ Delorie wrote:
>> > Is there a reason for the maximum line width in pcb set to 250pt?
>> 
>> Probably not.
> 
> If anyone commits a fix for this, can they also remove the via size
> limit. Yes, sometimes I do want enormous pads for power components.
> (Things like 4mm posts which screw onto the circuit board with a big
> threaded shaft and a bolt on the back).

The patch below against current CVS relieves a few limits set in 
globalconst.h  
The properties line width, via size, pad size may all become as large as
the maximum board size. Maximum size of the board is set to 100" -- Just 
in case somebody wants to design photo voltaic panels with pcb ;-)
I tried to check if there is a memory penalty involved with these large 
max values. There seems to be no allocate associated with the maximum 
values. So I assume, performance will not suffer.

Minimum board size is set to 10 mil. Also, grid size and the size of 
text may be set to significantly larger and smaller values than before.

---<(kaimartin)>---

------------------------8<-----------------------------------------

Index: globalconst.h
===================================================================
RCS file: /cvsroot/pcb/pcb/globalconst.h,v
retrieving revision 1.10
diff -p -U3 -r1.10 globalconst.h
--- globalconst.h	3 Feb 2007 01:05:33 -0000	1.10
+++ globalconst.h	18 Nov 2007 00:35:47 -0000
@@ -60,20 +60,22 @@
 /* ---------------------------------------------------------------------------
  * some limit specifications
  */
+#define LARGE_VALUE		10000000 /* maximum extent of board and elements in 1/100 mil */
+ 
 #define	MAX_LAYER		16	/* max number of layer, check source */
 					/* code for more changes, a *lot* more changes */
 #define DEF_LAYER		8	/* default number of layers for new boards */
 #define NUM_STYLES		4
 #define	MIN_LINESIZE		1	/* thickness of lines in 1/100000'' */
-#define	MAX_LINESIZE		25000
-#define	MIN_TEXTSCALE		20	/* scaling of text objects in percent */
-#define	MAX_TEXTSCALE		1000
-#define	MIN_PINORVIASIZE	2000	/* size of a pin or via in mils */
+#define	MAX_LINESIZE		LARGE_VALUE
+#define	MIN_TEXTSCALE		10	/* scaling of text objects in percent */
+#define	MAX_TEXTSCALE		10000
+#define	MIN_PINORVIASIZE	2000	/* size of a pin or via in 1/100 mils */
 #define	MIN_PINORVIAHOLE	400	/* size of a pins or vias drilling hole */
-#define	MAX_PINORVIASIZE	40000
+#define	MAX_PINORVIASIZE	LARGE_VALUE
 #define	MIN_PINORVIACOPPER	400	/* min difference outer-inner diameter */
-#define	MIN_PADSIZE			500	/* size of a pad */
-#define	MAX_PADSIZE			25000
+#define	MIN_PADSIZE		100	/* min size of a pad */
+#define	MAX_PADSIZE		LARGE_VALUE   /* max size of a pad */
 #define	MIN_DRC_VALUE		10
 #define	MAX_DRC_VALUE		50000
 #define	MIN_DRC_SILK		100
@@ -82,15 +84,15 @@
 #define	MAX_DRC_DRILL		5000
 #define	MIN_DRC_RING		0
 #define	MAX_DRC_RING		10000
-#define	MIN_GRID		1	/* grid in 1/100000'' */
-#define	MAX_GRID		20000
+#define	MIN_GRID		1	/* min grid in 1/100 mils */
+#define	MAX_GRID		100000 /* max grid in 1/100 mils */ 
 #define	CHUNK			100	/* step size for size sliders */
 #define	MIN_ZOOM		-12	/* min zoom */
 #define	MAX_ZOOM		12	/* max zoom */
 #define	MAX_FONTPOSITION	127	/* upper limit of characters in my font */
 
-#define	MAX_COORD		3000000	/* coordinate limits */
-#define	MIN_SIZE		60000	/* lowest width and height */
+#define	MAX_COORD		LARGE_VALUE	/* coordinate limits */
+#define	MIN_SIZE		1000	/* lowest width and height of the board */
 #define	MAX_BUFFER		5	/* number of pastebuffers */
 					/* additional changes in menu.c are */
 					/* also required to select more buffers */
-------------------------->8--------------------------------------------------------------

-- 
Kai-Martin Knaak
http://lilalaser.de/blog



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user