Jump to content
Bill Tillman

Dynamic Block Position Shifts

Recommended Posts

Bill Tillman

I'm working with a dynamic block with some flip and stretch actions. I almost got it working like I want it, but the trouble is when I stretch it to make it longer the flip action is no longer centered between the ends of the door frame. I could of course just move the block once it's flipped, but isn't there a way to force the control point for the mirror line in the flip action to always stay at the center of the door?

Door Dwg.dwg

Share this post


Link to post
Share on other sites
dlanorh
1 hour ago, Bill Tillman said:

I'm working with a dynamic block with some flip and stretch actions. I almost got it working like I want it, but the trouble is when I stretch it to make it longer the flip action is no longer centered between the ends of the door frame. I could of course just move the block once it's flipped, but isn't there a way to force the control point for the mirror line in the flip action to always stay at the center of the door?

Door Dwg.dwg

 

You need to remove the flip action from the stretch action and insert a new stretch action using the same parameter stretching the flip action with a multiplier of 0.5.

 

Attached is your drawing with the block altered. There is a new stretch1 action.

Door Dwg.dwg

Share this post


Link to post
Share on other sites
Bill Tillman

Thanks. I think I follow you up to the point of assigning the multiplier of 0.5. I didn't seem to find how that is done?

 

Share this post


Link to post
Share on other sites
dlanorh
14 minutes ago, Bill Tillman said:

Thanks. I think I follow you up to the point of assigning the multiplier of 0.5. I didn't seem to find how that is done?

 

 

Open the block in the block editor. Select the stretch1 action to highlight then right click and select properties. Under the Overrides heading is the distance multiplier. This is normally 1.0 but since you want it to remain in the center of the door it's set to 0.5.

 

Hope that helps

Share this post


Link to post
Share on other sites
Bill Tillman

I can't seem to get it right. I added the additional stretch action and set it's multiplier to 0.5. Then block really started misbehaving then so I think it's the bounding boxes I'm choosing are incorrect. I always get confused as to why they want you to select.

 

Okay, it took a little time for it to sync in but I've got it. Many thanks. It's usable at least but still needs some polish. It doesn't like to be flipped and then stretched. Going to have to work on that.

Edited by Bill Tillman

Share this post


Link to post
Share on other sites
Bill Tillman

Thanks again for your valuable advice. This is a little more complex than I thought. However, it's almost working. I added a double door which will need to stretch symmetrically. That is when I pull the grip two inches, the opposite side gets 2" longer as well. But it's not working quite right. When I click the grip and then start to move the mouse I can see the dimension getting larger. Then I type in something like 106, but when it's all over the opening is now 140", not 106.

 

My big problem is I don't correctly understand what the two requests for fencing around objects to build these actions.

 

The first prompt says, "Specify first corner of stretch frame of [CPolygon]:

I have basically been following the directions in some YouTube videos, but I don't really understand what I'm doing in this first request vs what I'm doing in the second request which prompts with "Select objects to add to action set..." Again, I'm just following blindly what the video is doing and many times they move so fast or you can't understand where they actually clicked.

Dynamic Door Block.dwg

Share this post


Link to post
Share on other sites
dlanorh
8 minutes ago, Bill Tillman said:

 I added a double door which will need to stretch symmetrically.

 

Why does it need to be stretched symetrically? As per the previous block, stretch 1 should stretch the middle of the door in the same direction by multiplier 0.5. (see amended attached block DH350 Double).

 

If you want to stretch symetrically use a "linear stretch pair" under the parameter sets tab. The reason your door ends up 140 when you type 106 is because you're using two stretch actions attached to one parameter, if you do the math 106 - 72 = 34 106 + 34 = 140 so it stretches 34 in each direction, not in total. ((see amended attached block DH350 Double2)

 

The first fencing request is for "The area of action"  The second the objects that will have the action applied to them. With a stretch, if you miss a corner in the area of action, the lines

Dynamic Door Block2.dwg

Share this post


Link to post
Share on other sites
Bill Tillman

Many thanks dlanorh. You sure know your dynamics about these blocks. I think I can figure it out, just need a little time to study how it's working.

Share this post


Link to post
Share on other sites
Bill Tillman

Okay, there is something about the two fence actions which I'm not getting correct. This is a new block with an elevation of a double door. I want to stretch it symmetrically too but can't seem to make it work with the examples I got. Here is where I loose my way.

 

There are two (2) fence actions required. I notice in some of the videos the instructor sweeps right to left and then in others they sweep left to right. I understand the cross fencing that happens when you go right to left. But somehow I'm not making the translation to the stretch action.

 

I've drawn rectangles on the fences I'm trying, perhaps someone can tell me what I'm not getting right with this.

 

 

Drawing2.dwg

Share this post


Link to post
Share on other sites
dlanorh
1 hour ago, Bill Tillman said:

Okay, there is something about the two fence actions which I'm not getting correct. This is a new block with an elevation of a double door. I want to stretch it symmetrically too but can't seem to make it work with the examples I got. Here is where I loose my way.

 

You shouldn't stretch it symetrically as one of the stretches will move objects connected to  the insertion point; something has to stay fixed. If you want to stretch it symetrically, the insertion point should be bottom middle and thus unaffected by any action. Again if you want to stretch symetrically use the linear stretch pair action, not two seperate stretch actions that multiply the stretched distance by 2.

 

1 hour ago, Bill Tillman said:

There are two (2) fence actions required. I notice in some of the videos the instructor sweeps right to left and then in others they sweep left to right. I understand the cross fencing that happens when you go right to left. But somehow I'm not making the translation to the stretch action. 

 

 

The first prompt is with regard to the Stretch frame. It doesn't matter which way you sweep or from where, it is the scope of the stretch. Only selected objects within the stretch frame will be affected. The second prompt is to select the objects. As it's a stretch action this should be by crossing (easiest and you get the corners which is important), so type "c" (force crossing), enter, then select all the objects within the previous frame that you want to be moved by the stretch actiion, as you would using the stretch command in AutoCAD.

 

Attached is the updated block. Stretch1 action now stretches the middle of the doors in the same direction as stretch but with a 0.5 multiplier. The insertion point and adjacent wall and floor stay where they are and everthing else can move.

Drawing22.dwg

Share this post


Link to post
Share on other sites
Bill Tillman

Sorry to be so dense about this. When I opened Drawing22.dwg and then stretched the door frame, it all feel apart. Let me show the steps I'm taking:

  1. Add Linear paramter for width of door frame opening
  2. Change the number of grips from 2 to 1 for this parameter
  3. Add a Stretch Action to this parameter
  4. Select the grip on the right (the only grip)
  5. Fence from upper left to lower right to include the whole right side (top to bottom) of the object
  6. Fence from lower right to upper left, roughly the same area
  7. I can now save the block and check this parameter. It works fine.
  8. Now I go back into the block editor and add another Stretch Action
  9. Select the grip on the right (the only grip)
  10. Fence from upper left to lower right to include the whole left side (top to bottom) of the object
  11. This step unfortunately picks up the Insert Point for the block, not sure how to avoid this unless I move the insert point to somewhere else.
  12. Fence from lower right to upper left, roughly the same area
  13. I save the block and test it but the only side which stretches is the right side

I hope that explains it and we can find out what step I'm doing in error. Thanks again for your assistance and patience in this. 

Share this post


Link to post
Share on other sites
dlanorh
2 hours ago, Bill Tillman said:

Sorry to be so dense about this. When I opened Drawing22.dwg and then stretched the door frame, it all feel apart. Let me show the steps I'm taking:

  1. Add Linear paramter for width of door frame opening
  2. Change the number of grips from 2 to 1 for this parameter
  3. Add a Stretch Action to this parameter
  4. Select the grip on the right (the only grip)
  5. Fence from upper left to lower right to include the whole right side (top to bottom) of the object
  6. Fence from lower right to upper left, roughly the same area
  7. I can now save the block and check this parameter. It works fine.
  8. Now I go back into the block editor and add another Stretch Action
  9. Select the grip on the right (the only grip)
  10. Fence from upper left to lower right to include the whole left side (top to bottom) of the object
  11. This step unfortunately picks up the Insert Point for the block, not sure how to avoid this unless I move the insert point to somewhere else.
  12. Fence from lower right to upper left, roughly the same area
  13. I save the block and test it but the only side which stretches is the right side

I hope that explains it and we can find out what step I'm doing in error. Thanks again for your assistance and patience in this. 

 

New step 1. Ensure system variable "bactionbarmode" is set to 0

 

You're then OK up until step 10. You cannot select the floor or vertical wall line near the insertion point, otherwise you do not have two fixed lines to stretch against and everything will go to pot.

 

10. Fence the whole middle of the two doors including the door handles. It doesn't matter if you do it lower left to upper right or vice versa. This is the area inside of which the action will be   applied.

 

11. Next comes the Select Objects prompt.As this is a stretch selection it is important to get the corners, so force a crossing selection by typing a c (crossing) then enter. You should now still be in object selection mode, again select everything inside the previous fence selection 10 above. As you have already stipulated that this is a crossing it doesn't matter how you do this. You should now have everything inside the the fence from step 10 selected. Press enter.

 

12. Right click the newly inserted stretch action the properties. Hopefully the new setting above should make this easy. Under the properties go to the Overrides Heading. The first item under this should be distance multiplier. The value should read 1.0. Change this to 0.5 and press return. Quit out of the properties and then save the block.

 

When you now click on the linear parameter right arrow it will carry out two stretch actions. The first will stretch the far side of the door by say 10 inches and the centres of the doors by half that, 5 inches.

 

Share this post


Link to post
Share on other sites
Bill Tillman

Dude, I am so sorry, but something is a miss in your directions. I do to the letter what you're saying, but when I stretch the block, the door blows up. Lines along the top and the bottom move completely away from where they are supposed to be. The same thing is happening to the example file Drawing22.dwg you sent previously. The door block just blows up when I stretch it.

 

I have been able to get the thing partially working, but similar to what was happening on the single door block, when I type in say 108" the door stretches to 144". And to achieve that I did not fence around the handles or the middle of the door at all.

Share this post


Link to post
Share on other sites
Bill Tillman

Okay, I think I finally have it working. Stand by and I'll post results later. The boss is calling a meeting which I must attend.

 

Share this post


Link to post
Share on other sites
dlanorh

OK. There were spurious actions happening with the initial stretch. I've sorted them out by erasing all actions and tidying up some lines. Attached is the block working correctly.

Drawing22.dwg

Share this post


Link to post
Share on other sites
Bill Tillman

Thanks again. I think I have it now. You weren't kidding about getting the fences in just the right places. And I prefer your method of stretching from the middle so the left side of the insert point stays put. Okay, so I put some more polish on it and here's what I'm finally after. Now to put it to work making cut lists, etc...

Dynamic Doors 101.dwg

Share this post


Link to post
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
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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...