Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

render_snapshot

Render Snapshot of 3D Visualization


Description

Either captures the current rgl view and displays, or saves the current view to disk.

Usage

render_snapshot(
  filename,
  clear = FALSE,
  title_text = NULL,
  title_offset = c(20, 20),
  title_color = "black",
  title_size = 30,
  title_font = "sans",
  title_bar_color = NULL,
  title_bar_alpha = 0.5,
  title_position = "northwest",
  image_overlay = NULL,
  vignette = FALSE,
  instant_capture = interactive(),
  bring_to_front = FALSE,
  keep_user_par = FALSE,
  webshot = FALSE,
  width = NULL,
  height = NULL,
  ...
)

Arguments

filename

Filename of snapshot. If missing, will display to current device.

clear

Default 'FALSE'. If 'TRUE', the current 'rgl' device will be cleared.

title_text

Default 'NULL'. Text. Adds a title to the image, using magick::image_annotate.

title_offset

Default 'c(20,20)'. Distance from the top-left (default, 'gravity' direction in image_annotate) corner to offset the title.

title_color

Default 'black'. Font color.

title_size

Default '30'. Font size in pixels.

title_font

Default 'sans'. String with font family such as "sans", "mono", "serif", "Times", "Helvetica", "Trebuchet", "Georgia", "Palatino" or "Comic Sans".

title_bar_color

Default 'NULL'. If a color, this will create a colored bar under the title.

title_bar_alpha

Default '0.5'. Transparency of the title bar.

title_position

Default 'northwest'. Position of the title.

image_overlay

Default 'NULL'. Either a string indicating the location of a png image to overlay over the image (transparency included), or a 4-layer RGBA array. This image will be resized to the dimension of the image if it does not match exactly.

vignette

Default 'FALSE'. If 'TRUE' or numeric, a camera vignetting effect will be added to the image. '1' is the darkest vignetting, while '0' is no vignetting. If vignette is a length-2 vector, the second entry will control the blurriness of the vignette effect.

instant_capture

Default 'TRUE' if interactive, 'FALSE' otherwise. If 'FALSE', a slight delay is added before taking the snapshot. This can help stop prevent rendering issues when running scripts.

bring_to_front

Default 'FALSE'. Whether to bring the window to the front when taking the snapshot.

keep_user_par

Default ‘TRUE'. Whether to keep the user’s 'par()' settings. Set to 'FALSE' if you want to set up a multi-pane plot (e.g. set 'par(mfrow)').

webshot

Default 'FALSE'. Set to 'TRUE' to have rgl use the 'webshot2' package to take images, which can be used when 'rgl.useNULL = TRUE'.

width

Default 'NULL'. Optional argument to pass to 'rgl::snapshot3d()' to specify the width when 'webshot = TRUE'.

height

Default 'NULL'. Optional argument to pass to 'rgl::snapshot3d()' to specify the height when 'webshot = TRUE'.

...

Additional parameters to pass to magick::image_annotate.

Value

Displays snapshot of current rgl plot (or saves to disk).

Examples

if(interactive()) {

montereybay %>%
 sphere_shade() %>%
 plot_3d(montereybay,zscale=50,zoom=0.6,theta=-90,phi=30)

 

render_snapshot()

 
#Create a title, but also pass the `gravity` argument to magick::image_annotate using ...
#to center the text.

render_snapshot(title_text = "Monterey Bay, California", 
               title_color = "white", title_bar_color = "black",
               title_font = "Helvetica", gravity = "North")
               
#Add a vignette effect
render_camera(zoom=0.8)
render_snapshot(title_text = "Monterey Bay, California", 
               title_color = "white", title_bar_color = "darkgreen",
               vignette = TRUE, 
               title_font = "Helvetica", gravity = "North")
rgl::rgl.close() 

}

rayshader

Create Maps and Visualize Data in 2D and 3D

v0.24.10
GPL-3
Authors
Tyler Morgan-Wall
Initial release
2021-04-25

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.