Community
Dynamic Blocks Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Dynamic Block Array and Flip

4 REPLIES 4
SOLVED
Reply
Message 1 of 5
Anonymous
1161 Views, 4 Replies

Dynamic Block Array and Flip

Hi All,

 

I've got a Dynamic Block for Refrigerated Chillers that I need help with. The conditions needed are as follows :

 

1) Each door width is 635 mm with a combination of 1 door/2 door/3 door unit

2) Each unit can come with or without backdoor access

3) Each individual door can be changed to become Left hinged or Right hinged (This is what I'm having toruble with)

 

So far I managed to do "1" and "2" no problem with a combination of arrays and visibility states. However, I'm bummed on how to give each door the ability to flip hinges individually. I tried to block Dynamic blocks within dynamic blocks but apparently thats not allowable Smiley LOL. I won't be too fussed if I need to mirror the whole block to get the right orientation but I'm trying to cut down the time needed to flip each door individually according to intended use.

 

Can someone shed some light on the matter? Attached the block I've come up with so far. Appreciate any other tips on how I can achieve this solution.

 

Thanks!

 

Tags (1)
4 REPLIES 4
Message 2 of 5
Libbya
in reply to: Anonymous

You cannot flip individual parts of an array.  It is possible to make the block do what you request, though.  Here is a screencast that shows the step-by-step.  Let me know if you need additional explanation of any part of it.

 

 

Message 3 of 5
Libbya
in reply to: Libbya

I noticed that last screencast is missing the captured keystrokes.  You can see the keyboard input on the command line, but I figured I'd redo it to make it clearer.

 

If you are wondering how the block actually functions, the single lookup lets you select whether or not the chillers have the back door.  The double lookup changes the visibility state between the six options depending on the single lookup choice and the distance1 stretch.

Message 4 of 5
Anonymous
in reply to: Anonymous

Thanks a bunch!! (I actually wrote a reply yesterday but apparently it went missing).

Also, thanks for the explanation. I'm just curious on the purpose of the Point and how it relates to the lookup table. I noticed you specifically placed it at 1,1 coordinate - was that on purpose?

I managed to get my block to work like you showed, just wanting to understanding the working mechanics of it better.
Message 5 of 5
Libbya
in reply to: Anonymous

Congrats on getting it working.

 

The block has two user inputs.  One of them is the linear parameter.  The other is the selection lookup which switches between w/ or w/out the back doors.  In order for those inputs to work independently to determine the visibility state, you need them to each affect a parameter that can be used on the double lookup. The double lookup cannot use another lookup as an input property so you need the point parameter as an 'intermediary' between the selection lookup and the double lookup.  The selection lookup changes the X value of the point parameter to 1 for chiller or to 2 for chiller w/ back door.  The two tables on the double lookup have different functions.  One table I consider the input table.  It combines all the user selected input parameters into all the possible rows.  The relative values of the user selected parameters determine the row of on the input table.  The other table is the output table and it forces the input parameter(s) to the determined value of the row of the same name.  

 

For example, when the user pulls the distance parameter to the 3rd value of 1905 but leaves the single lookup on chiller, the input table looks at the value of the linear parameter (1905) and the X value of the point parameter (1) and determines that the current row is 3-1.  The second table is switched to row 3-1 and it changes the visibility parameter to the state 3-1.  If the user then changes the single lookup to chiller w/ back door, the lookup changes the point parameter X value to the value of 2.  The row on the input table is then determined to be 3-2.  On the output table the visibility is switched to 3-2.  

 

I did intentionally place the input point parameter at 1,1.  Because the Y position is not used/changed, it could be placed anywhere, but the X is used as the input on the double lookup, so its placement is important.  The 'rule' I've come up with is that the input parameters must match the row that matches the default visibility state.  The default visibility state is always the one at the very top of the visibility dialog box list.  In this case the top visibility state is 1-1.  The input table row for 1-1 corresponds to the linear parameter equalling 635 (which it does as drawn) and the point parameter X value of 1 (which it does because I put it there).  If the input parameters do not equal the row that matches the default visibility state, the double lookup will not start working correctly until they are switched to a value that matches a row.  If you have multiple single lookup selections, you will sometimes need to switch each of them before the double lookup will start working correctly.  Furthermore, if the default input parameter position does not match a row on the single lookup table, that table will forever have the 'Custom' value on the list, which I don't care for.

 

As an aside, I would also mention that if possible, I like placing the block geometry at 0,0 within block editor in a way that makes decent use of the default basepoint grip.  That was the reason I used the stretch command at the beginning of the screencast.

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Forma Design Contest


AutoCAD Beta