Revolve Text For Nameplate

I am working on a little 3D print project for a niece and cannot figure out how to revolve text around the horizontal plane. I can get the axis to revolve around 0. What I would like to get is more of a rise before arching, like this. Would appreciate any help one may offer. I am just starting to get out of thinking in 2D and bought Rhino to help make some 3D models. Anyone can go to thingiverse and download someone else’s creation. I really want to make my own.


Hi Jerold,

I am not sure how you created this sofar, but you can select the revolved text and raise it to the required level with either Move, option “vertical” in Perspective or with Move in Front.
Then you select/type ExtendCrv, select the bottom edges and extend those to level 0 by the same amount. The straight parts will all be separate objects, but in my experience that is not a problem when you export to a .stl file for 3D printing. You could try to Boolean everything, but unfortunately that does not always succeed, especially with matching surfaces. If you have to go that route, you should move the bottom part with a slight amount so that the objects intersect i.s.o. just touch.



Thank you very much for helping me! I was wondering if you can let me know how you got the gradual angle in your revolve, like it is revolving around circle/arc. This has to do with the angles you are using, I am just not sure how to replicate this.

Thank you,



I had assumed that you created the example in your picture yourself, apparently not.

  1. Use Text Object to create the curves. These will be grouped, so Ungroup
  2. draw a line just in front of the text
  3. type Revolve, select the text curves, when prompted select two points on the line to set the axis of rotation. The default starting angle is 0 deg., so confirm with enter. Next, type the desired angle of rotation, depending on the direction in which you selected the axis, this may have to be a negative angle. Enter.
  4. Close the top and bottom with PlanarSrf, select both curves or edges in case the character has one ore more “holes” in it.
  5. Select everything and Join, the surfaces will be combined to polysurfaces.
  6. While still selected, go to the Front or Right view, and move everything up from the base by the required distance
  7. Select the original text curves, and extrude these back to base level with ExtrudeCrv.
    8 You can delete all curves if you wish.


Alternatively, once you’ve created the text, create a curve (ellipse) in the right viewport and create sweep 1 rail surfaces. Cap the outer surfaces and boolean intersect the inner surfaces and you have

I tried that too. It works but you have to sweep each curve individually. Selecting more than one curve (i.e. characters e and a) will not work or have an unwanted effect since the command sees those as edges of the polysurface at the beginning and end stations along the rail curve.

Davids solution for creating the end surfaces is an alternative to using PlanarSrf.


Max and David!

Thank you again for providing me with some very useful guidance. It has been a long time since using Rhino due to a move/job change/family illness.

My issue was putting my revolve axis line right up to the lower edge of the text. Curious, what is the purpose of UNGROUP for my text letters?


I have an artistic font that has a lot of subtle irregular curves and edges. It seemed like it was going to be too difficult to select just the outer/inner edges to close the surface. I simply ran PlanarSrf and drew a selection box around the front while in the front view and it looks like it worked!!

It is going to be interesting to see how well this prints. I can see some areas that may be problematic…

Now, how can I buy you a beer!

My mistake, a remnant from experimenting with 1rail sweep, which only works on single curves (or multiple, when they are spaced along the rail as I explained in my earlier post)