begin process at 2010 03 11 09:49:36
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

OpenGL

 > FENÊTRE DE DEBUG GTK+ POUR OPENGL

FENÊTRE DE DEBUG GTK+ POUR OPENGL


 Information sur la source

Note :
Aucune note
Catégorie :OpenGL Classé sous :gtk, tracing, log Niveau :Débutant Date de création :24/12/2006 Vu / téléchargé :3 834 / 137

Auteur : Arnaud16022

Ecrire un message privé
Site perso
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Permet à l'utilisateur d'ouvrir rapidement et facilement une fenêtre GTK+ pour afficher des bool, float ou int en temps réel, et les modifier.
Exemple d'utilisation:
   GTKwin.Init();
    GTKwin.Attach(my_int,"var1 = ");
    GTKwin.Attach(my_float,"angle = ",0,M_PI);
    GTKwin.Run();

Il est aussi possible de logger sur une console s'ouvrant dans un 2eme onglet, je vous laisse tester.
Il faut les runtimes GTK+ dispos sur http://gimp-win.sourceforge.net/stable.html pour windows, sur apt-get sinon ^^

Source

  • Il est possible de désactiver complètement la fenêtre ( par exemple pour la release ) en définissant la macro RELEASE, ou juste un onglet spécifique en commentant GTKWIN_TRACE ou GTKWIN_LOG.
  • Amplement commenté, il faut dire que ce n'est pas évident.
  • Débutant car 1 c'est ma 1ère source GTK+ et 2 rien de transcendant non plus faut pas exagérer.
  • Juste très pratique.
Il est possible de désactiver complètement la fenêtre ( par exemple pour la release ) en définissant la macro RELEASE, ou juste un onglet spécifique en commentant GTKWIN_TRACE ou GTKWIN_LOG.

Amplement commenté, il faut dire que ce n'est pas évident.
Débutant car 1 c'est ma 1ère source GTK+ et 2 rien de transcendant non plus faut pas exagérer.
Juste très pratique.

 Conclusion

Portable.
Utilise GLFW pour le "rendu" ainsi que pour quelques autres trucs, GTKWIN_NO_GLFW devrait permettre de s'en passer complètement mais c'est pas encore au point.

ATTENTION
la fenêtre openGL est VOLONTAIREMENT minable. le but était de montrer l'utilisation de ma classe, rien d'autre.
les différents bools activent les composantes RVB.
la composante bleue varie au cours du temps selon un sin(), on ne peut donc pas la modifier.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip OCCLUSION QUERY
Source avec Zip FÊTES SUR LE BUREAU
Source avec Zip Source avec une capture EFFET 3D SUR TEXTE OPENGL
Source avec Zip Source avec une capture DU TEXTE SUR UNE TEXTURE OPENGL
Source avec Zip Source avec une capture UNE VACHE. UN TRAMPOLINE. ENSEMBLE, ILS COMBATTENT LE CRIME.

 Sources de la même categorie

Source avec Zip Source avec une capture SCREENSAVER OPENGL DEV C++ par bobby03
Source avec Zip Source avec une capture LEÇON 13 NEHE EN FRANÇAIS OPENGL DEV C++ par bobby03
Source avec Zip JEU DE DAMES 3D par vbclaude
Source avec Zip CHARGEMENT DES TEXTURES EN OPENGL par Jackyzgood
Source avec Zip Source avec une capture OPENGL - UN PEU DE NEIGE... par underprog

 Sources en rapport avec celle ci

Source avec Zip CLASSE AVANCÉE DE LOG, THREAD SAFE ET DIVERSES SURCHARGES par sboli
Source avec Zip Source avec une capture TRANSFERT DE FICHIER TCP [GCC - GTK] par ganjarasta
Source avec Zip OUTPUTDEBUGSTRINGEX par kts_system
Source avec Zip GTK _CALCUL par jabirmed
Source avec Zip DICTIONNER RECHERCHE GTK par jabirmed

Commentaires et avis

Commentaire de Arnaud16022 le 24/12/2006 17:38:06

Oh juste une remarque en passant : J'ai fait cette source pour pouvoir modifier rapidement des petits trucs chiants genre la couleur de particules, etc, sans avoir à compiler 20 fois pour trouver la bonne teinte ou la bonne taille ou une taille de police qui va bien, etc.
C'est uniquement à ça que ça sert ;)

Joyeuses fêtes.

Commentaire de Kirua le 24/12/2006 22:53:34

Tu devrais mettre l'accent sur le côté ultra pratique de ta classe. Je vais le faire pour toi:

vous déclarez l'objet une bonne fois pour toutes, et puis partout dans votre programme très compliqué et bourrant à compiler / débugger, vous enregistrez les variables sensibles que vous aimeriez suivre en temps réel, et pouvoir modifier aisément. En une ligne, elles apparaitront de façon ergonomique dans la petite fenêtre GTK+. Et quand le debug est terminé et que vous voulez distribuer: pops, on désactive. MAIS: faut pas commenter partout dans le code. Puisque 2 jours après la release, on vous signale un bug: pas de problème, on réactive, et on recommence ^^.

Il y a vraiment du potentiel pour ce genre de choses :).

Commentaire de Funto66 le 31/12/2006 01:18:57

Yep salut Arnaud (et Kirua au passage ^^), je viens de parcourir ta source :)

Je vais faire ce que je n'ai pas fait depuis si longtemps sur CppFrance : une critique constructive :D
Donc d'abord les points positifs : très très bonne source en fait, c'est vrai que c'est très pratique et propre, simple d'utilisation, utile, bien commentée et "personnalisable" avec quelques #defines : j'aime beaucoup :)

Bon maintenant les points négatifs :p :
-l'indentation où tu mélanges des espaces et des tabulations...'fin ça c'est personnel hein mais j'aime bien quand c'est homogène...bon ok on s'en fout :p
-#define CGTKwin dumpGTKwin ou #define CGTKwin _CGTKwin : pour quoi faire?
Pourquoi ne pas faire plus simplement :

#ifndef GTKWIN_DISABLE
class CGTKwin
{
void Init(); // l'implémentation sera dans le .cpp
// blabla...
};
#else
class CGTKwin
{
void Init(){} // implémentation vide
// blabla...
};
#endif
-pourquoi get_win() et par GetWin() ? Ta façon de nommer les fonctions n'est pas homogène...
-les variagles globales qui sont dans le namespace NDebug : soit les mettre en static au sens C du terme, c'est à dire non visibles depuis un autre fichier .cpp (ça ne coûte rien et c'est plus propre ^^), soit les mettre en private et static au sens C++ du terme dans la classe CGTKwin, ce qui est bcp + logique non??
-on peut écrire sur la zone de texte GTK+, je pense qu'on doit pouvoir empêcher ça en 1 seule ligne de code...tu me diras, de toutes façons c'est juste pour du débuggage donc c'est pas important...
-au démarrage de ton prog, le focus est donné à la fenêtre GTK+, alors que ce serait plus logique de le donner à la fenêtre GLFW. Détail aussi, et puis ça dépend surtout du programme que l'on débuggue plutôt que de CGTKwin : peut-on créer une fenêtre GTK+ sans qu'elle ait le focus?? (ou sinon faudrait que CGTKwin appelle une fonction GLFW qui donnerait le focus à la fenêtre GLFW : cette fonction existe-t-elle?)

Bon et puis quelques fautes d'ortho/de frappe...(dsl ^^) :
-appellés -> appelés (CGTKwin.cpp)
-appeller -> appeler (CGTKwin.cpp)
-Fenêtre désactivés -> Fenêtre désactivée (CGTKwin.h)
-calbacks -> callbacks (CGTKwin.cpp)

Voili voilou, ça faisait longtemps que je ne faisais pas ça :)

A tous les programmeurs OpenGL : c'est vraiment utile, vous devriez vous en servir, et puis c'est un pote à moi qui l'a faite, elle est forcément bien cette source :p

Commentaire de Arnaud16022 le 04/01/2007 12:43:53

Alors, dans l'ordre:
Pour les indentations (et les fautes d'ortho), j'ai dû coder ça entre minuit et 5h du mat, ceci explique cela.
Pour les define, c'est simplement parce que ta méthode ne marche pas: n'oublie pas qu'il y a un .cpp derrière. avec ma méthode, un peu crade je l'avoue, toutes les fonctions sont inlinées en fonction(){}; -> tu n'as pas à virer tout le code lors de la release.
Pour l'homogénéité -> ok je regarderai ça
Pour le focus, je sais pas trop comment faire :/
et c'est a peu près tout :)

Commentaire de Funto66 le 04/01/2007 22:13:52

??
Quel est le pb avec le .cpp?

Tu mets tout le contenu du .cpp dans un #ifdef/#endif...

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Ajouter une nouvelle rubrique pour le GTK+ [ par krtman ] Je compte poster d'autres sources en C utilisant le toolkit GTK+ pour creer une interface. Ca serait bien de creer une nouvelle rubrique. Pour suivant heu...C koi gtk+ ??? [ par BlackWizzard ] je commence seulement à develloper vraiment en C++, j'ai les bases mais C koi gtk+?à koi ça sert?possible avec VB++6? les acces aux données en gtk+ [ par ahmed ] comment se fait l'acces aux bases de donneés en gtk+...est ce qu'il y a un widget qui est responsable de l'access aux bases de données ? Probleme GTK [ par Jo ] Salut,Quelqu'un pourrait me dire ou est l'erreur ?char * fichier; char *z;gchar *temp;temp = gtk_entry_get_text(GTK_ENTRY(Data));fd1= fopen((char *)te Gtk avec gcc [ par GoldenEye ] Bonjour à tous.Je suis en trian de passer de VC++ à gccSi qqun pouvait m'indiquer un site de documentation sur la librairie graphique gtk, ce serait t demande librairie gtk pour win32 [ par francky ] quelqu'un pourrait-il me donner la librairie gtk.h?ou alors des liens vers des exemples d'interface graphique réaliséemerci d'avance. gtk & win32 & Visual C++ [ par Paisible ] je vais peut être me faire jeter, mais bon...j'ai cherché dans le forum... et impossible de trouver la trace d'un quelconque post concernant la config Comment compiler avec GTK (sous linux) [ par defcon ] Bonjour à touse, voilà, je voulais savoir comment compiler mon code source souis linux (avec librairie GTK)???Merci d'avance pour votre réponse.Amical Comment compiler GTK (sous linux)??? [ par defcon ] Bonjour à touse, voilà, je voulais savoir comment compiler mon code source souis linux (avec librairie GTK)???Merci d'avance pour votre réponse.Amical Accent et GTK !! [ par UncleShu ] Je n'arrive pas à faire des accents avec GTK sur linux (ex. é,è,...) , ca me coupe la lettre accentuée et les autres lettres suivantes !!!J'ai essayer


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,874 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales