Index: trunk/doc/conf/tree/editor.html
===================================================================
--- trunk/doc/conf/tree/editor.html (revision 31889)
+++ trunk/doc/conf/tree/editor.html (revision 31890)
@@ -43,6 +43,7 @@
click_time | rnd_cfn_integer | 0 | default time for click expiration, in ms
Index: trunk/src/conf_core.h
===================================================================
--- trunk/src/conf_core.h (revision 31889)
+++ trunk/src/conf_core.h (revision 31890)
@@ -58,7 +58,9 @@
RND_CFT_BOOLEAN move_linepoint_uses_route; /* Moving a line point calculates a new line route. This allows 45/90 line modes when editing lines. */
RND_CFT_BOOLEAN auto_via; /* when drawing traces and switching layers or when moving an object from one layer to another, try to keep connections by automatically inserting vias. */
RND_CFT_REAL route_radius; /* temporary: route draw helper's arc radius at corners (factor of the trace thickness) */
+ RND_CFT_BOOLEAN drc_inclusive_bbox; /* when enabled, the drc view will always include all red and blue objects (turns off optimization that focuses on red objects) */
+
RND_CFT_BOOLEAN io_incomp_popup; /* wether to enable popping up the io incompatibility list dialog on save incompatibility errors */
RND_CFT_STRING io_incomp_style; /* view listing style (list or simple), when io_incomp_popup is true */
Index: trunk/src/pcb-conf.lht
===================================================================
--- trunk/src/pcb-conf.lht (revision 31889)
+++ trunk/src/pcb-conf.lht (revision 31890)
@@ -52,6 +52,7 @@
click_time = 200
click_objlist = 0
auto_via = 1
+ drc_inclusive_bbox = 0;
io_incomp_popup = 1
io_incomp_style = list
ha:view {
Index: trunk/src/view.c
===================================================================
--- trunk/src/view.c (revision 31889)
+++ trunk/src/view.c (revision 31890)
@@ -45,6 +45,8 @@
#include
#include
+#include "conf_core.h"
+
static unsigned long int pcb_view_next_uid = 0;
void pcb_view_free(pcb_view_t *item)
@@ -175,7 +177,7 @@
return;
/* special case: single objet in group A, use the center */
- if (pcb_idpath_list_length(&v->objs[0]) == 1) {
+ if (!conf_core.editor.drc_inclusive_bbox && (pcb_idpath_list_length(&v->objs[0]) == 1)) {
idp = pcb_idpath_list_first(&v->objs[0]);
obj = pcb_idpath2obj_in(data, idp);
if (obj != NULL) {
Index: trunk/tests/drc_query/Makefile
===================================================================
--- trunk/tests/drc_query/Makefile (revision 31889)
+++ trunk/tests/drc_query/Makefile (revision 31890)
@@ -4,7 +4,7 @@
TDIR=../tests/drc_query
FLT=$(TDIR)/drc_filter.sh
PCBRND=./pcb-rnd
-GLOBARGS=-c rc/library_search_paths=../tests/RTT/lib -c rc/quiet=1
+GLOBARGS=-c rc/library_search_paths=../tests/RTT/lib -c rc/quiet=1 -c editor/drc_inclusive_bbox=1
TESTS = \
thickness.diff overlap.diff netint.diff dwg_area.diff fullpoly.diff \
Index: trunk/tests/drc_query/netint.ref
===================================================================
--- trunk/tests/drc_query/netint.ref (revision 31889)
+++ trunk/tests/drc_query/netint.ref (revision 31890)
@@ -1,15 +1,15 @@
x: shorted nets: net too close to other net
-within (36.40, 86.95, 124.64, 149.65) mil
+within (23.98, 7.31, 126.02, 183.43) mil
required value 0.00
insufficient clearance between an object of the network and objects of other networks
x: shorted nets: net too close to other net
-within (27.91, 7.31, 90.61, 183.43) mil
+within (23.98, 7.31, 126.02, 183.43) mil
required value 0.00
insufficient clearance between an object of the network and objects of other networks
x: broken net: insufficient overlap
-within (18.65, 113.55, 81.35, 227.25) mil
+within (17.50, 111.25, 91.76, 248.01) mil
required value 0.00
the overlap between two objects in the net is insufficient and can lead to broken network during board fabrication
Index: trunk/tests/drc_query/overlap.ref
===================================================================
--- trunk/tests/drc_query/overlap.ref (revision 31889)
+++ trunk/tests/drc_query/overlap.ref (revision 31890)
@@ -1,5 +1,5 @@
x: pair hole: overlapping holes
-within (20.00, 145.00, 130.00, 255.00) mil
+within (20.00, 116.88, 130.00, 258.13) mil
required value 31.50 mil
measured value 25.00 mil
padstack holes overlap
Index: trunk/tests/drc_query/zone_clr.ref
===================================================================
--- trunk/tests/drc_query/zone_clr.ref (revision 31889)
+++ trunk/tests/drc_query/zone_clr.ref (revision 31890)
@@ -1,10 +1,10 @@
x: shorted nets: net too close to other net (zone)
-within (396.78, 168.65, 678.22, 231.35) mil
+within (396.78, 131.15, 678.22, 568.85) mil
required value 20.00 mil
insufficient clearance between an object of the network and objects of other networks
x: shorted nets: net too close to other net (zone)
-within (362.40, 293.65, 487.60, 356.35) mil
+within (362.40, 284.28, 487.60, 440.72) mil
required value 20.00 mil
insufficient clearance between an object of the network and objects of other networks
|