|
From: <de...@us...> - 2012-12-06 09:53:02
|
Revision: 8105
http://fudaa.svn.sourceforge.net/fudaa/?rev=8105&view=rev
Author: deniger
Date: 2012-12-06 09:52:53 +0000 (Thu, 06 Dec 2012)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/conv/ConvMasc_H1D.java
trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierBief.java
trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierReseau.java
Modified: trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/conv/ConvMasc_H1D.java
===================================================================
--- trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/conv/ConvMasc_H1D.java 2012-12-06 09:44:19 UTC (rev 8104)
+++ trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/conv/ConvMasc_H1D.java 2012-12-06 09:52:53 UTC (rev 8105)
@@ -1406,13 +1406,17 @@
objBiefs[i].extrAmont().numero(_params.branches.numExtremDebut[i]);
objBiefs[i].extrAval().numero(_params.branches.numExtremFin[i]);
}
- _obj.reseau().biefs(objBiefs);
+ //FRED: correction d'un bug bizarre \xE0 l'ouverture: les indices des extremites sont chang\xE9s sans raison
+ //cette ligne:
+ // _obj.reseau().biefs(objBiefs);
+ //est remplac\xE9e par:
+ _obj.reseau().biefsNoExtremiteChange(objBiefs);
// Mapping numero -> extremite de bief
HashMap hnum2Extr = new HashMap();
for (int i = 0; i < objBiefs.length; i++) {
- hnum2Extr.put(new Integer(objBiefs[i].extrAmont().numero()), objBiefs[i].extrAmont());
- hnum2Extr.put(new Integer(objBiefs[i].extrAval().numero()), objBiefs[i].extrAval());
+ hnum2Extr.put(Integer.valueOf(objBiefs[i].extrAmont().numero()), objBiefs[i].extrAmont());
+ hnum2Extr.put(Integer.valueOf(objBiefs[i].extrAval().numero()), objBiefs[i].extrAval());
}
// Noeud connect\xE9s
@@ -1424,9 +1428,9 @@
break;
}
- MetierExtremite objExtr = (MetierExtremite) hnum2Extr.get(new Integer(num));
+ MetierExtremite objExtr = (MetierExtremite) hnum2Extr.get(Integer.valueOf(num));
+ objNoeudConnecte.ajouteExtremite(objExtr);
//TODO FRED peut \xEAtre null ici !
- objNoeudConnecte.ajouteExtremite(objExtr);
objExtr.noeudRattache(objNoeudConnecte);
}
}
Modified: trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierBief.java
===================================================================
--- trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierBief.java 2012-12-06 09:44:19 UTC (rev 8104)
+++ trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierBief.java 2012-12-06 09:52:53 UTC (rev 8105)
@@ -152,6 +152,20 @@
public int indice() {
return indice_;
}
+
+ /**
+ * met \xE0 jour l'indice du bief ( si n\xE9cessaire) mais ne change pas les numeros des extremit\xE9s
+ * @param s
+ */
+ public void indiceNoExtremiteChange(int s) {
+ if (indice_==s) return;
+ indice_= s;
+ Notifieur.getNotifieur().fireObjetModifie(toString(), this, "indice");
+ }
+ /**
+ * met \xE0 jour l'indice du bief ( si n\xE9cessaire) ET change les numeros des extremit\xE9s
+ * @param s
+ */
public void indice(int s) {
if (indice_==s) return;
indice_= s;
Modified: trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierReseau.java
===================================================================
--- trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierReseau.java 2012-12-06 09:44:19 UTC (rev 8104)
+++ trunk/soft/fudaa-mascaret/server/src/main/java/org/fudaa/dodico/hydraulique1d/metier/MetierReseau.java 2012-12-06 09:52:53 UTC (rev 8105)
@@ -98,13 +98,29 @@
public MetierBief[] biefs() {
return biefs_;
}
- public void biefs(MetierBief[] s) {
+ /**
+ * A utiliser pour des cr\xE9ations, initialisation des biefs.
+ * @param s
+ */
+ private void biefs(MetierBief[] s) {
if (egale(biefs_, s)) return;
biefs_= s;
+ //les indices changent ici
trieBiefs();
+ //attention cela renumerote les biefs et notamment les extremit\xE9s !
initIndiceBief();
Notifieur.getNotifieur().fireObjetModifie(toString(), this, "biefs");
}
+
+ public void biefsNoExtremiteChange(MetierBief[] s) {
+ if (egale(biefs_, s)) return;
+ biefs_= s;
+ //les indices changent ici
+ trieBiefs();
+ //attention cela renumerote les biefs et notamment les extremit\xE9s !
+ initIndiceBiefNoExtremiteChange();
+ Notifieur.getNotifieur().fireObjetModifie(toString(), this, "biefs");
+ }
private MetierCasier[] casiers_;
public MetierCasier[] casiers() {
return casiers_;
@@ -253,6 +269,25 @@
}
}
+ /**
+ * met \xE0 jour les indices des biefs sans mettre \xE0 jour les numero des extremit\xE9s.
+ */
+ public void initIndiceBiefNoExtremiteChange() {
+ int numeroProfil=1;
+ for (int i= 0; i < biefs_.length; i++) {
+ MetierBief b = biefs_[i];
+ b.indiceNoExtremiteChange(i);
+ MetierProfil[] profs = b.profils();
+ if(profs != null) {
+ for (int j = 0; j < profs.length; j++) {
+ MetierProfil p = profs[j];
+ p.numero(numeroProfil);
+ numeroProfil++;
+ }
+ }
+ }
+
+ }
public void initNumeroCasier() {
for (int i= 0; i < casiers_.length; i++) {
casiers_[i].numero(i + 1);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|