Try `RegionFunction` instead of `Piecewise` VectorPlot3D[Sqrt[4 - (x^2 + y^2 + z^2)] {y, -x, 0}, {x, -2, 2}, {y, -2,2}, {z, -2, 2} , RegionFunction -> Function[{x, y, z}, 4 > (x^2 + y^2 + z^2)],VectorPoints -> Fine] [![enter image description here][1]][1] or alternatively `Boole` VectorPlot3D[Boole[4 > (x^2 + y^2 + z^2)] Sqrt[4 - (x^2 + y^2 + z^2)] {y, -x,0} , {x, -2, 2}, {y, -2, 2}, {z, -2, 2} , VectorPoints -> Fine] [1]: https://i.sstatic.net/e8CRc.png