Journal : Librairie graphique pour prototype d'application embarquée ?

Posté par ploum (page perso, ) le 04 décembre 2007
0
Bonjour,

Je suis à la recherche d'une librairie graphique pour faire l'interface graphique du prototype d'une application embarquée.

Qui dit "prototype" dit que ça peut être une librairie qui tourne uniquement sur un PC à priori. Qui dit embarqué, dit aucune intégration avec le desktop ni de manipulation de fenêtres. L'appli sera exportée sur un petit écran tactile depuis un PC afin de démontrer le principe du logiciel (dont l'interface n'est en fait pas réellement nécessaire pour le moment).


Ce que je veux :

- une librairie facile à prendre en main (il s'agit d'un proto, la rapidité de dev est importante)
- des bindings python (indispensable)
- une librairie relativement stable (je n'ai pas 6 mois pour contribuer et rapporter des bugs, malheureusement)
- le plus d'effets "blink" possible. Il va falloir convaincre des commerciaux de la valeur ajoutée de ce prototype, si possible avec des effets inutiles genre fondus enchainés, etc...


Ce qui serait bien :

- une certaine portabilité (QNX et éventuellement cygwin. Mais ce n'est pas requis)


A priori, j'ai trouvé Clutter, qui semble pas mal du tout :
http://www.clutter-project.org/

Seulement, c'est encore jeune, il y a très peu de doc (voire pas du tout en ce qui concerne python).

Il y a aussi je pense EFL , GTK+Cairo et puis toutes les librairies python qui permettent de programmer des jeux qui pourraient être utilisées (SDL ou pourquoi pas PyGame ?). PyGame me semble en effet une approche possible dans ce genre de cas.

Je précise également que, sur le long terme, le but est de pouvoir développer rapidement des prototypes et de généraliser l'usage de cette lib à différents protos (C ou Python. eventuellement d'autres languages).

Voilà, j'aimerais avoir vos retours, vos expériences, vos avis et éventuellement vos conseils.

Merci d'avance

PS : si vous avez des idées de hardware pour ce genre de chose (un écran tactile, une plateforme dédiée ou n'importe), n'hésitez pas à laisser également un commentaire, je suis preneur d'absolument toute suggestion :-)

> Lire le journal (11 commentaires, moyenne: 2,5).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Qt/Qtopia

Posté par GeneralZod () le 04/12/2007 à 11:39. (lien). Évalué à 5.

Je sais c'est pas un réflexe naturel pour un gnomers mais la version 4 de Qt claque !
Qtopia est une très bonne alternative pour l'embarqué et la documentation est très riche.

  • [^]Re: Qt/Qtopia

    Posté par P@sNox Nox (page perso, ) le 04/12/2007 à 12:10. (lien). Évalué à 4.

    Il existe de plus de bon outils de developpement dedié a Qt 4, cf journal : https://linuxfr.org//~pasnox/25776.html

    Non, promis je fais pas de pub :p

    P@sNox,

N800 + EFL + Python

Posté par cedric () le 04/12/2007 à 12:46. (lien). Évalué à 4.

J'aurais essayer les EFL. C'est portable, rapide et ca marche vraiment bien pour l'embarque. Surtout que si tu ne connais pas ta plateforme cible, tu as pas mal de backend de dispo en plus de X11.

Pour la plateforme hard, j'aurais pris un N800 pour faire la demo. Les gens qui developpent Canola ont fait des trucs extra avec les EFL et Python sur N800. Regarde sur google a Canola 2, tu devrais trouver tout ce que tu veux.

  • [^]Re: N800 + EFL + Python

    Posté par ploum (page perso, ) le 04/12/2007 à 13:06. (lien). Évalué à 2.

    Ah, Canola utilise donc EFL ! Je me demandais ce qu'ils utilisaient.

    J'ai juste pas encore trouvé une bonne doc EFL/Python pour me faire une idée.

Matériel... logiciel

Posté par Laurent Pointal (page perso, ) le 04/12/2007 à 20:20. (lien). Évalué à 2.

Tu peux aller vers des UPMC avec écran de 7'. J'ai un collègue qui a pris des tout petit modèles de chez Sony, qui tournent nativement Windows, ça te permet de développer avec tes outils habituels, et tu as une machine très puissante par rapport à la taille.

Côté interface graphique... du pyQt ?
Avec Qtopia pour l'embarqué (voir s'il y a des bindings Python pour celui-ci)...

--
(pub: Livres à prix réduit sur http://www.sollire.com/ - la boutique de mes petites soeurs)

Pigment?

Posté par sweafty (page perso, ) le 05/12/2007 à 11:13. (lien). Évalué à 1.

Pigment est un projet un peu similaire à Clutter.

https://code.fluendo.com/pigment/trac/

L'interface graphique d'Elisa utilise ce framework. cf http://elisa.fluendo.com

Clutter

Posté par Gwenole Beauchesne (page perso, ) le 05/12/2007 à 11:21. (lien). Évalué à 2.

En fait, tout dépend du type de ton application. Un media player par exemple se fait très bien avec Clutter ou Pigment. Ce dernier est le coeur d'Elisa, le media center de Fluendo, avec beaucoup de Python donc tu pourrais y trouver ton bonheur.

Ceci dit, je préfère nettement Clutter. Malgré sa jeunesse, elle fait déjà pas mal de choses que Pigment ne gère pas apparemment. La prise en main me semble intuitive malgré GObject (le C++ du pauvre^Wgtk). Elle supporte OpenGL ES aussi.

Je précise que Clutter fournit la base (canvas, événements, effets, etc.) et pas de widgets (boutons & co). Il en est de même pour Pigment. Donc, si tu veux un toolkit avec des widgets complets, il faudrait se tourner vers une autre solution ou bien les implémenter soi-même.

PS: j'utilise un snapshot de Clutter/trunk d'il y a un mois + "quelques" autres patches, ça me convient tout à fait.

  • [^]Re: Clutter

    Posté par sweafty (page perso, ) le 05/12/2007 à 11:38. (lien). Évalué à 2.

    - Clutter et Pigment sont tous 2 basés sur GObject.
    - Pigment n'est pas le "coeur" de Elisa. On peut très bien réaliser un frontend Clutter pour Elisa (mais ne divergeons pas du sujet de ce journal)
    - Un plugin OpenGL|ES devrait prochainement être développé pour Pigment, mais a priori pas à court terme
    - Pigment fournit des widgets en Python, ca bouge d'ailleurs pas mal en ce moment
    - Pigment a un framework d'animation implicite (en Python) ma foi très facile à utiliser

  • [^]Re: Clutter

    Posté par benoar (Jabber id, ) le 05/12/2007 à 23:37. (lien). Évalué à 2.

    J'ai tatouillé un peu Clutter et ça a l'air pas mal.

    Pour les widgets, moi je pensais plutôt à une interface hybride, en utilisant clutter-gtk : une GUI GTK avec des parties en clutter pour les effets "blink".

    Je précise ça car moi aussi j'aimerais bien bidouiller en peu les interfaces utilisateurs tactiles. Je commence à bidouiller un petit prog en python/clutter/gtk pour faire une sorte de "studio d'essai" des possibilités de clutter. Et j'espère avoir bientôt un N800 pour faire mumuse dessus avec...

    Sinon, ploum, tu veux pas essayer avec ton N770 ? Ou alors tu l'as déjà offert à ta boulangère ?

    • [^]Re: Clutter

      Posté par ploum (page perso, ) le 06/12/2007 à 07:55. (lien). Évalué à 2.

      L'écran du 770 est trop petit et le hardware trop limité pour une démo qui pète vraiment. C'est mon patron qui paye donc autant y aller franco :-)

      • [^]Re: Clutter

        Posté par benoar (Jabber id, ) le 06/12/2007 à 15:25. (lien). Évalué à 2.

        Si t'as de l'argent et que tu veux un truc plus grand, peut-être aller voir du côté des joujoux de JazzMutant ? http://www.jazzmutant.com/
        Bon, après faut voir si ce truc est hackable. Mais vu comme c'est pour un public restreint, ya des chances qu'ils ne l'aient pas blindé niveau protection ....

        Bon, si c'est pour un truc professionnel, ton patron risque de ne pas trop aimer cette méthode ...

Revenir en haut de page