Cirilo, On Mon, 02 Sep 2013, Cirilo Bernardo wrote:
> Hi Brian, > > It looks like an awful lot of work you've done there. Has any of > it made its way back into the main tree? None. I hear you guys might have got internal units done after three years. > I'm also interested in knowing the extent of the work you did with > IDF. A number of people on the users' list have said that they need > IDFv3 import since their clients send them IDF files. I'm convinced > now that IDF export is also essential; some of my clients have sent me > PCB mechanical data as IDFv3 which I then import into SolidWorks and > tweak. Although I still plan to use FreeCAD to create actual > mechanical assemblies which can be sent to mechanical people in STEP > format, IDF is far more compact even though no fine details are > possible and a number of people have told me they only want IDF and > nothing more. I roughed out IDF2, IDF3 and even the oft-unused IDF4. The major problem was with representation within kicad. The BoardOutline, RouteOutline and even PlaceOutline was easy enough, but the RouteKeepout, ViaKeepout, PlaceKeepout, PlaceRegion, Electrical, Mechanical, DrilledHoles, Notes and Placement sections were unrepresentable given than kicad considers all these things in 2 dimensions and on two layers silk-front and silk-back. I considered getting some of the 3D shapes from the VRML files for each module, but with no model for 3D keepouts and keepins they could not be tested for proper placement. kicad could not even represent a simple non-plated mechanical hole, far less the way what IDF needs it. I don't even want to talk about the thermal (see section 3.6.10). Parsing and generating the file format is easy enough. The problem was that when your look into kicad for where to store or retrieve the data for the format, it simply isn't there and the internal model is insufficient for simply adding it in the baby-steps incrementation fashion that its maintainers prefer. Even where the data is there, it is usable. If you have 5000 1pF 0402 ceramic capacitors, IDF describes these 5000 capacitors once and refers to the description 5000 times with placement data. Kicad repeats the data for each an every instance of a board item in its file and internally, there are 5000 full module descriptions for each capacity resplendent with comingled placement data. Matching 5000 module descriptions to extract the 5000 pieces of placement data is the horror of kicad's internal representation. The biggest deal?--in kicad components have no height, all fit within their silk, never overlap or protrude, never pass through or into the board, generate no heat, an, as above, are all considered unique. Basically anything that IDF supports that SPEECTRA DSN doesn't support is unrepresentable. Most of what SPEECTRA DSN does support is still unrepresentable in kicad. Read section 5.6 on keep-out layers for some notes on my trials and tribulations. I really wish gEDA wasn't such an emacs clone. --brian -- Brian F. G. Bidulock � The reasonable man adapts himself to the � bidul...@openss7.org � world; the unreasonable one persists in � http://www.openss7.org/ � trying to adapt the world to himself. � � Therefore all progress depends on the � � unreasonable man. -- George Bernard Shaw �
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp