AutoCAD Dynamic Blocks :: How To Separate Objects With Coincident Grips
May 26, 2011
I have a block which represents a piece of equipment on a factory floor. It has two subcomponents which are blocked with the main equipment. Consider a rectangle and two smaller circles blocked together. Each of the subcomponents (circles) has a point parameter and a move feature so that the components can be moved independently from each other and from the main equipment.
Here's the issue: If a user accidentaly (or purposely) places the grip from one of the subcomponents snapped to the grip of the other subcomponent, then the two seem forever attached; when I try to grab the grip of one of the subcomponents to separate them, both grips get selected and both components move together. At this point the two components appear to be inseparable with the grips permanently joined.
Here's the question: Is there a way to separate the two components once their grips are made coincedent? Or is this a case of "just don't snap the grips together"? I'd like there to be a way to pull the components apart.
Is there anyway to link standard AutoCAD Grips and there commands to Dynamic Block Actions? I want to stretch an arc by its midpoint grip. This accomplishes something that no other commands do.
I have a dynamic block which consists of a number of hatches, polylines and texts. The dynamic block has the property of being stretched and flipped.
Now the problem is that the normal grips which are being displayed for the normal lines, polylines and hatches are interfering with the stretch and flip grips. Is there a way to make autocad show only the dynamic grips.
I have a line with shapes on each end like an aligned dimension. I want to have a grip on each end to let the user put the ends where they want.
I tried a polar stretch pair, with two rotation pairs, but am lost. The stretch is easy, but does not rotate the arrows to stay aligned to the line. I don't actually have arrows, but most know the behavior of aligned dimensions. I don't have extension lines though, like the dim would so ignore that part.
Why the drawing title in my dynamic block will not scale up or down. The rest of the objects scale properly but just this the drawing title text attribute will not follow suit.
I tried adding position point and link, etc....I run out options and don't know how to fix this.
I have over 100 blocks that I need to add the exact same objects and visibility state to. Is there a way to globally make this change, or even to copy the visibility states from one block to the next without having to recreate the states in each block? I thought I had previously run across a routine on here that would make changes to multiple blocks at once, but I can't seem to find it now.
The AttSync command does what it advertises fairly well. My problem is that I have thousands of small blocks in a single drawing. (My current drawing has 2100 block references with four attributes in each one.) I may change the attribute values in a few of them and need to re-sync the attribute locations. When I run AttSync it updates every single block insertion. One of two things are desired:
1)Flag each block insertion as having been sync'ed, reducing the number of objects requiring synchronization when AttSync is called again. Provide a way to force all to be sync'ed.
2)Allow a selection set in the AttSync command after selecting the block to sync.
Either or both of these would a great time-saver for those of us with large numbers of blocks with attributes.
My drawing- block is a little bit complicated, it contains few actions and parameters and everytime i open block editor to add, or to modify some action I can't see my drawing because actions grips and parameters grips obscure my drawing. I tried to refresh layout but it doesn't work.
What I want this block to do is to keep the "REF. NORTH" text aligned and properly spaced whithin a single motion while rotating it with the thick line.
Somehow the objects of my dynamic block have moved away from the original basepoint.
I can't simply edit the block and move all the objects back to 0,0 because then I have to re-do all the stretch commands since the stretch windows don't move.
I have a basepoint parameter but it doesn't seem to be working.
After all this time is there a way to assign layers to different objects with a block? Perhaps using Visibility states or Lookups?
As an example:
I have a dynamic block with a door swing and text. As I increase the size of the door the text changes to reflect door size. The objects are all on the 0 Layer. When I insert the block I can assign a 'Text A' Layer to the text and a 'Door A' layer to the door. So when I switch layer states around I will either see the door, the text or both. Then I move to the second floor which has been stacked on the first floor. I insert my DB and assign layers 'Text B' and 'Door B' respectively to the text and door.
Finally when I go to my layer states I either select 'First Floor' or 'Second Floor' and the respective blocks appear depending on the layer state.
It seems like this should be easy but it's not. I have a block with multiple components. I want them to array sequentially as I drag the grip. First one component, then the next, then the next. What I get is all 3 at once when I drag the grip far enough. I tried 3 separate linear parameters with their grips stacked but that didnt work either. What I have attached is a very simplified version of what I want, but I think once I get the concept it will be easy to elaborate on.
I'm currently creating blocks for our office library. One of these is a grille with some apposed blade dampers on it. I'm trying to set up an array that will duplicate the apposed blades as I change the length of the grille. However, it will only copy the blades in pairs, not singly one after the other. Ie, the blades are 100mm apart, and in a / pattern meaning that each instance of / or 'should' duplicate every 200mm. Except when I lengthen the block by 200mm it won't duplicate until I've gone double the distance (400) when it gives me both / and .
We are looking for a solution to manage the inventory of a very extensive network with mainly linear assets. Instead of a standard database/inventory solution, we would like to manage the inventory from a plan, from autocad DWG. Meaning that all the objects and relations between objects are defined in the DWG, then uploaded to a relational database and used by various maintenance and operational utilities.
how we would define the relations between objects. For example, how would we say that one object is attached to another object? Can you make a reference from one object to another in the attributes of a block? (but it has to be a strong reference, to an ID).
I believe there is a way to create a block of displayed objects that are shown within viewport. I know I have done this before with basic Autocad. The closest thing at the moment that I can think of is "SOLPROF" but that only works for 3D objects.
The way I remember the command working was you started off with the command, select the objects with the viewport/or maybe it was just the viewport, the command made an instantaneous block of the objects that were only within the display area.
With Visibility States there appears to be only 4 options:
Hide for current state.Show for current state.Hide for all statesShow for all states.
I need a 5th option... Do not change visibility when this state is set current.
So, in other words, I'd like to turn objects on or off independently from each other... so lets say I have two sets of objects... I want to toggle on only the 3rd item in set A and only the 5th item set B... but each set would function separately from the other set.
I have a block which I want 2 visibility states. VS1 and VS2 share some objects and not others. I have a linear parameter in each which I want to do a stretch action on. The stretch action in each visibility state acts upon entities both shared and unshared between VS1 and VS2. This doesn't seem to work..
I've made annotative blocks and I've made dynamic blocks... My intent is to integrate both but I can't find a way to move dynamic block parameters separately at different annotative scales.
In other words, if I insert an annotative dimension and add multiple scales I can move the dimension grips independently at each scale. If I insert a dynamic block I want to be able to use the dynamic block's action "grips" to do the same. However, with a dynamic block, if I move a stretch action at one annotation scale it moves the action at all annotation scales.
I have created a dynamic block with several visiblility states. The block works great for what I need it for. however, I am trying to add one more action to the block but am having issues.
This block is essentially a 24" retail cabinet with the visibility states showing the different drawer and shelf configurations. I want to be able to lengthen the cabinet in 24" increments and have the visibility show for each 24" section.....e.g. I want a 10' cabinet so I bring in the 24" starter block. Then stretch the cabinet to the 10' mark, then I can chose any drawer/shelve config for each 24" section (they are all different).
I can get the block to stretch in 24" sections....no problem.....i just want the visibility state to be duplicated as well for each section. Now as it stretches, there is only one Vis state and it only populates the first cabinet.
I could do this by copying the block over and over 5 times.....but I am hoping there is a way to make this dynamic.
I have a block I am making into a Dynamic Block. I will be adding in different visibility states. Depending on the visibility state the block would need to be inserted from a different point.
My question is, is it possible to add multiple insertion points to a dynamic block so depending on the visibility state it defaults to the correct insertion point?
I have created an annotated block of a cut line. In the block editor the grips are located on the ends of the cutline where I need them to be. When I test the block in the block editor the grips are in the right place and the block works fine. However, when I insert the block into my drawing the grips to control the stretch action are located way out in right field instead of at the ends of the cutline where I placed them in the block editor. Parameters having errors. I have corrected the errors but my block is still acting the same way.
I have inserted a dynamic block (with .NET) and changed the value of a dynamic parameter (Linear). The block is stretched as it should be. (no problems here).
After a fiew other routines, I select the block again (by using its objectID) and a want to get the coördinates of the grip of the linear dynamic paramter. Is there a way to get the coördinates based on the linear dynamic parameter and its grip points? code in vb.Net?
So I am working on a very large project (AutoCAD Architecture 2012) and when I rotate my view, some of the 3D objects will randomly fly out into space. The strange thing is that the grips for the object are still where the object needs to be.
Below should be a picture to explain what I'm talking about.
Grip error.jpg
Is this a bug? Is there a fix? Is this user error?
How to unselect objects that are be edited with grips.
Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor Dim Opts As New PromptSelectionOptions() Dim res As PromptSelectionResult = ed.SelectImplied res = Nothing
So I've done a reasonable amount of work with dynamic blocks. I have a block with a rotation action and grip to arbitrarily align it. However I realized when trying to combine it with an alignment grip (which actions on the basic or fundamental block rotation angle) that there didn't seem to be a way to some how link a dynamic block rotation action or one of the custom angle properties to a the fundamental block rotation angle. Thus there are two additive rotations at work; the dynamic block one with its grip and the fundamental rotation property.
This can cause some confusion when one person aligns with the grip and another via rotating the block's fundamental property and would also be problematic in the generalized sense if one was trying to select or programmatically read back the net angle alignment.
I have a dynamic block, that represents a stirrup.
I inserted in the block a Block Propreties Table, that have some preset dimensions for the stirrups. The grip of this table I decided to put in the top right corner.
The problem is that I can't make this grip moveable )
new to dynamic blocks but looking to streamline my wiring diagrams here and have created a block that shows the typical wire styles we use in a simple easy way. I now want to add an overall flip to the entire block and have not been able to find set this. I would prefer to use the same label and go from there. I have included the block to show what I mean. It is only working on the single visible item at the one time. I know this has to be possible just let me know what I am doing wrong. I am running AutoCad LT 2013
I need to create a dynamic block for a "Glass Panel" in a balustrade. I need to be able to insert it, in one corner and stretch it in another corner, to suit the staircase angle.
I've created the block, but it isn't working correctly. I've attached a drawing, with the left hand drawing a sketch of how it needs to be. The right hand drawing is my dynamic block attempt. As can be seen, when the block is stretched between the 2 points, it doesn't follow the angle of the staircase correctly (Very slight run off)