Rev 3917 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
\name{G_utilities.3d}\alias{utilities.3d}\alias{palette.shade}\alias{ltransform3dMatrix}\alias{ltransform3dto3d}\title{ Utility functions for 3-D plots }\description{These are (related to) the default panel functions for \code{cloud}and \code{wireframe}.}\usage{ltransform3dMatrix(screen, R.mat)ltransform3dto3d(x, R.mat, dist)% palette.shade(irr, ref, height, saturation)}\arguments{\item{x}{\code{x} can be a numeric matrix with 3 rows for\code{ltransform3dto3d}}\item{screen}{list, as described in \code{\link{panel.cloud}}}\item{R.mat}{4x4 transformation matrix in homogeneouscoordinates}\item{dist}{controls transformation to account forperspective viewing}% \item{irr, ref}{% numeric, between 0 and 1. See details below. (The names are intended% to suggest a link with irradiance and reflectance respectively.)% }% \item{height}{% numeric, denoting height scaled to lie between 0 and 1% }% \item{saturation}{% used to control \code{s} in \code{hsv} inside \code{palette.shade}% }}\details{\code{ltransform3dMatrix} and \code{ltransform3dto3d} are utilityfunctions to help in computation of projections. These functions areused inside the panel functions for \code{cloud} and\code{wireframe}. They may be useful in user-defined panel functionsas well.The first function takes a list of the form of the \code{screen}argument in \code{cloud} and \code{wireframe} and a \code{R.mat}, a4x4 transformation matrix in homogeneous coordinates, to return a new4x4 transformation matrix that is the result of applying \code{R.mat}followed by the rotations in \code{screen}. The second functionapplies a 4x4 transformation matrix in homogeneous coordinates to a3xn matrix representing points in 3-D space, and optionally does someperspective computations. (There has been no testing with non-trivialtransformation matrices, and my knowledge of the homogeneouscoordinate system is very limited, so there may be bugs here.)% \code{palette.shade} is the function used by default for calculation% of colors when \sQuote{shading} a wireframe. Such a function can expect three% arguments in general, namely \code{irr}, \code{ref} and% \code{height}. \code{irr} should represent foreshortening, being the% cosine of the angle between the incident light ray and the normal to% the surface. \code{ref} represents the direction of the reflected% light, and in fact is the cosine of half the angle between the% reflected ray and the viewing direction. \code{height} is the scaled% (average) height (of any particular facet).}\author{ Deepayan Sarkar \email{Deepayan.Sarkar@R-project.org}}\seealso{\code{\link{cloud}}, \code{\link{panel.cloud}}}\keyword{dplot}