Is it possible to cap a curve extruded along another curve?

I created curve_a then I set curve_b as its bevel object to create a surface along the length curve_a. The problem is I would like end caps for that surface.

I specifically need this for some text that I converted to a curve, which was then made the bevel object of another curve. Problem is I can’t close off the text right now, so it ends up having a garden hose effect.

Does anyone know if there is an automated way, or at least a hack to add end caps?


Ok, well I figured out a somewhat ugly way to do it.

  1. Select the extruded curve with the bevel curve on it, duplicate it and move it to a hidden layer. This is just so if you want to make changes to the original curve you can later.

  2. Take the extruded curve on the visible layer on convert it to a mesh.

  3. Duplicate the curve you were using as the bevel object for the original curve, and convert that to a mesh (this will be the cap), you can move the original curve to the same layer as your other hidden curve.

  4. Line up the cap mesh as closely as possible to the end of the extruded mesh, but leave a little gap between the vertices. The vertices of the cap should line up perfectly with those of the extruded mesh.

  5. Apply a shrinkwrap modifier to the cap, and target the extruded mesh. Set it to nearest vertex.

  6. Apply the shrinkwrap modifier to the cap. The cap should now be perfectly aligned with the end of the extruded mesh, and all the vertices should looked connected.

  7. Join the cap and the extruded mesh objects.

  8. Run remove doubles and switch back to object mode.

Your extruded mesh should now be perfectly capped.

If anyone figures out a better way (non destructive) please let me know.


Couldn’t you just duplicate the bevel object (meaning the letter A,B or C). Then assign a path constraint to it? Make the speed curve always be 100% and the cap will always remain at the end of the path. You could grow the path as well and have the cap follow the grow if you synchronize your taper object with the speed IPO curve of the curve. This technique also gives you a separate material for the cap and the extrusion. Because the final cap object is still a font or a curve, you can also use the extrude and bevel on the cap for more design flare!

For the second image I set the bevel and extrude on the font and turned off the cap. Then I used the IPO speed curve to tweak the placement on the end. I changed the end value from 1.0 to 0.9997. This slight nudge caused any gap between the end of the extrusion and the font to disappear.


ras_extrude_cap.blend (156 KB)

Hey Atom! thanks for the tip, this works pretty well. I still notice that the edges never seem to line up quite perfectly though. This becomes more apparent if you use several letters, or the curvature of the spline becomes more extreme. Seems to just be a result of the bevel shape warping slightly as it conforms to the shape of the curve.

I think ideally we just need the addition of some sort of cap ends checkbox when you enter a bevel object for a curve. I think this case could also be handled if there was an extrude modifier. Maybe the new nurbs integration will be able to handle something like this though. We shall see.

Yeah, it seems kind of odd that we have all these major systems like particles, character rigging, fluids, dynamics etc… Yet basic features are simply not in place. Like cap ends.