DYNAMIC BLOCK ARRAY STRETCH

rosader
Enthusiast
Enthusiast

DYNAMIC BLOCK ARRAY STRETCH

rosader
Enthusiast
Enthusiast

I am working on creating a dynamic block for drawing rebar lines.

The block is a vertical line representing vert rebar with a dot off to the side representing horiz rebar. The line starts 1-1/2" lower than the dot and the intention is to have the line end 1-1/2" higher than the last dot.

 

I placed a linear parameter on the vertical line and then added an array action for the dot with a spacing of 4".

I then added a stretch action using the same linear parameter and selected the top of the line for the stretch. 

So in theory if I want to show (2) horizontal rebar dots, I would need to stretch the block to a length of 7" (1-1/2" at top and bottom plus 4" between dots). The problem I'm running into is that the array isn't adding the second dot until I get to a length of 8-1/16" (really weird length) which puts the top portion of the line at 2-9/16" rather than 1-1/2". I'm not sure what I need to change to get it to function correctly.

 

See attached image. left side is drawn with lines to represent what I want. The right side shows what the block is actually giving me (if I stretch block any shorter it removes second dot)

0 Likes
Reply
Accepted solutions (1)
2,374 Views
9 Replies
Replies (9)

Libbya
Mentor
Mentor
Accepted solution

My reply earlier today in this thread and the screencast linked in that reply demonstrate the concepts necessary to understand when arrayed objects appear and also how to fix your block.  https://forums.autodesk.com/t5/dynamic-blocks-forum/display-partial-elements-of-array/td-p/11756452

 

If you need further assistance, post your BLOCK.

0 Likes

rosader
Enthusiast
Enthusiast

My basepoint is at 0,0

Here is my attached block. Inside the block editor, the line is 3" long and the dot is centered.

 

0 Likes

Libbya
Mentor
Mentor

It sounds like you only read the first paragraph of my post.  What I said about the base point parameter has nothing to do with the array.  Read the rest of the post and watch the screencast I linked in it if you want to understand why the arrayed objects appear when/where they do.  Meanwhile I'll take a look at your block.

0 Likes

rosader
Enthusiast
Enthusiast

I apologize, I got to where you mentioned discrepancies in his block and figured that didn't apply to my situation but yeah I now see that my linear parameter is only 3" whereas my array spacing is 4" and you're saying they need to be equal. Does your screencast have sound with it? There's just a lot going on and I'm not getting audio describing the process so it's a little hard to follow.

0 Likes

Libbya
Mentor
Mentor

No audio.  All the mouse clicks and commands are shown.  It might help to make it fullscreen, play at 1/2 speed and pause often.  

0 Likes

Libbya
Mentor
Mentor

To be clear, the parameter length does not need to be equal to the column spacing.  The length of the parameter and column spacing determine when the first arrayed object and all consequent arrayed objects appear.  Associating the array with a chained linear parameter lets you tune the length so that the arrayed objects appear exactly where you want them. 

 

In the screencast I linked in this thread I made the chained linear parameter 4" just because it was easy.  With the main parameter starting out at 3" and the chained parameter starting at 4", the first arrayed object will appear when the main parameter is stretched 4 more inches to 7".  If you want it to appear at a different point, then you can adjust the chained parameter starting length accordingly. 

0 Likes

rosader
Enthusiast
Enthusiast

So I left the line at 3" but put the linear parameter to 4" (to match array spacing) and it seems to be working now. 

Thank You!

rosader
Enthusiast
Enthusiast

Sorry, didn't see your last post before I replied. I'll look more into associating with chained linear parameter.

Thanks again

0 Likes