• 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. Is there a way to selectively Blank items?

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 146
  • Views 11235
  • 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

Is there a way to selectively Blank items?

wklane
wklane over 4 years ago

Is there a way to Blank currently selected items?  By blanking I mean make it no longer visible but not deleted.  Layers can be turned off and cells can have their visibility dimmed but if I have 2 particular pieces of metal2  and a cell selected I  want to blank those while leaving other metal2 visible.    The work around is to write all selected objects to a file, delete selected, then read the file to replace the objects.  We just don't want to continually risk deleting data.  Thanks

Kerry

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    I think by "Blank" you're asking to control the visibility of specific shapes. I'm not aware of any way of doing this. I think it's somewhat risky as then you might fail to see something that's really in the layout.

    If however you wanted to do this without deleting and recreating, one approach might be to add a new purpose in the tech file called (say) "invisible" and then create a layer-purpose for each of your metal layers. Then set the visibility of that in the tech file to be off.

    All you'd then need to do is for the selected shapes do:

    procedure(CCFselectedInvisible(@optional (objs geGetSelSet()))
      foreach(shape objs
        when(shape~>purpose=="drawing"
          shape~>purpose="invisible"
        )
      )
      t
    )

    You'd have more of a problem changing them back because you couldn't then select them, but I guess you could fix all at once using:

    procedure(CCFallVisible(@optional (cv geGetEditCellView()))
      foreach(lpp cv~>lpps
        when(lpp~>purpose=="invisible"
          foreach(shape lpp~>shapes
            shape~>purpose="drawing"
          )
        )
      )
      t
    )

    Then define two bind keys using CCFselectedInvisible() and CCFallVIsible(). I quickly tested it and it seems to work OK.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    I think by "Blank" you're asking to control the visibility of specific shapes. I'm not aware of any way of doing this. I think it's somewhat risky as then you might fail to see something that's really in the layout.

    If however you wanted to do this without deleting and recreating, one approach might be to add a new purpose in the tech file called (say) "invisible" and then create a layer-purpose for each of your metal layers. Then set the visibility of that in the tech file to be off.

    All you'd then need to do is for the selected shapes do:

    procedure(CCFselectedInvisible(@optional (objs geGetSelSet()))
      foreach(shape objs
        when(shape~>purpose=="drawing"
          shape~>purpose="invisible"
        )
      )
      t
    )

    You'd have more of a problem changing them back because you couldn't then select them, but I guess you could fix all at once using:

    procedure(CCFallVisible(@optional (cv geGetEditCellView()))
      foreach(lpp cv~>lpps
        when(lpp~>purpose=="invisible"
          foreach(shape lpp~>shapes
            shape~>purpose="drawing"
          )
        )
      )
      t
    )

    Then define two bind keys using CCFselectedInvisible() and CCFallVIsible(). I quickly tested it and it seems to work OK.

    Andrew

    • 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