Transformation of 3D elements
trans3D
is the plot3D
equivalent of trans3d, that projects
3-D elements to 2 dimensions.
trans3D (x, y, z, pmat)
x, y, z |
Vectors, matrices, arrays, with x, y and z-values. |
pmat |
A 4 x 4 viewing transformation matrix, suitable for projecting
the 3D coordinates (x,y,z) into the 2D plane using homogeneous
4D coordinates (x,y,z,t); such matrices are returned by any of the 3-D
plotting functions from package |
A list with two components:
x, y the projected 2-D coordinates of the 3-D input x, y, z
In contrast to trans3d, trans3D
the returned values x and y
will be of the same class and dimensions as the input x and y.
If inputted x, y, z
are matrices or arrays, so will the projected
coordinates be.
Karline Soetaert <karline.soetaert@nioz.nl>
## ======================================================================== ## 3-D mesh ## ======================================================================== x <- y <- z <- c(-1 , 0, 1) # plot a 3-D mesh (M <- mesh(x, y, z)) # plot result pmat <- scatter3D(M$x, M$y, M$z, pch = "+", cex = 3, colkey = FALSE) # add line XY <- trans3D(x = c(-1, 1), y = c(-1, 1), z = c(-1, 1), pmat = pmat) lines(XY, lwd = 2, col = "blue") ## ======================================================================== ## Example 2 ## ======================================================================== pmat <- perspbox (z = diag(2)) XY <- trans3D(x = runif(30), y = runif(30), z = runif(30), pmat = pmat) polygon(XY, col = "darkblue")
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.