# 3D Visualization Using OpenGL

## Documentation for package ‘rgl’ version 0.98.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.
ageSetter | Set WebGL scene properties based on the age of components of objects.
arrow3d | Draw an arrow in a scene.
as.mesh3d | 3D Mesh objects
as.mesh3d.deldir | Plot a Delaunay triangulation.
asEuclidean | Work with homogeneous coordinates
asHomogeneous | Work with homogeneous coordinates
aspect3d | Set the aspect ratios of the current plot
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

## -- C --

check3d | Check for an open rgl window.
clear3d | scene management
clearSubsceneList | Set up multiple figure layouts in rgl.
clipplaneControl | Sets attributes of a clipping plane.
clipplanes3d | add planes
clipplaneSlider | Write HTML/Javascript code to control a WebGL display.
cube3d | 3D Mesh objects
cuboctahedron3d | 3D Mesh objects
currentSubscene3d | Create, select or modify a subscene.
cylinder3d | Create cylindrical or "tube" plots.

## -- D --

decorate3d | 3D Scatterplot
deform.mesh3d | generic subdivision surface method
delFromSubscene3d | Create, select or modify a subscene.
divide.mesh3d | generic subdivision surface method
dodecahedron3d | 3D Mesh objects
dot3d | 3D Mesh objects
dot3d.mesh3d | 3D Mesh objects
dot3d.qmesh3d | 3D Mesh objects

## -- 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
extrude3d | Generate extrusion mesh

## -- F --

figHeight | Get R Markdown figure dimensions in pixels.
figWidth | Get R Markdown figure dimensions in pixels.

## -- G --

gc3d | Create, select or modify a subscene.
getr3dDefaults | Set or Query RGL Parameters
GramSchmidt | The Gram-Schmidt algorithm
grid3d | Add a grid to a 3D plot

## -- H --

highlevel | rgl id values
hook_rgl | Hook functions to use with 'knitr'
hook_webgl | Hook functions to use with 'knitr'

## -- I --

icosahedron3d | 3D Mesh objects
identify3d | Identify points in plot.
identityMatrix | Work with homogeneous coordinates

## -- L --

layout3d | Set up multiple figure layouts in rgl.
legend3d | Use base graphics for RGL background
light3d | add light source
lines3d | add primitive set shape
lowlevel | rgl id values

## -- M --

material3d | Generic Appearance setup
matrices | Work with homogeneous coordinates
matrixSetter | Write HTML/Javascript code to control a WebGL display.
mesh3d | 3D Mesh objects
mfrow3d | Set up multiple figure layouts in rgl.
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 in rgl.
normalize.mesh3d | generic subdivision surface method

## -- O --

observer3d | Set the observer location.
octahedron3d | 3D Mesh objects
oh3d | 3D Mesh objects
open3d | Set or Query RGL Parameters

## -- P --

par3d | Set or Query RGL Parameters
par3dinterp | Interpolator for par3d parameters
par3dinterpControl | Control rgl widget like par3dinterp().
par3dinterpSetter | Write HTML/Javascript code to control a WebGL display.
particles3d | add sprite set shape
pch3d | Plot symbols similar to base graphics.
persp3d | Surface plots
persp3d.default | Surface plots
persp3d.deldir | Plot a Delaunay triangulation.
persp3d.function | Plot a function of two variables
pipe | Imported from magrittr
planes3d | add planes
play3d | Play animation of rgl scene
playwidget | Add a widget to play animations.
playwidget.default | Add a widget to play animations.
playwidget.rglPlayer | Add a widget to play animations.
playwidget.rglWebGL | Add a widget to play animations.
playwidget.shiny.tag.list | Add a widget to play animations.
playwidgetOutput | Functions for integration of 'rglwidget' into Shiny app.
plot3d | 3D Scatterplot
plot3d.default | 3D Scatterplot
plot3d.deldir | Plot a Delaunay triangulation.
plot3d.function | Plot a function of two variables
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.
plotmath3d | Generate sprites using base graphics math plotting.
points3d | add primitive set shape
polygon3d | Triangulate and draw a polygon in three dimensions.
pop3d | scene management
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.
propertyControl | Controls to use with playwidget().
propertySetter | Write HTML/Javascript code to control a WebGL display.
propertySlider | Write HTML/Javascript code to control a WebGL display.

## -- Q --

qmesh3d | 3D Mesh objects
quads3d | add primitive set shape

## -- R --

r3d | Generic 3D interface
r3dDefaults | Set or Query RGL Parameters
readOBJ | Write Wavefront OBJ format files; read simple ones
readSTL | Read and write STL (stereolithography) format files
registerSceneChange | Make large change to a scene from Shiny
renderPlaywidget | Functions for integration of 'rglwidget' into Shiny app.
renderRglwidget | Functions for integration of 'rglwidget' into Shiny app.
rgl | 3D visualization device system
rgl.abclines | Lines intersecting the bounding box
rgl.antialias | 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.bbox | Set up Bounding Box decoration
rgl.bg | Set up Background
rgl.bringtotop | Assign focus to an RGL window
rgl.clear | scene management
rgl.clipplanes | add planes
rgl.close | 3D visualization device system
rgl.cur | 3D visualization device system
rgl.dev.list | 3D visualization device system
rgl.getMouseCallbacks | User callbacks on mouse events
rgl.getWheelCallback | User callbacks on mouse events
rgl.ids | scene management
rgl.init | 3D visualization device system
rgl.light | add light source
rgl.lines | add primitive set shape
rgl.linestrips | add primitive set shape
rgl.material | Generic Appearance setup
rgl.open | 3D visualization device system
rgl.pixels | Extract pixel information from window
rgl.planes | add planes
rgl.points | add primitive set shape
rgl.pop | scene management
rgl.postscript | export screenshot
rgl.primitive | add primitive set shape
rgl.printRglwidget | An htmlwidget to hold an rgl scene.
rgl.projection | Convert between rgl user and window coordinates
rgl.quads | add primitive set shape
rgl.quit | 3D visualization device system
rgl.select | Switch to select mode, and return the mouse position selected.
rgl.select3d | Select a rectangle in an RGL scene
rgl.set | 3D visualization device system
rgl.setMouseCallbacks | User callbacks on mouse events
rgl.setWheelCallback | User callbacks on mouse events
rgl.snapshot | export screenshot
rgl.spheres | add sphere set shape
rgl.sprites | add sprite set shape
rgl.surface | add height-field surface shape
rgl.Sweave | Integrating 'rgl' with 'Sweave'
rgl.Sweave.off | Integrating 'rgl' with 'Sweave'
rgl.texts | add text
rgl.triangles | add primitive set shape
rgl.useNULL | Report default use of null device.
rgl.user2window | Convert between rgl user and window coordinates
rgl.viewpoint | Set up viewpoint
rgl.window2user | Convert between rgl user and window coordinates
rglFonts | add text
rglHighlevel | rgl id values
rglId | rgl id values
rglLowlevel | rgl id values
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.
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 'rglwidget' into Shiny app.
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 set shape
select3d | Select a rectangle in an RGL scene
selectpoints3d | Select points from a scene
setupKnitr | Hook functions to use with 'knitr'
setUserShaders | Set user-defined shaders for 'rgl' objects.
shade3d | 3D Mesh objects
shade3d.mesh3d | 3D Mesh objects
shade3d.qmesh3d | 3D Mesh objects
shape3d | 3D Mesh objects
shapelist3d | Create and plot a list of shapes
show2d | Draw a 2D plot on a rectangle in a 3D scene.
snapshot3d | export screenshot
spheres3d | add sphere set shape
spin3d | Create a function to spin a scene at a fixed rate
sprites3d | add sprite set shape
subdivision3d | generic subdivision surface method
subdivision3d.mesh3d | generic subdivision surface method
subscene3d | Create, select or modify a subscene.
subsceneInfo | Get information on subscenes
subsceneList | Set up multiple figure layouts in rgl.
subsetControl | Controls to use with playwidget().
subsetSetter | Write HTML/Javascript code to control a WebGL display.
subsetSlider | Write HTML/Javascript code to control a WebGL display.
surface3d | add height-field surface shape
Sweave.snapshot | Integrating 'rgl' with 'Sweave'

## -- T --

terrain3d | add height-field surface shape
tetrahedron3d | 3D Mesh objects
text3d | add text
texts3d | add text
title3d | Draw boxes, axes and other text outside the data
tmesh3d | 3D Mesh objects
toggleButton | Write HTML/Javascript code to control a WebGL display.
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 set 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.
vertexSetter | Write HTML/Javascript code to control a WebGL display.
view3d | Set up viewpoint

## -- W --

wire3d | 3D Mesh objects
wire3d.mesh3d | 3D Mesh objects
wire3d.qmesh3d | 3D Mesh objects
writeASY | Write Asymptote code for an rgl scene
writeOBJ | Write Wavefront OBJ format files; read simple ones
writePLY | Write Stanford PLY format files
writeSTL | Read and write STL (stereolithography) format files
writeWebGL | Write scene to HTML.

## -- misc --

%>% | Imported from magrittr
.check3d | Check for an open rgl window.