scene: scene management

Description Usage Arguments Details See Also Examples

Description

Clear shapes, lights, bbox

Usage

1
2
3
4
5
6
7
8
clear3d( type = c("shapes", "bboxdeco", "material"), defaults, subscene = 0 ) 
pop3d( type = "shapes", id = 0 )
ids3d( type = "shapes", subscene = NA )

# These are mainly intended for internal use:
rgl.clear( type = "shapes", subscene = 0 )
rgl.pop( type = "shapes", id = 0 )  
rgl.ids( type = "shapes", subscene = NA )

Arguments

type

Select subtype(s):

"shapes"

shape stack

"lights"

light stack

"bboxdeco"

bounding box

"userviewpoint"

user viewpoint

"modelviewpoint"

model viewpoint

"material"

material properties

"background"

scene background

"subscene"

subscene list

"all"

all of the above

defaults

default values to use after clearing

subscene

which subscene to work with. NA means the current one, 0 means the whole scene

id

vector of ID numbers of items to remove

Details

RGL holds several lists of objects in each scene. There are lists for shapes, lights, bounding box decorations, subscenes, etc. clear3d clears the specified stack, or restores the defaults for the bounding box (not visible) or viewpoint. With id = 0 pop3d removes the last added node on the list (except for subscenes: there it removes the active subscene). The id argument may be used to specify arbitrary item(s) to remove; if id != 0, the type argument is ignored.

clear3d may also be used to clear material properties back to their defaults.

clear3d has an optional defaults argument, which defaults to r3dDefaults. Only the materials component of this argument is currently used by clear3d.

ids3d returns a dataframe containing the IDs in the currently active subscene by default, or a specified subscene, or if subscene = 0, in the whole rgl window, along with an indicator of their type.

Note that clearing the light stack leaves the scene in darkness; it should normally be followed by a call to light3d or light3d.

The rgl.* versions of these functions are mainly intended for internal use.

See Also

rgl, bbox3d, light3d, open3d to open a new window.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
  x <- rnorm(100)
  y <- rnorm(100)
  z <- rnorm(100)
  p <- plot3d(x, y, z, type = 's')
  ids3d()
  lines3d(x, y, z)
  ids3d()
  if (interactive() && !rgl.useNULL()) {
    readline("Hit enter to change spheres")
    pop3d(id = p["data"])
    spheres3d(x, y, z, col = "red", radius = 1/5)
    box3d()
  }

Example output

Warning messages:
1: In rgl.init(initValue, onlyNULL) : RGL: unable to open X11 display
2: 'rgl.init' failed, running with 'rgl.useNULL = TRUE'. 
  id    type
1  7 spheres
2  9    text
3 10    text
4 11    text
  id      type
1  7   spheres
2  9      text
3 10      text
4 11      text
5 12 linestrip

rgl documentation built on Feb. 1, 2021, 3:01 a.m.