## functions in slice3.i - p

pl3surf

pl3surf, nverts, xyzverts or pl3surf, nverts, xyzverts, values Perform simple 3D rendering of an object created by slice3 (possibly followed by slice2). NVERTS and XYZVERTS are polygon lists as returned by slice3, so XYZVERTS is 3-by-sum(NVERTS), where NVERTS is a list of the number of vertices in each polygon. If present, the VALUES should have the same length as NVERTS; they are used to color the polygon. If VALUES is not specified, the 3D lighting calculation set up using the light3 function will be carried out. Keywords cmin= and cmax= as for plf, pli, or plfp are also accepted. (If you do not supply VALUES, you probably want to use the ambient= keyword to light3 instead of cmin= here, but cmax= may still be useful.) Interpreted function, defined at i/slice3.i line 1082SEE ALSO: pl3tree, slice3, slice2, rot3, light3

pl3tree

pl3tree, nverts, xyzverts or pl3tree, nverts, xyzverts, values, plane Add the polygon list specified by NVERTS (number of vertices in each polygon) and XYZVERTS (3-by-sum(NVERTS) vertex coordinates) to the currently displayed b-tree. If VALUES is specified, it must have the same dimension as NVERTS, and represents the color of each polygon. If VALUES is not specified, the polygons are assumed to form an isosurface which will be shaded by the current 3D lighting model; the isosurfaces are at the leaves of the b-tree, sliced by all of the planes. If PLANE is specified, the XYZVERTS must all lie in that plane, and that plane becomes a new slicing plane in the b-tree. Each leaf of the b-tree consists of a set of sliced isosurfaces. A node of the b-tree consists of some polygons in one of the planes, a b-tree or leaf entirely on one side of that plane, and a b-tree or leaf on the other side. The first plane you add becomes the root node, slicing any existing leaf in half. When you add an isosurface, it propagates down the tree, getting sliced at each node, until its pieces reach the existing leaves, to which they are added. When you add a plane, it also propagates down the tree, getting sliced at each node, until its pieces reach the leaves, which it slices, becoming the nodes closest to the leaves. This structure is relatively easy to plot, since from any viewpoint, a node can always be plotted in the order from one side, then the plane, then the other side. This routine assumes a "split palette"; the colors for the VALUES will be scaled to fit from color 0 to color 99, while the colors from the shading calculation will be scaled to fit from color 100 to color 199. (If VALUES is specified as a char array, however, it will be used without scaling.) You may specifiy a cmin= or cmax= keyword to affect the scaling; cmin is ignored if VALUES is not specified (use the ambient= keyword from light3 for that case). Interpreted function, defined at i/slice3.i line 1145SEE ALSO: pl3surf, slice3, slice2, rot3, light3, split_palette

pl3tree_prt

pl3tree_prt Interpreted function, defined at i/slice3.i line 1432

plane3

plane3(normal, point) or plane3([nx,ny,nz], [px,py,pz]) returns [nx,ny,nz,pp] for the specified plane. Interpreted function, defined at i/slice3.i line 49SEE ALSO: slice3, mesh3