From: Bertrand M. <bma...@us...> - 2004-04-15 07:52:06
|
Update of /cvsroot/fudaa/fudaa_devel/fudaa/src/org/fudaa/fudaa/refonde In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15910 Modified Files: RefondeProjet.java Log Message: Intégration du calcul des seiches dans Fudaa-Refonde : Ajout d'une méthode de transtypage du modèle de données MODELE_HOULE <-> MODELE_SEICHE. Index: RefondeProjet.java =================================================================== RCS file: /cvsroot/fudaa/fudaa_devel/fudaa/src/org/fudaa/fudaa/refonde/RefondeProjet.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** RefondeProjet.java 25 Nov 2003 10:14:17 -0000 1.4 --- RefondeProjet.java 15 Apr 2004 07:51:55 -0000 1.5 *************** *** 27,31 **** private File fcResultats_; private File fcMEP_; ! // private boolean existeMaillage; private RefondeGeometrie geometrie_; private RefondeMaillage maillage_; --- 27,31 ---- private File fcResultats_; private File fcMEP_; ! // private boolean existeMaillage; private RefondeGeometrie geometrie_; private RefondeMaillage maillage_; *************** *** 37,58 **** /** Auditeurs d'événement message. */ private HashSet messageListeners_= new HashSet(); ! // private RefondeProjet() { ! // fcGeometrie_=null; ! // modifie=false; ! // } /** * Création d'un projet à partir d'une géométrie au format Vag. * @param _projet Nom du projet. La géométrie est contenue dans les fichiers * _projet.10 et _projet.12 * @exception FileNotFoundException Un fichier de géométrie n'est pas trouvé */ ! // public static RefondeProjet nouveau(File _projet) throws IOException { ! public void nouveau(File _projet) throws IOException { ! // RefondeProjet prj=new RefondeProjet(); RefondeProjet prj= this; String ext; String fcName; RefondeGeometrie geo; ! // File fcGeo; if (_projet.getName().endsWith(".10")) ext= ".10"; --- 37,59 ---- /** Auditeurs d'événement message. */ private HashSet messageListeners_= new HashSet(); ! // private RefondeProjet() { ! // fcGeometrie_=null; ! // modifie=false; ! // } /** * Création d'un projet à partir d'une géométrie au format Vag. * @param _projet Nom du projet. La géométrie est contenue dans les fichiers * _projet.10 et _projet.12 + * @param _tpModele Le type de modèle (HOULE ou SEICHE). * @exception FileNotFoundException Un fichier de géométrie n'est pas trouvé */ ! // public static RefondeProjet nouveau(File _projet) throws IOException { ! public void nouveau(File _projet, int _tpModele) throws IOException { ! // RefondeProjet prj=new RefondeProjet(); RefondeProjet prj= this; String ext; String fcName; RefondeGeometrie geo; ! // File fcGeo; if (_projet.getName().endsWith(".10")) ext= ".10"; *************** *** 63,67 **** fcName= _projet.getPath().substring(0, _projet.getPath().lastIndexOf(ext)); prj.fireMessageEvent(new MessageEvent(prj, null, 20)); ! // RefondeImplementation.statusBar.setProgression(20); // Lecture/Création de la géométrie depuis les fichiers Vag prj.fcGeometrie_= new File(fcName + ".geo"); --- 64,69 ---- fcName= _projet.getPath().substring(0, _projet.getPath().lastIndexOf(ext)); prj.fireMessageEvent(new MessageEvent(prj, null, 20)); ! // RefondeImplementation.statusBar.setProgression(20); ! // Lecture/Création de la géométrie depuis les fichiers Vag prj.fcGeometrie_= new File(fcName + ".geo"); *************** *** 69,99 **** prj.geometrie_= geo; prj.fireMessageEvent(new MessageEvent(prj, null, 50)); ! // RefondeImplementation.statusBar.setProgression(50); // Maillage prj.fcMaillage_= new File(fcName + ".mai"); prj.maillage_= RefondeMaillage.defaut(prj); prj.fireMessageEvent(new MessageEvent(prj, null, 60)); ! // RefondeImplementation.statusBar.setProgression(60); // Modèle de propriétés prj.fcModele_= new File(fcName + ".prp"); prj.modele_= RefondeModeleProprietes.defaut(prj); prj.fireMessageEvent(new MessageEvent(prj, null, 70)); ! // RefondeImplementation.statusBar.setProgression(70); // Modèle de calcul prj.fcCalcul_= new File(fcName + ".cal"); prj.calcul_= RefondeModeleCalcul.defaut(prj); prj.fireMessageEvent(new MessageEvent(prj, null, 80)); ! // RefondeImplementation.statusBar.setProgression(80); // Résultats prj.fcResultats_= new File(fcName + ".sol"); prj.resultats_= null; // Mise en page prj.fcMEP_= new File(fcName + ".mep"); prj.mep_= RefondeMiseEnPage.defaut(prj); // Objet en retour prj.modifie= true; prj.fcProjet_= new File(fcName + ".prf"); ! // return prj; } /** * Ouverture d'un projet. Les fichiers associés sont aussi ouverts --- 71,109 ---- prj.geometrie_= geo; prj.fireMessageEvent(new MessageEvent(prj, null, 50)); ! // RefondeImplementation.statusBar.setProgression(50); ! // Maillage prj.fcMaillage_= new File(fcName + ".mai"); prj.maillage_= RefondeMaillage.defaut(prj); prj.fireMessageEvent(new MessageEvent(prj, null, 60)); ! // RefondeImplementation.statusBar.setProgression(60); ! // Modèle de propriétés prj.fcModele_= new File(fcName + ".prp"); prj.modele_= RefondeModeleProprietes.defaut(prj); prj.fireMessageEvent(new MessageEvent(prj, null, 70)); ! // RefondeImplementation.statusBar.setProgression(70); ! // Modèle de calcul prj.fcCalcul_= new File(fcName + ".cal"); prj.calcul_= RefondeModeleCalcul.defaut(prj); + prj.calcul_.typeModele(_tpModele); prj.fireMessageEvent(new MessageEvent(prj, null, 80)); ! // RefondeImplementation.statusBar.setProgression(80); ! // Résultats prj.fcResultats_= new File(fcName + ".sol"); prj.resultats_= null; + // Mise en page prj.fcMEP_= new File(fcName + ".mep"); prj.mep_= RefondeMiseEnPage.defaut(prj); + // Objet en retour prj.modifie= true; prj.fcProjet_= new File(fcName + ".prf"); ! // return prj; } + /** * Ouverture d'un projet. Les fichiers associés sont aussi ouverts *************** *** 582,584 **** --- 592,612 ---- } } + + /** + * Change la structure du projet en fonction du modèle de données. + * @param _typeModele Le type du modele de données + * (RefondeModeleCalcul.MODELE_SEICHE, + * RefondeModeleCalcul.MODELE_HOULE) + */ + public void transmute(int _typeModele) { + // Aucun changement si le modèle de données est le même + if (_typeModele==this.calcul_.typeModele()) return; + + modifie=true; + + this.modele_.transmute(_typeModele,this); + this.calcul_.typeModele(_typeModele); + this.calcul_.calculAngles(this); + this.resultats_=null; + } } |