Cos'è la glui:

GLUI: GLUT-based User Interface.La GLUI è una libreria di oggetti C++ costruita utilizzando le GLUTe mette a disposizione tutta una serie di oggetti per renderel'interfaccia di un programma più user-friendly.Le GLUI si permettono di definire:Bottoni;Checkbox, spinner box;Pannelli, separatori, rollout;Campi testuali statici o dinamici;ecc…Grazie al fatto che sia GLUT-based, conferisce alla libreria la proprietà di essere systemindipendent esattamente come le Glut permettendo di creare applicazioni su sistemi Window, SGI, Unix, Linux, Mac.Ciascun oggetto glui genera degli eventi che dovranno essere gestiti da opportune unzioni. La registrazione delle funzioni avviene, diversamente dalle glut, direttamente in fase di creazione dell'oggetto che vogliamo inserire nell'interfaccia a parte alcuni casi.È possibile creare interfacce standalone ovvero esterne alla finestra di visualizzazione oppure all'interno della finestra stessa (novità inserita nella versione v.2.1).File necessari:glui.h e glui32.libPer creare il glui32.lib:Scaricare la libreria dal sito http://www.cs.unc.edu/~rademach/glui/ scompattarlo in una directory qualsiasi, e clickare su glui.dsw.Automaticamente si avvia il Visual C++. Ricompilare tutto(Rebuild all). Nella directory in cui avete scompattato la libreria,sarà stata creata una directory Lib che contiene glui32.lib.Prendete quel file e copiatelo nella Lib del Visual C++.Prendete il glui.h e copiatelo nella directory Include del VisualC++.

  • C:\Programmi\Microsoft Visual Studio\VC98\Include (glui.h)
  • C:\Programmi\Microsoft Visual Studio\VC98\Lib (glui32.lib)
  Un po di codice:

/*** Glui Destra ***/  glui_left = GLUI_Master.create_glui_subwindow( main_window, GLUI_SUBWINDOW_RIGHT );

  • glui_right->add_button( "Esci",  0,  (GLUI_Update_CB)exit ); 
  • glui_right->add_button( "Help",  HELP_SHOW, GLUIControl  ); 

Per migliorare le caratteristiche della glui è stata usata una procedura controllo che interagendo con la glui permette controlli e regolazione di luci e visuali sul robotTutto ciò che si definisce con la glui viene associato alla current window definita.Questo comporta che subito dopo la creazione di una finestra con glutCreateWindow(…), è necessario specificare l'interfaccia glui che si vuole associare a tale finestra.Tale procedimento deve essere eseguito per ogni finestra.• Anche GLUI ha delle callback functions che devono essere registrate per realizzare l'associazione con i relativi eventi.In fase di Linking bisogna impostare le proprietà nel menu projects,andare alla voce Settings e selezionare le opzioni di Link.Quindi è necessario specificare le lib da linkare, nel seguente ordine:glui32.lib glut32.lib glu32.lib opengl32.lib