thesourcerer8 / altium2kicad

Altium to KiCad converter for PCB and schematics
https://www2.futureware.at/KiCad/
GNU General Public License v2.0
853 stars 154 forks source link

Bugfixes #105

Open bunker-bunk567 opened 3 years ago

bunker-bunk567 commented 3 years ago

see commit message

bunker-bunk567 commented 3 years ago

btw, i started learning PCB design a couple of weeks ago, i don't own altium. so don't see this as professional advice. the subpolyindex scheme is not optimal, but leaving it out would also not be. in both cases, manual fixes are likely necessary (just changing nets, no drawing). which can be expected from users of this tool of course.

to do it right, geometric analysis must associate a subpolyindex region with a pour polygon, the right one (this should be pretty easy, the idea is that there would be substantial vertex and edge overlap between the 2).

i will send a proper fix soon for this.

bunker-bunk567 commented 3 years ago

also note that this patch inverts the mapping of pour index and zone priority.

100 - pour_index = kicad_priority

seems to be the right choice to me, but review that please

bunker-bunk567 commented 3 years ago

@thesourcerer8 i am sure kicad-devel would love to hear about it. Their altium importer does not handle subpolyindex and creating these intricate polygon shapes by hand is laborious.

thesourcerer8 commented 3 years ago

Long ago, when I saw the first few files, I thought that pour_index is between 0 and 100, but then suddenly I got files with a pour_index far outside that range, so I did didnt had a good idea anymore how to properly handle them, and what their meaning really is. I think I will have to revisit my file-collection to see which pour_index values we actually have now. Perhaps we should develop a small tool that can work through many .pcbdoc files and extracts all pour_index values? I would like to avoid regressions there ...

bunker-bunk567 commented 3 years ago

just leave the pourindex conversion out.

But it seems obvious to me that 0 has the highest priority for altium for a couple of reasons.

with kicad we know that higher numeric value has higher priority.

I don't have altium so i cannot confirm it.

If you see values above 100, that probably means altium allows a bigger range of values and 100 is the upper limit as per convention only.

thesourcerer8 commented 2 years ago

Can anyone with an Altium license check the meaning of positive and negative priorities please?