This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)

Graphics3D

Updated In 8 Graphic
Graphics3D
represents a three-dimensional graphical image.
  • The following graphics primitives can be used:
Arrow[{pt1,pt2}]arrow
BezierCurve[{pt1,pt2,...}]Bézier curve
BSplineCurve[{pt1,pt2,...}]B-spline curve
BSplineSurface[array]B-spline surface
Cone[{{x1,y1,z1},{x2,y2,z2}},r]cone
Cuboid[{xmin,ymin,zmin},...]cuboid
Cylinder[{{x1,x2,x3},...},...]cylinder
GraphicsComplex[pts,prims]complex of graphics objects
GraphicsGroup[{g1,g2,...}]objects treated as a group
Line[{{x1,y1,z1},...}]line
Point[{x,y,z}]point
Polygon[{{x1,y1,z1},...}]polygon
Sphere[{x,y,z},...]sphere
Text[expr,{x,y,z}]text
Tube[{{x1,y1,z1},{x2,y2,z2},...}]tube
  • The following graphics directives can be used:
AbsoluteDashing[{w1,...}]absolute line dashing specification
AbsolutePointSize[d]absolute point size specification
AbsoluteThickness[w]absolute line thickness specification
Arrowheads[spec]arrowheads specification
CMYKColor[c,m,y,k]color specification
CapForm[type]tube and line cap specification
Dashing[{w1,...}]line dashing specification
Directive[g1,g2,...]composite graphics directive
EdgeForm[spec]polygon edge specification
FaceForm[spec]polygon face specification
Glow[c]glow color specification
GrayLevel[i]gray-level specification
Hue[h]hue specification
JoinForm[type]tube and line joining specification
Opacity[a]opacity specification
PointSize[d]point size specification
RGBColor[r,g,b]color specification
Specularity[s]surface specularity specification
Texture[obj]texture specification
Thickness[w]line thickness specification
  • The following wrappers can be used at any level:
Annotation[obj,label]give an annotation
Button[obj,action]make obj act as a button
Dynamic[obj]use the dynamically updated current value
EventHandler[obj,...]attach an event handler
Hyperlink[obj,URI]make obj a hyperlink
Mouseover[obj,over]specify a mouseover form
PopupWindow[obj,cont]attach a popup window
StatusArea[obj,label]specify a label to appear in the status area
Style[obj,opts]specify a style
Tooltip[obj,label]attach a tooltip
  • The following options can be given:
AlignmentPointCenterthe default point in the graphic to align with
AspectRatioAutomaticratio of height to width
AxesFalsewhether to draw axes
AxesEdgeAutomaticon which edges to put axes
AxesLabelNoneaxes labels
AxesOriginAutomaticwhere axes should cross
AxesStyle{}graphics directives to specify the style for axes
BackgroundNonebackground color for the plot
BaselinePositionAutomatichow to align with a surrounding text baseline
BaseStyle{}base style specifications for the graphic
BoxedTruewhether to draw the bounding box
BoxRatiosAutomaticbounding 3D box ratios
BoxStyle{}style specifications for the box
ContentSelectableAutomaticwhether to allow contents to be selected
ControllerLinkingAutomaticwhen to link to external rotation controllers
ControllerMethodAutomatichow external controllers should operate
ControllerPathAutomaticwhat external controllers to try to use
DisplayFunction$DisplayFunctionfunction for generating output
Epilog{}2D graphics primitives to be rendered after the main plot
FaceGridsNonegrid lines to draw on the bounding box
FaceGridsStyle{}style specifications for face grids
FormatTypeTraditionalFormdefault format type for text
ImageMargins0.the margins to leave around the graphic
ImagePaddingAllwhat extra padding to allow for labels, etc.
ImageSizeAutomaticabsolute size at which to render the graphic
LabelStyle{}style specifications for labels
LightingAutomaticsimulated light sources to use
MethodAutomaticdetails of 3D graphics methods to use
PlotLabelNonea label for the plot
PlotRangeAllrange of values to include
PlotRangePaddingAutomatichow much to pad the range of values
PlotRegionAutomaticfinal display region to be filled
PreserveImageOptionsAutomaticwhether to preserve image options when displaying new versions of the same graphic
Prolog{}2D graphics primitives to be rendered before the main plot
RotationAction"Fit"how to render after interactive rotation
SphericalRegionFalsewhether to make the circumscribing sphere fit in the final display area
TicksAutomaticspecification for ticks
TicksStyle{}style specification for ticks
ViewAngleAutomaticangle of the field of view
ViewCenterAutomaticpoint to display at the center
ViewMatrixAutomaticexplicit transformation matrix
ViewPoint{1.3,-2.4,2.}viewing position
ViewRangeAllrange of viewing distances to include
ViewVectorAutomaticposition and direction of a simulated camera
ViewVertical{0,0,1}direction to make vertical
  • Nested lists of graphics constructs can be given. Directive specifications such as GrayLevel normally remain in effect only until the end of the list which contains them.
  • A list containing only graphics directives is treated as if its elements were directly inserted into an enclosing list.
  • Style can be used to apply the options or directives opts to obj.
  • Dragging with the mouse rotates a 3D graphic.
  • Directives such as RGBColor specify surface colors for objects that follow. Final colors are determined from simulated illumination, including Glow and Specularity components.
  • By default, four light sources of different colors are used, arranged at particular fixed locations outside the bounding box.
  • By default, ViewAngle is set so that if possible the projection of the whole 3D object just fills the 2D viewing area.
  • The settings for BaseStyle are appended to the default style typically given by the style in the current stylesheet. The settings for BoxStyle, LabelStyle, etc. are appended to the default styles given for , , etc.
  • Settings that can be given through the Method option include and .
Use lines, polygons, cylinders, spheres, etc. to build up a 3D graphics scene:
Use plot functions to automatically create Graphics3D from different types of data:
Use built-in polyhedron data:
Use lines, polygons, cylinders, spheres, etc. to build up a 3D graphics scene:
In[1]:=
Click for copyable input
Out[1]=
 
Use plot functions to automatically create Graphics3D from different types of data:
In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=
 
Use built-in polyhedron data:
In[1]:=
Click for copyable input
Out[1]=
3D planar polygons can fold over themselves:
Vertices can be shared by using GraphicsComplex:
Directives can specify color, opacity, and specularity of faces:
Specify the specular exponent:
Colors, thickness, and dashing directives affect lines and edges:
Specify different properties for front and back of faces:
Graphics directives normally remain in effect only until the end of the list which contains them:
Use an ordinary coordinate system:
Specify coordinates by fractions of the plot range:
Default lighting on a gray specular sphere:
Different light source for each sphere:
Specify the view point using special scaled coordinates:
Specify orthographic views:
Specify the view vectors using ordinary coordinates:
Specify the position to be aligned in 3D Inset, using coordinates:
In 3D, the aspect ratio determines the ratio of the final displayed 2D image:
Draw all the axes:
Draw only the axis:
Choose the bounding box edges automatically to draw the axes:
Draw the axis edge that is the intersection of the plane and the plane:
Draw the axis edge that is the intersection of the plane and plane:
Four different positions for the axis:
Place a label for the axis in 3D:
Specify a label for each axis:
Specify overall axes style, including the ticks and the tick labels:
Specify the style for each axis:
Specify a background color:
Align the center of a graphic with the baseline of the text:
Specify the baseline of a graphic as a fraction of the height by using Scaled:
Set the starting style:
Set multiple starting styles:
Draw the edges of the bounding box:
Do not draw the edges of the bounding box:
Specify the ratios between the bounding box edges:
Use the actual coordinate values for the ratios:
Use dashed lines for the bounding box:
Display a 3D graphic in a popup window when a button is clicked:
Display a 3D graphic in a new notebook:
Place text at the right bottom corner of the 3D graphic:
Put grids on every face of a 3D graphic:
Put grids on both - faces:
Put face grids on the plane:
On the plane, put grid lines on , , and :
Specify the overall style of face grids:
By default, expressions are displayed using TraditionalForm in graphics:
Display expressions using StandardForm:
Have 30-point margins on all sides:
Leave different margins on each side:
Thick lines and labels outside of the bounding box can be clipped without ImagePadding:
Leave enough padding for labels:
Specify the same padding for all sides in printer's points:
Specify different padding on different sides:
Use predefined symbolic sizes in 3D:
Use an explicit image width:
Use an explicit image width and height:
Specify overall style of all the label-like elements:
Ambient light is uniformly applied to all the surfaces in the scene:
Directional lights with different colors:
Point lights with different colors:
Spotlights with different colors:
Display a label on the top of the graphic in TraditionalForm:
Use Style and other typesetting functions to modify how the label appears:
Display all objects:
Explicitly choose a range:
PlotRange->s is equivalent to PlotRange:
Include coordinate unit of padding on all sides:
Include of the image size as padding on all sides:
Specify different padding on each side:
The contents of a graphic use the whole region:
Limit the contents of the graphic to the middle half of the region in each direction:
ImagePadding can also be used to add padding around a graphic:
Draw a circumscribing disk that just touches a corner of the bounding box:
Make a sequence of images be consistently sized, independent of orientation:
Without SphericalRegion, each image is made as big as possible:
Place tick marks automatically:
Draw tick marks at the specified positions:
Specify the styles of the ticks and tick labels:
Specify the styles of the , , and axis ticks separately:
Use a specific half-angle for a simulated camera:
Place the top-right corner of the object at the center of the final image:
Use the ViewCenter to specify that 3D point vc gets mapped to the 2D point vp:
Orthographic view of a sphere from the negative direction:
Specify the view point using the special scaled coordinates:
Use symbolic view points:
Specify orthographic views:
By default, the range is sufficient to include all the objects:
Specify the minimum and maximum distances from the camera to be included:
Specify the view vectors using ordinary coordinates:
Use the axis direction as the vertical direction in the final image:
Various views of vertical directions:
The StandardForm of Graphics3D is its rendered form:
The InputForm is the textual expression form:
Graphics3D can be used as input to functions:
3D plot functions return Graphics3D:
Several integrated data sources return Graphics3D:
Many Import and Export formats support Graphics3D:
The RGB color cube:
New in 1 | Last modified in 8