# 3D Visualization Using OpenGL

## Documentation for package ‘rgl’ version 1.0.1

- DESCRIPTION file.
- User guides, package vignettes and other documentation.
- Code demos. Use demo() to run them.
- Package NEWS.

## Help Pages

A B C D E F G H I L M N O P Q R S T U V W misc

rgl-package | 3D visualization device system

## -- A --

abclines3d | Lines intersecting the bounding box
addNormals | Add normal vectors to objects so they render more smoothly
addNormals.mesh3d | Add normal vectors to objects so they render more smoothly
addNormals.shapelist3d | Add normal vectors to objects so they render more smoothly
addToSubscene3d | Create, select or modify a subscene
ageControl | Set attributes of vertices based on their age
all.equal.mesh3d | Compare mesh3d objects in a meaningful way.
arc3d | Draw arcs
arrow3d | Draw an arrow
as.mesh3d | Convert object to mesh object
as.mesh3d.ashape3d | Convert alpha-shape surface of a cloud of points to RGL mesh object
as.mesh3d.default | Convert object to mesh object
as.mesh3d.deldir | Plot a Delaunay triangulation
as.mesh3d.rglId | Convert object in plot to RGL mesh object
as.mesh3d.tri | Plot an interp or tripack Delaunay triangulation
as.mesh3d.triSht | Plot an interp or tripack Delaunay triangulation
as.rglscene | Convert an object to an 'rglscene' object.
as.tmesh3d | Convert object to a triangular mesh
as.tmesh3d.default | Convert object to a triangular mesh
as.tmesh3d.mesh3d | Convert object to a triangular mesh
as.triangles3d | Convert an object to triangles
as.triangles3d.rglId | Convert an object to triangles
asEuclidean | Work with homogeneous coordinates
asEuclidean2 | Work with homogeneous coordinates
asHomogeneous | Work with homogeneous coordinates
asHomogeneous2 | Work with homogeneous coordinates
aspect3d | Set the aspect ratios of the current plot
asRow | Convenience functions for RGL HTML layouts
axes3d | Draw boxes, axes and other text outside the data
axis3d | Draw boxes, axes and other text outside the data

## -- B --

bbox3d | Set up bounding box decoration
bg3d | Set up background
bgplot3d | Use base graphics for RGL background
box3d | Draw boxes, axes and other text outside the data
Buffer | R6 Class for binary buffers in glTF files.

## -- C --

check3d | Check for an open RGL window.
checkDeldir | Check for a compatible version of 'deldir'
clear3d | Scene management
clearSubsceneList | Set up multiple figure layouts
clipMesh3d | Clip mesh or RGL object to general region
clipObj3d | Clip mesh or RGL object to general region
clipplaneControl | Sets attributes of a clipping plane
clipplanes3d | Add planes
close3d | Work with RGL windows
compare_proxy.mesh3d | Compare mesh3d objects in a meaningful way.
contourLines3d | Draw contours on a surface
contourLines3d.mesh3d | Draw contours on a surface
contourLines3d.rglId | Draw contours on a surface
cube3d | Sample 3D mesh objects
cuboctahedron3d | Sample 3D mesh objects
cur3d | Work with RGL windows
currentSubscene3d | Create, select or modify a subscene
cylinder3d | Create cylindrical or "tube" plots

## -- D --

decorate3d | Add decorations to a 3D plot
deform.mesh3d | Subdivide a mesh
delFromSubscene3d | Create, select or modify a subscene
divide.mesh3d | Subdivide a mesh
dodecahedron3d | Sample 3D mesh objects
dot3d | Draw 3D mesh objects
dot3d.mesh3d | Draw 3D mesh objects
drape3d | Drape lines over a scene.
drape3d.default | Drape lines over a scene.
drape3d.mesh3d | Drape lines over a scene.

## -- E --

elementId2Prefix | Use widget with old-style controls
ellipse3d | Make an ellipsoid
ellipse3d.default | Make an ellipsoid
ellipse3d.glm | Make an ellipsoid
ellipse3d.lm | Make an ellipsoid
ellipse3d.nls | Make an ellipsoid
expect_known_scene | Helper for 'testthat' testing.
extrude3d | Generate extrusion mesh

## -- F --

facing3d | Subset an object to parts facing in a particular direction
figHeight | Get R Markdown figure dimensions in pixels
figWidth | Get R Markdown figure dimensions in pixels
filledContour3d | Draw contours on a surface
filledContour3d.mesh3d | Draw contours on a surface
filledContour3d.rglId | Draw contours on a surface

## -- G --

gc3d | Create, select or modify a subscene
getBoundary3d | Extract the boundary of a mesh
getr3dDefaults | Work with RGL windows
getShaders | Set user-defined shaders for RGL objects, or get shaders.
getWidgetId | Convenience functions for RGL HTML layouts
gltfTypes | Names of glTF types.
GramSchmidt | The Gram-Schmidt algorithm
grid3d | Add a grid to a 3D plot

## -- H --

highlevel | RGL id values
hook_rgl | Displaying RGL scenes in 'knitr' documents
hook_rglchunk | Displaying RGL scenes in 'knitr' documents
hook_webgl | Displaying RGL scenes in 'knitr' documents

## -- I --

icosahedron3d | Sample 3D mesh objects
identify3d | Identify points in plot
identityMatrix | Work with homogeneous coordinates
ids3d | Scene management
in_pkgdown_example | Are we running in a 'pkgdown' example?

## -- L --

layout3d | Set up multiple figure layouts
legend3d | Use base graphics for RGL background
light3d | Add light source
lines3d | Add primitive shape
lowlevel | RGL id values

## -- M --

makeDependency | Process Javascript for HTML dependency
material3d | Get or set material properties
matrices | Work with homogeneous coordinates
merge.mesh3d | Merge RGL mesh objects
mergeVertices | Merge duplicate vertices in mesh object
mesh3d | Construct 3D mesh objects
mfrow3d | Set up multiple figure layouts
movie3d | Play animation of RGL scene
mtext3d | Draw boxes, axes and other text outside the data

## -- N --

newSubscene3d | Create, select or modify a subscene
next3d | Set up multiple figure layouts
normalize.mesh3d | Subdivide a mesh

## -- O --

observer3d | Set the observer location
octahedron3d | Sample 3D mesh objects
oh3d | Sample 3D mesh objects
open3d | Work with RGL windows

## -- P --

par3d | Set or query RGL parameters
par3dinterp | Interpolator for par3d parameters
par3dinterpControl | Control RGL widget like par3dinterp()
par3dsave | Modal dialog for saving par3d settings
particles3d | Add sprites
pch3d | Plot symbols similar to base graphics
persp3d | Surface plots
persp3d.default | Surface plots
persp3d.deldir | Plot a Delaunay triangulation
persp3d.formula | Methods for formulas
persp3d.function | Plot a function of two variables
persp3d.tri | Plot an interp or tripack Delaunay triangulation
persp3d.triSht | Plot an interp or tripack Delaunay triangulation
pipe | Imported from magrittr
planes3d | Add planes
play3d | Play animation of RGL scene
playwidget | Add a widget to play animations
playwidgetOutput | Functions for integration of RGL widgets into Shiny app
plot3d | 3D scatterplot
plot3d.default | 3D scatterplot
plot3d.deldir | Plot a Delaunay triangulation
plot3d.formula | Methods for formulas
plot3d.function | Plot a function of two variables
plot3d.lm | Method for plotting simple linear fit
plot3d.mesh3d | 3D scatterplot
plot3d.rglobject | Saves the current scene to a variable, and displays such variables
plot3d.rglscene | Saves the current scene to a variable, and displays such variables
plot3d.tri | Plot an interp or tripack Delaunay triangulation
plot3d.triSht | Plot an interp or tripack Delaunay triangulation
plotmath3d | Draw text using base graphics math plotting
points3d | Add primitive shape
polygon3d | Draw a polygon in three dimensions
pop3d | Scene management
primitives | Add primitive shape
print.rglId | RGL id values
print.rglobject | Saves the current scene to a variable, and displays such variables
print.rglscene | Saves the current scene to a variable, and displays such variables
projectDown | Subset an object to parts facing in a particular direction
propertyControl | Controls to use with playwidget()

## -- Q --

qmesh3d | Construct 3D mesh objects
quads3d | Add primitive shape

## -- R --

r3d | Generic 3D interface
r3dDefaults | Work with RGL windows
readOBJ | Read and write Wavefront OBJ format files
readSTL | Read and write STL (stereolithography) format files
registerSceneChange | Make large change to a scene from Shiny
renderPlaywidget | Functions for integration of RGL widgets into Shiny app
renderRglwidget | Functions for integration of RGL widgets into Shiny app
RGL | 3D visualization device system
rgl | 3D visualization device system
rgl.attrib | Get information about shapes
rgl.attrib.count | Get information about attributes of objects
rgl.attrib.info | Get information about attributes of objects
rgl.bringtotop | Assign focus to an RGL window
rgl.dev.list | Work with RGL windows
rgl.getAxisCallback | Get user-defined axis labelling callbacks.
rgl.getMouseCallbacks | User callbacks on mouse events
rgl.getWheelCallback | User callbacks on mouse events
rgl.init | Initializing RGL
rgl.material.names | Get or set material properties
rgl.material.readonly | Get or set material properties
rgl.par3d.names | Set or query RGL parameters
rgl.par3d.readonly | Set or query RGL parameters
rgl.pixels | Extract pixel information from window
rgl.postscript | Export vector graphics
rgl.printRglwidget | An htmlwidget to hold an RGL scene
rgl.projection | Convert between RGL user and window coordinates
rgl.quit | Work with RGL windows
rgl.select | Switch to select mode, and return the mouse position selected
rgl.setMouseCallbacks | User callbacks on mouse events
rgl.setWheelCallback | User callbacks on mouse events
rgl.snapshot | Export screenshot
rgl.Sweave | Integrating RGL with Sweave
rgl.Sweave.off | Integrating RGL with Sweave
rgl.useNULL | Report default use of null device
rgl.user2window | Convert between RGL user and window coordinates
rgl.window2user | Convert between RGL user and window coordinates
rglExtrafonts | Register extra fonts
rglFonts | Specify FreeType fonts
rglHighlevel | RGL id values
rglId | RGL id values
rglLowlevel | RGL id values
rglMouse | Generate HTML code to select mouse mode
rglobject-class | Saves the current scene to a variable, and displays such variables
rglscene-class | Saves the current scene to a variable, and displays such variables
rglShared | Create shared data from an RGL object
rglToBase | Convert RGL userMatrix to lattice or base angles
rglToLattice | Convert RGL userMatrix to lattice or base angles
rglwidget | An htmlwidget to hold an RGL scene
rglwidgetOutput | Functions for integration of RGL widgets into Shiny app
RGL_DEBUGGING | Process Javascript for HTML dependency
RGL_SLOW_DEV | Set a one-time slowdown on opening standard graphics
RGL_USE_NULL | Report default use of null device
RGL_USE_WEBSHOT | Export screenshot
rotate3d | Work with homogeneous coordinates
rotationMatrix | Work with homogeneous coordinates

## -- S --

scale3d | Work with homogeneous coordinates
scaleMatrix | Work with homogeneous coordinates
scene3d | Saves the current scene to a variable, and displays such variables
sceneChange | Make large change to a scene from Shiny
segments3d | Add primitive shape
select3d | Select a rectangle in an RGL scene
selectionFunction3d | Select a rectangle in an RGL scene
selectpoints3d | Select points from a scene
set3d | Work with RGL windows
setAxisCallbacks | User-defined axis labelling callbacks.
setGraphicsDelay | Set a one-time slowdown on opening standard graphics
setupKnitr | Displaying RGL scenes in 'knitr' documents
setUserCallbacks | Set mouse callbacks in R or Javascript code
setUserShaders | Set user-defined shaders for RGL objects, or get shaders.
shade3d | Draw 3D mesh objects
shade3d.mesh3d | Draw 3D mesh objects
shadow3d | Project shadows of mesh onto object.
shape3d | Construct 3D mesh objects
shapelist3d | Create and plot a list of shapes
shinyGetPar3d | Communicate RGL parameters between R and Javascript in Shiny
shinyResetBrush | Communicate RGL parameters between R and Javascript in Shiny
shinySetPar3d | Communicate RGL parameters between R and Javascript in Shiny
show2d | Draw a 2D plot on a rectangle in a 3D scene
snapshot3d | Export screenshot
spheres3d | Add spheres
spin3d | Create a function to spin a scene at a fixed rate
sprites3d | Add sprites
subdivision3d | Subdivide a mesh
subdivision3d.mesh3d | Subdivide a mesh
subscene3d | Create, select or modify a subscene
subsceneInfo | Get information on subscenes
subsceneList | Set up multiple figure layouts
subsetControl | Controls to use with playwidget()
surface3d | Add surface
Sweave.snapshot | Integrating RGL with Sweave

## -- T --

tagged3d | Find tags on rgl objects.
tetrahedron3d | Sample 3D mesh objects
text3d | Add text to plot
texts3d | Add text to plot
thigmophobe3d | Find the direction away from the closest point in a 3d projection
title3d | Draw boxes, axes and other text outside the data
tkpar3dsave | Modal dialog for saving par3d settings
tkrgl | The former tkrgl package
tkspin3d | Create TCL/TK controller for RGL window
tkspinControl | Create a spin control in a TCL/TK window
tmesh3d | Construct 3D mesh objects
toggleWidget | An HTML widget to toggle display of elements of a scene
transform3d | Work with homogeneous coordinates
translate3d | Work with homogeneous coordinates
translationMatrix | Work with homogeneous coordinates
triangles3d | Add primitive shape
triangulate | Triangulate a two-dimensional polygon
turn3d | Create a solid of rotation from a two-dimensional curve

## -- U --

useSubscene3d | Create, select or modify a subscene

## -- V --

vertexControl | Set attributes of vertices
view3d | Set up viewpoint

## -- W --

wire3d | Draw 3D mesh objects
wire3d.mesh3d | Draw 3D mesh objects
writeASY | Write Asymptote code for an RGL scene
writeOBJ | Read and write Wavefront OBJ format files
writePLY | Write Stanford PLY format files
writeSTL | Read and write STL (stereolithography) format files

## -- misc --

%>% | Imported from magrittr
.check3d | Check for an open RGL window.
3dobjects | Add primitive shape