Navigation:  LUA Scripting Engine > Sample LUA Script Code >

glcanvas.lua

Previous pageReturn to chapter overviewNext page

Create a dialog and add OpenGL interface.

bar_dot

 

-- Example IupGLCanvas in Lua

-- Creates a OpenGL canvas and draws a line in it.

-- This example uses gllua binding of OpenGL to Lua.

 

require("iuplua")

require("iupluagl")

require("luagl")

 

cnv = iup.glcanvas{buffer="DOUBLE", rastersize = "300x300"}

 

function cnv:action(x, y)

 iup.GLMakeCurrent(self)

 gl.ClearColor(1.0, 1.0, 1.0, 1.0)

 gl.Clear(gl.COLOR_BUFFER_BIT)

 gl.Clear(gl.DEPTH_BUFFER_BIT)

 gl.MatrixMode( gl.PROJECTION )

 gl.Viewport(0, 0, 300, 300)

 gl.LoadIdentity()

 gl.Begin( gl.LINES )

 gl.Color(1.0, 0.0, 0.0)

 gl.Vertex(0.0, 0.0)

 gl.Vertex(10.0, 10.0)

 gl.End()

 iup.GLSwapBuffers(self)

end

 

dlg = iup.dialog{cnv; title="IupGLCanvas Example"}

 

function cnv:k_any(c)

 if c == iup.K_q or c == iup.K_Esc then

   return iup.CLOSE

 else

   return iup.DEFAULT

 end

end

 

 

dlg:show()

 

if (iup.MainLoopLevel()==0) then

 iup.MainLoop()

end