Dear all.
i hope to get some explanation not just the solution if someone was able to solve it.
the target is to be able to use the dynamic block (which is a mechanical support in my case) to be stretchable along the pipes (color red) with minimum value of 1000mm between the 2 supports, the problem i'm facing is that if i have a pipe with i.e. 2800mm length the third support will extend to outside of the pipes (multiple of 1000mm). i want to develop a block that puts two supports on each end and to divide (equidistantly) the remaining distance between those supports,
please see attached file for the example.
thanks a lot
Solved! Go to Solution.
Solved by j.palmeL29YX. Go to Solution.
Solved by j.palmeL29YX. Go to Solution.
Solved by j.palmeL29YX. Go to Solution.
Solved by j.palmeL29YX. Go to Solution.
Solved by mertkarademir. Go to Solution.
Solved by MMcCall402. Go to Solution.
@alxptcsrl wrote:
it is very difficult to handle
Very difficult?
Ok, after changing the width (d1) sometimes you have to wait a moment until the geometry reacts. But the duration of this delay depends on the maximum of panels you need. Therefore I asked how much panels you expect to need. The less the "smoother" the block will work. Unfortunately you did not yet answer this my question.
I could imagine another solution (not yet tested) if you don't need to choose different height (d4). But I'm afraid then the block will be useless for you.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hello
Thank you for the video it is very clear
Regarding your question, 10 panels are enough unfortunately (d4) I have to be able to modify it
Can you help me with some improvements for this block? this block also includes a door and sometimes a technical module, probably starting from this block I still need some variates or more blocks.
Thank
Do you really need to put all the shown variants (and perhaps more?) in one block definiton?
It is already hard enough for the computer to manage this block with its currently 10 VisStates and about 430 constraints. Wouldn't it be better (or at least aceptable) to build separate blocks and then place theses side by side? I don't know a better suggestion.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
I'm afraid this will bee too complex.
I'd suggest to create some different blocks and place they side by side.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hello
I came back with better optimization represented in the drawing, the block can have 6 panels instead of 10
Please give me good news that it can be done.
Thanks
@alxptcsrl wrote:
... better optimization represented in the drawing,
A first question:
What shall happen with the dimensions "?" in the following image if you change d6 (30/35)? Are they constant?
Second: Your examples are over dimensioned. E.g. the second - If the user chooses a value for d1.1, d1.2 and D7 then d1 will be sum the of these. Or the user must choose a value for d1 - which of the first three dimensions shall be the result of d1 minus two of the others? (The same question for the other examples).
Next: Have you tried it yourself? Did you understand how my first suggestion above works? At what point do you have problems/questions?
I'm not yet sure if it will be solvable at all, even I think/hope it can be possible. But I am afraid that this project is too complex for a comprehensive free help - I will give my best.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hello Palmel
Thank you for the effort made, this community is very involved,
Keep it up!
I try to reduce as many variables as possible 🙂
d6 size can be constant 35 mm
size "?" is 50 constant
the user must choose a value for d1 - which of the first three dimensions shall be the result of d1 minus two of the others - Yes!
I haven't worked with constraints, I can't handle them, I've done some dynamic blocks with parameters.
Thanks
I would recommend and suggest putting the final project (a glass wall?) together from individual modules.
In the attached file you find 5 different blocks, which you can assemble as you need. The glass_left and glass_right are similar to our first block above. Only the right and the left end is modified a little.
The glass_door and glass_tech you can drag to both sides to modify their width (and of course the height too).
The video shows how I would use these blocks:
Assuming you have a given width overall (here represented by a line). Place the glass_left and glass_right at the endpoints. Further you can place the door and/or the tech. module whereever you need and choose the needed width (drag or properties window). Next drag the outer blocks to fullfill the gaps between the modules. At last adjust the number of panels to get their width between 500 and 1000.
The advantage of this strategy is a maximum of flexibility. You can place each modul where you need, you can set each of the width to a given (needed) value or drag the width of each module to get it connected to its neightbor.
In the video I forgot to show how to change the height. Each of the modules has an appropriate grip. Even if you have to change the height for each module separate, that should be done in a handfull of seconds.
You should be able to refine the block as your need, e.g. restrict the width of the door and the tech. module to given values (add a list), or suppress the visibility of the reference dimensions (to control the with of the panels) or ... what you need.
And, it will be easy in the future to add additional modules (besides the current door and tech. modul).
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hello
Can you help me with a small change, I marked it in red on the drawing
Thank you
The "small change" (13 -> 10 for glass_left anf glass_right) is done in the attached dwg (I hope it works as you expect).
Additional I did some more small modifications (in hope to increase the performance a little): In each of the visibility states you added a horizontal and a vertical dimension for the width and the height over all. I deleted these dimensions and replaced by only one vertical and one horizontal dimension, which are visible in all visibility states.
I hope this solution is acceptable for you.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hello
It works perfectly and is what I wanted
I'm impressed how you know autocad, especially with the constraint function.
Thank you!
Hi, I cant figure it out how you make the polyline invisible (the path for the array), and i dont understand why its an Equal constrain, can you explain?
thanks!
how you make the polyline invisible
The both lines were converted into Construction Lines (using the BCONSTRUCTION command). Such construction lines always are invisible in block references.
why its an Equal constrain,
Mark decided (I don't know why) to use two different lines to solve the problem: A lower line to have an object for the Horizontal Constraint Parameter and an upper line as path for the array. The equal constraint ensures that the path always has the same length as the parameter.
IMHO you don't need two lines. You need only one line, whose length is driven by the Horizontal Parameter and the same line can be used as path for the array. Perhaps @MMcCall402 can tell us why he used two different lines.
Jürgen Palme
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Hmmm, I'm not sure why either. I might have started something where I was going to array the top and bottom parts as two separate arrays and then use another constraint to control how far apart those two lines were and appear like it was stretching the object vertically. I should have cleaned it up before posting.
Can't find what you're looking for? Ask the community or share your knowledge.