Scale by ref

I just wrote a plugin to scale only selected items in the model and not the whole model like when using the tape measure tool. Just wanted to see if there is any intrest for this out there

Perhaps, but the normal way to do this would be to Group all the elements you want to scale and use the tape within the context of that group. This will leave everything else alone. You can then explode the group if you don’t need it.

Thanks for the reply. Yeah, I was just working on a pergola and wanted to upscale the beams only and was able to seclect one beam, scale it and scale all beams with the same instance tag within the model. It will scale all the items you have manually selected also

We don’t even need to group the selection.
Select the stuff then activate the Scale tool. The scaling handles appear.

If they were all instances of the same component, then double-clicking into the edit context of the definition, selecting all the internal geometry and scaling it, would scale all the instances at once, since they all use the same definition.

I wanted to scale by ref. and to a measurement and not use the scale handels. I’m also thinking of adding “only scale in one axis” again to edit componets at the same time using measurements not handles, Thoughts?

If you use Units with the scale tool it will scale to a specific dimension.
So by grabbing 1 handle and moving then typing 1.238m enter it will adjust to that size.

2 Likes

Yeah, confused. We can already scale in one, two, or three dimensions to any exact measurement with the existing scale tool. What is scale by ref? This could be an interesting extension idea but I don’t’ quite understand it’s unique function yet.

1 Like

I hope this helps explain my workflow. I frequently import photos or other items and need to resize them individually without affecting the entire model. Standard scale factors and handles aren’t providing the speed or accuracy I need.

But they do by:

  • working in the correct context
  • grabbing the appropriate grib
  • scaling, including the desired units with the desired measurement’s value
2 Likes

I don’t get it either. Scale in the direction you want to go, then enter the length you want. Don’t click in the measurement box just enter the length immediately after the scale operation.

2 Likes

I may be missing something or not using the native Scale tool correctly. In the first example, I am scaling by reference; however, after resizing the image, the entire model changes as well. Using the grab handles doesn’t provide the precision needed in this case. In the second example, I’m using a plugin I wrote to scale by reference, which only affects the selected item or items.

And this maybe just a me problem LoL but thank you guys for your time and input

1 Like

OK. Instead of using the tape tool, use the scale tool. Measure the distance to reference with the tape. Select the objects to scale with the selection tool. Then activate the scale tool, scale in the desired direction(s) and then manually enter the desired length(s). Your whole model is scaling because you are using the tape not the scale tool. I think, I have never used that tape measure function, I always use the scale tool. It asks if you want to scale the model afterwards, not just the selection…

I appreciate the input! However, I think there is a slight misunderstanding of the problem. The native Scale tool requires you to use specific handles and enter a target dimension for that axis. It doesn’t allow you to ‘scale by reference’—for example, clicking two specific points on a scale bar within an image and defining that distance.

That is why I use the Tape Measure tool. While the Tape Measure does allow for reference scaling, its native behavior is to resize the entire model unless you are inside a group. This is exactly why I wrote the plugin: to get the ‘point-to-point’ reference precision of the Tape Measure, but restricted only to the selected items.

1 Like

Measure the distance with the tape tool first… then use the scale tool. Or write an extension… :man_shrugging:

I still don’t think you are getting my goal. What you are suggesting wouldn’t do what the extension does, and even if it did, isn’t that the point of extensions—to save time and clicks?

1 Like

I get it. I tend to do this by employing components and resizing the geometry inside the component context which leaves the rest of the model alone and resizes every component simultaneously. But I see your workflow and if works for you then great.

Here I resize the geometry inside a window component (although in real workflow I would do this with the scale tool so that I could scale in two axis only and keep the window frame thickness the same)

Then I resize a reference image inside a group to exact mm by typing them in. All while not effecting the model dimensions.

1

2 Likes

Thanks for this! I must admit, I never put two and two together to scale within a group or component. However, you’ve given me a great idea for an addition to the plugin: the ability to scale along only one axis or scale while maintaining internal dimensions.

2 Likes

Lol Yep, I was going to ask if it saved clicks. I don’t have any use case for this personally, but everyone SketchUps differently. Glad it works for you.

1 Like