Three-Dimensional Graphics Directives
In three dimensions, just as in two dimensions, you can give various graphics directives to specify how the different elements in a graphics object should be rendered.
All the graphics directives for two dimensions also work in three dimensions. There are however some additional directives in three dimensions.
Just as in two dimensions, you can use the directives PointSize, Thickness, and Dashing to tell Mathematica how to render Point and Line elements. Note that in three dimensions, the lengths that appear in these directives are measured as fractions of the total width of the display area for your plot.
This generates a list of 20 random points in three dimensions.
This displays the points, with each one being a circle whose diameter is 5% of the display area width.
As in two dimensions, you can use AbsolutePointSize, AbsoluteThickness, and AbsoluteDashing if you want to measure length in absolute units.
This generates a line through 10 random points in three dimensions.
This shows the line dashed, with a thickness of two printer's points.
For Point and Line objects, the color specification directives also work the same in three dimensions as in two dimensions. For Polygon objects, however, they can work differently.
In two dimensions, polygons are always assumed to have an intrinsic color, specified directly by graphics directives such as RGBColor and Opacity. In three dimensions, however, Mathematica generates colors for polygons using a more physical approach based on simulated illumination. Polygons continue to have an intrinsic color defined by color directives, but the final color observed when rendering the graphic may be different based upon the values of the lights shining on the polygon. Polygons are intrinsically white by default.
Some schemes for coloring polygons in three dimensions.
This draws an icosahedron with default lighting. The intrinsic color value of the polygons is white.
This draws the icosahedron using the same lighting parameters, but defines the intrinsic color value of the polygons to be gray.
The intrinsic color value of the polygons becomes more obvious when using the
This applies the gray color only to the line, which is not affected by the lights.
As with two-dimensional directives, the color directive can be scoped to the line by using a sublist.
|EdgeForm||draw no lines at the edges of polygons|
|EdgeForm[g]||use the graphics directives g to determine how to draw lines at the edges of polygons|
Giving graphics directives for all the edges of polygons.
When you render a three-dimensional graphics object in Mathematica, there are two kinds of lines that can appear. The first kind is lines from explicit Line primitives that you included in the graphics object. The second kind is lines that were generated as the edges of polygons.
You can tell Mathematica how to render all lines of the second kind by giving a list of graphics directives inside EdgeForm.
This renders a dodecahedron with its edges shown as thick gray lines.
|FaceForm[gfront,gback]||use gfront graphics directives for the front face of each polygon, and gback for the back|
Rendering the fronts and backs of polygons differently.
An important aspect of polygons in three dimensions is that they have both front and back faces. Mathematica uses the following convention to define the "front face" of a polygon: if you look at a polygon from the front, then the corners of the polygon will appear counterclockwise, when taken in the order that you specified them.
This makes the front (outside) face of each polygon mostly transparent, and the back (inside) face fully opaque.