Update UML + Update Comments

This commit is contained in:
2026-04-29 10:07:05 +02:00
parent 9c006f94fb
commit 577a8652ec
15 changed files with 290 additions and 24 deletions

View File

@@ -4,11 +4,20 @@ import ecoparasite.svg.Coordonnees;
import java.util.Locale;
/**
* Element Cercle SVG.
*/
public class Circle extends Element {
private int rayon;
private String color;
/**
* Constructeur.
* @param coordonnees
* @param rayon
* @param color - Couleur provenant de ElementsFactory.
*/
public Circle(Coordonnees coordonnees, int rayon, String color) {
super(coordonnees);
this.rayon = rayon;
@@ -37,6 +46,10 @@ public class Circle extends Element {
this.color = color;
}
/**
* Crée la string SVG.
* @return La string SVG.
*/
@Override
public String toSVG() {
StringBuilder svg = new StringBuilder();

View File

@@ -2,10 +2,18 @@ package ecoparasite.svg.elements;
import ecoparasite.svg.Coordonnees;
/**
* Classe abstraite qui permet de définir des éléments SVG.
*/
abstract public class Element {
protected Coordonnees coordonnees;
/**
* Constructeur par défaut.
* Inscrit juste les coordonnées.
* @param coordonnees Les coordonnées.
*/
public Element(Coordonnees coordonnees) {
this.coordonnees = coordonnees;
}
@@ -24,7 +32,7 @@ abstract public class Element {
/**
* Méthode abstraite qui va permettre de transformer notre élément en SVG.
* @return La String SVF
* @return La String SVG
*/
abstract public String toSVG();

View File

@@ -5,13 +5,29 @@ import ecoparasite.svg.Coordonnees;
import java.util.ArrayList;
import java.util.HashSet;
/**
* Contient divers éléments utiles pour les fichiers SVG.
*/
public class ElementsFactory {
/**
* Taille du fichier SVG.
* SVG_SIZE * SVG_SIZE
*/
final public static int SVG_SIZE = 800;
/**
* Le décalage de cadre du fichier SVG.
*/
final public static int SVG_OFFSET = 50;
/**
* La taille du texte pour les axes.
*/
final public static int AXES_TEXT_SIZE = 10;
// Définition de couleurs.
final public static String COLOR_WHITE = "white";
final public static String COLOR_RED = "red";
final public static String COLOR_BLUE = "blue";

View File

@@ -4,12 +4,22 @@ import ecoparasite.svg.Coordonnees;
import java.util.Locale;
/**
* Permet de construire une droite/ligne en SVG.
*/
public class Line extends Element {
private Coordonnees coordonneesB;
private String color;
private int lineWidth;
/**
* Constructeur
* @param coordonneesA Coordonnées de départ
* @param coordonneesB Coordonnées d'arrivé.
* @param color Couleur provenant de ElementsFactory
* @param lineWidth Epaisseur de la ligne.
*/
public Line(Coordonnees coordonneesA, Coordonnees coordonneesB, String color, int lineWidth) {
super(coordonneesA);
this.coordonneesB = coordonneesB;
@@ -56,6 +66,10 @@ public class Line extends Element {
this.lineWidth = lineWidth;
}
/**
* Génère la string SVG de l'élément.
* @return
*/
@Override
public String toSVG() {
StringBuilder svg = new StringBuilder();

View File

@@ -4,12 +4,22 @@ import ecoparasite.svg.Coordonnees;
import java.util.Locale;
/**
* Élement qui permet de générer un texte sur le SVG.
*/
public class Text extends Element {
private String text;
private String color;
private int size;
/**
* Constructeur
* @param coordonnees Les coordonnées du texte
* @param text
* @param color Provenant de ElementsFactory
* @param size La taille du texte
*/
public Text(Coordonnees coordonnees, String text, String color, int size) {
super(coordonnees);
this.text = text;
@@ -48,6 +58,10 @@ public class Text extends Element {
this.size = size;
}
/**
* Génère la string SVG.
* @return
*/
@Override
public String toSVG() {
StringBuilder svg = new StringBuilder();