Uneven thickness when using a Bevel Object along a path

You can see I have a Bevel Object in the center (the semicircle) determining the bevel shape.
This looks nice and uniform when the path is closed.



But if I Toggle Cyclic and open up the path, it gets thicker on the ends, like bell-bottoms. Really annoying.


Although I suspect the end thickness is actually the correct thickness and it’s pinching at the corners.
So how can I ensure that I get uniform thickness regardless of my path geometry?
Thanks!

1 Like

I don’t know if it’s a bug or a limitation of the current state of the tool , maybe you should report this on the bug tracker :
https://developer.blender.org/

and see what the devs will say about it.

Meanwhile a workaround would be to convert your curve object into a mesh (ALT+C -> Mesh from Curve)
Then in Edit Mode with the Knife ( K ) then press Z (cut through) and C (to contraint to view angle) you may want to cut there :
http://i.imgur.com/xh0escC.jpg

And then delete what’s not needed
http://i.imgur.com/TB27R4u.jpg

Set curve type to 2D.

3 Likes

Interesting, 2D deliver the desired result (as everything is on the same axis) while 3D will distort badly.
There’s then very likely a bug there.

Thank you both! I never would have guessed it would need to be set to 2D, because there are clearly instances where one would want/need it to be 3D.

For now I will set the path curve to 2D as suggested, make more objects to accommodate any parts that need to be higher on the Z axis, and report it as a bug.

My guess is that is might be the radius of the points are not the same. Thus you get different thickness for different points.

moderator, delete this post please

I see what you’re saying. You can move the bezier handles to the same coordinate as their point and that eliminates the pinching, but then you have no more handles to make curves with. Sort of defeats the purpose. And you end up with overlapping geometry artifacts.

It would seem there are two options and neither really overcome the problem.

In 2D
Look acceptable, some shading issues at low res, but you lose the Z axis.



In 3D
Only way to retain volume appears to be to move handles to point.

1 Like

Not considered a bug apparently: https://developer.blender.org/T40174
I am a bit rattled…

Hopefully the todo for later the dev mention will one day see the light, as i have difficulty to see how this borked result when in 3D can be considered correct behaviour.

Yes, a bit strange, especially if the bug-report is closed. I mean if it was left open one could still stumble upon it ? But now…
I don’t know how devs go about ToDos though, maybe it is mentionned somewhere else…

It is not the first time I see strange behaviours like that being dismissed and considered OK, if not optimal. That’s my main source of disappointment with Blender. I am one of those who’d rather have a limited handful of 100% perfect tools than a van-load kit of OK bt not optimal tools.

That being said, I 've recently seen things being corrected that I thought would never arrive, so hope is permitted !

I am encountering this problem to design balcony and stairs railings. and switching to 2D does not solve my problem apparently. A curve, or a faceless mesh seems to be the most practical way to design those patterns. I first do the mesh and then convert to curve.

Here are my tests:


With the starting cube converted to curve right away and a bezier circle as bevel, most angles present defects and slight deformation.


Getting two edges out and ripping the vertices before conversion. No more deformation, but the angles are obviously opened…

Maybe I ignore the correct way to make a perfect cube with a bevel profile, but it seems to me this sould be addressed, as it is needed to design things like balconies, metallic towers, tube constructions…

It is obviously possble to do it with cylinder meshes, but the flexibility of vertex design seems better to me… Any alternative that would avoid wrecked angles and deformations like this :


Do what you did in the very first example, but try increasing the U value for resolution under curve properties. There may be a difference when it gets somewhere above 24.

Other than that, I seem to have found that radius for bezier curve end points set as vector curve seems to be handled differently than other types. To keep a straight segment when the endpoint is vector, the radius for that point has to be set to 0.750 vs. other points being set to 1. (Why? I don’t know. Odd.) Or you can just set the endpoints to something other than vector.

I also seemed to find that a segment with vector handles on each end has a smaller radius than a segment that has other handles on it despite having the same radius value setting for both points on the segment.

If there’s a bug, then perhaps all those things are related.

Curiosity got me, so I looked at one more thing… Showing it in wireframe seems to make it apparent that the bevel shape in a sharp corner isn’t being scaled properly for the sharp corner of the bend. It’s aspect ratio needs to be stretched so the profile can be maintained on the segments meeting up at the corner. There’s actually some formula to calculate for the correct scaling to maintain a section profile for any given shear angle. (I remember seeing some topic on that in regards to doing intersects with Wings3D. But that’s different software and it was some years ago. It’s likely the Blender problem with cusps on beveled paths could be fixed knowing that info though.)

—Edit—
Tried hard to find that last tidbit… Didn’t seem to find it, but I think it involves multiplying the width of the profile by the secant of 180°-angle/2. Then all the edges leading up to that angle should be parallel instead of converging as they do when the profile is rotated without scaling.

Hey guys, just found this little thread with the same problem, or similar at least. I dont know if you are trying to keep the curves editable for later on:

But otherwise you can transform it to a mesh (alt+c in object mode)
Then select the edge loop (in edit mode) in the corner, where the shape is being pinched
And then scale it until it looks right to you

If you need to know the exact measurement, the answer of pauljs75 holds probably all the answers for you to calculate exact scaling proportions, but for a quick and easy shape modelling this should work just fine.

here’s the thread i am quoting:

hey man. i have encountered same thing. resolved it with adding more divisions to initial curve. just subdivide it closer to elbow points.

One more guy with the same problem… I’m happy (kind of) that I’m not the only one :slight_smile: I have a model made up of curves that need to be converted to one mesh for 3D printing. The beginnings and ends of the bevelled tubes are different in size, which makes it weird. All parts are using the same bevel object. I tried to inverse direction of the curves, but this didn’t make a differencet. I’ve also set the scale to 1 with CRTL-A, but again no effect.
I can work around this problem more or less, but it’s strange behaviour. Any suggestions would be nice, as I do have to make more similar such objects soon.