instance, path/wire, polygons, rectangle, contacts etc. either "vert">
     
Wednesday, February 08, 2012     Register | Login | Search | Contact Us
     

Many of you already received communications about the move of the Cadence user community into cadence.com. And many of you have already joined, with over 4000 registrations in the first two weeks.

The new Cadence Community enhances the ability of Cadence users to connect and collaborate. In addition to moving the community into cadence.com -- enabling single sign-on for community, Sourcelink and Cadence events -- the new site is organized around nine technology segments, giving you easy access to product information, training, forums and blogs. Some of the new features include:
  • Ability to respond to posts via e-mail
  • Technology-specific blogs
  • Latest Web 2.0 social networking capabilities
  • Public profile options
  • Private messaging
  • Friends lists
Visit the new Cadence Community today at www.cadence.com/community and join the discussions!

Registration note: Due to the scope of the enhancements and the new SSO registration system, we were not able to migrate existing cdnusers.org member accounts. So new registrations are required, but this enables a broader set of functionality we think you'll enjoy.

Forum note: Under the guidance of forum moderators, we have taken the 20+ cdnusers.org forums and consolidated them into 11 forums on the new site. Posts have been brought over so you can leverage that posting history. CDNusers forums will be set to read only starting 7/30, and cdnusers.org will be redirected to the new community on 8/4.

Best regards,
Mike and Tom

Michael A. Catrambone - Steering Committee Chairman
Distinguished Engineer
PCB/Mechanical
UTStarcom, Inc.

Tom Diederich
Cadence Community Manager
Home
Forums
Subject: Asking SKILL Code for Virtouso
Posting to forums is available to community members only.
Login or Register
Rate this topic:
   
Author Messages
wonderkamote
Posts: 1
Online: User is Offline
11/22/2005 7:04 AM  
I'm new to the forums and really need this code.

Here goes, I would like a SKILL code for Virtouso that goes something like this. It's a "Flip Command". The code should flip any object-->instance, path/wire, polygons, rectangle, contacts etc. either "vertical" or "horizontal". And added to that, if you select multiple objects, you could also flip them "vertical or horizontal". it's like a picture when you flip it or mirror it.

like, the objects are selected, "123" when FLIPPED all objects becomes "321".

Thanks. I hope someone could help me, i have other request for Virtouso but they don't have any forums.
relyveld
Posts: 0
Online: User is Offline
3/09/2006 1:16 PM  
My first reaction is why don't you do this without skill in Virtuoso? Just select the
things, type m to move, click the swap button from the form, and click the right
mouse button to place them flipped.
If you want to do this with skill, you not only need to swap each instance but also
calculate a new origin for each instance.

Greetings, William.


I have an example how to rotate instances here. It is not difficult to modify this for
flipping only. However, only the orientation is modified, not the origin.

procedure( wrRotateInst( )

  let( ( wrOrient)

    foreach( instancepointer geGetSelectedSet( )
      unless( null( instancepointer->orient)
    wrOrient = instancepointer->orient
    case( wrOrient
      ( "R0"
        wrOrient = "R90"
      )
      ( "R90"
        wrOrient = "R180"
      )
      ( "R180"
        wrOrient = "R270"
      )
      ( "R270"
        wrOrient = "R0"
      )
      ( "MY"
        wrOrient = "MYR90"
      )
      ( "MYR90"
        wrOrient = "MX"
      )
      ( "MX"
        wrOrient = "MXR90"
      )
      ( "MXR90"
        wrOrient = "MY"
      )
    ) ;; case
    instancepointer->orient = wrOrient
      ) ;; unless
    ) ;; foreach
  ) ;; let
)


Administrator
Posts: 157
Online: User is Offline
3/09/2006 1:27 PM  
Relyveld and William,

The "Virtuoso SKILL forum" is known here by the "Custom IC Skill" .

I will now move this thread to that forum.

Administrator
adbeckett
Posts: 248
Online: User is Offline
3/26/2006 10:41 PM  
Attached is some SKILL code for providing a convenient function for doing in-place
flipping and rotation. See the comments in the code for more details on using it.

Regards,

Andrew.


Attachment: abFlip.il

adbeckett
Posts: 248
Online: User is Offline
3/27/2006 2:31 PM  
Apologies for the previous code I posted - it was missing some auxilliary functions defined in another file. This time I've attached the combined code (renamed slightly to follow the normal conventions for customer code - having an uppercase prefix) - which includes all the auxilliary functions.

Regards,

Andrew.


Attachment: CCSflip.il

bigWayne
Posts: 3
Online: User is Offline
6/26/2006 11:33 AM  
Thanks adbeckett.  This looks really useful.  However, being the newb that I am to SKILL....how do I use this file with Virtuoso?  I'm guessing that I might add a load statement to my .cdsinit file to load the whole file at startup.  But then how do I make work?  Do you use this with bindkeys, or does this somehow work dynamically with the right mouse button after the 'move' bindkey is hit?

I'd appreciate any help you could give on this since I can see myself using this a lot.

adbeckett
Posts: 248
Online: User is Offline
6/27/2006 2:48 PM  
You would add a line to your .cdsinit file:

load("/path/to/CCSflip.il")

and then define a bindkey (for example):

hiSetBindKey("Layout" "n" "CCSflip(?orient "MY" ?relativeTo 'upperRight ?mode 'copy)")

with whichever bindkey you want, and variant of the function you want (see the comments at the top for examples) in the final argument string.

Regards,

Andrew.
Posting to forums is available to community members only.
Login or Register

Forums > Custom IC > Shared code - SKILL > Asking SKILL Code for Virtouso


ActiveForums 3.6
     
Copyright 2006 Cadence Design Systems, Inc.