Home > Community > Forums > Custom IC SKILL > Skill code for turn rectangle metal to mesh in the virtuoso layout editor

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Skill code for turn rectangle metal to mesh in the virtuoso layout editor 

Last post Fri, Mar 22 2013 3:31 PM by cadengr. 8 replies.
Started by ZhouDL 16 May 2012 07:39 AM. Topic has 8 replies and 3415 views
Page 1 of 1 (9 items)
Sort Posts:
  • Wed, May 16 2012 7:39 AM

    • ZhouDL
    • Not Ranked
    • Joined on Wed, May 16 2012
    • Posts 5
    • Points 70
    Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply
    Hi,

    I want write a skill script for turning rectangle metal to mesh or slot on the rectangle metal automatically in the virtuoso layout editor when I press a bindkey.

    but I am not very familiar with cadence skill .Can anyone help me on this?

    Thanks,

    PS: I want to post some sort of screenshot from my computer for what I really want to do,but I do not know how to do.Anyone can teach me to do this´╝č
    • Post Points: 20
  • Wed, May 16 2012 7:57 AM

    • skillUser
    • Top 10 Contributor
    • Joined on Fri, Sep 19 2008
    • Austin, TX
    • Posts 2,535
    • Points 14,940
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    Hi,

    If you reply to the message thread in a browser you should see tabs across the top ("Compose", "Options"... ) - select Options and you should be able to upload a jpg/png image of what you are wanting to do.  A picture is worth a thousand words, so this would help I think.

    Without seeing the desired result I would guess at using chop rectangles within the original rectangle to obtain a complex polygon with holes in it. Or perhaps replace it with horizontal and vertical overlapping strips and then merge into a single shape?  There might be multiple ways of doing this...

    Best regards,

    Lawrence.

    • Post Points: 50
  • Wed, May 16 2012 10:04 AM

    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    If using IC615, you can either create metal slotting during creation of shapes (such as rectangles), or using Edit->Advanced->Slot.

    So maybe that does what you want as a standard feature.

    Regards,

    Andrew.

    • Post Points: 20
  • Thu, May 17 2012 6:08 AM

    • ZhouDL
    • Not Ranked
    • Joined on Wed, May 16 2012
    • Posts 5
    • Points 70
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    skillUser:

    Hi,

    If you reply to the message thread in a browser you should see tabs across the top ("Compose", "Options"... ) - select Options and you should be able to upload a jpg/png image of what you are wanting to do.  A picture is worth a thousand words, so this would help I think.

    Without seeing the desired result I would guess at using chop rectangles within the original rectangle to obtain a complex polygon with holes in it. Or perhaps replace it with horizontal and vertical overlapping strips and then merge into a single shape?  There might be multiple ways of doing this...

    Best regards,

    Lawrence.

    thanks for your suggest. But I do not know how to write skill language to implement this, can you help me this in detail?

    I have posted some sort of screenshot as follow.I want to turn solid rectangle metal (left screenshot) to mesh (right screenshot) when I press the bindkey.


    • Post Points: 5
  • Thu, May 17 2012 6:14 AM

    • ZhouDL
    • Not Ranked
    • Joined on Wed, May 16 2012
    • Posts 5
    • Points 70
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    skillUser:

    Hi,

    If you reply to the message thread in a browser you should see tabs across the top ("Compose", "Options"... ) - select Options and you should be able to upload a jpg/png image of what you are wanting to do.  A picture is worth a thousand words, so this would help I think.

    Without seeing the desired result I would guess at using chop rectangles within the original rectangle to obtain a complex polygon with holes in it. Or perhaps replace it with horizontal and vertical overlapping strips and then merge into a single shape?  There might be multiple ways of doing this...

    Best regards,

    Lawrence.

    thanks for your suggest. But I do not know how to write skill language to implement this, can you help me this in detail?

    I have posted some sort of screenshot as follow.I want to turn solid rectangle metal (upper screenshot) to mesh (down screenshot) when I press the bindkey.


    • Post Points: 20
  • Thu, May 17 2012 6:16 AM

    • ZhouDL
    • Not Ranked
    • Joined on Wed, May 16 2012
    • Posts 5
    • Points 70
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    Andrew Beckett:

    If using IC615, you can either create metal slotting during creation of shapes (such as rectangles), or using Edit->Advanced->Slot.

    So maybe that does what you want as a standard feature.

    Regards,

    Andrew.

    Thanks a lot.But I use IC5141,so I have to write skill script.

    • Post Points: 5
  • Thu, May 17 2012 6:54 AM

    • dmay
    • Top 25 Contributor
    • Joined on Thu, Jul 17 2008
    • Allen, TX
    • Posts 386
    • Points 7,290
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    Try this code. It will create a polygon instead of strips of metal.

    procedure(meshSelected(@key (meshWidth 1.0) (cv geGetEditCellView()))
      let((shape box innerBox rects mesh)
        shape = car(selectedSet())
        box = shape~>bBox
        innerBox = list(xCoord(lowerLeft(box))+meshWidth:yCoord(lowerLeft(box))+meshWidth
                        xCoord(upperRight(box))-meshWidth:yCoord(upperRight(box))-meshWidth)
        rects = rodFillBBoxWithRects(
            ?cvId geGetEditCellView()
            ?layer "y0"
            ?fillBBox innerBox
            ?width meshWidth
            ?length meshWidth
            ?spaceX meshWidth
            ?spaceY meshWidth
            ?gap 'minimum ;optionally 'distribute
        )

        mesh = dbLayerAndNot(cv shape~>lpp list(shape) rects 1000) ;last # is max # of vertices
        dbDeleteObject(shape)
        mapcar('dbDeleteObject rects)
        mesh
      ) ;let
    ) ;proc

    Select your piece of metal and run this command, filling in the appropriate number for the width of your holes. I coded a default of 1.0. Also, the program above keeps the holes at a minimum space (meshWidth). If your rectangle is not a perfect multiple of the meshWidth, you'll end up with wide strips at the top and right. You can change the ?gap argument to be 'distribute and the mesh will be more even.

    meshSelected(?meshWidth 2.0)

    Derek

    • Post Points: 20
  • Fri, May 18 2012 8:19 AM

    • ZhouDL
    • Not Ranked
    • Joined on Wed, May 16 2012
    • Posts 5
    • Points 70
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

    dmay:

    Try this code. It will create a polygon instead of strips of metal.

    procedure(meshSelected(@key (meshWidth 1.0) (cv geGetEditCellView()))
      let((shape box innerBox rects mesh)
        shape = car(selectedSet())
        box = shape~>bBox
        innerBox = list(xCoord(lowerLeft(box))+meshWidth:yCoord(lowerLeft(box))+meshWidth
                        xCoord(upperRight(box))-meshWidth:yCoord(upperRight(box))-meshWidth)
        rects = rodFillBBoxWithRects(
            ?cvId geGetEditCellView()
            ?layer "y0"
            ?fillBBox innerBox
            ?width meshWidth
            ?length meshWidth
            ?spaceX meshWidth
            ?spaceY meshWidth
            ?gap 'minimum ;optionally 'distribute
        )

        mesh = dbLayerAndNot(cv shape~>lpp list(shape) rects 1000) ;last # is max # of vertices
        dbDeleteObject(shape)
        mapcar('dbDeleteObject rects)
        mesh
      ) ;let
    ) ;proc

    Select your piece of metal and run this command, filling in the appropriate number for the width of your holes. I coded a default of 1.0. Also, the program above keeps the holes at a minimum space (meshWidth). If your rectangle is not a perfect multiple of the meshWidth, you'll end up with wide strips at the top and right. You can change the ?gap argument to be 'distribute and the mesh will be more even.

    meshSelected(?meshWidth 2.0)

    Derek

    Thanks a lot,Derek.I will try it.

    • Post Points: 20
  • Fri, Mar 22 2013 3:31 PM

    • cadengr
    • Not Ranked
    • Joined on Mon, Apr 30 2012
    • San Jose, CA
    • Posts 1
    • Points 5
    Re: Skill code for turn rectangle metal to mesh in the virtuoso layout editor Reply

     It works for me. Thanks for posting it.

    • Post Points: 5
Page 1 of 1 (9 items)
Sort Posts:
Started by ZhouDL at 16 May 2012 07:39 AM. Topic has 8 replies.