[AutoLisp] Zmiana widoczności warstwy.


Recommended Posts

Dobry wieczór,

Mam takie szybkie pytanko. Myślę, że sprawa jest banalna, ale nie mogę tego nigdzie znaleźć.

No więc:  jaką komendą da się zmienić widoczność danej warstwy w tablicy?

    (setq LAY (tblsearch "layer" "zbrojenie_linie" ))
    (setq LAY (subst (cons 62 -8 )(assoc 62 LAY) LAY))
    (entmod LAY )

Chciałem w ten sposób, ale program [ZW-Cad 2020] nie współpracuje. Pozdrawiam 😉

 

 

Link to comment
Share on other sites

6 godzin temu, swazy napisał:

Dobry wieczór,

Mam takie szybkie pytanko. Myślę, że sprawa jest banalna, ale nie mogę tego nigdzie znaleźć.

No więc:  jaką komendą da się zmienić widoczność danej warstwy w tablicy?

    (setq LAY (tblsearch "layer" "zbrojenie_linie" ))
    (setq LAY (subst (cons 62 -8 )(assoc 62 LAY) LAY))
    (entmod LAY )

Chciałem w ten sposób, ale program [ZW-Cad 2020] nie współpracuje. Pozdrawiam 😉

 

 

Byłoby dziwne gdyby wpółpracował. Lista z tblsearch nie jest poprawną listą dla entmod. Użyj tu formy entget + tblobjname. Zobacz:

(setq e (tblobjname "layer" "zbrojenie_linie" ))
(setq d (entget e))
(entmod (subst (cons 62 -8)(assoc 62 d) d))

a to prowadzić może do bardziej ogólnej funkcji:

(defun LayOnOff (Lay / e d)
  (if
    (setq e (tblobjname "LAYER" Lay))
    (progn
      (setq d (entget e))
      (setq d
        (subst
          (cons 62
            (* -1 (cdr (assoc 62 d)))
          )
          (assoc 62 d)
        d)
      )
      (entmod d)
    )
  )
)

Funkcja steruje widocznością warstwy podanej jako jej argument tak jak przełącznik, wywołaj kolejno:

(LayOnOff "zbrojenie_linie")

 

Edited by kojacek
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share