Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

7 - Développer/traduire/documenter/annoncer une application

> Forums de discussion > 7 - Développer/traduire/documenter/annoncer une application > Développeur C++ en herbe sollicite conseils concernant le volet "graphique"
Dernier post

Développeur C++ en herbe sollicite conseils concernant le volet "graphique"

Nau utilisateur non connecté
Bonjour,

je voudrais vous demander conseil concernant une petite application que je voudrais coder.

Je suis en train d'apprendre le C++, et je voudrais créer une appli qui me permettrait d'éditer une fonction à la souris, qui serait une version augmentée de ce qu'un objet "array" permet déjà dans l'environnement de programmation graphique "pure data" (voir en haut à gauche dans cette video ).
Ce projet serait un support idéal pour mon apprentissage de C++ et d'une librairie permettant de créer une interface graphique, mais je dois encore faire le choix de la librairie...

Voici mon cahier des charges (sans ordre particulier), qui se rapproche d'un éditeur de ControlChange midi, à ceci près que les valeurs "dessinées" le seraient en tout point de la zone d'édition, sans être liées à des notes par exemple:

  1. dessin à la souris d'une fonction, c'est à dire que sur une verticale donnée il ne peut y avoir qu'un point
  2. discrétisation fixe sur les deux axes, homogène
  3. nombre de points fixe (autrement dit : largeur de fenêtre fixe)
  4. une fois la fonction dessinée, elle peut être retouchée directement à la souris (comme dans un éditeur de CC midi)
  5. (dans un second temps) possibilité de zoomer/dézoomer pour pouvoir dessiner plus ou moins précisément, avec des axes gradués qui "suivent" les opérations

J'ai, pour l'instant, deux axes de réflexion pour me permettre de choisir la librairie graphique multi-plateformes dont je vais entreprendre l'étude :

  • celui de la "réputation", qui recouvre les conseils que je recueille concernant (dans le désordre) leur ergonomie, leur efficacité, leur facilité d'apprentissage, l'éventuelle existence de méthodes collant déjà très près à ce que je désire faire.
  • celui de la possibilité de prendre une appli existante en logiciel libre comme point de départ duquel m'inspirer pour coder mon propre schmilblick

Bien que je sois débutant en C++ j'ai un esprit analytique et je programme (jamais en interface graphique) depuis 25 ans. Mon expérience personnelle me pousse donc à utiliser le deuxième axe de réflexion comme outil pour départager les candidats, car le premier axe de réflexion propose forcément plusieurs candidats.

Pour l'instant mon coeur balance entre QT, WxWidgets, openFrameworks. La troisième librairie n'est pas spécifiquement dédiée au graphisme mais est orientée "arts numériques", ce qui pourrait être intéressant (bien que pour l'instant je n'arrive pas à en résoudre les dépendances sous LZK2, mais cela fera peut-être l'objet d'un autre sujet sur le forum).

Je demande donc aux programmeurs dans l'assemblée quels seraient vos conseils, commentaires, indications de softs pouvant me servir d'exemple ...

Je vous remercie beaucoup d'avance!

Cordialement,

Nau

farvardin utilisateur non connecté
salut,

je ne développe pas, mais j'ai l'impression que QT a plus le vent en poupe que les autres, tu trouveras peut-être ainsi plus de support.

Je n'ai pas trop compris la finalité de ton projet. Si c'est pour faire de la musique, pourquoi ne pas créer un greffon audio utilisable dans un DAW, au format vst ou lv2 par exemple ?

Notre ami jpcima a créé un template pour ça (lv2 + qt ainsi que d'autres) : https://github.com/jpcima/skeleton.lv2

jpcima utilisateur non connecté France
Salut Nau,

Je trouve que Qt est une bonne bibliothèque d'usage général, pour construire des interfaces graphiques et arriver rapidement à un résultat.

Par contre, l'utilisation de cadriciel graphique de ce type est contre-indiquée pour la réalisation de greffon, et on part plutôt sur des bibliothèques de graphisme plus proches du bas niveau (cairo, openGL).
(pour cela, oublier mon skeleton.lv2, et voir DPF )

En partant sur du Qt, ce qui est à mon avis le choix le plus simple, je réalise un dérivé de composant générique (QWidget) dont je redéfinis la procédure de dessin.
J'avais réalisé quelque chose de tel dans une ancienne réalisation : dot-editor-widget

Nau utilisateur non connecté
Salut,

merci Farvardin mais je n'ai pas pour l'instant l'objectif de créer des plugins. Mon approche est pour l'instant purement utilitaire et cet outil que je voudrais créer sera une interface pour une des mes chères usines à gaz sous puredata, rien de partageable a priori. Et merci d'avoir en quelque sorte "invoqué" Jpcima qui s'est penché sur mon berceau...

...car en effet Jpcima tes productions découvertes par LibraZik2 m'en ont fait découvrir d'autres (notamment sous puredata), et t'ont mis en lumière comme un codeur chevronné fréquentant ce site. J'espérais bien secrètement recevoir quelques conseils de ta part, merci je prends bonne note. D'autant plus que je suis comblé puisque tu me files un pointeur vers une production que je dois avouer ne pas avoir repérée et qui est d'ores et déjà du genre inspirante!

Voila qui place mes débuts sous d'excellentes augures, merci les gars.

Que ça n'empêche pas d'autres voix de s'élever, discordantes ou pas!

Cordialement,

Nau

aletheia utilisateur non connecté France
Pour faire ce que je fais, j'utilise SFML qui est à la fois très souple et performante et permet d'intégrer OpenGl à ses applis.
Son inconvénient majeur : cette lib ne propose pas de GUI. Il faut donc tout faire soi-même.
Donc, tout dépend de ce que l'on veut faire.

Nau utilisateur non connecté
Merci Aletheia,

j'avais déjà mis un signet sur le site de SFML, j'y reviendrai peut-être un jour.
En attendant j'ai commencé à étudier les rouages de Qt, et bientôt je vais pouvoir adapter "dessiner un son " de JPCima, qui est vraiment un point de départ idéal pour ce que je cherche à faire.

A bientôt,

Nau

Afficher les articles :
Aller au forum :

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

calixtus06, 09:30, mer. 27 mars 2024: Bonjour et bienvenue à Noar :-)
olinuxx, 18:50, lun. 25 mars 2024: Bonjour et bienvenue à Ted Demore cool
olinuxx, 17:52, dim. 24 mars 2024: Bonjour et bienvenue à Noitavon cool
calixtus06, 11:07, jeu. 21 mars 2024: Bonjour et bienvenue à obds, ceric :-)
obds, 16:12, mar. 19 mars 2024: Cet édito est juste parfait. Trop beau !
olinuxx, 11:48, ven. 15 mars 2024: Bonjour et bienvenue à Jerry cool
calixtus06, 18:03, mer. 13 mars 2024: Bonjour et bienvenue à tanguero :-)
olinuxx, 11:01, dim. 10 mars 2024: Bonjour et bienvenue à lolo cool
bda, 16:59, sam. 09 mars 2024: Chapeau pour l'édito. Vous êtes au top les gars :-)
allany, 07:20, jeu. 07 mars 2024: Ça ne fait jamais de mal, c'est l'éditorial ! [Lien]
olinuxx, 19:52, mer. 06 mars 2024: Bonjour et bienvenue à TrkNrk cool
calixtus06, 11:17, mar. 05 mars 2024: Bonjour et bienvenue à D752 :-)