Present to you the tools to align objects on PCB.
Welcom for comments, bugs, suggestions.
Who wants to can join to development.
Code in HG repository: https://bitbucket.org/Kapustin/align
For download go to the download tab.
How better implement onPickV() and doPickH()? Now, if put coordinate in consol, we can hit to some object...
Icons not works in Allegro 15.x
axlUIMenuRegister() not work in Allegro 15.x
It is necessary to check the English expressions. Eg "Align by RIGHT boundary".
Make a simple mechanism to install. The installer or hold everything in one il-file or ...
And how it looks:
I tried this, and it works great ! Only one thing, but not important.
The issue was on a couple of my parts I did not have a pin1, (I had pin A and K) it exited with error (Symbol "Cr54" has no pin 1.E- *Error* max: can't handle max(nil -1000000.0). So maybe have a pin name selection box ? But of course when you are selecting a group of components they all won't be pin A / K ... it will be a mix of different pin numbers. So this may not be possible.
Added field for pin number/name (text field).
If pin not found then you will got warning message, and object will be aligned/bound by body center.
Currently we are using "out of the box" Allegro Align command available in Placement mode, works just fine.
Long time ago we used my simple code with simple form but I did figured out UNDO.
Basically you have to capture all "DOs" xy in a list to be able to "UNDO".
See code attached
Hi, Helen. Thanks for your concern.But in your script "undo" for only the last action, and only in the script. I implemented the "Oops", by using standart axlDBTransactionXXXX functions.I was referring to a global, external mechanism UNDO. We recently discussed this problem (http://www.cadence.com/community/forums/T/19737.aspx), and the solution is not visible.
PS Yes, I also used a standard command Align, some scripts other authors... Then wrote my own script.
axlUIMenuRegister() was new in 16.3 and will hence not work before that.
Don't know if it was updated into 16.2 / 16.01 /16.0 ISR stream, but sure it was not added to 15.x