BASTIAT Benoît BOREL Nicolas MENGUAL-MONTANER Audrey MONON Nadège DESS IM Plate forme Java pour la manipulation d’objets géométriques ( sujet n°5 ) Présentation du sujet Premièrement nous pouvons dire que nous allons nous limiter au 2D. Les différents points que nous allons devoir réaliser au cours de notre projet sont : • Définir des objets de base (point, segment, polynôme, etc…) • Définir des méthodes mathématiques qui s’appliqueront aux objets de base ( interpolation polynomial, …) • Pouvoir utiliser ce programme dans une applet et l’inclure dans une page web. • Permettre une extension de notre travail, pour cela définir une architecture modulaire. Spécification du projet Liste des méthodes mathématiques • • • • • • Enveloppe convexe Interpolation Approximation Triangulation Courbe de Bézier Régression linéaire Liste des objets graphiques utilisés ( Briques de base ) • • • • • • • • • Point Segment Nuage Nuage de point Polygone Triangle Cercle Expression mathématique (polynôme). Regroupement de plusieurs objets de type différent. Liste de classes possibles o Objet graphique : classe abstraite englobant tous les objets graphiques que l’on va utiliser pour qu’ils aient tous une classe commune. o Classe graphique : une classe par objet graphique. o Moteur graphique : classe où sont décrites les différentes méthodes, permet d’utiliser les différentes interfaces graphiques de Java (swing, awt, beans, etc…) . o Classe structure de données mathématiques : classe définissant la structure de donnée utilisée par les différentes méthodes et les différents objets graphiques pour leurs échanges de données. o Méthode mathématique : classe abstraite définissant le moule des différentes méthodes utilisées. o Classe mathématique : une classe par méthode mathématique. Détails des classes déjà définies Classe objet graphique : Classe abstraite définissant les fonctions et variables de base propres à chaque objet graphique. Méthodes : • afficher () • saisir () • supprimer () • copier () • rotation (centre, angle) • translation (vecteur) • homothétie / zoom Variables : • liste constituant fils • liste père Classe moteur graphique : Classe définissant les interactions entre l’utilisateur et le programme, ainsi que l’affichage graphique. Méthodes : • trace_point() • trace_ligne() • selection_affichage( entier ) Variable : • entier type_affichage Schéma de l’architecture Interface Objet graphique Polygone Moteur graphique Structure de données Interpolation Objet mathématique A B A utilise des méthodes de B A B A hérite de B A B A utilise les types de B Classe Interface