Scale with increasing factor?

Input:

Desired output:

Here the scale factor is increasing linearly. It doesn’t need to be linear, hower. I just want to scale an object with a changing scale factor, so that dimensions on the left side are wider than on the right side, and in between there is a smooth transition.

One idea that comes into my mind: Rotate the object in perspective display mode, then Make2D, and then stretch the projected bounding box to be a box again.

Any other, perhaps simpler, ideas?

Hi Felix- setting up a surface or curve as a CageEdit control object is one way to do this ‘free hand’. Turn on points on the blue ‘line’ and move them in X to see what I mean…

ControlObject.3dm (36.0 KB)

-Pascal

1 Like

Thanks, Pascal! The problem is only that in between the control points it scales linearly. There is no smooth transition between the individual sections.

Another way that came to my mind is (untested): 1. Bend the curves in the x-z-plane, 2. Make2D in top view.

In the end I used Flow plus Make2D. Result:

Sharp edges are filleted to prevent head injury. :wink:

Use degree 3 curve or surface as the control object and the scaling will be smooth.

1 Like

Thanks for the suggestion. Rebuilt the curve I had before, then used the new curve as target curve for Flow. With history recorded, I was able to drag control points and see updates quickly (updates while dragging would be even nicer). Result:

CageEdit shows the updates while dragging control points. CageEdit is extremely useful for distorting and modifying shapes. The control object can be a line, curve, plane, surface, as well as a box created by Cage. Try CageEdit with the rebuilt curve as the control object.

1 Like

Thanks for the suggestion! As I found out CageEdit needs to be applied to the result of Flow. Then I get updates while dragging.