def main
window = gtk.GtkWindow(gtk.WINDOW_TOPLEVEL)
window.set_title("A GtkVTKRenderWindow Demo!")
window.connect("destroy", gtk.mainquit)
window.connect("delete_event", gtk.mainquit)
window.set_border_width(10)
vbox = gtk.GtkVBox(spacing=3)
window.add(vbox)
vbox.show
gvtk = GtkVTKRenderWindowInteractor
gvtk.set_usize(400, 400)
vbox.pack_start(gvtk)
gvtk.show
gvtk.Initialize
gvtk.Start
gvtk.AddObserver("ExitEvent", lambda o,e,x=nil: x)
cone = Vtk::ConeSource.new
cone.SetResolution(80)
coneMapper = Vtk::PolyDataMapper.new
coneMapper.SetInput(cone.GetOutput)
coneActor = Vtk::Actor.new
coneActor.SetMapper(coneMapper)
coneActor.GetProperty.SetColor(0.5, 0.5, 1.0)
ren = Vtk::Renderer.new
gvtk.GetRenderWindow.AddRenderer(ren)
ren.AddActor(coneActor)
quit = gtk.GtkButton("Quit!")
quit.connect("clicked", gtk.mainquit)
vbox.pack_start(quit)
quit.show
window.show
gtk.mainloop
end