Is it what you want?

points = Transpose[{Table[

Cos[1/2 \[Theta]], {\[Theta], 0, \[Pi], \[Pi]/2000}],

Table[Sin[\[Theta]]^2, {\[Theta], 0, \[Pi], \[Pi]/2000}],

Table[Sin[3 \[Theta]]^3, {\[Theta], 0, \[Pi], \[Pi]/2000}]}];

Graphics3D[Tube[BSplineCurve[points], 0.02]]

You can also use RegionPlot3D approximately:

npts = 200;

nf = Nearest[BSplineFunction[points] /@ Range[0, 1, 1/npts]];

thickness = 0.1;

RegionPlot3D[EuclideanDistance[First@nf[{x, y, z}], {x, y, z}] < thickness,

{x, 0 - thickness, 1 + thickness}, {y, 0 - thickness, 1 + thickness}, {z, -1 - thickness, 1 + thickness},

PlotPoints -> npts/4, PlotStyle -> Directive[Yellow, Opacity[0.5]],

Mesh -> None, BoxRatios -> {(1 + 2 thickness)/(2 + 2 thickness), (1 + 2 thickness)/(2 + 2 thickness), 1}]