chrisdarmanin Posted January 19, 2018 Share Posted January 19, 2018 I have 100's of blocks that I need to change to annotative. is there a way to do it quickly or a lisp routine, rather than editing every single block and changing the setting to annotative from the properties palette? Quote Link to comment Share on other sites More sharing options...
rkmcswain Posted January 19, 2018 Share Posted January 19, 2018 This should do it for you. Code from Lee Mac Quote Link to comment Share on other sites More sharing options...
chrisdarmanin Posted January 19, 2018 Author Share Posted January 19, 2018 thanks, not the quickest but managed since I had many blocks I used data extraction to get the name of all the blocks, export to CSV, then import to Word, to further clean the formatting with find and replace (to get rid of the extra tabs and commas). I noticed word changes straight inverted commas to curly inverted commas so I did the same process again in notepad++. then i added the (foreach blk '("myblock1" "myblock2" "myblock3") (annotativeblock blk)) and pasted into AutoCAD and voila!! thanks again might there be a quicker method?? :D Quote Link to comment Share on other sites More sharing options...
chrisdarmanin Posted January 19, 2018 Author Share Posted January 19, 2018 certainly faster than doing them one by one manually Quote Link to comment Share on other sites More sharing options...
chrisdarmanin Posted February 2, 2018 Author Share Posted February 2, 2018 apparently in the company this is going to be a common occurrence. any faster way? Quote Link to comment Share on other sites More sharing options...
ronjonp Posted February 2, 2018 Share Posted February 2, 2018 (edited) Try this .. it will make all blocks in a drawing annotative. ;; Lee's code ;; https://goo.gl/KT3Ja1 (defun annotativeblock (blk) (and (setq blk (tblobjname "block" blk)) (progn (regapp "AcadAnnotative") (entmod (append (entget (cdr (assoc 330 (entget blk)))) '((-3 ("AcadAnnotative" (1000 . "AnnotativeData") (1002 . "{") (1070 . 1) (1070 . 1) (1002 . "}") ) ) ) ) ) ) ) ) (defun _allannotative (/ d) (while (setq d (tblnext "block" (null d))) (and (not (assoc 1 d)) (annotativeblock (cdr (assoc 2 d)))) ) ) (_allannotative) Edited February 9, 2018 by ronjonp Quote Link to comment Share on other sites More sharing options...
chrisdarmanin Posted February 9, 2018 Author Share Posted February 9, 2018 wow perfect!!!!!! Quote Link to comment Share on other sites More sharing options...
mstg007 Posted February 9, 2018 Share Posted February 9, 2018 Nice One Ron! Quote Link to comment Share on other sites More sharing options...
ronjonp Posted February 9, 2018 Share Posted February 9, 2018 Glad to help 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.