Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > Visualization and Graphics > Function Visualization >

RevolutionPlot3D

RevolutionPlot3D[fz, {t, tmin, tmax}]
generates a plot of the surface of revolution with height fz at radius t.
RevolutionPlot3D[fz, {t, tmin, tmax}, {Theta, Thetamin, Thetamax}]
takes the azimuthal angle Theta to vary between Thetamin and Thetamax.
RevolutionPlot3D[{fx, fz}, {t, tmin, tmax}]
generates a plot of the surface obtained by rotating the parametric curve with x, z coordinates {fx, fz} around the z axis.
RevolutionPlot3D[{fx, fz}, {t, tmin, tmax}, {Theta, Thetamin, Thetamax}]
takes the azimuthal angle Theta to vary from Thetamin to Thetamax.
RevolutionPlot3D[{fx, fy, fz}, {t, tmin, tmax}, ...]
plots the surface obtained by rotating the parametric curve with x, y, z coordinates {fx, fy, fz}.
  • RevolutionPlot3D[fz, {t, tmin, tmax}, {Theta, Thetamin, Thetamax}] corresponds to plotting the fz in cylindrical coordinates as a function of radius t and angle Theta.
  • The angle Theta is measured in radians, counterclockwise from the positive x axis when viewed from above.
  • RevolutionPlot3D[{{f}, {g}, ...}, ...] plots surfaces corresponding to all the functions f, g, ....
  • Holes are left at positions where f etc. evaluate to None, or anything other than real numbers.
  • RevolutionPlot3D has attribute HoldAll, and evaluates f only after assigning specific numerical values to variables.
  • In some cases it may be more efficient to use Evaluate to evaluate f symbolically before specific numerical values are assigned to variables.
AxesTruewhether to draw axes
BoundaryStyleAutomatichow to draw boundary lines for surfaces
BoxRatiosAutomaticside ratios for the bounding 3D box
ColorFunctionAutomatichow to determine the color of curves and surfaces
ColorFunctionScalingTruewhether to scale arguments to ColorFunction
EvaluationMonitorNoneexpression to evaluate at every function evaluation
ExclusionsAutomatictheta, phi curves to exclude
ExclusionsStyleNonewhat to draw at excluded points or curves
MaxRecursionAutomaticthe maximum number of recursive subdivisions allowed
MeshAutomatichow many mesh divisions in each direction to draw
MeshFunctions{#4&,#5&}how to determine the placement of mesh divisions
MeshShadingNonehow to shade regions between mesh divisions
MeshStyleAutomaticthe style for mesh divisions
MethodAutomaticthe method to use for refining surfaces
NormalsFunctionAutomatichow to determine effective surface normals
PerformanceGoal$PerformanceGoalaspects of performance to try to optimize
PlotPointsAutomaticthe initial number of sample points in each parameter
PlotStyleAutomaticgraphics directives for the style for each object
RegionFunction(True&)how to determine whether a point should be included
RevolutionAxis{0,0,1}rotates around the specified axis
WorkingPrecisionMachinePrecisionthe precision used in internal computations
  • RevolutionPlot3D initially evaluates each function at a number of equally spaced sample points specified by PlotPoints. Then it uses an adaptive algorithm to choose additional sample points, subdividing in each parameter at most MaxRecursion times.
  • You should realize that with the finite number of sample points used, it is possible for RevolutionPlot3D to miss features in your functions. To check your results, you should try increasing the settings for PlotPoints and MaxRecursion.
  • On[RevolutionPlot3D::accbend] makes RevolutionPlot3D print a message if it is unable to reach a certain smoothness of curve.
  • With the default setting BoxRatios->Automatic, slices through the final 3D graphic parallel to the z axis give forms that agree with the default aspect ratio used by Plot.
  • The functions are evaluated all over each surface.
  • By default, surfaces are treated as uniform white diffuse reflectors, corresponding to ColorFunction->(White&).
Revolve a function curve around the z axis:
Revolve a parametric curve around the z axis:
Revolve a parametric curve halfway around the z axis:
Revolve a function curve around the z axis:
In[1]:=
Click for copyable input
Out[1]=
 
Revolve a parametric curve around the z axis:
In[1]:=
Click for copyable input
Out[1]=
 
Revolve a parametric curve halfway around the z axis:
In[1]:=
Click for copyable input
Out[1]=
More points are sampled when the function changes quickly:
The plot range is selected automatically:
Ranges where the function becomes nonreal are excluded:
The surface is split when there are discontinuities in the function:
Use PlotPoints and MaxRecursion to control adaptive sampling:
Use PlotRange to focus in on areas of interest:
Use Exclusions to remove points or split the resulting surface:
Plot multiple surfaces:
Provide explicit styling to different surfaces:
Add labels:
Provide an interactive Tooltip for a surface:
Create an overlay mesh:
Style the areas between mesh levels:
Color by parameter values:
Use named color schemes:
Remove portions of a curve or surface:
BoundaryStyle automatically matches MeshStyle:
Use a thick red boundary:
Boundaries are drawn where the surface is clipped by RegionFunction:
Boundaries are not drawn where the surface is clipped by Exclusions:
The default BoxRatios preserve the AspectRatio used by Plot:
The default BoxRatios preserve the revolved circles:
Use specific BoxRatios:
Color a surface by x, y, z, t, theta and r parameters:
Use ColorData for predefined color gradients:
Named color gradients color in the z direction:
ColorFunction has higher priority than PlotStyle:
ColorFunction has lower priority than MeshShading:
Use scaled coordinates in the theta direction and unscaled coordinates in the z direction:
Show where RevolutionPlot3D samples a function in {t,theta} coordinates:
Count how many times cos(t) is evaluated:
Use automatic methods to compute exclusions, in this case from branch cuts:
Indicate that no exclusions should be computed:
Give a set of exclusions as an equation:
Give two sets of exclusions:
Use both automatically computed and explicit exclusions:
Style the boundary with a thick blue line:
Style the boundary with a thick blue line and the surface in between with yellow:
Refine the surface where it changes quickly:
Show the initial and final sampling meshes:
Use 10 mesh levels evenly spaced in the parameter directions:
Use a different number of mesh lines for different directions:
Use an explicit list of values for the mesh in the t parameter and no mesh in the theta parameter:
Use explicit value and style for the t mesh:
Use a mesh evenly spaced in the x, y, z, t, theta and r directions:
Show five mesh levels in the t direction (red) and ten in the theta direction (blue):
Alternate red and blue arcs in the theta direction:
Use None to remove segments:
MeshShading has higher priority than PlotStyle for styling:
Use PlotStyle for some segments by setting MeshShading to Automatic:
MeshShading can be used with ColorFunction:
Fill between regions defined by multiple mesh functions:
Use FaceForm to use different styles for different sides of a surface:
Use a red mesh in the x direction:
Use a red mesh in the x direction and a blue mesh in the y direction:
Normals are automatically calculated:
Use None to get flat shading for all the polygons:
Vary the effective normals used on the surface:
Generate a higher-quality plot:
Emphasize performance, possibly at the cost of quality:
Use more initial points to get a smoother plot:
Use different style directives:
Explicitly specify the style for different surfaces:
Use a different style inside the surface:
Select a region in x, y, z, t, theta and r:
Select a region in parameter space:
Evaluate functions using machine-precision arithmetic:
Evaluate functions using arbitrary-precision arithmetic:
Produce well-known shapes such as the surfaces of revolution, including the cylinder:
Cone:
Sphere:
Torus:
Find the volume of a cone:
Model a drum beating:
RevolutionPlot3D is a special case of ParametricPlot3D:
The default BoxRatios preserve the AspectRatio used by Plot:
The default BoxRatios preserve the revolved circles:
Use SphericalPlot3D for spherical coordinates:
Use ParametricPlot3D for arbitrary curves and surfaces in three dimensions:
Use PolarPlot for curves in polar coordinates:
Use ParametricPlot for curves and regions in two dimensions:
Use ContourPlot3D and RegionPlot3D for implicitly defined surfaces and regions:
Use ListPlot3D and ListSurfacePlot3D for data:
Surfaces that have multiple coverings may exhibit unusual behavior:
RevolutionPlot3D always revolves around the z axis:
Revolving a self-intersecting curve:
New in 6
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team