← Back to team overview

kicad-developers team mailing list archive

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


On Sun, 12 Dec 2010, Dick Hollenbeck wrote:

Often screen memory is of a different format than the internal RAM resident bitmaps,
and this can be a CPU intensive thing, to convert each pixel.

The last remaining opportunity to reduce the time spent doing the last screen blit is
to optimize on the dirty area alone.  If we could reduce the size of the dirty area,
this would *dramatically* improve speed.  I think this is only possible though on the
layer show/hide clicks, where a layer is coming or going.  On the resizing operations,
especially when grid is on screen, the entire screen needs to be redrawn, mandating a
full sized blit.

I think the above sums up the bigger problem of graphics very well. WxDC technology is from the 90's and so is KiCad's usage of graphics hardware. KiCad should not mess with low level bitmap operations, but just send the vector data to the graphics processor (or optimized sw implementation, like mesa softpipe). Dirty area optimizations were done as EXA protocol for the X server... This really is not an application level problem, but wxDC is making it one. The efforts might be better spent on finding alternative solutions for drawing than wxDC.


Follow ups