Jump to content

Search the Community

Showing results for tags 'dynamic blocks'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • CADTutor
    • News, Announcements & FAQ
    • Feedback
  • AutoCAD
    • AutoCAD Beginners' Area
    • AutoCAD 2D Drafting, Object Properties & Interface
    • AutoCAD Drawing Management & Output
    • AutoCAD 3D Modelling & Rendering
    • AutoCAD Vertical Products
    • AutoCAD LT
    • CAD Management
    • AutoCAD Bugs, Error Messages & Quirks
    • AutoCAD General
    • AutoCAD Blogs
  • AutoCAD Customization
    • The CUI, Hatches, Linetypes, Scripts & Macros
    • AutoLISP, Visual LISP & DCL
    • .NET, ObjectARX & VBA
    • Application Beta Testing
    • Application Archive
  • Other Autodesk Products
    • Autodesk 3ds Max
    • Autodesk Revit
    • Autodesk Inventor
    • Autodesk Software General
  • Other CAD Products
    • BricsCAD
    • SketchUp
    • Rhino
    • SolidWorks
    • MicroStation
    • Design Software
    • Catch All
  • Resources
    • Tutorials & Tips'n'Tricks
    • AutoCAD Museum
    • Blocks, Images, Models & Materials
    • Useful Links
  • Community
    • Introduce Yourself
    • Showcase
    • Work In Progress
    • Jobs & Training
    • Chat
    • Competitions


  • Programs and Scripts
  • 2D AutoCAD Blocks
  • 3D AutoCAD Blocks
  • Images
    • Backgrounds

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...

  1. Hi! I'm starting to feel comfortable in this forum, you always give a good answer. Thank you for your work! I want to insert new parameters in a dynamic block to set new values. I normally make atributes with an entmake method, but I never insert a parameter. I found Lee Mac's code to set or get dynamics block parameter values, but can't find anything about the created one. Thank you for advance.
  2. I use lee mac dynamic block function from here http://www.lee-mac.com/dynamicblockfunctions.html To count mydynamic block visibility state,but i facing new error like attached below ,please what and why its error happen?and whats the solution.. @Lee Mac
  3. Hi I'm getting back into cad and starting to develop some dynamic blocks. Can anyone give me some tips on how to do multiple visibility parameters in LT possibly using look ups. Should I be using blocks within blocks if that makes sense?. Does anyone have any ideas for creating electrical distribution boards using dynamic blocks with attributes. Your help would be much appreciated. Thanks.
  4. I am trying to find out if you can use a text file (converted from a spreadsheet) to add dynamic blocks to a drawing, not just the X, Y coordinates, but the angle (not standard rotation, the dynamic one). The block I am working with reflects “Dip & Strike”. The block has only three (3) dynamic variables, Angle, Basepoint and Visibility Drop List. I want to automate adding multiple blocks without having to change the angle one at a time. Any help would be appreciated.
  5. I have created Dynamic Block with grips and Attribute linked to the parameter. Now I override that attribute value to a manual value through a program and change the parameter. Now, when I move the grips of dynamic block, the attribute value linked to it doesn't change and remains as manual value. Is there any way/ program to retrieve the relation between attribute and parameter value? Pls find attached Program and Dynamic Block. You can override linked values of "WIDTH" & "LENGTH" by 'double-clicking' on block and entering manual value. Upload & Run the program with command "DChange". This will change the shape of block as per manual value. After this, when you will stretch the grips of block, it will change the shape; but, the attribute value "WIDTH" & "LENGTH" will not change. Can this linking between Attribute & Parameter revived so that attribute values will change with moving grips? Straight Duct.dwg DChange.lsp
  6. Hello all, I've posted on SEVERAL forums trying to get an answer to this problem, I've compiled so many different Lisp routines that I've lost count, but none have quite been able to do what i want. i've attached a dwg with two blocks in it, the scope of what I'm trying to accomplish is at the bottom of this code: (defun BKVZ ( / blk idx obj sel vis ) (setq blk "WELD DETAIL" ;; Block Name vis "EQUAL WELD" ;; New Visibility State ) (if (setq sel (ssget "_X" (list '(0 . "INSERT") (cons 2 (strcat "`*U*," blk))))) (repeat (setq idx (sslength sel)) (if (= (strcase blk) (strcase (LM:blockname (setq obj (vlax-ename->vla-object (ssname sel (setq idx (1- idx)))))))) (LM:SetVisibilityState obj vis) ) ) ) (princ) ) ;; I would like the visibility state of several different dynamic blocks ;; to reference a text field within the drawing, and the blk variable to be used for several different dynamic ;; blocks within my drawing. for example in this drawing i have two dynamic blocks, and two text fields that ;; represent the visibility states that i want to use for the blocks (this value will change so i want to use it as a ;; variable to change the db viz prop) . I would like to be able to use this code to change the vis states of ;; several blocks within the same dwg, each of which would have a text field that will display the present vis state. ;; if i have to use setq blk1, blk2, blk3, etc to represent each block that is fine, but with several different possible ;; vis states, i would like that varible to reference the text field. so as the text field changes, so does the vis state of the ;; dynamic block. ANY HELP WOULD BE APPRECIATED. THANK YOU!! NEW-LISP-TRIAL.dwg
  7. Hello, I have an AutoCAD Drawing with different Blocks. These blocks have some of the attributes names in common (Height, Length & Width). Can I extract the attribute data from selected area in drawing to an existing excel sheet with standard template such that the block name comes under column named "Block Name", Value of Height Attribute comes under column "Height" and so on? Here are the list of things I wanted to do in attached drg 1. Extract data from some blocks (Block Names are: SA GRILLE, SA Slot Diffuser, SA Sq Diffuser, Shoe Piece, Straight Duct, Transition, Elbow) from selected area on drg. 2. Extract the values of Attributes named WIDTH, HEIGHT, WIDTH2, HEIGHT1 & LENGTH 3. The Data should be extracted to an existing excel sheet as attached. 4. The data extracted should come under respective column label. Is this feasible using VBA? Here are some links which are helpful but I couldn't get desired results using those. http://www.lee-mac.com/macatt.html http://www.cadtutor.net/forum/showthread.php?64960-Browse-for-an-existing-excel-file Dynamic Blocks Data.xlsx Dynamic Blocks.dwg
  8. So Im getting a "too few Arguments" error message and after debugging I still cant seem to find which line is causing this error. The function of this lisp is supposed to select a register bock [attached below]: create a list for each block selected based on the cfm values in its [cfm] attribute. if the value falls within a certain range then it should've selected the property sort value. any help would be much appreciated. 10 X 8 Supply Register Sets.dwg
  9. I'm trying to make a compass, with NSEW around it. I want to rotate the compass, as well as text, dependent on the direction, however keeping the text rotation at 0. I found a similar thread, but I can't for the life of me get it to work right. I think I'm on the right track, just missing something somewhere. Any help you guys can offer is appreciated. compass.dwg
  10. Hey guys! So at my office we frequently have to show circles around objects. The circle's size is based on a multiplier that will vary with project and the diameter of the object. This is super easy math that could be done on the fly when creating a circle. BUT, I'd like to streamline it just a wee bit and make a simple block of the circle that allows for the following user input in the properties panel: Reference object diameter (Dro): [user types here] Multiplier (M): [comes with preset value, but user can override here] And then the linear parameter controlling the circle scaling will auto adjust to reflect: Diameter of Circle (Dc): D*M I've dabbled in Vlookup tables/fields/attributes but still on super shaky ground. Any guidance would be appreciated. Thanks!
  11. I have made a block that has been used in several drawings by several people. As the months have gone on and people have used these, some changes have been made to the blocks in the specific drawings. My question is this... Is there a way to update these globally? Almost like an XREF does but obviously not using an actual XREF. The only thing that i can think to do is every time one gets updated in a drawing, go into each drawing that the block resides in, delete them all, purge, reinsert, and have a copy party. Problem is, people change them without anyone else being informed...any ideas?
  12. hello Guys, Can you check my dynamic blocks please: the version 1 works perfectly. I would like to have the version 2 the same. but I make something totaly wrong way. It is not working for me. How can be between the two legs 46 deg always (it is 90 deg in the version 1)? Thank you for your help! Y dynamic blocks.dwg
  13. Hi everybody, I wanted to know if there is a way I can control the layer a block is in through the block table, so if I change a set of parameters through the table, one of them could be "Layer" and that way I can change it appereance. I want to avoid visibility parameters, as there are too many permutations of blocks for that. Thanks for the help in advance!
  14. I'm trying to see if this is possible. Drawing with many dynamic blocks, all with many attributes. Was curious if there was a routine that would select a single block - enable user to fill in the attributes click OK - then move onto the "next" block in the drawing until complete. Anything like this remotely possible?
  15. Hi, I'm updating my block library with dynamic rotations but I'm having trouble with blocks that do not have base points in their centre's. When I rotate the block the base point grip stays in it's original place. This can be a problem when I need to copy multiple instances of the block within the same drawing. Is there a way to apply the dynamic rotation to the grip? I've tried selecting everything in the block editor when creating the rotation parameter but it seems the original base point is avoided during this process.
  16. I have 2 lines, 1 is vertical and the other is at a 45 degree angle to it. I have a stretch action on the line at 45 deg. What I'm trying to achieve is when the 45 deg line is stretched, I want the vertical line to also stretch but not with the same distance multiplier; The 2 lines must have the same X coordinates. I'm nearly there, I have a distance multiplier of 0.7071 on a stretch action for the vertical line. I got 0.7071 from (1 / sqrtr(2)) .. The problem with this is autocad rounds to 4 decimal places, so when i stretch over a great distance the lines are not perfectly on the same x coordinate. Does anybody know of an easier way to achieve this? Maybe a way to copy the 'End X' property to another line? I've searched extensively for a solution. Thank you for any help:)
  17. When you are inserting a viewport title is it possible to have the block add 1 to the previous number? EX: I insert a label for a viewport of an elevation the label reads 1 also elevation and the scale of the viewport. Could I have it set up that when I add another label to the same layout it would automatically bring it in as labeled 2 and so on... I know that if I had the time or the money I could get a lisp routine to do it.. I have neither time (to learn how to make a lisp routine or write one) or money. I just wanted to know if it was possible or if there is already a command like that. I know that I will get suggested to use sheet sets yet alas I cannot. Sheet sets do not work for me, our office keeps everything in one drawing file, this makes most of the 'advantages' of a sheet set unnecessary and way more difficult then just doing it the old fashioned way. Besides the fact that my boss would have a cow.. He doesn't like polylines and really hates blocks and with dynamic blocks don't get me started.... Yet with all of these he copes if I added sheet sets I may no longer have a job.
  18. adamsdr3

    Shared Tool Pallette

    Hi all, I have a tool palette I've created using dynamic blocks all saved on a shared server. I have all of the blocks inserted on a source file. I copy and paste them into the tool palette and it all works great. When I open up the palette the next day, it is empty and none of the blocks are there. Any ideas?
  19. Hello all! Let me first say that I've been looking through some of the threads on this forum and am blown away by the knowledge and creativity some of you possess. It's ridiculous the things you guys are able to do with AutoCAD. With that said, I'm hoping someone can help me solve a difficult problem I've been having. I've never created dynamic blocks and am learning as I go. I've scoured the internet looking for the answer for my needs and have experimented for hours but am still left without a working block. --A quick note before I begin, I'm using AutoCAD LT 2016 for all of this-- What I'm trying to do is create a dynamic solar panel block that can accomplish three things: 1. Dynamically fill a distance (up to 310' for fire code) with solar panels 2. Have three visibility states representing different angles for the solar panels 3. Have a solar panel counter that is visible within the properties but doesn't actually show up in the model Bonus: Dynamically fill an area with solar panels with the same requirements So far I've been able to accomplish #1 and #2 but to a limited degree. I can fill a distance just fine but if I change visibility states, the length is reset back to it's original. I need to be able to change visibility states without the length going away. #3 is the real problem. I have tried dozens of Attribute Definition combinations but can't seem to find one that works. The bonus would be nice to accomplish and I was able to do so with some success but didn't try to implement the visibility states or counter given the difficulty I've found just trying to make the lengthening block. I'm sure there are those of you that could create my block in no time at all and while I do appreciate that, what I'm really wanting is to learn what mistakes I'm making and how to do fix them myself. I've attached both the block that I've made as well as a file (posted on this very forum) that essentially recreates what I'm trying to accomplish (with a few tweaks e.g. I'm limited to using architectural units and I don't want a visible counter). Any help or direction would be greatly appreciated! chairtest.dwg Fixed Solar Module 1.dwg
  20. I have a block with a flip action to move text from one side of the block to the other. We've revised the block and I'm using Insert/Redefine to update the drawings. The problem is, the flip action reverts to default and I have to flip them back. Is there a way I can lock the position of the flip before I Insert/Redefine? Many thanks for any help.
  21. I'm trying to make a block with an item list where I can choose any or all of 10 line items, I can put a stretch and array to size up the list to exclude blank lines but I cannot figure out which method to use to make a checklist. Layers are not an option because our clients have certain layer lists. Visibility seems to just do 'This OR That', not 'This, This AND That'. I think a LookUp Table is the key but I don't know which parameter sets to start with and how to make this checklist work. Attributes are not really the answer because the line items have 9 columns of info that never change on each item line. They must stay in the same order too. If there was some way to turn off sub-blocks, and drag them up or down! Thanks for any ideas!
  22. Hi there, I have many different blocks with different attributes and custom properties (rotation angle, position 1 X, position 1 Y, and so on). All of them have a perfect correspondence between attributes names and custom properties names. For example, if i have a block with custom properties "rotation_head" and "position_head" i will have two attributes called "rotation_head" and "position_head". I'd need a lisp with two functions cycling through all the selected different blocks; one of the function would: - for each selected block, read the attributes and set the custom properties while the other would: - for each selected block, read the custom properties and set the attributes. Do you think something like this would be possible? The reason behind this kind of request is because i need to import and export shapefiles to autocad map and i need to set blocks custom properties using shapefiles table.a Thanks in advance for any ideas/tips Regards GTK
  23. I have the following block where I have successfully inserted stretch action (no limits) and array action (limit 20). I need to display the array count number next to the block so that I don't have to count the aisles every time I have to use the action. Dynamic Array Count.dwg
  24. I have the application attached below with these problems: 1. The flip action works fine on (1 to 1) but for the rest it's a mess. 2. The Length is not updating instantly I must regen. I want it to update automatically without regenerating the file Thank you Dynamic Lanes.dwg
  25. hi Lisp guru's, I have done some searches for lisps that can turn dynamic blocks into static, the one i have found incredibly done well was this Undynamic by MP http://www.theswamp.org/index.php?topic=32681.msg382548#msg382548 (defun c:UnDynamic ( / _get_item _right _make_key _dynamic->static_block _get_locked _get_dynamic_inserts _main ) (defun _get_item ( collection key / item ) (vl-catch-all-apply '(lambda ( ) (setq item (vla-item collection key))) ) item ) (defun _right ( str n / len ) (if (< n (setq len (strlen str))) (substr str (1+ (- len n))) str ) ) (defun _make_key ( collection prefix len / key ) ( (lambda ( i pad ) (while (_get_item collection (setq key (strcat prefix (_right (strcat pad (itoa (setq i (1+ i)))) len ) ) ) ) ) key ) 0 ( (lambda ( pad ) (while (< (strlen pad) len) (setq pad (strcat "0" pad)) ) pad ) "" ) ) ) (defun _dynamic->static_block ( blocks insert len ) (vla-ConvertToStaticBlock insert (_make_key blocks "STATIC_" len) ) ) (defun _get_locked ( layers / locked ) (vlax-for layer layers (if (eq :vlax-true (vla-get-lock layer)) (setq locked (cons layer locked)) ) ) locked ) (defun _get_dynamic_inserts ( blocks / inserts ) (vlax-for block blocks (vlax-for object block (if (eq "AcDbBlockReference" (vla-get-objectname object)) (if (eq :vlax-true (vla-get-isdynamicblock object)) (setq inserts (cons object inserts)) ) ) ) ) inserts ) (defun _main ( document / blocks inserts locked len ) (if (setq inserts (_get_dynamic_inserts (setq blocks (vla-get-blocks document)) ) ) (progn (foreach layer (setq locked (_get_locked (vla-get-layers document))) (vla-put-lock layer :vlax-false) ) (setq len (strlen (itoa (length inserts)))) (foreach insert inserts (_dynamic->static_block blocks insert len) ) (foreach layer locked (vla-put-lock layer :vlax-true) ) ) ) (princ) ) (_main (vla-get-activedocument (vlax-get-acad-object))) ) i am a complete noob at lisp (but trying to learn). could you guys help me somehow incorporate (strcat (vlax-get-property obj 'Name) "_DYNlocked")) into the lisp above (sorry MP for modifying) so that the replaced static blocks retain the original dynamic block name. i am hoping in future i can do a block replace on the static blocks to update them back into dynamic blocks for utilization. thanks for your help! regards, BRC
  • Create New...