The curve (identified as 3D curve offset.xxx) is
added to the specification tree. 
Here is an example with a closed curve: 

3D corner parameters enable to manage singularities:

Radius:
if the curvature radius of the input curve is smaller than the
offset value, 3D corner curves are created to fill the holes

Tension: for the 3D corner curves, if needed



3D Curve Offset with a radius of 20 mm and a tension of 1 
3D Curve Offset with a radius of 5 mm and a tension of 1 




3D Curve Offset with a tension of 2 and a radius of 20 mm: 
3D Curve Offset with a tension of 0.3 and a radius
of 20 mm : 