• 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. Allegro X PCB Editor
  3. Need guidance on how to select nets, pads, and vias with...

Stats

  • Replies 19
  • Subscribers 160
  • Views 20121
  • Members are here 0
More Content

Need guidance on how to select nets, pads, and vias with a certain property

mesaman000
mesaman000 over 12 years ago

Hi,

  I'm a beginner to SKILL programming and I took the basic tutorial class but seems to not be many resources for what I need to do.  I'm trying to initialize all pads, etch, via, nets, and shapes to a certain color like GREY.  Once I do that, I want to search the PCB editor database and identify which nets have a certain spacing class property: "1" "2" "3" or "4".   I want all pads and vias with the spacing class property 1 to be RED for example, all pads and vias with the spacing class property 2 to be BLUE, etc.

 Lastly, I want to export a PDF of this color map.  Can someone please help give me an idea of how I can achieve something like this?

 

Something I've started with is roughly like this:

design_dbid=axlDBGetDesign()

scset=axlCnsList("spacing") ;**Say my four spacing constraints are Default, 1, 2, 3, 4

**how do I traverse through all pads and vias?**

comp_dbid_list=design_dbid->components (pads isn't a property of design_dbid, is this the right method?)

foreach(comp_dbid comp_dbid_list

if comp_dbid->scset==1

**how do I change the color of these to RED? 

 

 

If anyone could provide any guidance or help it would be great!  Thank you! 

 

  • Sign in to reply
  • Cancel
  • eDave
    eDave over 12 years ago

    You are only setting the TOP layer to gray.

    Try:

    foreach(subclass, axlSubclasses("ETCH")

    foreach(class, '("ETCH" "PIN", "VIA CLASS"), q = axlLayerGet(strcat(class, "/", subclass)), q ->color = gray, axlLayerSet(q))

    ) 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mesaman000
    mesaman000 over 12 years ago
    hm.. but how does that help the via coloring problem I'm having?
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • eDave
    eDave over 12 years ago
    I still think that your code should work. You may just need to refresh your view and ensure that you are just looking at etch layers.
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mesaman000
    mesaman000 over 12 years ago

    Hey Dave,

      I've attached a picture of what's happening even after setting all layers/subclasses to become grey and turning universal colors on (all laeyrs are shown but this is only a 2 layer board with a ground plane on the bottom).  All the pads are correct but my vias still will not set for whatever reason.. 

     

    Script problem 
    Thanks again

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Aldrin
    Aldrin over 12 years ago

    Hi,

    This is because axlCustomColorObject command doesn't support vias for allegro version 16.5 and below as the documentation stated as follows.

    Custom color the provided dbid or list of dbids. Objects supported are nets, symbol instances,pins, and external DRCs.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
<>
Cadence Guidelines

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