I will add a method in script to fix the saved file.
I am using :
Application: kicad Version: 4.0.2+e4-6225~38~ubuntu14.04.1-stable release build wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1002,GCC 4.8.4,wx containers,compatible with 2.8) Platform: Linux 3.13.0-91-generic x86_64, 64 bit, Little endian, wxGTK Boost version: 1.54.0
_ USE_WX_GRAPHICS_CONTEXT=OFF_
_ USE_WX_OVERLAY=OFF_
_ KICAD_SCRIPTING=ON_
_ KICAD_SCRIPTING_MODULES=ON_
_ KICAD_SCRIPTING_WXPYTHON=ON_
_ USE_FP_LIB_TABLE=HARD_CODED_ON_
_ BUILD_GITHUB_PLUGIN=ON_
Teardrops are a great idea, but I’ve found arc geometry teardrops give the best results, for clearance to nearby PADS, and allowing larger teardrops.
Not sure if you can support ARC as an option ?
I am actually working on it right now. It is a bit complex but I think I will be able to get something quite quickly.
This is clearly possible. The only drawback is that it will generate complex zones for each teardrop. Nevertheless, can you (or anyone) give some references about the arc radius ? I am not able to find anything.
[quote=“Niluje, post:7, topic:3388”]
This is clearly possible. The only drawback is that it will generate complex zones for each teardrop. Nevertheless, can you (or anyone) give some references about the arc radius ? I am not able to find anything. [/quote]
This is how PADS layout sets ARC teardrops.
I think that ratio is a % of PAD diameter, and the teardrop polyline can match the trace width You can see how much closer other pads/vias/corners can be placed, with curved teardrops.
It does not need a lot of segments to approximate the arc, maybe 5 or 7 a side ?
I wonder if KiCad scripts can trawl the DRC error reports/tags, as then a 2 pass could be possible, where offending teardrops are removed or adjusted.
PADS can also generate teardrops on angled entry into oval pads.
There are no teardrops on trace T junctions, they apply to “last-segment intersecting pad-outline”
I think there is arc support for tracks coming. Someone who does RF circuitry has got code working that does arc tracks… but I have no idea about how far away that is from implementation into the official branch. @cbernardo, @keruseykaryu, @madworm or @caer will probably know more about the status - if there is any.
Interesting, but that’s a ways-off, and a simple polyline segmented ARC approx will work now.
If course if full ARC entity support arrives, it will be easy to add.
Meanwhile, best to keep entities DRC and Shove understand,
Note that other CAD pgms have only modest ARC support, - for example, shove with ARC preserve is missing in Mentor.
Edit: I see road map info here, about DRC/ARC and complex Pad shapes
Sounds cool, looking forward to curved teardrops !
If the corrupted file error is solved, you could edit the thread title - maybe add a version number there ?
I expect this to be generally useful, and referred to often.
Curved teardrops are now available.
The script is still available on my github page:
The script behaviour is identical to the previous version (0.2.0).
Curved style is used by default. The number of segments per curved is controlled by the parameter “segs” of the setTearDrops function (default is 10).
If segs is set to 2, straight lines are used.
I hope this will help.
Notice: I am not very good in geometry and the only solution I found is to use a bezier curve in order to keep the teardrop tangent to the track and the via. It works but it is quite expensive in processing time. If someone has a better method, please let me know.
The script version is now 0.3.0 (the thread title is now modified)
HI
thankyou for your help, I get one error:
File “C:\Program Files\KiCad\lib\python2.7\site-packages\pcbnew.py”, line 31, in
import _pcbnew
ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。