• 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. Modify dynamic shape parameters using SKILL

Stats

  • Replies 13
  • Subscribers 161
  • Views 20008
  • Members are here 0
More Content

Modify dynamic shape parameters using SKILL

migrg
migrg over 7 years ago

Hi, I'm trying to modify the shape parameters (thermal relief, void controls, etc.) using SKILL. I can access the object but I don't see any properties or parameters to modify (prop is nil). Any ideas of where those properties hide in the database? Here is what I can see in the SKILL command line, id is the dbid of the shape

id~>??
(prop nil priority -7 dynamicGroup
dbid:0x2aee03f17098 taper nil shapeAuto
(dbid:0x2aee0ca2f500 dbid:0x2aee0ca2f470 dbid:0x2aee0ca2f3e0 dbid:0x2aee0ca2f350 dbid:0x2aee0ca2f2c0
dbid:0x2aee0ca2f230
)
region nil bBox
((-19600.0 -19300.0)
(19300.0 19300.0)
) readOnly
t voids nil net dbid:0x2aedbf2396d8
objType "shape" segments
(dbid:0x2aee0c14ef10 dbid:0x2aee0c14ee38 dbid:0x2aee0c14eb40 dbid:0x2aee0c14e958) nSegs
4 fillet nil fill t
connect nil cavity nil branch
nil fillOOD nil shapeBoundary nil
shapeIsBoundary t isRect nil layer
"BOUNDARY/L1" symbolEtch nil parent nil
isHole nil parentGroups nil
)

  • Sign in to reply
  • Cancel
  • cdlep
    cdlep over 5 years ago in reply to FoCo

    Let me add on to this as it becomes active.  I cannot find the switch for "Automatically delete isolated shapes" or "Automatically delete antenna shapes" with axlGetParam("shapeDynamic")->??.  It does not record as a preference in the env file.  How do I check/set these directives?  Thanks

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Season
    Season over 5 years ago

    An old thread, and seems no answer. I am also looking for the way these days. 

    make a long story short, axlGetParam("shapeDynamic")  can just get the global parameter of the shape. 

    But how can get the parameter of a shape instance by skill, especially get the override value. 

    Does any know that? Thanks. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mstaub
    mstaub over 5 years ago in reply to Season

    Hi Season,

    Using Skill you currently cannot modify the parameters of an individual dynamic shape, you can only do it at the global level for all dynamic shapes. I have cases submitted to Cadence regarding this exact topic. Still no word on if/when it will be implemented.

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

    Get the dbId of the shape on the boundary or etch. Then look for the ->dynamicGroup->prop  value.

    So lets assume 'dbid' is the variable with the shape dbId:

    Skill > dbid->dynamicGroup->prop~>??
    (DYN_SHAPE_PRIORITY "32334" SMOOTH_MIN_GAP "0.152 MM" DYN_FIXED_THERM_WIDTH
        "0.381 MM" VIA_THERM_CONN "FULL_CONTACT" THRU_THERM_CONN "FULL_CONTACT"
        SMD_THERM_CONN "FULL_CONTACT" VIA_MIN_THERMS "4" THRU_MIN_THERMS
        "4" SMD_MIN_THERMS "4"
    )

    These are the specific override settings on a single dynamic shape.

    You can add/change the properties with:

    axlDBAddProp( dbid->dynamicGroup '("SMOOTH_MIN_GAP"    "0.567 MM" ))

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

    B Bruekers,

    Thanks for this tip. I find it interesting that Cadence wasn't aware of this, or at least the people we were interfacing with. 

    That said, I believe if you want to retrieve these properties you can only use the dbid of the boundary, not the shape. Skill > dbid->dynamicGroup->prop~>?? on an ETCH layer shape will return nil. (at least in the quick testing I did)

    • 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