ligne et modif bouton niveaux

This commit is contained in:
2026-02-23 09:17:36 +01:00
parent bbb26bcb3d
commit 5a974ce7ac
2 changed files with 81 additions and 25 deletions

View File

@@ -16,6 +16,9 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
// nb de Segments qui composent la ligne
protected int nbSegments = 400;
// amplitude maximale de l'inclinaison verticale des segments (dy)
protected double inclinaisonMax = 30.0;
// position du cercle, pour déterminer quel est le segment courant
protected double xCercle = 400; // à modifier
@@ -49,7 +52,8 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
for (int i=0; i<nbSegments; i++){
// définition d'un nouveau segment
dx = (Math.random()*20)+80;
dy = (Math.random()*60)-30;
// dy aléatoire dans [-inclinaisonMax, +inclinaisonMax]
dy = (Math.random() * (2.0 * inclinaisonMax)) - inclinaisonMax;
if (y + dy < 0 || y + dy > 600) {
dy = -dy;
@@ -64,6 +68,19 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
}
}
/**
* Définit l'amplitude maximale d'inclinaison (valeur positive).
* Les segments auront un dy dans [-inclinaisonMax, +inclinaisonMax].
*/
public void setInclinaisonMax(double valeur) {
if (valeur < 0) valeur = -valeur;
this.inclinaisonMax = valeur;
}
public double getInclinaisonMax() {
return this.inclinaisonMax;
}
//-------------------------------------------------------------------------