[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: pcb insulator layer
I'm starting on making a way to output no vias when drawing a layer for insulator purpose.
I think using pads might work for connecting low resistance ink jumpers that go along with
using insulator layer, but to simplify at first, I will just use zero length lines
with a width defined so you get a circle as connector pads for conductive jumpers.
Then all that needs to happen in pcb is to not export a via circle everywhere a via is, when
on the insulator layer.
I've done a quick look at the pcb draw.c code and see no mention of exporting,
so have questions.
In this routine:
=================
/* ---------------------------------------------------------------------------
* draw a via without dealing with polygon clearance
*/
static void
DrawPlainVia (PinTypePtr Via, Boolean holeToo)
{
if (!Gathering)
SetPVColor (Via, VIA_TYPE);
DrawPinOrViaLowLevel (Via, holeToo);
if (!TEST_FLAG (HOLEFLAG, Via) && TEST_FLAG (DISPLAYNAMEFLAG, Via))
DrawPinOrViaNameLowLevel (Via);
}
=========================
PinTypePtr seems to be used for either a pin or a via.
In this routine, the name of
SetPVColor but no mention of layer suggests there's
a current layer state before coming to this routine.
LayerTypePtr Layer shows up in DrawLine, DrawPlainPolygon, DrawRegularText,
Then there's DrawObject with a long switch (type) { } block that calls
specific routines like DrawLine,. LayerTypePtr has to
be defined before arriving here.
I'm unclear about this:
* draws one non-copper layer
*/
void
DrawLayer (LayerTypePtr Layer, BoxType * screen)
Does this mean "always call DrawLayerGroup" for copper layers?
I found export mentioned in main.c if (gui->exporter) then gui->do_export (0);
do_export seems to be in another file...
I see screen as the parameter coming form somewhere else in DrawTop.
I haven't found where yet. Is DrawTop a good template for a routine that would be called when exporting
a layer with a name match like insul*? Outline is handled in DrawLayerGroup with a name compare
that changes rv and returns it, so that isn't where the action is either.
Lost, need hints.
John Griessen
--
Ecosensory Austin TX
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user