Am having a problem using “Scale” tool … i downloaded a window from the 3D warehouse and imported into my SketchUp 2020 drawing fine and can move it and rotate but when I try to scale it, things get all wonky… have downloaded a testcase that exhibits the problem - just select the entire window and then choose the Scale tool and then try to make it wider (I used the left center scale point) and then when you drag out to a new width, the window gets translated to new position and some of the elements become invisible.
Any ideas on what is going on and how to correctly scale the window to my desired size? I just tryed to scale the original window from warehouse and it has problems scaling as well, but not the same. The name of the item in the warehouse is
Am attaching the test case drawing and also attaching a screen capture movie that shows what happens to me when I try it on my Mac (macOS 10.13.6 using SketchUp 2020).
Thanks for any suggestions/hints.
scale-problem.skp (288.1 KB)
The window is made as a Dynamic Component and not set up to be resized by scaling. It also appears to have no user interaction via the Component Options panel. If you must use that window component, the easiest thing to do would be to explode all of the sub-components and remove the “dynamic-ness” of it. Then, don’t use Scale to resize it. Scale will not only scale the width of it, it’ll scale the width of the frame parts, too. Instead, select the geometry and use the Move tool.
Thanks very much – but this is a bit puzzling as I have three different instances of this window in the full drawing I’m working on and this scaling problem does not exhibit itself with the other two versions of this same window. How did you determine that the window is a dynamic component? Why is “scaling” affected but not move or rotate? Is it because only scale modifies the object elements and the other two change only the viewpoint?
Actually the window component isn’t Dynamic but the subcomponents are. The green symbol in the thumbnails indicates that. The thing that looks like a red bar is the window component. Since you have other similar components that don’t have this issue, it would seem that you’ve somehow broken this one.
Scaling changes the geometry. Move and Rotate do not.
The component is made up of lots of sub-components. Scaling the top level of a Dynamic Component would typically move some of the subcomponents instead of scaling them. If the DC was working correctly, changing the width of the component would move affected vertical members and scale the horizontal ones but in the case of this window.
Maybe you should delete this one and copy one of the others to replace it.
Another option would be to use Fredo Scale, available at SketchUcation. Also you will need Lib Fredo 6, also at SketchUcation
I see what you mean by the “Dynamic” green “arrow” in the Components window showing list of all existing components in the current drawing - but haven’t been able to change this so that it’s no longer dynamic (is that possible)?. Find lots of sites that talk about creating dynamic components but so far nothing about changing dynamic to a basic component. In any event, I tried your suggestion about making a copy of the window that doesn’t seem to have this problem, but appears I was mistaken, as it also shows the same scaling problem. Very puzzled how I would have scaled the other two windows to fit the openings in the shed given they too have the dynamic components.
So, seems like Dynamic components have some serious shortcomings if there is no way to make them not Dynamic and no way to scale them if they are Dynamic.
Am gonna try the Fredo Scale suggestion of RLGL and see how that goes.
Thanks again for the suggestions and appreciate all the help from everyone.
Who said anything about either of those? It’s easy enough to make them not dynamic and, if they are built correctly and haven’t been broken scaling can be a way to resize them.
What @DaveR is suggesting is a great idea in a handful of cases. I use that method quite a bit, however one thing that is better in a lot of cases is to use the fredo scale plugin. In many cases its not a good idea to explode all geometry as Dave is suggesting, so it’s way faster to use fredo scale in many cases like this. Particularly if you turn off the live transformation. It’s probably the most practical and fastest method out there for scaling, plus way more advanced things can happen with fredo scale than you could ever do with the native stretch tool.
@eneroth3 has made an extension that clears away all DC data out of a selected component.
The component posted in this thread has problems as the subcomponents in it reference attributes from other subcomponents and the parent that are missing. It might be a result of copying and pasting parts.
I tried to find ways to turn the Dynamic off but no luck so far - so how is that accomplished? And what is the correct way to make use of Dynamic so that this sort of problem doesn’t happen? Thanks…
When I worked on your file I just opened the top level component and exploded all the sub-components. That eliminated all of their dynamic properties and made it a simple thing to resize the window using the Move tool. (Could have used FredoScale but there are times it’s more work than the Move tool and you should know how to do this stuff with native tools. There’s the Eneroth extension mentioned by @Anssi which would remove the DC properties without exploding the sub-components but resizing, at least with Move, would be more work.
Normally just copying a Dynamic Component to use elsewhere in the model works just fine and does not break it. I’m not sure what your process was for copying the window that removed the top level DC properties.
Here’s a simple frame component from the Dynamic Components Training collection. You can see that using Scale, there are handles for changing the width and height. And when I make a copy of the component, that copy can also be modified with Scale. If your window component is made correctly and intended to be resized with Scale, the same process should work. It is possible to make Dynamic components that cannot be modified with the Scale tool. Resizing, if it’s an option, would then be done strictly through the Component Options UI.