SketchUp's Ruby API (Application Programming Interface) is one of the most powerful things about our software; it's enabled talented programmers to build Ruby scripts (plug-ins and extensions) that allow SketchUp to do some pretty amazing things. This world of add-ons is so big and fast-evolving that we generally don't do a terrific job of providing our blog readers with any insight into it. Here begins an attempt to do better.
FredoScale was developed by the venerable Fredo6, an all-star SketchUp Ruby developer responsible for some of the most impressive and useful plug-ins I've seen. Here are the basic facts:
- FredoScale isn't really one tool; it's actually a whole set of tools that you can use to deform your geometry in a number of different ways.
- Fredo6 makes his plug-ins available as donationware, meaning that they're free to download and use, but that payment is always gladly accepted.
- Just like most other Ruby scripts, FredoScale works on both Macs and PCs.
- IMPORTANT: Fredo6 has fixed a couple of issues that were causing problems for some SketchUp users. Take a look at his note for more information.
You'll see when you install it that FredoScale provides a wallop of functionality. Here's some of what it lets you do:
Ever noticed how SketchUp's native Scale tool always lines up it's scaling box with the model axes? That's fine some of the time, but it's not ideal when the thing you're trying to scale isn't perfectly aligned with those axes. See the first image in the figure below: I'd like to stretch the vase along its length. When I select it and choose the Scale tool, its scaling box (made up of 26 green grips) is misaligned because the vase is rotated relative to the axes -- I can't scale it in the direction I want.
SketchUp's Scale tool aligns itself with the modeling axes, making it difficult to scale this vase along its vertical axis.
Using FredoScale's Scaling tool, I can specify the orientation of the scaling box to make it line up the way I want; all I have to do is click on a face to tell it where to set up. After that, the scaling box works just like SketchUp's Scale tool. Super-handy.
FredoScale lets me define the orientation of the scaling box, making it much easier to do what I want to do.
Tapering and Stretching
Take a look at the following images; they say more than any words I could write:
The Tapering tool lets you (among other things) turn a sphere into an egg.
Using SketchUp's native Scale tool stretches the barbell by distorting it (top). FredoScale's Stretching tool somehow figures out what to stretch and what not to, resulting in a smarter stretching operation (bottom).
Twisting and Bending
These last two made my jaw drop. FredoScale's Twisting tool lets you corkscrew anything you select; look what it did to an extruded star I modeled (below).
The Twisting tool is amazing. Expect a bumper crop of corkscrew buildings in the next 5 years.
You can use the Bending tool to do something I've always had a miserable time doing in SketchUp. I wish I'd had it when I modeled for Santa. A simple example: Select a cylinder, activate the Bending tool, indicate an origin and axis of rotation (bendation?) and go nuts. You need to try it to see how ground-breaking it is.
The Bending tool lets you do things you just can't do with regular ol' SketchUp.
Convinced? You can download the latest version of FredoScale by visiting this thread at SketchUcation. The link to download is in the thread, as are links to PDF documentation in English and French. Here's a video Fredo6 made to explain FredoScale:
One more thing: I often struggle when trying to install Ruby scripts on my system; I never seem to get them in the right folders. In case you're like me, here's where to put everything you download and unzip -- inside your Plugins folder, you should have the following:
- a folder called LIBFREDO6_Dir_34
- a folder called FREDOSCALE_Dir_20
- a file called LibFredo6.rb
- a file called ZLoader__FredoScale.rb
For more information about Rubies (including how and where to install them), take a look at the Ruby scripts page on the SketchUp website.