GL parallel to lcd
The jit.gl.sketch object requires one argument: the name of a drawing context. A named drawing context is a named instance of a jit.window , jit.pwindow , or jit.matrix object that has an instance of the jit.gl.render object associated with it. This value may also be set via the OB3D drawto attribute.
anything  The jit.gl.sketch object accepts a list of drawing commands.  
circle 
radius [float] thetastart [float] thetaend [float] 
Draws a circle with radius specified by radius and center point at the current drawing position. If thetastart and thetaend are specified, then an arc will be drawn instead of a full circle. The thetastart and thetaend arguments are in terms of degrees (0360). The current  and values will also affect the drawing.
cmd_delete  Deletes index or all instances of the command specified by the command argument from the command list.  
cmd_enable  0/1 [int] 
Enables/disables command in the command list. 
cmd_insert 
index [int] command [symbol] commandargs [variable] 
Inserts command at position index in the command list. 
cmd_replace 
index [int] command [symbol] commandargs [variable] 
Replaces position index in the command list with command . 
dimorient  The word  followed by a zero or one, affects the command. The default is 0.
drawmatrix  Draws a matrix. The format of the message is <matrixname> <drawing primitive> <texflag> <normalflag> <colorflag> texflag values are specified as follows: 0=use, 1=ignore, 2=auto normalflag values are specified as follows: 0=use, 1=ignore, 2=auto colorflag values are specified as follows: 0=use, 1=ignore edgeflag values are specified as follows: 0=use, 1=ignore 

drawobject  The word  , followed by a symbol that specifies an object name and a 0/1 flag that specifies whether or not to ignore the )B3D attributes, draws a named jit.gl object.
cube 
scalex [float] scaley [float] scalez [float] 
Draws a box with width 2* scalex , height 2* scaley , depth 2* scalez , and center point at the current drawing position. If scaley and scalez are not specified, they will assume the same value as scalex . The current shapeorient , shapeslice , and shapeprim values will also affect the drawing. 
cylinder 
radius1 [float] radius2 [float] mag [float] thetastart [float] thetaend [float] 
Draws a cylinder with top radius specified by radius1 , bottom radius specified by radius2 , length specified by mag , and center point at the current drawing position. If thetastart and thetaend are specified, then a patch will be drawn instead of a full cylinder. The thetastart and thetaend arguments are in terms of degrees (0360). The current  , , and values will also affect the drawing.
beginstroke  Begin definition of a stroked path of the style specified by a following stroke_style argument. Currently supported stroke styles are " basic2d line 

framecircle 
radius [float] thetastart [float] thetaend [float] 
Draws the circumference of the circle with radius specified by radius and center point at the current drawing position. If thetastart and thetaend are specified, then an arc will be drawn instead of a full circle. The thetastart and thetaend arguments are in terms of degrees (0360). The current  and values will also affect the drawing.
frameellipse 
radius1 [float] radius2 [float] thetastart [float] thetaend [float] 
Draws the circumference of the ellipse specified by radius1 , radius2 and center point at the current drawing position. If thetastart and thetaend are specified, then an arc will be drawn instead of a full ellipse. The thetastart and thetaend arguments are in terms of degrees (0360). The current  and values will also affect the drawing.
framequad 
x1 [float] y1 [float] z1 [float] x2 [float] y2 [float] z2 [float] x3 [float] y3 [float] z3 [float] x4 [float] y4 [float] z4 [float] 
Draws the frame of the quadrilateral specified by the four points x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 . 
frametri 
x1 [float] y1 [float] z1 [float] x2 [float] y2 [float] z2 [float] x3 [float] y3 [float] z3 [float] 
Draws the frame of the triangle specified by the three points x1 y1 z1 x2 y2 z2 x3 y3 z3 . 
ellipse 
radius1 [float] radius2 [float] thetastart [float] thetaend [float] 
Draws the ellipse specified by radius1 , radius2 and center point at the current drawing position. If thetastart and thetaend are specified, then an arc will be drawn instead of a full ellipse. The thetastart and thetaend arguments are in terms of degrees (0360). The current  and values will also affect the drawing.
endstroke  Ends the definition of a stroked path and renders the path.  
getcamera  Returns the x, y, and z coordinates of the camera location.  
getcmd_index  index [int] 
Sends the command list item at index as a message out the object's right outlet. 
getcmdlist  Sends the command list as a series of messages out the object's right outlet. The command list is bracketed by max messages that indicate the beginning and the of the current command list, and the command list is output between these two lines, one line per command. The output takes the form: index index commandname commandarg1 ... commandargN . index .... 

glalphafunc  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glbegin  drawprim [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glbindprogram  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glbindtexture  texturename [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glblendfunc  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glclear  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glclearcolor 
red [float] green [float] blue [float] alpha [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glcleardepth  depth [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glclipplane 
coefficient1 [float] coefficient2 [float] coefficient3 [float] coefficient4 [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glcolor 
near [float] far [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glcolormask 
red [int] green [int] blue [int] alpha [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glcolormaterial  lightingmode [sumbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glcullface  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gldepthmask  0/1 [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gldepthrange  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gldisable  capability [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gldrawpixels  matrixname [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gledgeflag  0/1 [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glenable  capability [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glend  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glfinish  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glflush  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glfog 
parametername [symbol] parametervalue [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glfrustum 
left [float] right [float] bottom [float] top [float] near [float] far [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glhint 
target [symbol] mode [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glget  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gllight 
parametername [symbol] parametervalues [float list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gllightmodel 
lightmodel [symbol] values [float list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gllinestipple 
factor [int] bitpattern [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gllinewidth  width [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glloadidentity  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glloadmatrix  matrixname [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gllogicop  opcode [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glmaterial 
parametername [symbol] parametervalues [float list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glmatrixmode  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glmultmatrix  matrixname [symbol] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glnormal 
x [float] y [float] z [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glortho 
left [float] right [float] bottom [float] top [float] near [float] far [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glpixeltransfer 
parametername [symbol] parametervalue [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glpixelzoom 
xfactor [float] yfactor [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glpointsize  size [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glpolygonmode  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glpolygonoffset 
factor [float] units [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glpopattrib  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glpopmatrix  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glpushattrib  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glpushmatrix  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glrasterpos 
x [float] y [float] z [float] w [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glreadpixels 
matrixname [symbol] x [int] y [int] width [int] height [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glrect 
x1 [float] y1 [float] x2 [float] y2 [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glrotate 
angle [float] x [float] y [float] z [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glscale 
xscale [float] yscale [float] zscale [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glscissor 
x [int] y [int] width [int] height [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glshademodel  Please see the OpenGL "Red Book" or "Blue Book" for more info.  
glunbindprogram  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gltexcoord 
s [float] t [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gltexenv 
parametername [symbol] parametervalues [float list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gltexgen  parametervalues [float list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gltexparameter 
parametername [symbol] parametervalues [list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
gltranslate 
deltax [float] deltay [float] deltaz [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glvertex 
x [float] y [float] z [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glviewport 
x [int] y [int] width [int] height [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glulookat  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gluortho2d  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
gluperspective  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glutessbegincontour  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glutessbeginpolygon  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glutessedgeflag  0/1 [int] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glutessendcontour  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glutessendpolygon  Please see the OpenGL "Red Book" or "Blue Book" for more information.  
glutessnormal 
x [float] y [float] z [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glutessmatrix  matrixname [symbol] 
Draws a matrix using the tessellator as a set of vertices and colors. Dim 0 represents a single vertex/color. Dim 1 represents a single contour. Dim 2 represents a single polygon. 
glutessproperty 
propertyname [symbol] propertyvalues [list] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
glutessvertex 
x [float] y [float] z [float] 
Please see the OpenGL "Red Book" or "Blue Book" for more information. 
move 
deltax [float] deltay [float] deltaz [float] 
Moves the drawing position deltax deltay deltaz relative to the current drawing position. 
moveto 
x [float] y [float] z [float] 
Moves the drawing position to the location specified by x y z . 
line 
deltax [float] deltay [float] deltaz [float] 
Draws a line from the current drawing position to the location deltax deltay deltaz relative to the current drawing position. 
lineto 
x [float] y [float] z [float] 
Draws a line from the current drawing position to the location specified by x y z . 
linesegment 
x1 [float] y1 [float] z1 [float] x2 [float] y2 [float] z2 [float] 
Draws a line from the location specified by x1 y1 z1 to the location specified by x2 y2 z2 . 
plane 
scalex1 [float] scaley1 [float] scalex2 [float] scaley2 [float] 
Draws a plane with top width 2* scalex1 , left height 2* scaley1 , bottom width 2* scalex2 , right height 2* scaley2 , and center point at the current drawing position. If scaley1 is not specified, it will assume the same value as scalex1 . If scalex2 and scaley2 are not specified, they will assume the same values as scalex1 and scaley1 respectively. The current  , , and values will also affect the drawing.
point 
x [float] y [float] z [float] 
Draws a point at the location specified by x y z . 
reset  Delete all elements of the command list.  
quad 
x1 [float] y1 [float] z1 [float] x2 [float] y2 [float] z2 [float] x3 [float] y3 [float] z3 [float] x4 [float] y4 [float] z4 [float] 
Draws the quadrilateral specified by the four points x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 . 
tri 
x1 [float] y1 [float] z1 [float] x2 [float] y2 [float] z2 [float] x3 [float] y3 [float] z3 [float] 
Draws the triangle specified by the three points x1 y1 z1 x2 y2 z2 x3 y3 z3 . 
screentoworld  The word  , followed by a pair of numbers that specify x and y coordinates, returns an array containing the x , y , and z world coordinates associated with a given screen pixel using the same the depth from the camera as 0,0,0. Optionally a third depth arg may be specified, which may be useful for hit detection and other applications. The depth value is typically specified in the range 0.1. where 0 is the near clipping plane, and 1. is the far clipping plane.
shapeorient 
rotx [float] roty [float] rotz [float] 
Sets the current orientation for shape drawing commands (  , , , , , , , , and ). The rotx , roty , and rotz arguments are in terms of degrees (0360). The order in which the orientation is applied is first rotate about x axis rotx , then rotate about y axis roty , and finally rotate about z axis rotz .
shapeprim  drawprim [symbol] 
Sets the current drawing primitive for shape drawing commands ( 
, , , , , , , , and ). Valid values for drawprim are:
shapeslice 
slicea [int] sliceb [int] 
Sets the current level of decimation (resolution) for shape drawing commands (  , , , , , , , , and ).
sphere 
radius [float] theta1start [float] theta1end [float] theta2start [float] theta2end [float] 
Draws a sphere with radius specified by radius and center point at the current drawing position. If theta1start , theta1end , theta2start , and theta2end are specified, then a patch will be drawn instead of a full sphere. The theta1start , theta1end , theta2start , and theta2end arguments are in terms of degrees (0360). The current  , , and values will also affect the drawing.
roundedplane  The message  round_amount scale_x scale_y draws a rounded plane with width 2 * scale_x , and height 2 * scale_y and center point at the current drawing position. The size of the rounded portion of the plane is determined by the round_amount argument. If scale_y is not specified, it will assume the same value as scale_x .
torus 
radius1 [float] radius2 [float] theta1start [float] theta1end [float] theta2start [float] theta2end [float] 
Draws a torus with major radius specified by radius1 , minor radius specified by radius1 , and center point at the current drawing position. If theta1start , theta1end , theta2start , and theta2end are specified, then a patch will be drawn instead of a full torus. The theta1start , theta1end , theta2start , and theta2end arguments are in terms of degrees (0360). The current  , , and values will also affect the drawing.
strokeparam  The word  , followed by a parameter name argument and a list of parameter values, sets the current value of the parameter specified by the parameter_name argument to be the value specified by parameter_value argument(s). Some parameters are global for the extent of a stroked path definition, while others may vary on a point by point basis.
strokepoint  The word  , followed by three numbers that specify x , y , z coordinates, defines an anchor point at the location specified by those coordinates. Some stroke styles (such as basic2d) will ignore the z coordinate.
worldtoscreen  The word  , followed by three numbers that specify x , y , z coordinates, returns an array containing the x , y , and depth screen coordinates associated with a given world coordinate. The depth value is typically specified in the range 0.1. where 0 is the near clipping plane, and 1. is the far clipping plane.
Name  Type  g/s  Description 

autonormal  int  Automatically generate normals for  and primitives (default = 0)
displaylist  int  Cache in a displaylist (default = 0)  
immediate  int  Toggles immediate mode. When immediate mode is enabled, a message will be executed when it is submitted rather than on draw.  
pushstate  int  Toggles pushing all attrbiutes on draw. 
Name  Description 

jit.gl.graph  Open GL floatingpoint data visualization 
jit.gl.gridshape  Generate simple geometric shapes as a connected grid 
jit.gl.handle  Use mouse movement to control position/rotation 
jit.gl.isosurf  Generates a GL based surface extraction 
jit.gl.mesh  Generates GL geometry from existing data 
jit.gl.model  Read and draw Wavefront .obj models 
jit.gl.nurbs  Generate NURBS surface 
jit.gl.plato  Generate platonic solids 
jit.gl.render  Render Open GL 
jit.gl.shader  Manages a GL shader 
jit.gl.slab  Performs a GL accelerated gridbased evaluation 
jit.gl.text2d  Write bitmap text 
jit.gl.text3d  Write vector text 
jit.gl.texture  Manages a GL texture 
jit.gl.videoplane  GL accelerated video plane 
jit.gl.volume  Creates a GL accelerated volume vizualization 
Tutorial 40: Drawing in OpenGL using jit.gl.sketch  Tutorial 40: Drawing in OpenGL using jit.gl.sketch 