三维图形基元
Mathematica 图形的强大功能之一是具有二维和三维的图形基元. 通过三维图形基元的结合,就可以在 Mathematica 中表示和生成三维图形对象.
| Point[{x,y,z}] | 坐标为 x、y、z 的点 |
| Line[{{x1,y1,z1},{x2,y2,z2},...}] | 通过点 、 、... 的折线 |
| Polygon[{{x1,y1,z1},{x2,y2,z2},...}] |
| 有给定顶点列表的填充的多边形 |
| Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}] |
| 立方体 |
| Arrow[{pt1,pt2}] | 由 指向 的箭头 |
| Text[expr,{x,y,z}] | 在位置 处的文本 (参见 "文本中的图形基元") |
三维图形元素.
每运行一次

产生一个三维的随机坐标.
| Out[3]= |  |
| Out[4]= |  |
如果给出的是二维图形基元列表, Mathematica 就依次画出各个元素, 后面的元素遮蔽前面的元素. 而在三维的情况下Mathematica 将所给的图形元素综合在一起, 将它们显示为三维的图形对象,位置在前面的遮蔽位置在后面的元素.
每运行一次

, 就在三维空间中生成一个随机三角形.
| Out[6]= |  |
这里一次画出了5个随机三角形. 前边的三角形遮蔽后边的三角形.
| Out[7]= |  |
通过创建一个适当的多边形列表,可以在 Mathematica 中构造任何三维图形. 例如, 由 ParametricPlot3D 产生的所有曲面实际上就是用多边形列表来表示的.
| Point[{pt1,pt2,...}] | 由 、 ... 等点组成的复点 |
| Line[{line1,line2,...}] | 由 、 ... 等线组成的复线 |
| Polygon[{poly1,poly2,...}] | 由 、 ... 等多面体组成的复多边形 |
可以同时取多个元素的基元.
与二维基元相同,一些三维图形基元可以使用多重坐标形式. 这是一种更有效的表示. 对于大量的基元,尽可能的使用多重坐标形式, 既可减少生成图形的内存,也可提高画图速度.

仅仅定义一个随机三角形的坐标.
| Out[9]= |  |
Mathematica 允许三维的多边形有任意数目的顶点并以任何形式排放. 根据顶点位置不同,产生的多边形可能会不共面或不是突多边形. 当画这些不共面的多边形时,Mathematica 会在画图前把多变形分成一个个平面三角形.
不共面多变形被分成三角形. 三角形间的交线不像
Polygon 基元的外侧边线那样画出.
| Out[10]= |  |
自相交的非突多面体的填充是根据奇偶规则,在每个交叉点交互进行填充或不填充.
| Out[11]= |  |
| Cone[{{x1,y1,z1},{x2,y2,z2}}] | 底部以 为圆心,半径为1,顶点在 的圆锥体 |
| Cone[{{x1,y1,z1},{x2,y2,z2}},r] | 半径为 r 的圆锥 |
| Cuboid[{x,y,z}] | 对角坐标为 和 的单元立方体 |
| Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}] | 对角具有指定坐标的立方体 (长方体) |
| Cylinder[{{x1,y1,z1},{x2,y2,z2}}] | 端点坐标为 和 ,半径为 1 的圆柱体 |
| Cylinder[{{x1,y1,z1},{x2,y2,z2}},r] | 半径为 r 的圆柱体 |
| Sphere[{x,y,z}] | 圆心为 的单位圆 |
| Sphere[{x,y,z},r] | 半径为 r 的球面 |
| Tube[{{x1,y1,z1},{x2,y2,z2},...}] | 连接指定点的管 |
| Tube[{{x1,y1,z1},{x2,y2,z2},...},r] | 半径为 r 的管 |
立方体图形元素.
这里画出三维空间中的一些随机单元立方体和单元球体.
| Out[12]= |  |
尽管 Cone、Cylinder、Sphere 和 Tube 能画出高质量的图形, 它们的用途却是可以调整的. 一幅图像可以包含成千的基元. 在画这些图形基元时,可以通过一些特殊选项,改变默认设置下 Cone、Cylinder、Sphere 和 Tube 的点数, 从而提高画图效率. Graphics3D 中的
Method 选项用于降低每个圆锥的图像质量. 相似地,圆柱体、球体和管体的图像质量也可以分别通过
、
和
来调整.
由于圆柱体太小,减少绘制图形的点数基本上感觉不到有什么不同.
| Out[13]= |  |