← Back to team overview

kicad-developers team mailing list archive

Kicad performance

 

I wish make the point  we are at the moment, seen the number of newcomers.
We have 2 main platforms: Windows and Linux, there is also a third platform
at the moment that is OSX.
The accelerated APIs on this platforms are provided by:

Linux: GTK/CairoLib
Windows: GDI+ / Direct2D
OSX: Quartz 2D (CoreGraphics)

New APIs, wrapped in wxGraphicsContext, to perform at their maximum should
transfer draw commands in the largest batch as possible.
Instead the current Kicad code born with the old generation APIs draws the
screen primitive by primitive.

Dick (if i recall well) has already done a brunch of job to support
wxGraphicsContext but the showstopper in this case was the Windows Platform
using GDI+ (being slower than the old stlyle API).

And Torsen has started its GAL job for this reason..

Now we have also another problem GDI+ HW acceleration (on the cards
supporting it) is unsupported on Windows 7 or Vista (updated) that has
issued a new standard Direct2D (
http://msdn.microsoft.com/en-us/library/dd370990%28v=VS.85%29.aspx ).


wxWidgets supports multiple wxGraphicsContexts for each platforms and lets
the user choose which wants to use.
If some Windows User/Developer is not happy about Kicad performance could
make the wxGraphicsContext interface work on Direct2D
here the GDI+ implementation
http://svn.wxwidgets.org/viewvc/wx/wxWidgets/trunk/src/msw/graphics.cpp?view=markup

US Kicad developers we will more than happy to change deeply the drawing
code to perform much better, than now and i think that also Torsen could be
happy to have some working example to expand its GAL.

--
Marco

Follow ups