Filter current layer in a selection set

Filter current layer in a selection set

msarqui
Collaborator Collaborator
408 Views
3 Replies
Message 1 of 4

Filter current layer in a selection set

msarqui
Collaborator
Collaborator

Hello,

 

I would like to have some help here, please.

In a selection set, how can I know if among the selected objects, there is one or more of them that has the current layer?

Something like this:

(defun c:test()
(setq sel (sseget))
(if ;...one or more objects in this selection set has the current layer...
(princ "n\ There are one or more objects with the current layer in the selection set") ;do not need to know how many
);if
);defun

Thanks for any help

Marcelo 

0 Likes
Accepted solutions (1)
409 Views
3 Replies
Replies (3)
Message 2 of 4

hmsilva
Mentor
Mentor
Accepted solution

Hi Marcelo,

 

(defun c:test (/ sel)
   (if (setq sel (ssget))
      (if (ssget "_P" (list (cons 8 (getvar 'CLAYER))))
         (princ "\n There are one or more objects with the current layer in the selection set") ;do not need to know how many
      )
   ) ;if
   (princ)
) ;defun

 

Hope this helps,
Henrique

EESignature

0 Likes
Message 3 of 4

msarqui
Collaborator
Collaborator
Many thanks Henrique!
0 Likes
Message 4 of 4

hmsilva
Mentor
Mentor

@msarqui wrote:
Many thanks Henrique!

You're welcome, Marcelo!
Glad I could help

Henrique

EESignature

0 Likes