• 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. Obtaining List of All Etch Layers in a Design

Stats

  • Replies 13
  • Subscribers 162
  • Views 18372
  • Members are here 0
More Content

Obtaining List of All Etch Layers in a Design

wERerABbiT
wERerABbiT over 16 years ago

 Hi All,

May I know if there is a function to list all the etch layers in a design (including the layer type, such as plane or conductorl)?

For example if my design has 10 layers named TOP, LAYER2, LAYER3,..... BOTTOM.

How do I get the list of layer names and the corresponding layer type?

Thanks All 

 

 

 

  • Sign in to reply
  • Cancel
  • Ejlersen
    Ejlersen over 16 years ago

    Hi,

    You can use axlGetXSection() which will give you everything you ask for plus more.

    Please see attached picture of running this command in the 'Skill development' window.

    • axlGetXSection.jpg
    • View
    • Hide
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Ejlersen
    Ejlersen over 16 years ago

    Hi,

    I forgot to mention that if you're only looking for the name of the etch layers you could use

    my_layers = axlGetParam("paramLayerGroup:etch")

    This will give you a list of all the etch layers.

    You could then cycle through these using eg.

    foreach(layer my_layers->groupMembers
      layerparams = axlLayerGet(strcat("ETCH/" layer))
        if(layerparams->type=="PLANE" && layerparams->drcPhotoType=="negative" then
         pm = 0 ; plot mode negative
      else
       pm = 1 ; plot mode positive
      ) 

    There are many practical uses of this, if you could be more specific about what you wan't there may be an even easier or better way.

    Have fun

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • KoryMJ
    KoryMJ over 10 years ago

    Hi.  I want revive this thread a little, to see if I can get a wee bit of help; my Skill ability is minor.  What I would like to know is if there is a way to do something like this, which I am currently doing with a script, tied to my PageUp button key.  It requires that I edit the script to include only conductive etch layers, which changes with every stackup:

    # Allegro script

    settoggle layerchange 1 3 5 6 8 10
    setwindow form.mini
    FORM vf_vis all_all_visible NO
    FORM vf_vis $layerchange all_colorvisible YES
    setwindow pcb
    echo "Layer " $layerchange

    I can see that I can get a list of all the layers in Skill, but how would I get only the conductive layers?  Do I need to filter them?  If so, how?  In addition, I do this with PageDown.  For me, this is such a cool way to quickly traverse all the routing layers, making it easy to see how to route out of difficult areas.  Turbo charging it with Skill would be cool.

    Kory

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • B Bruekers
    B Bruekers over 10 years ago

    First, it is wise not to use script files for changing the visibility. You can't do this fast since the window is always redrawing. 

    Better use skill to change visibility. Look at axlVisibleGet and axlVisibleSet in the ..\SPB_16.6\doc\algroskill\algroskill.pdf help file. 

    edit: With axlVisibleLayer you can set a layer visible or invisible.

    To get all etch layers: axlGetParam("paramLayerGroup:ETCH")->groupMembers

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • eDave
    eDave over 10 years ago

    axlSubclassRoute returns all etch subclasses.

    • 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