smart bevel (straight skeleton)

I’ve been implementing an algorithm for doing beveling by making a straight skeleton. Has anyone already done this for Blender?

With naive beveling, you run into problems as soon as the lines coming in from adjacent points cross, and you run into even more problems when the lines coming in from a point hits the opposite edge. This algorithm deals with those cases, letting you bevel in a lot further. I attach images of what it can do now on the letters “3 D”.

Right now this is implemented in my Adobe Illustrator / PDF / SVG importer but I may take a crack at making it work for already built / selected polygons or connected polygons in Blender, if there is interest.

Attachments



I think this would be a most welcome tool. :slight_smile:

robust bevelling is something blender really lacks, so, ppl would be surely thankfull if you could implement this. I suppose this algorithm could be also used for a better Inset tool?

I suppose the algorithm I’ve implemented so far is an Inset (with optional raising or lowering of the inset area) rather than bevel, and that’s what I should aim for first. Many of the same ideas go into beveling (which I think of as insetting an edge simultaneously into its two adjacent faces), but they are not exactly the same.

woha! this implementation can be a great add to motion graphics too…