I admit to being a bit of a noob with DCs but had some success recently with both parametric and scale-able components. Anybody know how to get both? If I make a component parametrically size editable then user input via the scale tool (along the same axis) just gets ignored. I am imagining a solution where a size change by scaling would feed & update the user-editable option panel and vice-versa.
right now I’m working on a joist but i’ve been thinking about a few places this can be applied. door frames, cabinets, couches, anything where the midsection of a thing can be lengthened but you need something on the ends to remain constrained. Is it an either-or proposition for how you can set them to accept user size input?
Thanks in advance.
test joist parametric + scalable.skp (94.9 KB)
You can have an option to use a fixed length (user input via option dialog) or scale. See the colored beam attributes
Note that generally the user can type a value with units whilst using the scale tool anyway.
There is an issue when you scale using additional legs or lugs, you can provide an option to move them before the scale otherwise the “span” would need to include the lugs.
scale and set.skp (204.8 KB)
I’ve always used the scale tool in percentages. With your suggestion tried direct input. I guess it’s always a good time to brush up on the fundamentals.
Looks like the colored beam you wrapped the fixed length input in another variable and applied it to LenY with the switch statement so LenY could still receive user input through the CURRENT function.
Thanks for the tips.
you want to take a crack at this? I was working on it with my test beam, but here’s a more generic sample. it’s a scalable / parametrically adjustable member with dynamically created holes. Or rather, it wishes it were. the idea is a floor system with varying lengths of the same basic joist design with holes for HVAC/plumbing cut in them at preset intervals
there’s one component which attempts to use a pair of cutting components copied dynamically, but the copies don’t cut.
the other thing I thought of was to make a section with a hole already in it and connect a bunch of copies of it (hide a few edges where it all connects), setting the width dynamically to mimic the adjustable spacing from the first option. This one though, has the problem of generating a bunch of copies of the components which work for a one-off, but if you resize them using the component options MORE THAN ONCE, you get a bunch of weird results because it’s not regenerating the sub-components/copies each time. I found if I delete all the nested copies (careful not to delete the original) and then purge my components list, the next regen of the DC slices and dices an you want it to. (also there’s the possibility of a problem with one of the ends becoming zero depth if you pick the right beam length / spacing combination and then the axis reverses next time it redraws, but not worth troubleshooting for the sample)
I’m starting to feel like I may be better off just manually placing the holes in each variation of the master component as neither of these solutions really achieves the dynamic hole cutting.
test beams.skp (119.4 KB)
the key to doing multi copies of holes is to contain them in another cutting component
test beams.skp (135.8 KB)
Thanks for your help. If there’s a way I can buy you a cup of tea or something I’d do it! You’re all over the forum here and I’ve read tons of your posts while learning up on dynamic components over the past few days.
Just for yuks, here’s the completed joist with holes and a generator for repetitive framing with the scale & set technique plus a nested copy technique I found you helping someone with from a couple years back. I don’t know if there’s a way to avoid all the copies of the wrapper component that get created with the framing generator component, but at least it’s not regenerating tons of geometry.
_TT.FramingGenerator.skp (22.6 KB)
iSpan_CTJ_16c3.skp (150.5 KB)