Jump to content

Dynamic Block Behavior--Stretching


neophoible

Recommended Posts

I came across an item that looked like a good victim for some simple dynamic block surgery. (It's not important, but if you want to know, it is a bolt used as an axle.) After developing the block, I noticed that the behavior was not quite as predictable as I would have expected. I did not bother with any constraints, only a couple of linear stretches. They are in the same direction, but one is in the middle, the other at one end. The middle one seems to behave as I would expect.

 

When I enter a new value for the overall length, it updates by stretching the right end, and the left end stays put, as I would expect. However, if I drag the overall stretch, it does stretch the right end, but it also moves the object the same distance. Is there some principle of dynamic blocks that would predict this behavior? I'm doing this with vanilla AutoCAD 2012, but the DWG format is 2007, and the original drawing is from the early 90s.

 

I've attached a DWG file with the block already inserted.

Bolt Axle.dwg

Link to comment
Share on other sites

When you stretch, if you choose an entire object, it moves the entire object as if you had used the "move" command. Is that what you mean?

Link to comment
Share on other sites

It works for me too. That's why I assumed he was using the stretch command or something similar (if there's something similar that is).

Link to comment
Share on other sites

I came across an item that looked like a good victim for some simple dynamic block surgery. (It's not important, but if you want to know, it is a bolt used as an axle.) After developing the block, I noticed that the behavior was not quite as predictable as I would have expected. I did not bother with any constraints, only a couple of linear stretches. They are in the same direction, but one is in the middle, the other at one end. The middle one seems to behave as I would expect.

 

When I enter a new value for the overall length, it updates by stretching the right end, and the left end stays put, as I would expect. However, if I drag the overall stretch, it does stretch the right end, but it also moves the object the same distance. Is there some principle of dynamic blocks that would predict this behavior? I'm doing this with vanilla AutoCAD 2012, but the DWG format is 2007, and the original drawing is from the early 90s.

 

I've attached a DWG file with the block already inserted.

The stretch behavior depends on what portion of the geometry you included in the "Stretch Area" as you are setting up the parameter/action combo. What are you referring to when you say "drag the overall stretch"?

 

When I drag either blue arrow, I see exactly what should happen. The end one stretches the right end of the bolt, and the middle one moves the nut along the bolt. In neither case does the left end move.

Link to comment
Share on other sites

It works for me too. That's why I assumed he was using the stretch command or something similar (if there's something similar that is).
Yeah, that is the only result I have ever gotten from using the stretch command. I never have figured out how to work it either.
Link to comment
Share on other sites

Thanks for all the tries and replies. I'll address this one specifically:

The stretch behavior depends on what portion of the geometry you included in the "Stretch Area" as you are setting up the parameter/action combo.
I agree and was "sure" I was doing it correctly. And it sounds like I was right in this case.

 

What are you referring to when you say "drag the overall stretch"?
Yes, that was a bit confusing. Sorry. I meant when I grab the rightmost linear stretch grip, the one on the end, and drag it. It's supposed to change the overall length of the bolt, which it does, but in my case, it also moves the whole bolt that distance, like a combined stretch/move, except that the move does not have to be linear. It does not exhibit this behavior when I simply type in the new value, and thus not the end of the world for me.

 

When I drag either blue arrow, I see exactly what should happen. The end one stretches the right end of the bolt, and the middle one moves the nut along the bolt. In neither case does the left end move.
It sounds like the behavior on your system--and on everyone's but mine!--does it right, and the way I would expect.

 

I would do a video demo if I knew how and had the time. Perhaps I haven't installed all of the SPs for 2012. :idea: But for now, I'd rather blame it on my system and see if I can get a new one.:whistle: But, no, I know that's just wishful thinking. Still, I can dream, but the temptation is to curse...or to nap.:sleeping:

Link to comment
Share on other sites

Yes, that was a bit confusing. Sorry. I meant when I grab the rightmost linear stretch grip, the one on the end, and drag it. It's supposed to change the overall length of the bolt, which it does, but in my case, it also moves the whole bolt that distance, like a combined stretch/move, except that the move does not have to be linear. It does not exhibit this behavior when I simply type in the new value, and thus not the end of the world for me.

Do you have Drag & Drop enabled? Do you have Grips enabled within blocks? Maybe the blue arrow is right smack on top of a grip and the whole block gets selected. I never activate the grips within blocks. They tend to be a bit of a bother at times, thus the option to toggle them exists.
Link to comment
Share on other sites

Do you have Drag & Drop enabled? Do you have Grips enabled within blocks? Maybe the blue arrow is right smack on top of a grip and the whole block gets selected. I never activate the grips within blocks. They tend to be a bit of a bother at times, thus the option to toggle them exists.
OK, Dana W, you expert, you! I had no idea that you could double up with a grip like that. I was indeed picking on the corner grip, which not only invoked the dragging but also activated the dynamic linear stretch. Turning the block grips off sounds like a good idea. I decided to use a simple toggle found here:

http://www.ellenfinkelstein.com/acadblog/toggling-the-display-of-grips-within-blocks/. I'm sure one of the LT guys could write a macro in DIESEL

Link to comment
Share on other sites

A macro for turning the grips on and off? Easy mode. Do you need one or were you just stating that it could be done? Steven beat me to it but yeah what he has.

Link to comment
Share on other sites

A macro for turning the grips on and off? Easy mode. Do you need one or were you just stating that it could be done? Steven beat me to it but yeah what he has.
I didn't quite finish the statement, did I? I was suggesting it for those who only have LT but would like to toggle the block grips. I personally prefer the AutoLISP version, as I can use it with just the keyboard, no messing around with buttons, etc. If you don't need the "G" shortcut for GROUP, then you can use it for such a purpose as this. Mind you, this is the first time I have ever noticed the need to turn off the block grips at all, so I have no idea how useful this is to anyone else.
Link to comment
Share on other sites

OK, Dana W, you expert, you! I had no idea that you could double up with a grip like that. I was indeed picking on the corner grip, which not only invoked the dragging but also activated the dynamic linear stretch. Turning the block grips off sounds like a good idea. I decided to use a simple toggle found here:

http://www.ellenfinkelstein.com/acadblog/toggling-the-display-of-grips-within-blocks/. I'm sure one of the LT guys could write a macro in DIESEL

Heck, I didn't know that would happen either. It was mearely an educated guess that MAYBE it could happen.

 

I have never found the need to have grips within blocks turned on, which is why the block worked as intended the first time for me. Apparently the click goes right through the stretch arrow to the grip right underneath it.

 

I am guessing that in the future, you could place your action arrow somewhere away from where a grip might be so you could leave grips on in the blocks.

Link to comment
Share on other sites

I didn't quite finish the statement, did I? I was suggesting it for those who only have LT but would like to toggle the block grips. I personally prefer the AutoLISP version, as I can use it with just the keyboard, no messing around with buttons, etc. If you don't need the "G" shortcut for GROUP, then you can use it for such a purpose as this. Mind you, this is the first time I have ever noticed the need to turn off the block grips at all, so I have no idea how useful this is to anyone else.
The only draw back in LT is having to assign it to a double key combination "Ctrl+g" for example, and I have to admit I didn't know about the variable, so the macro will stay as it looks like it has possibilities. :)
Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...