← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] Option to subtract soldermask from silkscreen in gerber output



The main point in my reply earlier was just that the visual results
are not equivalent. However, I agree with you that using OR is the way
to go if it is acceptable that things in gerbview will look a little
different than before. At least I'm ok with that.

Anyways, I think that the graphics we are talking about here is not
very complex and should be doable. Someone mentioned wxGraphicsContext
in the mailing list a while ago and that it should bring a performance
boost. When working on the patch I briefly experimented with wxGCDC
(which I think wraps wxGraphicsContext in a wxDC compatible way?).
However, the performance was pretty bad and since it turned out that
alpha blending was not necessary I didn't continue on that route any


On Sun, Dec 12, 2010 at 7:39 PM, Dick Hollenbeck <dick@xxxxxxxxxxx> wrote:

> Thanks for your patience.
> Your code is technically correct, but it has severe performance problems on my
> system.  I have the fastest computer of anybody that I personally know.   64 bit
> machine, very high end graphics card.
> Taking from a comment I added to my portion of the Draw function this AM:
> // On Linux with a large screen, this version is much faster and without flicker,
> // but gives a PCBNEW look where layer colors blend together.  Plus it works
> // only because the background color is black.  But it may be more useable for some.
> // The difference is due in part because of the cpu cycles needed to create the
> // monochromatic bitmap above, and the extra time needed to do bit indexing
> // into the monochromatic bitmap on the blit above.
> The cost of testing the individual monocromatic bit for each device context bit is
> proportional to X * Y of the screen, so with "O squared" on screen area.  I have a
> very large screen.  And I am having problems with drawing only two layers, not 10
> which will be even worse.
> If we cannot find a faster way to get your desired behaviour, I think we we will have
> to support it in a toggle mode.   So I am happy to spend some more time searching for
> an optimal solution with you if you do not mind.
> How do you feel about the toggle button?  Both modes have some advantages from a user
> experience perspective.  My code is obviously dependent on the background being black,
> and that may not always be the case in the future, so I have put a comment in to that
> effect.
> I do not think we are done yet.
> Dick

Follow ups