2
$\begingroup$

I need to perform the following transformation: an arbitrary flat geometric figure needs to be rotated around a circle, so to speak. The circle lies in the same plane as the figure, and its diameter is fixed. Rotation angle is also fixed.

If a point of the figure lies on the circle, it does not change. If a point does not lie on the circle, it is rotated around the closest point on the circle in a plane that passes through the point and the circle axis. The following images illustrate this transformation. The circle is shown in red, the original figure in green, and the target figure in blue.

enter image description hereenter image description here

Is there is ready modifier for this? I thought Shrinkwrap would fit the bill but no luck as it distorts the figure.

Thanks in advance.

== DC Dweller

$\endgroup$
1
$\begingroup$

There is more of an indirect approach using the curve deform modifier.

Suppose I want o apply it a jagged circular line,I don't model it as a circular line,I model it as a normal line then deform it on a circle to become circular.

Here is the original object:

Original

  • Select the circle(curve) and the object as the circle the active.
  • Press Ctrl+P then Curve deform
  • Now you have the circular shape (you can make it taller to completely fit).

Final

To the main answer of the question:

All you have to do is changing the tilt of the curve.

Tilt

Note:If the rotation of the object is nor deformed right,you have yo change the axis of deformation from the curve deform modifier.

| improve this answer | |
$\endgroup$
  • $\begingroup$ Omar, Thanks a lot. It would not have occurred to me to use curve tilt in a million years, truly brilliant! However converting my original figure to something that could be transformed into a curve without losing all the details would be too much trouble. I ended up using Python scripting to implement this transformation. The math is quite simple: Cartesian to polar, do the rotation, then back to Cartesian. $\endgroup$ – DC Dweller Jun 14 '16 at 17:46
  • $\begingroup$ @DCDweller , Oh,that make sense,Thanks for the tip. $\endgroup$ – Omar Emara Jun 15 '16 at 6:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.