Using the Tube function to create a torus from an equation for the curve
Graphics3D[
Tube[
BSplineCurve[
{{-3/2, 0, 1/2}, {-3/2, -3/2, 1/2}, {0, -3/2, 1/2},
{3/2, -3/2, 1/2}, {3/2, 0, 1/2}, {3/2, 3/2, 1/2},
{0, 3/2, 1/2}, {-3/2, 3/2, 1/2}, {-3/2, 0, 1/2}},
SplineDegree -> 2,
SplineWeights -> {1, 1/Sqrt[2], 1, 1/Sqrt[2], 1, 1/Sqrt[2], 1, 1/Sqrt[2], 1},
SplineKnots -> {0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 4}],
1/2]
]
Adapted from an example in the docs for Tube
:
PieChart3D[{1}, ChartElementFunction -> "TorusSector3D",
SectorOrigin -> {Automatic, 1}, BoxRatios -> Automatic]
Here is the torus using Graphics3D
and Tube
:
Graphics3D[Tube[Table[3 {Cos[p], Sin[p], 0}, {p, 0, 2 Pi, Pi/30}], 1],
Axes -> True]
You can also use Tube
as a styling directive with ParametricPlot3D
:
ParametricPlot3D[3 {Cos[p], Sin[p], 0}, {p, 0, 2 Pi},
PlotStyle -> Tube[1], PlotRangePadding -> Scaled[.15]]