I've noticed incremental updates with PCB polygons are quite slow, and
have been trying to fix that. (It makes copy-pasting / moving blocks in
a complex design with polygons exteremely painful.)

This patch speeds things up a bit. (It is still nowhere near as fast as
I'd like though).

The speedup comes from noting that there is no point "unsubtracting" a
complex shape, like a circle, arc, line with cap etc...", since the code
then re-clears against any objects within the bounding box of the
"unsubtracted" polygon. So the patch just makes it unsubtract a simple
rectangle, sized to the bounding box of the object being removed.

Aside from the fact that I dropped the extra clearances previously used
around objects, does anyone see anything likely to cause trouble about
this patch?

Does using the bounding box avoid the need for adding extra clearance?
I've not noticeed any problems during the (superficial) testing I did so
far.

Best wishes,

-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)

_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev

Reply via email to