Create Slab Edge or Other Profile Family along a Vector

It seems Revit’s slab edge creation method is a bit clunky because it requires a host edge Element to host the slab edge on. The catch is that the API doesn’t expose a good method for querying a slab’s edge elements. Luckily you can also host slab edges on model curves:

Capture2

DEV.SlabEdgeByModelCurve

The above gives you a lot more freedom, as long as you don’t mind a few extra model lines(you can’t delete them because that would delete the slab edge but you can freely hide them away ) because you can select exactly the edges you need, perform manipulations on them( move them, shorten them, etc), convert them to model lines and finally create slab edges on them.

Unfortunately for me the railing creation method in the API is even more clunky than the slab edge one, so it seems I’ll have to adopt slab edges for all my railings in my next project…