The ScaleEach command (New in Rhino WIP)

Hi. What follows is a brief introduction to a new command in Rhino WIP/Rhino 8, especially useful for drafting but also in 3D. In this week’s Rhino WIP, it works on curves, meshes, surfaces, polysurfaces and SubDs. It soon will get extended with your input.

  • ScaleEach works like Scale, but instead on each object individually

  • There are no restrictions regarding the amount of geometry to process, and the preview is immediate

  • There is no need of scripting and Grasshopper or other ‘heavy-handed’ tools are not required

  • Unlike BoxEdit, ScaleEach can use centroids, points relative to bounding boxes, and other salient features of geometry, in particular:

    1. BoundingBoxMiddleCenter - This computes the boundingbox and then applies the transformation to the middle center. Basic mode
    2. AnyBoundingBoxPoint - This computes the boundingbox and then allows to pick any point relative to it. The same point, trasformed relative to each other bounding box, will later be used.
    3. Centroid - This uses: the area centroid for surfaces, polysurfaces, meshes and SubDs. The area centroid for closed and planar curves. For other curves, the perimeter centroid.
    4. GumballAnchor - If you used the gumball on any object, then the origin of that frame is used. Otherwise, this behaves like BoundingBoxMiddleCenter.

By chatting with people, requested features have been:

  • ScaleEach in 1D, 2D or just pick a different scaling factors for each axis
  • use a linear scale factor. For example, starting from 0.1 and all the way up to 0.5, in picking order
  • use a random scale factor between two values for each object. For example, to resize trees in a forest or give more natural looks to items

You can follow progress on our internal bugtracker at RH-68441.
Please feel free to vote to give priority to these features, or suggest new ones.