Maintaining set distance between dynamic blocks

Maintaining set distance between dynamic blocks

Anonymous
Not applicable
1,586 Views
15 Replies
Message 1 of 16

Maintaining set distance between dynamic blocks

Anonymous
Not applicable

Please help with any ideas how to fix the attached rack aisle block. I have set up dynamic blocks so the product depth changes on the racking as shown, the dimension1450 should not change nor the 350 dimension,I want when the product depth changes that the racking moves also so that it always maintains 350mm from the new product depth. For example if you change product depth to 1500 then the distance between racks becomes 3300 = 1450+1500+350. Two other constraints I have are 1. that the the racks move to each side so that the overall block stays centred down the middle of the 3000 aisle dimension and 2 that if the product is less than 1200 deep then the racks do not move and stay at 3000 apart ( which is what it does at the moment).

 

All help is greatly appreciated from the new guy!

0 Likes
Accepted solutions (1)
1,587 Views
15 Replies
Replies (15)
Message 2 of 16

ojuris
Advisor
Advisor

if I understand correctly

0 Likes
Message 3 of 16

ojuris
Advisor
Advisor

or that is better?

0 Likes
Message 4 of 16

Anonymous
Not applicable

Thank you very much, what sort of magic did you add to the last stretch action to make it do that?. 

The first one is the best, the second one has some sort of bug that when the depth is less than 1200 the rack to the left does not move inwards, but the first one seems perfect.

By the way have you any suggestion to keep the block centred,say you draw a line down the centre of the 3000 dimension then change depth of product and the centre of the new dimension is still on the same line?m just use a fixed constraint on the whole block??

0 Likes
Message 5 of 16

ojuris
Advisor
Advisor

in Your 1 message is point 2. - "that if the product is less than 1200 deep then the racks do not move and stay at 3000 apart ( which is what it does at the moment)"

that is what I try to realize

if I don't understand correctly - please explain or better explain with sketch

 

I add in attachment corrected block

 

Regards

Juris

0 Likes
Message 6 of 16

Anonymous
Not applicable

Don't worry about anything number 3 is perfect thank you very much. Can you explain what you did to make it stay centred so that I don't have to keep pestering you guys. I see the basepoint added ok but what does the visibilty and lookup do to help?, I tried it myself and cannot get it to do what you are doing.

0 Likes
Message 7 of 16

ojuris
Advisor
Advisor
Accepted solution

hi

 

to stay centered - one side must moving to one side, other to oposite

 

visibility is necessary because block in different situations doing differents things (when depth is smaller than 1200 and when is bigger). In block are 2 sets of elements and switching visibility the correct set is visible in drawing.

lookup switching visibility when it is necessary

0 Likes
Message 8 of 16

Anonymous
Not applicable

Hi again

 

I was trying to replicate the block by using the lookup and visibily states but I am lost. Say I want to change the block so anything below 1000 does not get strectched (as opposed to 1200 as it is now) but I do not see where I can specify the 1000 dimension. Perhaps you could explain step by step?. I also was wondering for adding more levels I use visibilty states but hen I can only have one state per block so I cannot do it, would another look up table do this?

0 Likes
Message 9 of 16

ojuris
Advisor
Advisor

hi

 

if you talking about product depth - then value from 1200 to 1000 you must change in lookup action (Lookup1)

there is defined:

  • if product depth is smaler than 1200, then is using visibility 1 (defined in Lookup2),
  • if product depth is bigger than 1200, then is using visibility 2 (defined in Lookup2)

 

if you don't see names of actions in block, then change system variable BACTIONBARMODE to 0

0 Likes
Message 10 of 16

Anonymous
Not applicable

Thanks

I couln't see the actions. Any ideas how I should more vertical rows, use visibilty?

0 Likes
Message 11 of 16

Libbya
Mentor
Mentor

You must have BACTIONBARMODE = 0 to see both lookup tables.

 

Add more rows by typing either right-clicking and selecting insert row or by typing into the empty row before <unmatched>.

0 Likes
Message 12 of 16

Anonymous
Not applicable

Sorry I dont mean adding more lines to the table

 

I meant add more levels to the actual block, I was wanting to have visibilty that I could have 4,5,6,7,8 levels of racking and could switch on and off the upper levels when not needed, but the problem is I can only have one visibilt parameter and it is already used

0 Likes
Message 13 of 16

Libbya
Mentor
Mentor

To add more levels you can add an point parameter and lookup to control it for the row selection.  You can then add the additional 2 visibility states for each additional number of rows.  You then add the input parameter to the 'input' table on the double-lookup and the additional states to the second table.  See attached.  I added two additional visibility states for the 5-row option.  I did not add the stretch actions.  I made the rectangles cyan in one of the states so you could see the automatic state change that Ojuris added previously.  

0 Likes
Message 14 of 16

Anonymous
Not applicable

Thanks for that, it has some problem as it is no longer changing visibilty state to 2-4 or 2-5 whenever the depth is greater than 1200. 

0 Likes
Message 15 of 16

Libbya
Mentor
Mentor

I didn't realize that you had added a base point parameter at a position other than 0,0.  That's bad practice, in my opinion.  The only reason to add a base point parameter is if you need to move the 0,0 point within the block, which is not the case with this block.  If you are ever going to add a base point parameter to a block, you should always add it at the origin and adjust the rest of the block accordingly.  Here it is working correctly.

0 Likes
Message 16 of 16

Anonymous
Not applicable

Thanks for the help everyone

0 Likes