halam Posted January 21, 2016 Share Posted January 21, 2016 (edited) Hi there, I am looking for a way to get rid of small volume parts in a DWG file. In some cases we recieve the most 'dumbest' export models you can think of in DWG. Bolts and rings make the model very big and hard to handle. I did a small excercise and a small workaround will save at least 50% of the filesize! ..and loading time Does any one can know if it is possible to filter 3D solids WITH a volume criteria? Can anybody help me a little to set this up in a decent matter? This would really be a big help for to get this working. Especially because we sometimes want 3D DWG to be used in Revit as well. Would be very handy to have a method to make the data more LEAN and reloadable. Clash detection on this level is totally irrelevant for us! Thanks in advance Hans ISOLATE SOLID.LSP Edited January 21, 2016 by halam some typing im not goodat Quote Link to comment Share on other sites More sharing options...
Cad64 Posted January 21, 2016 Share Posted January 21, 2016 You posted this question in the 3D Studio Max section. I have moved it to the Autocad 3D section: http://www.cadtutor.net/forum/forumdisplay.php?20-AutoCAD-3D-Modelling-amp-Rendering Quote Link to comment Share on other sites More sharing options...
halam Posted January 21, 2016 Author Share Posted January 21, 2016 I wasn't aware of that. Sorry for the inconvinience Quote Link to comment Share on other sites More sharing options...
halam Posted January 22, 2016 Author Share Posted January 22, 2016 (edited) First step.. Selection set not to be based on volume but on Bounding box. I tried Lee Mac's routine and this can work on 3D objects as well. However, i do not know how to set the criteria (area) yet, put this in a selection set and loop it. Kind of beyond my programming skills. Maybe a small commercial tool would fill my needs? Anyone know about this? http://www.lee-mac.com/ssboundingbox.html quote "I think bounding box would be easier to obtain than volume. Perhaps something like this (thrown together and untested): (setq ObjectBoundingBox (GetBoundingBox CurrentEntityName)) (setq CompareBoundX (- (car ur) (car ll))) (setq CompareBoundY (- (cadr ur) (cadr ll))) (setq CompareBoundZ (- (caddr ur) (caddr ll))) (setq ObjectVolume (* CompareBoundX CompareBoundY CompareBoundZ)) (defun GetBoundingBox (ent / obj) (setq obj (vlax-ename->vla-object ent) (vla-getBoundingBox obj 'll 'ur) (setq ll (vlax-safearray->list ll) ur (vlax-safearray->list ur) );end setq );end setq );end defun Edited January 22, 2016 by halam Quote Link to comment Share on other sites More sharing options...
Cad64 Posted January 22, 2016 Share Posted January 22, 2016 Ok, I originally moved this to the Autocad 3D section, but it appears you are actually looking for help with a lisp routine? I am moving your question, again. This time to the Autolisp section: http://www.cadtutor.net/forum/forumdisplay.php?21-AutoLISP-Visual-LISP-amp-DCL Quote Link to comment Share on other sites More sharing options...
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.