VPFREEZE layers that are FROZEN

VPFREEZE layers that are FROZEN

psantosLMR8G
Participant Participant
431 Views
4 Replies
Message 1 of 5

VPFREEZE layers that are FROZEN

psantosLMR8G
Participant
Participant

Greetings to all.

Long time reader, first time writing - sorry about that, i'm not native English.

Normally i don't need to spit my poor English - the search box is my good friend - you guys have everything figured out! Thanks - lots of lifesavers!

 

I can't find anything like this, if someone can help me with that:

 

I use freezed xrefs in my daily routine of work, this means every time i need to produce an revision in layout, i will get the unfrozen xrefs that i was working in model printed.

My workaround is to manualy vpfreeze all the frozen layers on the first revision - see image.

 

I'm starting this new construction, my working file has already 30+ xref'ed projects, meaning at least 30 clicks everytime i produce a new layout.

If someone could help me with a simple LISP, i will be much apreciated.

 

NOTE: i already try Layer State Manager, but i end up with a lot of states: one for every layout, more the ones i create for modeling... not what i need.

Cool fact (or not) i actually find out the 254 layout limit by myself - meaning i could easly need 254+ LAS.

 

Thanks in advance!

 

psantosLMR8G_1-1654274656077.png

 

 

0 Likes
Accepted solutions (1)
432 Views
4 Replies
Replies (4)
Message 2 of 5

pendean
Community Legend
Community Legend
0 Likes
Message 3 of 5

psantosLMR8G
Participant
Participant

Thanks for your answer, the post you propose doesn't meet my needs.

I would like to vpfreeze all frozen layers, seems redundant, but when i return to the layout to produce an revision to the drawing, the vpfreeze state will help me put the correct xrefs in the correct state.

 

An example:

after the first emission and after i manually vpfreeze all frozen layers

when returning to layout, a quick check to layer box, i will need to unfreeze ARQ-C3.

psantosLMR8G_0-1654504566926.png

 

 thanks in advance.

0 Likes
Message 4 of 5

ВeekeeCZ
Consultant
Consultant
Accepted solution

VPFreeze in current VP. It does not test/change layers that are already vpfrozen.

 

(defun c:VPFreezeFrozen ( / :LayerListFrozen l)

  (defun :LayerListFrozen (/ d l)
    (while (setq d (tblnext "layer" (null d)))
      (if (= 1 (logand (cdr (assoc 70 d)) 1))
	(setq l (cons (cdr (assoc 2 d)) l))))
    l)

  (if (setq l (:LayerListFrozen))
    (progn
      (command "_.vplayer")
      (foreach y l (command "_f" y "_c"))
      (command "")))
  (princ)
  )

 

Message 5 of 5

psantosLMR8G
Participant
Participant
Thanks a lot! it works like a charm!
0 Likes