• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. how do you toggle between enterPoint() and enterBox()

Stats

  • Locked Locked
  • Replies 15
  • Subscribers 143
  • Views 19082
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

how do you toggle between enterPoint() and enterBox()

Adhil
Adhil over 13 years ago

Hi

I am trying to create this align function that functions similarly to that of icstation.

the following describes how the macro is used

1. you select the object that you want to move to align

2. invoke the align function via a bindkey

3. the function prompts you to enter a point which it then uses to select the reference object.

4. complete the action by moving the initially object and aligning it to the reference object.

 how can i make the selection of the reference object be versatile so that i can click to select a reference object or draw a box to select multiple reference objects. i was thinking of a function  that can toggle between enterpoint() or enterbox(), but i dont know how to do this. please help.

thanks

Adhil

  • Cancel
Parents
  • dmay
    dmay over 13 years ago

    Take a closer look at the code.

    1. In the drawThru1Bk code, the "case" command will run CreateAlignSet if either "xAlign" or "yAlign" is running. It doesn't matter which command is running since CreateAlignSet simply selects some items. As I suggested in my last post, this should be made more generic since there are not two separate enter functions. Setting the cmdName to "myAlign" and checking only for that command would be a cleaner way to do it.

    2. No, you cannot make bindkeys be function specific. That is why I implemented it like I did. This drawThru1Bk procedure could be expanded to do many different functions for many different commands. It is similar to cmdOption() or lxCmdOptions() bindkey functions that you might find on your right or middle mouse buttons (depends on your Cadence version). These functions do different things depending on the command you run. For example, if you are moving a via, and use one of these bindkeys, your via will rotate. However, if you use the same bindkey during a split command it will toggle how an item will be split.

    Derek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • dmay
    dmay over 13 years ago

    Take a closer look at the code.

    1. In the drawThru1Bk code, the "case" command will run CreateAlignSet if either "xAlign" or "yAlign" is running. It doesn't matter which command is running since CreateAlignSet simply selects some items. As I suggested in my last post, this should be made more generic since there are not two separate enter functions. Setting the cmdName to "myAlign" and checking only for that command would be a cleaner way to do it.

    2. No, you cannot make bindkeys be function specific. That is why I implemented it like I did. This drawThru1Bk procedure could be expanded to do many different functions for many different commands. It is similar to cmdOption() or lxCmdOptions() bindkey functions that you might find on your right or middle mouse buttons (depends on your Cadence version). These functions do different things depending on the command you run. For example, if you are moving a via, and use one of these bindkeys, your via will rotate. However, if you use the same bindkey during a split command it will toggle how an item will be split.

    Derek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information