leonucadom Posted Wednesday at 08:59 PM Posted Wednesday at 08:59 PM hello all:  I use this routine to lower all selected objects to z0 The problem is that it also affects 3D solids if I have them. Is there a way to modify the code excluding 3D solids from the selection?  _move;_all;;0,0,0;0,0,1e99;_move;_p;;0,0,0;0,0,-1e99   I appreciate the comments and hope they can help me.   Quote
BIGAL Posted Wednesday at 11:37 PM Posted Wednesday at 11:37 PM (edited) It could be as simple as changing "all" to "ss", where ss is a selection set. Â I am no expert on setting the exclude objects in a selection set. try this not really tested. Â (setq ss (ssget "_X" '((-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>")))) or _move;(setq ss (ssget "_X" '((-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>"))));;0,0,0;0,0,1e99;_move;ss;;0,0,0;0,0,-1e99 Â Edited Wednesday at 11:50 PM by BIGAL 1 1 Quote
SLW210 Posted 10 hours ago Posted 10 hours ago Here is the button macro for selected objects, so something like BIGAL's recommendation should work. Â ^C^C_SELECT;_MOVE;0,0,0;0,0,1e99;_MOVE;P;;0,0,0;0,0,-1e99; Â 1 Quote
leonucadom Posted 9 hours ago Author Posted 9 hours ago 14 hours ago, BIGAL said: It could be as simple as changing "all" to "ss", where ss is a selection set. Â I am no expert on setting the exclude objects in a selection set. try this not really tested. Â (setq ss (ssget "_X" '((-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>")))) or _move;(setq ss (ssget "_X" '((-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>"))));;0,0,0;0,0,1e99;_move;ss;;0,0,0;0,0,-1e99 Â Â I already tried it, but something strange happens: it filters the 3D solids, but it puts the other elements at z=1.0000E+99 Quote
Tsuky Posted 2 hours ago Posted 2 hours ago And with this syntax? (sssetfirst nil (ssget "_X" '((0 . "*") (-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>")))) Â Quote
BIGAL Posted 1 hour ago Posted 1 hour ago (edited) Thank you @marko_ribar much simpler. Added look in current Layout or Model. In Civ3D may find surfaces also that are not displayed.  (ssget "_X" (list (cons 0 "~3DSOLID")(cons 410 (getvar 'ctab))))  Edited 1 hour ago by BIGAL Quote
Tsuky Posted 1 hour ago Posted 1 hour ago Whether with (ssget "_X" '((0 . "*") (-4 . "<NOT") (0 . "3DSOLID") (-4 . "NOT>"))) or (ssget "_X" (list (cons 0 "~3DSOLID"))), it also dismisses the entities TRACE et SOLID???? Quote
BIGAL Posted 18 minutes ago Posted 18 minutes ago (edited) Using Bricscad dwg has a solid, finds trace.  Or do you mean (setq ss (ssget "_X" (list (cons -4 "<NOT") (cons 0 "3DSOLID,TRACE") (cons -4 "NOT>")(cons 410 (getvar 'ctab)))))   Edited 16 minutes ago by BIGAL Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.