• 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. Digital Implementation
  3. About encounter DB command & its hidden option?

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 90
  • Views 7577
  • 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

About encounter DB command & its hidden option?

archive
archive over 18 years ago

Dear All:

I am a new comer here, I got two questions to ask:

1. Is there any db commands that can manipulate polygons, which means that I can cut a rectangular region or fence into polygon shaped?
2. Can anyone tell me some encounter hidden variables like "set drouteUseMinSpacingForBlockage true"


Originally posted in cdnusers.org by eminemshow
  • Cancel
Parents
  • archive
    archive over 18 years ago

    For 1, there's a couple of different ways to get this. First, there's a corresponding "getObjFPlanBoxList" that goes with setObjFPlanBoxList. It works like this:

    encounter 34> getObjFPlanBoxList Module DTMF_INST/RESULTS_CONV_INST
    942.48 598.08 1172.16 749.28 942.48 749.28 1100.88 829.92

    You could also query the db similarly to how you have with "dbConstraintBox" to get a list of the boxes that make up the polygon. Here's an example of how you could do that with FE-TCL:

    proc userConstraintBoxList {hinstName} {
    set constraintBoxList {}
    set constraint [dbHInstConstraint [dbGetHInstByName $hinstName]]
    set constraintBox [dbConstraintBox $constraint]
    dbForEachConstraintBox $constraint box {
    set ptrBox [dbBoxPtrBox $box]
    lappend constraintBoxList $ptrBox
    }
    if {[llength $constraintBoxList] > 0} {
    return $constraintBoxList
    } else {
    return $constraintBox
    }
    }

    encounter 28> userConstraintBoxList DTMF_INST/RESULTS_CONV_INST
    {1884960 1498560 2201760 1659840} {1884960 1196160 2344320 1498560}

    This scripted method is probably easier to do if you're writing a script because you can control the formatting of what is returned to suit your needs.

    For item 2, using 6.2 you can use "setECOMode -noRefinePlace" to suppress refinePlace during eco commands. In 6.1 and earlier, you can use "setOptMode -noRPlace" to achieve same.

    -Bob


    Originally posted in cdnusers.org by BobD
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • archive
    archive over 18 years ago

    For 1, there's a couple of different ways to get this. First, there's a corresponding "getObjFPlanBoxList" that goes with setObjFPlanBoxList. It works like this:

    encounter 34> getObjFPlanBoxList Module DTMF_INST/RESULTS_CONV_INST
    942.48 598.08 1172.16 749.28 942.48 749.28 1100.88 829.92

    You could also query the db similarly to how you have with "dbConstraintBox" to get a list of the boxes that make up the polygon. Here's an example of how you could do that with FE-TCL:

    proc userConstraintBoxList {hinstName} {
    set constraintBoxList {}
    set constraint [dbHInstConstraint [dbGetHInstByName $hinstName]]
    set constraintBox [dbConstraintBox $constraint]
    dbForEachConstraintBox $constraint box {
    set ptrBox [dbBoxPtrBox $box]
    lappend constraintBoxList $ptrBox
    }
    if {[llength $constraintBoxList] > 0} {
    return $constraintBoxList
    } else {
    return $constraintBox
    }
    }

    encounter 28> userConstraintBoxList DTMF_INST/RESULTS_CONV_INST
    {1884960 1498560 2201760 1659840} {1884960 1196160 2344320 1498560}

    This scripted method is probably easier to do if you're writing a script because you can control the formatting of what is returned to suit your needs.

    For item 2, using 6.2 you can use "setECOMode -noRefinePlace" to suppress refinePlace during eco commands. In 6.1 and earlier, you can use "setOptMode -noRPlace" to achieve same.

    -Bob


    Originally posted in cdnusers.org by BobD
    • 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