rodAssignHandleToParameter

Discussion in 'Cadence' started by Guenther Sohler, Sep 24, 2007.

  1. Hallo,

    I have been programming pcells and used the function

    rodAssignHAndleToParameter.

    This works quite well, normally,

    but now I create a handle and i want to assign a vertical and a horizontal
    stretch direction to it. Obviously the vertical direction has other
    functionality than the horizontal stretch direction.

    IT does not work. i just can use the last functionality defined.
    I even tried defining 2 separate handles. It still does not work.

    Is it possible at all ?


    rds
     
    Guenther Sohler, Sep 24, 2007
    #1
  2. Guenther Sohler

    jayl-news Guest

    Like this fragment? (draws two metal plates, Mn and Mn+1,
    floods them with vias, and gives you a stretch handle at
    upper-right that pulls in either X or Y):

    mrect = rodCreateRect( ?layer mTop ?width x ?length y
    ?subRectArray list(
    list(
    ?layer via
    ?width viaWidth
    ?length viaWidth
    ?lowerLeftOffsetX enc
    ?lowerLeftOffsetY enc
    ?upperRightOffsetX -enc
    ?upperRightOffsetY -enc
    ?gap "distribute"
    ?spaceX space
    ?spaceY space
    )
    )
    )
    ; draw top metal no need for rod, x,y slaved from bottom metal
    dbCreateRect(cvId mBot list( list(0 0) list(x y) )
    )
    ; Make the stretch handle(s)
    rodAssignHandleToParameter(
    ?parameter "x"
    ?rodObj mrect
    ?handleName "upperRight"
    ?displayName "x"
    ?stretchDir "X"
    ?stretchType "relative"
    ?moveOrigin t
    )
    rodAssignHandleToParameter(
    ?parameter "y"
    ?rodObj mrect
    ?handleName "upperRight"
    ?displayName "y"
    ?stretchDir "Y"
    ?stretchType "relative"
    ?moveOrigin t
    )
     
    jayl-news, Sep 25, 2007
    #2
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.