Bonjour,
Je ne suis pas un développeur professionnel. En fait je fais des études de médecine, mais j'ai toujours aimé le développement de programmes. Je fais surtout du web, en html/php/mysql/js etc... et du flash.
Dans le cadre de mes études, je réalise pour mon mémoire de master une petite applic qui permet de faire défiler des images d'IRM et de détailler certaines zones de ces images. Les IRMs (pour ceux qui ne connaissent pas) sont des coupes du corps (comme un scanner). Ils affichent donc des zones de différentes couleurs. Par exemple, les poumons sont gris, la graisse blanche, les vaisseaux sanguins encore plus blanc etc...
Je voudrais que mon applic permette de dessiner des zones sur ces images et d'écrire une description de la zone. Les zones sont bien entendu aussi variées que nombreuses et donc, je passe par la réalisation d'un petit éditeur qui me permet de "déssiner" les zones au clic en posant des points qui seront reliés par des droites... L'éditeur est accessible aux administrateurs! Chaque zone est donc en fait un polygone, dont le périmètre est déterminé par un tracé (selon mes termes).
L'applic est destinée en html/php/javascript avec un brin de connexion asynchrone et peut être l'utilisation de socket php... (pour le contexte).
Je suis en phase de conception et dans la modélisation de mes classes, je me trouve face à un problème plutôt d'ordre mathématique (snif) et sachant que les maths sont indispensables à de bons programmeurs, je me tente ici! J'ai déjà posé la question sur quelques forums de développement web et sur des forums de mathématiques. Les développeurs qui m'ont répondu ont donné leur langue au chat et les matheux m'ont donné des réponses théorique très obscures pour moi!
Peut-être que vos lumière seront plus utiles!
Le problème:
J'ai une série de coordonnée x;y que je stock dans une table et indexées à une entité que j'appelle "tracés". Les coordonnées sont de type A(x_a;y_a), B(x_b;y_b), C(x_c;y_c) et se succèdent de sorte à représenter les sommets d'un polygone. Ce polygone est mon tracé. Il peut contenir autant de sommets que désiré de sorte à produire des zones aussi grandes/complexes que voulu.
Je n'ai pas de problème pour dessiner les zones. En fait, je stock les coordonnées de chaque sommet dans ma table, en récupérant les évènement onmousedown en javascript, puis en les envoyant à un script php qui discute avec une base mysql.
Lors de l'exécution du programme avec les privilèges d'utilisateur simple, l'utilisateur peut cliquer quelque part sur la page, ce qui produit une nouvelle coordonnée x;y que j'appelerai CLIC(x_clic;y_clic). Je veut pouvoir vérifier si cette nouvelle coordonnée se trouve à l'intérieur ou à l'extérieur d'un tracé donné, que je récupère de ma table.
Il faut savoir que les droites qui composent mon tracé ne peuvent pas se croiser (comme ça je ne m'embête pas à savoir quoi faire si une partie d'un tracé recouvre une autre partie de ce même tracé).
voilà! Problème qui me harcèle depuis quelques jours (je précise) et plusieurs tentatives déjà, mais aucune satisfaisante!
Je ne sais pas si ce petit jeu peut peutêtre amuser vos neurones, et soulager les miens!
Merci en tout cas d'avoir lu et encore plus pour les réponses!
A+ fred
Partager