A function that plots a three-dimensional model of the mesh surface and includes a footprint of the two-dimensional area for visual comparison.
RFI3d(
RFI_File,
displacement = -1.9,
SurfaceColor = "gray",
FootColor = "red",
FootPts = FALSE,
FootPtsColor = "black",
Opacity = 1,
legend = F,
main = "",
cex = 1,
leftOffset = 0,
fieldofview = 0,
fileName = NA,
binary = FALSE
)
An object that stores the output of the RFI function
Numeric that moves the surface footprint some proportion of the height of the mesh. 0 is in the vertical center of the surface, negative values displace the footprint downward.
String that controls the color of the 3D surface mesh
String that controls the color of the 2D surface footprint
Logical indicating whether to plot the flattened points of the footprint from the original ply file
Color of the plotted footprint points if FootPts = TRUE
Numeric that adjusts the opacity of the 3D mesh surface
Logical indicating whether or not to include a legend of the colors chosen to represent the 3D surface and footprint
String indicating plot title
Numeric setting the relative size of the legend and title
Numeric between -1 and 1 setting the amount of offset for the plotted surface to the left. Larger values push surface farther to right.
Passes an argument to par3d()
changing the field of
view in degrees of the resulting surface plot
String indicating a name to save the plotted surface to as a *.ply file; default of 'NA' will not save a file
Logical indicating whether or not the saved surface plot should
be binary, passed to vcgPlyWrite()
This function can help to visualize the three-dimensional and two dimensional areas that are used in calculating the relief index of a surface by displaying both at the same time. The RFI function must be performed first.
Opacity
can be adjusted in a range from fully opaque (1
) to fully
transparent (0
) in order to help visualize the footprint. The vertical
placement of the footprint along the Z axis can be altered with displacement
,
depending on how the user wishes to view the surface, or on the original
mesh orientation.
A title can be added to the plot by supplying a character string to the main
argument. Title and legend size are controlled with the cex
argument,
analogous to that in the default R graphics device.
The leftOffset
value sets how far to the left the surface will plot, intended
to help avoid overlap with the legend. Value of 0 will center the surface and
should be invoked if the legend
argument is disabled. Higher values will push
the surface farther left and negative values will push it to the right. It is
recommended that these values be restricted between -1 and 1 to avoid plotting
the surface outside of the rgl window.
fieldofview
is set to a default of 0, which is an isometric projection.
Increasing it alters the degree of parallax in the perspective view, up to
a maximum of 179 degrees (see rgl::par3d()
).
The plotted, colorized surface can be saved as a *.ply to the working directory
by changing the fileName
argument from NA
to a string (e.g., "RFIPlot"). The
resultant ply file can be opened and manipulated in other 3D visualizing programs,
such as MeshLab, but will NOT retain its legend
(a background of the plotting window). To retain the legend, the user is
encouraged to utilize the function 'snapshot3d()' in the rgl package. (see rgl::rgl.snapshot()
)
The binary
argument saves a file in ascii format by default, which is supported by
more 3D visualization software than is binary. However, binary files will be
considerably smaller.
RFI_File <- RFI(Tooth, alpha=0.5)
RFI3d(RFI_File)
Run the code above in your browser using DataLab