Fire Alarm Posted February 22, 2010 Posted February 22, 2010 I thought I have seened this somewhere, but can not find it. Is it possible to store my block library as a lisp routine? I would like to use this with my drawings to save time when inserting and addressing my devices. For example it I have a drawing and I needed to insert 5 smoke detectors. Instead of inserting 1 and then coping it everywhere 5 times. To use a lisp to insert the block, give a quantity of how many I need, and have another lisp already attached to address the block automatically in sync. For eveyone who takes the time to look at this. Thank you. Quote
todouble22 Posted February 22, 2010 Posted February 22, 2010 I thought I have seened this somewhere, but can not find it. Is it possible to store my block library as a lisp routine? I would like to use this with my drawings to save time when inserting and addressing my devices. For example it I have a drawing and I needed to insert 5 smoke detectors. Instead of inserting 1 and then coping it everywhere 5 times. To use a lisp to insert the block, give a quantity of how many I need, and have another lisp already attached to address the block automatically in sync. For eveyone who takes the time to look at this. Thank you. A couple quick questions.. Do you use tool pallettes at all? you could set one up for your block library and have an easily accesible "pallette" of all your blocks that you use and drag and drop in all of your drawings with setting it up in your workspace. I wrote a script to insert multiple blocks by calling the block name and defining the insertion point but those values need to be input by the user. the script can be altered for each instance but you'd have to id the points of insertion first and what block you want placed there. Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 Fire Alarm, Would it be on a loop, such that the user keeps picking points to insert the same block? Quote
Fire Alarm Posted February 22, 2010 Author Posted February 22, 2010 Thanks Todoubl22 and Lee. Yeah, I know it would be a loop, the question is if I already have the block created. Is it possible to have the lisp insert the block "x" amount of times, and have it address (i.e. SD 1-1, SD 1-2, etc.) the blocks? Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 Thanks Todoubl22 and Lee.Yeah, I know it would be a loop, the question is if I already have the block created. Is it possible to have the lisp insert the block "x" amount of times, and have it address (i.e. SD 1-1, SD 1-2, etc.) the blocks? Are you referring to attributes within the block? If the block is already inserted are you implying these references would follow from the labels already used? Quote
Fire Alarm Posted February 22, 2010 Author Posted February 22, 2010 No, if I open a new project, and I have to insert 5 smoke detectors. I load the lisp, it gives the list of blocks to choose from, I choose smoke detector, then the quantity. After that I select a point in the drawing, and after the block is inserted the attribute pops up and I put in 1-1. Then when I click the next point, the smoke automatically gets addressed as 1-2. The lisp follows this for all five smoke detectors. Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 So you are referring to attributes... I think this could be achieved, is the attribute tag the same for all the blocks? Quote
Fire Alarm Posted February 22, 2010 Author Posted February 22, 2010 Unfortunately no, I have some blocks like monitor modules that require two addresses, and another module that requires 6 addresses. Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 Unfortunately no, I have some blocks like monitor modules that require two addresses, and another module that requires 6 addresses. Hmm.. Addresses - never played with those... Quote
Fire Alarm Posted February 22, 2010 Author Posted February 22, 2010 I call them addresses but they are attributes. Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 I call them addresses but they are attributes. Ah right - glad we cleared that up I suppose if they are different for each block then they may have to be hard-coded into the LISP. Quote
Fire Alarm Posted February 22, 2010 Author Posted February 22, 2010 Ok, so it is possible. How hard would it be? Quote
Lee Mac Posted February 22, 2010 Posted February 22, 2010 Ok, so it is possible. How hard would it be? I suppose it depends on the variation of attribute number/tag name and the amount of blocks. Quote
Tyson904 Posted September 24, 2020 Posted September 24, 2020 I am having the same trouble. I have created dynamic blocks for the auto address labeling tool. The problem is when I use the tool it only will address the first attribute. But when the devices have multiple attributes the program will skip over the second or 3rd address in the current block and move to the next block. It keeps the dressing in sync with the devices as I placed them . Only problem is now I have to go back and renumber anything after (say a dual module) that has 2 associated attributes. I tried to label them with different prompts like address_1 and address_2 I just cant figure it out. If anyone knows anything that would help it would be much appreciated. ;;----------------------------------------------------------------------;; ;; Settings ;; ;;----------------------------------------------------------------------;; autolabel:blockname "FA-MODULES" ;; Name of block to be updated (not case-sensitive / may use wildcards) autolabel:blocktag "1_ADDRESS" ;; Attribute tag to be updated (not case-sensitive / may use wildcards) ---------------------((( If I can figure out how to get this line to notice more than just address one but also addresses 2,3 or even 4 in the same block that would be great.))) fyi -the bold lettering is not apart of my lisp command just for explanation autolabel:prefix "LXXM0" ;; Numbering prefix (use "" for none) autolabel:suffix "" ;; Numbering suffix (use "" for none) autolabel:start 1 ;; Starting number autolabel:length 2 ;; Fixed length numbering (set to zero if not required) autolabel:startup t ;; Enable on drawing startup (t=enable / nil=disable) autolabel:objtype 1 ;; Bit-coded integer > 0 (1=attributed blocks; 2=multileader blocks) 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.