First, everything that follows is based on the assumption that you are
talking about a problem with an "Arc", and not in fact a problem with a
"Polygon", and if that is wrong, then trash everything that follows.

While I can't say why, I can say that this appears to be a bug.

I thought it was gone in Protel 99, and I haven't seen it in some time, but
used to see it a lot back in the days that I was working with Protel 98.

I would see it every so often on PDF's when I used to "print" to Adobe
Acrobat Writer to send a "hardcopy" of a each Layer (to accompany a set of
"gerbers") to the Board Shop for a quote, but the only place I ever saw the
problem was in the "Arcs" of the Protel "Title Block", so I never worried
about it. I may be that I have even seen it in Protel 99 and just ignored

I always used to think that it was an Adobe Acrobat Writer Problem until I
saw it pop up in some gerber file that I was viewing in CAMtastic, and if I
remember correctly, it went away when I regenerated the gerbers.

I think that it's presence in 99 in your files confirms that it is a real
bug that is still there.

In thinking about how and why it could happen, I thought of the following.
Bear with me here for a while and let me know what you think.

As usual when I stick my neck out, someone is liable to come along and chop
it off, but oh well, here goes.

The normal procedure for placing an "Arc" is a 4 step process:

1.) Position centerpoint location and Left Click.

2.) Place Radius Distance location and Left Click.

3.) Place Start Angle location and Left Click.

4.) Place End Angle location and Left Click.

Protel seems to be pretty picky about making Acs in the first place, in that
it always seems to want to generate the Arc in the same rotation, which is
counter clockwise, and it will always list the Start and End Angles in a
counter clockwise order, with the Start first.

All is well so far.

Most Arcs that are defined in this manner will usually have the Start Angle
smaller than the End Angle.

The exception to this is where the Start Angle is less than Zero, or more
correctly stated with an End Angle of greater than 360 Degrees, where an Arc
actually "crosses zero" as it were.

As you think about this, remember that Protel always (well, most of the time
anyway, but maybe not always) wants to call your "zero" Degrees of rotation
of a "Part" or "Component" (either in a "Dialogue Box" or a "Pick and Place"
file) "360" Degrees of rotation, as opposed to "Zero" Degrees. Based on this
I would lean towards saying that Protel's internal rotational computations
are all done in "positive" math, with "MOD 360" applied to the results, so
bear this possibility in mind here as we proceede.

If you play around with an Arc of this type we just described, by editing
its properties in a dialogue box, you can enter Start and End Angles that
are either Negative (less than zero) or greater than 360 Degrees, and it
appears that Protel will always "draw" or "display" these Arcs correctly,
which seems to bear out that it is really "thinking" (or actually
"computing") in terms of "MOD 360". Please note here that Protel will always
convert any negative number that you may enter to its positive counterpart,
"MOD 360".

If this is true, then it may be correct to say that Protel always uses
positive numbers internally that may in fact be larger than 360, and that it
always "draws" ("computes") its Arcs from the "lesser value" (which would
always correspond to the "Start Angle") to the "greater value" (which would
always correspond to the "End Angle")

But now getting back to the problem at hand and applying all of this to the
instant case, I really wonder if sometime in the "Print" or "Gerber"
generation process it gets lost with some of these kinds of Arcs, and in
doing its program math it does an extra "MOD 360" operation or something
bizzare like that, at the wrong time, or to the wrong value, and ends up
drawing the Arc from the then "Lesser Angle" to the then "Greater Angle".

OK, well, hopefully you were able to follow my line of thought with what I
have said above, so that I can now throw the following "Monkey Wrench" into
the "Equation".

All of the above, while possibly an answer to the problem in its' own right,
is preface to this question:

Did you "rotate" any of the "Arcs" that you are having trouble with? Or
possibly did you rotate any of the "polygons" or other portions of the
design that contained these "Arcs"?

Did you make "copies" of any of these "Arcs", and rotate them respecting
their new placement position"?

What happens internally inside Protel, when you "rotate" an "Arc"?

It would appear that there is a possibility here somewhere, within the
gazillions of routines that are either in the "Protel Code" or the "Delphi
Code" that is used to generate the "graphics" or the "printouts" or the
"gerbers", all of these "sticks and circles" as it were, that go into making
either a "PDF" or a "Print" or a "Plot" or a "Gerber", that an "extra" "MOD
360" is getting done occasionally, or possibly done at the wrong sequence,
thus resulting in an "inverted Arc".

In essence, it appears as if Protel always draws an arc from the smaller to
the larger number, and it may or may not be sensitive to the order of those
numbers, since most of the time it will properly determine the lesser of the
two and go from there, yet again, there may be times that it needs the
lesser number to be first, and the larger to be second, or it will apply a
MOD 360 to the one to correct the situation and end up inverting the Arc as
it has done in your example.

Any of that make any sense? Yeah, I am lost too.

Anyway, the bottom line is this:

I have seen it before, numerous times in Protel 98, and possibly even in
Protel 99, and it is a real life problem, which I would consider a bug.

Is it repeatable?

If so, can you import the same file into DXP and see whether or not it will
generate the same problem with the Gerber?


* * * * * * * * * * * * * * * * * *

----- Original Message -----
From: "Brad Velander" <[EMAIL PROTECTED]>
To: "Protel EDA Forum List Server (E-mail)" <[EMAIL PROTECTED]>
Sent: Thursday, November 28, 2002 2:09 PM
Subject: [PEDA] P99SE strikes again on a US vacation long weekend holiday.

> Hi guys,
> I am beginning to believe that someone has corrupted my Protel with
> a bug that activates only on US holidays, especially when they are
> for 2 or more days in a row.
> Here is my issue. Generating Gerbers of a not very complex board (I
> did this on a much more complex board 2 days ago with no problem), the
> output Gerber on numerous layers contains inverted circular arcs in
> locations where polygons should have small inside radius curves. The curve
> has been reversed. If it was supposed to be 30 degrees of arc, I now have
> the opposing 330 degrees of the arc. These arcs are shorting the GND
> polygons to the traces and even across to the GND polygon on the other
> of some traces.
> I have seen this sometimes on non copper layers and in small
> numbers, I have sometimes edited the Gerber in Camtastic and lived with
> This time there are too many, they are one 4 layers (top & bottom copper,
> silkscreen and board outline) and I am a bit more reluctant to edit it on
> copper layers. I have confirmed that this is a Protel generation error
> because it shows up in both Camtastic and GC-Prevue.
> Any ideas or solutions out there?
> I can't believe the consistency that these issues show up when
> support is shut-down for a US holiday. So far 3 times this year I find
> myself unable to call tech support because of a US holiday. I think that
> 3 for 3 as far as the unique (not taken in Canada as well) US holidays go.
> Sincerely,
> Brad Velander.
> Lead PCB Designer
> Norsat International Inc.
> Microwave Products
> Tel   (604) 292-9089 (direct line)
> Fax  (604) 292-9010
> Check out our fall promotion at Limited quantities. Sale
> ends December 24, 2002.
> Contact your Account Manager or call 1-800-NII-4LNB or email

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* To post a message: mailto:[EMAIL PROTECTED]
* To leave this list visit:
* Contact the list manager:
* Forum Guidelines Rules:
* Browse or Search previous postings:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Reply via email to