Bonjour,
Je profite des vacances pour reprendre un "vieux projet" de simulation de milieu de culture de cellules.
Mon programme est *presque* fini : reste à régler quelques problèmes et à nettoyer un peu le code mais globalement ça devrait aller.
En revanche, voici le type de mes objets :
Du coup le problème c'est que pour lancer une simulation dans un milieu comportant initialement 5 types de cellules et prenant en compte l'influence de 6 composés, ça fait 30 composés (* au plus *) et 5 cellules à taper à la main - sans compter la liste associative qui à un indice associe la cellule correspondante...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 type compose = { nom : string; vital : bool; lim : (float * float); prel : float; conso : float; mutable res : float } ;; type cellule = { ind : int; coul : int; mut : int; mob : (int * (float array)); moved : bool; mit : (int * ((float * float) array)) ; comp : compose array } ;;
Je voudrais donc faire une interface graphique (toute simple) pour faciliter tout ça. J'ai décidé de tenter le coup en LablGTK parce que j'ai l'impression que ça permet de faire des choses plus jolies que CamlTk...
Le problème c'est que je n'ai aucune idée de comment m'y prendre. Je voudrais donc savoir si vous auriez un peu de doc que je pourrais potasser avant de tenter un truc et de revenir ici en courant au premier problème "insurmontable" rencontré. J'ai déjà lu les billets sur LablGTK du le blog de Cacophrène (qui sont super d'ailleurs !), mais mon cas est désespéré et je pense qu'il me faudrait peut-être un cours de GTK grand débutant...
Concrètement, je voudrais qu'au démarrage du programme une fenêtre s'ouvre et propose deux options : 'charger une simulation' ou 'nouvelle simulation'. 'Nouvelle simulation' ouvrirait ensuite une fenêtre comportant divers champs à remplir pour créer les cellules. Une fois tout rempli, on peut choisir d'enregistrer la simulation et/ou de la lancer.
Seulement je ne sais pas trop quel type de structure de données utiliser pour stocker les informations au cours de la construction. J'ai lu le passage du manuel d'Ocaml sur le marshaling mais c'est pas très détaillé pour un débutant...
Bref, pour l'instant j'ai surtout besoin de conseils sur la direction à prendre. Ensuite, je galèrerait pour faire en sorte que ça marche...
Merci d'avance !
Partager