Bonjour à tous !
J'ai un projet scolaire qui consiste à developper une interface pour un calculateur (giac en l'occurence). L'interface à proprement parlé sera réalisée avec Qt et un widget mathml. Mais bon, mathml est une plaie, je pense donc manipuler des formules écrites en latex et c'est là que mes ennuis commencent
En effet, même si au niveau de la transformation latex->mathml je n'ai rien à faire puisque j'utilise blatex j'ai deux problèmes plus ou moins interconnectés.
1) Pour rentrer mes formules latex, je les tape actuellement au clavier comme n'importe quel texte. Mais sur la version finale, chaque "élément latex" sera rentré par un bouton dédié : cad qu'on rentrera en bloc des choses comme \sqrt{} ou encore \frac{}{}. Pour naviguer facilement entre les formules, j'ai pensé à deux systèmes :
a)Le premier consiste à se balader de caractère '{' en caractère '{'
b) Le second consite à construire un arbre reprensant la formule latex où
* chaque noeud est un opérateur (+,-,*,\frac,\sqrt,\int,\lim....) avec à chaque fois le nombre de fils qui va bien (1,2 et quelques éventuels options),
* une feuille représente une variable et ensuite de balader de noeud en noeud.
En résumé : Le premier système à l'avantage d'être très simple à coder. Le second est beaucoup plus modulable (rien que pour la suppresion d'éléments) et pourrait répondre aussi en partie à la question ci dessous. Néanmoins, je n'ai AUCUNE idée de comment créer en live un tel arbre.
2) Les commandes latex ont toutes une forme "giac" et je dois effectuer la transformation pour les calculs. Par exemple : \int_{a}^{b} f(x)dx va s'écrire avec giac : integrate(f,,x,a,b). J'ai donc besoin d'établir certaines règles de "transformation". Et là pareil, la seule idée que j'ai eu correspond à un parcours réccursif de l'arbre où chaque noeud va appliquer sa propre transformation et appeler celle de ses enfants.
Que pensez vous de mes choix ?
Un lien/tuto/what ever pour construire un tel arbre ? Merci beaucoup !
Partager