Symbolic Via Issue.

Guest
Hi All,

Andrew gave me some code, which I changed slightly, to place Text on
all Instances in a heirarchy. I ran into a case where I have
"Symbolic" vias that are getting Text placed on them. When I select
one of the vias and perform Edit Instance Properties, the View is
symbolic. I think the safest thing would be to label with text only
"layout" views.

I have tried to do this, but I couldn't get it.

Any help would be greatly appreciated.

Thank you in advance,
Eric



procedure(AllCustomNamesDeviceText(@key (cv geGetEditCellView())
(layerName "text") (height EFHeightAns) (orient EFOrientationAns)
(justification EFJustificatonAns) (font EFFontAns))
let( (label)
foreach(mapcar inst cv~>instances
unless(leIsContact(inst); This strips out vias made with Create
Contact. We are not using IC61
label=dbCreateLabel(
cv
layerName
list((leftEdge(inst)+rightEdge(inst))/2 (topEdge(inst)+bottomEdge
(inst))/2)
EFCustomLabelAns; From the form, "Enter Custom Label"
justification
orient
font
height
) ; dbCreateLabel
leAttachFig(label inst)
label
) ; leIsContact
) ; foreach
) ; let
) ; procedure
 
eric.d.fitzsimmons@gmail.com wrote:
Hi All,

Andrew gave me some code, which I changed slightly, to place Text on
all Instances in a heirarchy. I ran into a case where I have
"Symbolic" vias that are getting Text placed on them. When I select
one of the vias and perform Edit Instance Properties, the View is
symbolic. I think the safest thing would be to label with text only
"layout" views.

I have tried to do this, but I couldn't get it.

Any help would be greatly appreciated.

Thank you in advance,
Eric



procedure(AllCustomNamesDeviceText(@key (cv geGetEditCellView())
(layerName "text") (height EFHeightAns) (orient EFOrientationAns)
(justification EFJustificatonAns) (font EFFontAns))
let( (label)
foreach(mapcar inst cv~>instances
unless(leIsContact(inst); This strips out vias made with Create
Contact. We are not using IC61
label=dbCreateLabel(
cv
layerName
list((leftEdge(inst)+rightEdge(inst))/2 (topEdge(inst)+bottomEdge
(inst))/2)
EFCustomLabelAns; From the form, "Enter Custom Label"
justification
orient
font
height
) ; dbCreateLabel
leAttachFig(label inst)
label
) ; leIsContact
) ; foreach
) ; let
) ; procedure
You could try to replace

unless(leIsContact(inst)

with:

unless(inst~>viewName=="symbolic" ; skipping all views called "symbolic"

or:

unless(inst~>viewName!="layout" ; skipping everything which is not "layout"

Regards,
Marc
 
On Mar 18, 11:02 am, Marc Heise <mhe...@DcOaNdTeSnPcAeM.cMoEm> wrote:
eric.d.fitzsimm...@gmail.com wrote:
Hi All,

Andrew gave me some code, which I changed slightly, to place Text on
all Instances in a heirarchy.   I ran into a case where I have
"Symbolic" vias that are getting Text placed on them.  When I select
one of the vias and perform Edit Instance Properties, the View is
symbolic.   I think the safest thing would be to label with text only
"layout" views.

I have tried to do this, but I couldn't get it.

Any help would be greatly appreciated.

Thank you in advance,
Eric

procedure(AllCustomNamesDeviceText(@key (cv geGetEditCellView())
(layerName "text") (height EFHeightAns) (orient EFOrientationAns)
(justification EFJustificatonAns) (font EFFontAns))
let( (label)
  foreach(mapcar inst cv~>instances
   unless(leIsContact(inst); This strips out vias made with Create
Contact. We are not using IC61
   label=dbCreateLabel(
    cv
    layerName
    list((leftEdge(inst)+rightEdge(inst))/2 (topEdge(inst)+bottomEdge
(inst))/2)
    EFCustomLabelAns;      From the form, "Enter Custom Label"
    justification
    orient
    font
    height
   ) ; dbCreateLabel
   leAttachFig(label inst)
   label
   ) ; leIsContact
  ) ; foreach
) ; let
) ; procedure

You could try to replace

unless(leIsContact(inst)

with:

unless(inst~>viewName=="symbolic"   ; skipping all views called "symbolic"

or:

unless(inst~>viewName!="layout"   ; skipping everything which is not "layout"

Regards,
Marc- Hide quoted text -

- Show quoted text -
Marc,

unless(inst~>viewName!="layout"; this worked perfectly.

I was pretty close to getting this myself, but couldn't find or figure
out "viewName". I tried "view" and View and cellView.

Oh well, every day learn something new.

Thank you very much for your help,
Eric
 
Marc,

unless(inst~>viewName!="layout"; this worked perfectly.

I was pretty close to getting this myself, but couldn't find or figure
out "viewName". I tried "view" and View and cellView.

Oh well, every day learn something new.

Thank you very much for your help,
Eric

Eric,
You could've checked the available properties (is this the right
term?) with:
inst~>? [-or-] inst~>?? [-shows all properties & their
values-]
of course it would be easier to check if you did it on 1 particular
instance or else if you do something like:
cv~>instances~>?
you'll get a list of properties for each & every instance.
I do this with forms & fields as well, though I sometimes type '->'
instead of '~>' of which I'm not sure what difference it makes here.

Best regards,
I-FAB

PS: I haven't tried the code yet since I usually put my internet
browser on 1 desktop & open virtuoso on another desktop; switching
between desktops can be a pain on my low-memory pc. So I rarely open
virtuoso unless I really have to since the time-lag & the potential
license queue can be quite a hassle.
 

Welcome to EDABoard.com

Sponsor

Back
Top