added 3d-curve primitive