|
From: <bma...@us...> - 2011-04-13 15:48:58
|
Revision: 6212
http://fudaa.svn.sourceforge.net/fudaa/?rev=6212&view=rev
Author: bmarchan
Date: 2011-04-13 15:48:46 +0000 (Wed, 13 Apr 2011)
Log Message:
-----------
Mascaret : Lecture/restitution des limites de lit (stockage + rives)
Modified Paths:
--------------
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOReader.java
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOWriter.java
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretProfilAbstractRepresentation.java
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStCnFileFormat.java
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStReader.java
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStWriter.java
trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderMascaret.java
Added Paths:
-----------
trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretBief.java
Added: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretBief.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretBief.java (rev 0)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretBief.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -0,0 +1,179 @@
+package org.fudaa.dodico.mascaret.io;
+
+import com.vividsolutions.jts.geom.CoordinateSequence;
+import com.vividsolutions.jts.geom.impl.CoordinateArraySequence;
+import java.util.ArrayList;
+import java.util.List;
+import org.fudaa.ctulu.CtuluAnalyze;
+import org.fudaa.ctulu.ProgressionInterface;
+import org.fudaa.ctulu.gis.GISAttributeConstants;
+import org.fudaa.ctulu.gis.GISAttributeInterface;
+import org.fudaa.ctulu.gis.GISGeometryFactory;
+import org.fudaa.ctulu.gis.GISLib;
+import org.fudaa.ctulu.gis.GISPolyligne;
+import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee;
+import org.fudaa.dodico.commun.DodicoLib;
+
+/**
+ * Une repr\xE9sentation d'un bief Mascaret.
+ * @author bmarchan
+ */
+public class MascaretBief {
+
+ /** Profils ordonn\xE9es du bief */
+ List<MascaretProfilAbstractRepresentation> profils_=new ArrayList<MascaretProfilAbstractRepresentation>();
+
+ public void addProfil(MascaretProfilAbstractRepresentation _prof) {
+ profils_.add(_prof);
+ }
+
+ public int getNbProfils() {
+ return profils_.size();
+ }
+
+ public MascaretProfilAbstractRepresentation getProfil(int _i) {
+ return profils_.get(_i);
+ }
+
+ /**
+ * @param _analyze Pour suivi du traitement.
+ * @param _progress La progression de lecture.
+ * @return Les 5 zones correspondant aux traces, profils, axe, rives, stockage
+ * dans cet ordre.
+ */
+ public GISZoneCollectionLigneBrisee[] buildZones(CtuluAnalyze _analyze, ProgressionInterface _progress) {
+ if (profils_.size()==0)
+ _analyze.addError(DodicoLib.getS("Aucun profil dans le bief."));
+
+
+ GISZoneCollectionLigneBrisee traces=new GISZoneCollectionLigneBrisee();
+ traces.setAttributes(new GISAttributeInterface[]{
+ GISAttributeConstants.TITRE, GISAttributeConstants.NATURE}, null);
+
+ GISZoneCollectionLigneBrisee profs=new GISZoneCollectionLigneBrisee();
+ profs.setAttributes(new GISAttributeInterface[]{
+ GISAttributeConstants.TITRE, GISAttributeConstants.NATURE,
+ GISAttributeConstants.BATHY, GISAttributeConstants.COMMENTAIRE_HYDRO}, null);
+
+ GISZoneCollectionLigneBrisee axe=new GISZoneCollectionLigneBrisee();
+ axe.setAttributes(new GISAttributeInterface[]{
+ GISAttributeConstants.NATURE, GISAttributeConstants.CURVILIGNE_DECALAGE}, null);
+
+ // G\xE9n\xE9ration des profiles et des traces de profiles \\
+ for(int k=0;k<profils_.size();k++){
+ _progress.setProgression((int)((float)k/profils_.size()*100));
+ MascaretProfilAbstractRepresentation profil=profils_.get(k);
+ CoordinateArraySequence coordSeq=new CoordinateArraySequence(profil.coordXYTraceProfil.size());
+ // Trace profil
+ for(int i=0;i<profil.coordXYTraceProfil.size();i++){
+ coordSeq.setOrdinate(i, 0, profil.coordXYTraceProfil.get(i)[0]);
+ coordSeq.setOrdinate(i, 1, profil.coordXYTraceProfil.get(i)[1]);
+ coordSeq.setOrdinate(i, 2, 0);
+ }
+ traces.addGeometry(new GISPolyligne(coordSeq), new Object[]{profil.nomProfil, GISAttributeConstants.ATT_NATURE_TP}, null);
+
+ // Profil
+ coordSeq=new CoordinateArraySequence(profil.coordXYProfil.size());
+ Object[] z=new Object[profil.coordXYProfil.size()];
+ for(int i=0;i<profil.coordXYProfil.size();i++){
+ coordSeq.setOrdinate(i, 0, profil.coordXYProfil.get(i)[0]);
+ coordSeq.setOrdinate(i, 1, profil.coordXYProfil.get(i)[1]);
+ z[i]=profil.coordZ.get(i);
+ coordSeq.setOrdinate(i, 2, 0);
+ }
+ String comm=GISLib.setHydroCommentDouble("", profil.abscisseCurviligneAxeHydraulique, GISAttributeConstants.ATT_COMM_HYDRO_PK);
+ profs.addGeometry(new GISPolyligne(coordSeq), new Object[]{profil.nomProfil, GISAttributeConstants.ATT_NATURE_PF, z, comm}, null);
+ }
+
+ if (profils_.size()>1) {
+ // G\xE9n\xE9ration de l'axe hydraulique \\
+ CoordinateArraySequence coordSeq=new CoordinateArraySequence(profils_.size());
+ for (int i=0; i<profils_.size(); i++) {
+ coordSeq.setOrdinate(i, 0, profils_.get(i).coordIntersectionAxeHydraulique[0]);
+ coordSeq.setOrdinate(i, 1, profils_.get(i).coordIntersectionAxeHydraulique[1]);
+ coordSeq.setOrdinate(i, 2, 0);
+ }
+ axe.addGeometry(new GISPolyligne(coordSeq), new Object[]{GISAttributeConstants.ATT_NATURE_AH, profils_.get(0).abscisseCurviligneAxeHydraulique}, null);
+ }
+ else
+ _analyze.addInfo(DodicoLib.getS("Le bief ne comporte qu'un profil : Aucun axe hydraulique, aucune rive, aucune limite ne seront g\xE9n\xE9r\xE9s."));
+
+ GISZoneCollectionLigneBrisee[] zlims=buildLimites();
+ return new GISZoneCollectionLigneBrisee[]{traces,profs,axe,zlims[0],zlims[1]};
+ }
+
+ /**
+ *
+ * @return Les zones correspondant aux limites de biefs (rives + limites stockage
+ * dans cet ordre)
+ */
+ private GISZoneCollectionLigneBrisee[] buildLimites() {
+ GISZoneCollectionLigneBrisee rives=new GISZoneCollectionLigneBrisee();
+ rives.setAttributes(new GISAttributeInterface[]{
+ GISAttributeConstants.TITRE, GISAttributeConstants.NATURE}, null);
+
+ GISZoneCollectionLigneBrisee stockages=new GISZoneCollectionLigneBrisee();
+ stockages.setAttributes(new GISAttributeInterface[]{
+ GISAttributeConstants.TITRE, GISAttributeConstants.NATURE}, null);
+
+ // Les 4 lignes, dans l'ordre SG, SD, RG, RD
+ CoordinateSequence[] seqs=new CoordinateSequence[4];
+ for (int i=0; i<seqs.length; i++) {
+ seqs[i]=GISGeometryFactory.INSTANCE.getCoordinateSequenceFactory().create(profils_.size(),3);
+ }
+
+ for (int j=0; j<profils_.size(); j++) {
+ // Flag qui indique qu'on est pass\xE9 par le lit mineur
+ boolean lm=false;
+
+ Integer[] idx=new Integer[4];
+ idx[0]=0;
+ idx[1]=null;
+ idx[2]=0;
+ idx[3]=null;
+
+ for (int i=0; i<profils_.get(j).bathyOuTopoOuStockage.size(); i++) {
+ if (profils_.get(j).bathyOuTopoOuStockage.get(i)=='S') {
+ if (!lm) {
+ idx[0]=i+1;
+ idx[2]=i+1;
+ }
+ else if (idx[1]==null) {
+ idx[1]=i-1;
+ }
+ }
+ if (profils_.get(j).bathyOuTopoOuStockage.get(i)=='T') {
+ if (!lm) {
+ idx[2]=i+1;
+ }
+ else if (idx[3]==null) {
+ idx[3]=i-1;
+ }
+ }
+ if (profils_.get(j).bathyOuTopoOuStockage.get(i)=='B') {
+ lm=true;
+ }
+ }
+
+ if (idx[3]==null)
+ idx[3]=profils_.get(j).bathyOuTopoOuStockage.size()-1;
+ if (idx[1]==null)
+ idx[1]=profils_.get(j).bathyOuTopoOuStockage.size()-1;
+
+ for (int i=0; i<seqs.length; i++) {
+ seqs[i].setOrdinate(j, 0, profils_.get(j).coordXYProfil.get(idx[i])[0]);
+ seqs[i].setOrdinate(j, 1, profils_.get(j).coordXYProfil.get(idx[i])[1]);
+ seqs[i].setOrdinate(j, 2, 0);
+ }
+ }
+
+ // Les limites de stockage
+ stockages.addGeometry(new GISPolyligne(seqs[0]), new Object[]{"SG", GISAttributeConstants.ATT_NATURE_LS}, null);
+ stockages.addGeometry(new GISPolyligne(seqs[1]), new Object[]{"SD", GISAttributeConstants.ATT_NATURE_LS}, null);
+ // Les rives
+ rives.addGeometry(new GISPolyligne(seqs[2]), new Object[]{"RG", GISAttributeConstants.ATT_NATURE_RV}, null);
+ rives.addGeometry(new GISPolyligne(seqs[3]), new Object[]{"RD", GISAttributeConstants.ATT_NATURE_RV}, null);
+
+ return new GISZoneCollectionLigneBrisee[]{rives,stockages};
+ }
+}
Property changes on: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretBief.java
___________________________________________________________________
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOReader.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOReader.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOReader.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -10,23 +10,19 @@
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
import org.fudaa.ctulu.CtuluAnalyze;
import org.fudaa.ctulu.fileformat.FileReadOperationAbstract;
import org.fudaa.ctulu.fileformat.FortranInterface;
-import org.fudaa.ctulu.gis.GISAttributeConstants;
-import org.fudaa.ctulu.gis.GISAttributeInterface;
-import org.fudaa.ctulu.gis.GISPolyligne;
import org.fudaa.ctulu.gis.GISZoneCollectionLigneBrisee;
import org.fudaa.dodico.commun.DodicoLib;
-import com.vividsolutions.jts.geom.impl.CoordinateArraySequence;
/**
- * Parser du format Mascaret. (versions 6.0 et pr\xE9c\xE9dentes)
- * @author Emmanuel MARTIN
+ * Parser du format Mascaret. (versions 6.0 et pr\xE9c\xE9dentes).
+ * Lit des fichiers Mascaret g\xE9or\xE9f\xE9renc\xE9s ou non.
+ *
+ * @author Emmanuel MARTIN, mar...@de...
* @version $Id$
*/
public class MascaretGEOReader extends FileReadOperationAbstract {
@@ -44,8 +40,8 @@
/** Les caract\xE8res de 's\xE9paration' */
private char[] charSeparation_=new char[]{' ', '\t'};
private char charSeparationNewLigne_='\n';
- /** Profiles extraits */
- List<MascaretProfilAbstractRepresentation> profils_=new ArrayList<MascaretProfilAbstractRepresentation>();
+ /** Le bief */
+ MascaretBief bief=new MascaretBief();
public MascaretGEOReader() {
rawData_=null;
@@ -108,11 +104,12 @@
return token.toString().length()==0 ? null:token.toString();
}
- /* (non-Javadoc)
- * @see org.fudaa.ctulu.fileformat.FileReadOperationAbstract#internalRead()
+ /*
+ * Lit les g\xE9om\xE9tries et les retourne sous forme de 5 collections distinctes.
+ * 0: Traces, 1: Profils, 2:Axe, 3:Rives, 4:Stockage
*/
@Override
- protected Object internalRead() {
+ protected GISZoneCollectionLigneBrisee[] internalRead() {
try {
StringBuffer lineToken=nextLineToken();
if(lineToken==null)
@@ -128,7 +125,7 @@
// Extraction des informations commune \xE0 1d et 2d
profil.nomBief=nextWordToken(lineToken);
profil.nomProfil=nextWordToken(lineToken);
- profil.abscisseCurvilingeAxeHydraulique=Double.parseDouble(nextWordToken(lineToken));
+ profil.abscisseCurviligneAxeHydraulique=Double.parseDouble(nextWordToken(lineToken));
// Coordonn\xE9es de trace de profile : non pr\xE9sent dans les fichiers 1d
token=nextWordToken(lineToken);
while (token!=null&&!token.equals("AXE")) {
@@ -158,11 +155,13 @@
else if (!(profil.is2d()&&profil.check2D()))
throw new ParseError(fileName_+DodicoLib.getS(" : le fichier source comporte des erreurs."));
// Ajout du profile \xE0 la liste et traitement du profile suivant
- profils_.add(profil);
+ bief.addProfil(profil);
}
- // G\xE9n\xE9ration d'un GISZoneCollection avec les informations extraites et
+
+ // G\xE9n\xE9ration des GISZoneCollectionLigneBrisee avec les informations extraites et
// retour de celle-ci
- return generateGIS();
+ progress_.setDesc(DodicoLib.getS("Lecture de ")+fileName_);
+ return bief.buildZones(analyze_, progress_);
}
catch (ParseError _exc) {
analyze_.addFatalError(_exc.getMessage());
@@ -175,49 +174,6 @@
}
return null;
}
-
- private GISZoneCollectionLigneBrisee generateGIS(){
- progress_.setDesc(DodicoLib.getS("Lecture de ")+fileName_);
- // Cr\xE9ation de la GISZoneCollectionLigneBrisee
- GISZoneCollectionLigneBrisee zone=new GISZoneCollectionLigneBrisee();
- zone.setAttributes(new GISAttributeInterface[]{GISAttributeConstants.TITRE, GISAttributeConstants.NATURE, GISAttributeConstants.BATHY}, null);
- // G\xE9n\xE9ration des profiles et des traces de profiles \\
- for(int k=0;k<profils_.size();k++){
- progress_.setProgression((int)((float)k/profils_.size()*100));
- MascaretProfilAbstractRepresentation profil=profils_.get(k);
- CoordinateArraySequence coordSeq=new CoordinateArraySequence(profil.coordXYTraceProfil.size());
- // Trace profil
- for(int i=0;i<profil.coordXYTraceProfil.size();i++){
- coordSeq.setOrdinate(i, 0, profil.coordXYTraceProfil.get(i)[0]);
- coordSeq.setOrdinate(i, 1, profil.coordXYTraceProfil.get(i)[1]);
- coordSeq.setOrdinate(i, 2, 0);
- }
- zone.addGeometry(new GISPolyligne(coordSeq), new Object[]{profil.nomProfil, GISAttributeConstants.ATT_NATURE_TP, null}, null);
- // Profil
- coordSeq=new CoordinateArraySequence(profil.coordXYProfil.size());
- Object[] z=new Object[profil.coordXYProfil.size()];
- for(int i=0;i<profil.coordXYProfil.size();i++){
- coordSeq.setOrdinate(i, 0, profil.coordXYProfil.get(i)[0]);
- coordSeq.setOrdinate(i, 1, profil.coordXYProfil.get(i)[1]);
- coordSeq.setOrdinate(i, 2, 0);
- z[i]=profil.coordZ.get(i);
- }
- zone.addGeometry(new GISPolyligne(coordSeq), new Object[]{profil.nomProfil, GISAttributeConstants.ATT_NATURE_PF, z}, null);
- }
- if (profils_.size()>1) {
- // G\xE9n\xE9ration de l'axe hydraulique \\
- CoordinateArraySequence coordSeq=new CoordinateArraySequence(profils_.size());
- for (int i=0; i<profils_.size(); i++) {
- coordSeq.setOrdinate(i, 0, profils_.get(i).coordIntersectionAxeHydraulique[0]);
- coordSeq.setOrdinate(i, 1, profils_.get(i).coordIntersectionAxeHydraulique[1]);
- coordSeq.setOrdinate(i, 2, 0);
- }
- zone.addGeometry(new GISPolyligne(coordSeq), new Object[]{null, GISAttributeConstants.ATT_NATURE_AH, null}, null);
- }
- else
- analyze_.addInfo(fileName_+DodicoLib.getS(" : le fichier ne comporte qu'un profil, aucun axe hydraulique ne sera g\xE9n\xE9r\xE9."));
- return zone;
- }
/* (non-Javadoc)
* @see org.fudaa.ctulu.fileformat.FileOperationAbstract#getFortranInterface()
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOWriter.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOWriter.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretGEOWriter.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -38,8 +38,8 @@
/** Le flux de sorti. */
private Writer out_;
- /** Les profils \xE0 \xE9crire. */
- private MascaretProfilAbstractRepresentation[] profils_;
+ /** Le bief au format Mascaret \xE0 \xE9crire. */
+ private MascaretBief bief_;
/** Type du fichier mascaret de destination 1D ou 2D. */
private boolean is1D_=true;
@@ -87,10 +87,10 @@
throw new IllegalArgumentException("zones mustn't be null");
generateMascaretProfilAbstractRepresentations(nomBief, zones, selectorProfil);
- for (int i=0; i<profils_.length; i++) {
- MascaretProfilAbstractRepresentation profil=profils_[i];
+ for (int i=0; i<bief_.getNbProfils(); i++) {
+ MascaretProfilAbstractRepresentation profil=bief_.getProfil(i);
// Premi\xE8re ligne
- out_.write("Profil "+profil.nomBief+" "+profil.nomProfil+" "+profil.abscisseCurvilingeAxeHydraulique);
+ out_.write("Profil "+profil.nomBief+" "+profil.nomProfil+" "+profil.abscisseCurviligneAxeHydraulique);
if (is1D_)
out_.write('\n');
else {
@@ -192,7 +192,7 @@
// G\xE9n\xE9ration des MascaretProfilAbstractRepresentations \\
- profils_=new MascaretProfilAbstractRepresentation[profils.size()];
+ bief_=new MascaretBief();
int countNoName=1;
GISPolyligne axeHydraulique=(GISPolyligne)zoneAxeHydraulique.getGeometry(indexAxeHydraulique);
for (int i=0;i<profils.size();i++) {
@@ -222,9 +222,9 @@
if(idxAttrCommHydraulique==-1)
throw new MascaretDataError("L'attribut COMMENTAIRE_HYDRO doit \xEAtre pr\xE9sent.");
String comm=(String) zoneProfil.getValue(idxAttrCommHydraulique, idxProfil);
- if(!GISLib.isHydroCommentValued(comm, "PK"))
+ if(!GISLib.isHydroCommentValued(comm, GISAttributeConstants.ATT_COMM_HYDRO_PK))
throw new MascaretDataError("La propri\xE9t\xE9 PK de COMMENTAIRE_HYDRO doit \xEAtre valu\xE9e.");
- profilAbs.abscisseCurvilingeAxeHydraulique=GISLib.getHydroCommentDouble(comm, "PK");
+ profilAbs.abscisseCurviligneAxeHydraulique=GISLib.getHydroCommentDouble(comm, GISAttributeConstants.ATT_COMM_HYDRO_PK);
CoordinateSequence coordSeq=axeHydraulique.getCoordinateSequence();
// Trace profil
coordSeq=profil.getCoordinateSequence();
@@ -329,7 +329,7 @@
throw new MascaretDataError("Erreur de programmation : les donn\xE9es g\xE9n\xE9r\xE9es ne sont pas coh\xE9rentes pour le 2d.");
// Stockage avec les autres \\
- profils_[i]=profilAbs;
+ bief_.addProfil(profilAbs);
}
}
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretProfilAbstractRepresentation.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretProfilAbstractRepresentation.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/mascaret/io/MascaretProfilAbstractRepresentation.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -14,7 +14,7 @@
* Container des informations relative \xE0 un profil.
*
* @author Emmanuel MARTIN
- * @version $Id:$
+ * @version $Id$
*/
public class MascaretProfilAbstractRepresentation {
public String nomBief;
@@ -22,7 +22,7 @@
public List<Double> coordZ=new ArrayList<Double>(); // Bathy ou Topo
public List<Character> bathyOuTopoOuStockage=new ArrayList<Character>(); // B ou T ou S
// Info sp\xE9cifique 1D
- public double abscisseCurvilingeAxeHydraulique;
+ public double abscisseCurviligneAxeHydraulique;
public List<Double> coordCurviligneProfil=new ArrayList<Double>();
// Info sp\xE9cifique 2D
public List<double[]> coordXYTraceProfil=new ArrayList<double[]>();
@@ -53,7 +53,7 @@
/** @return vrai si les informations utile 1D sont compl\xE8tes et coh\xE9rentes. */
public boolean check1D(){
- boolean check=checkCommon()&&abscisseCurvilingeAxeHydraulique>=0&&coordCurviligneProfil.size()==coordZ.size();
+ boolean check=checkCommon()&&abscisseCurviligneAxeHydraulique>=0&&coordCurviligneProfil.size()==coordZ.size();
int i=0;
// Verifi que l'ordre des coordonn\xE9es est croissant.
while(check&&++i<coordCurviligneProfil.size())
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStCnFileFormat.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStCnFileFormat.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStCnFileFormat.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -24,9 +24,6 @@
* @version $Id$
*/
public class RubarStCnFileFormat extends FileFormatUnique {
-
- /** Commentaire hydro PK. Utilis\xE9 pour transporter les infos de l'import vers l'export. */
- public static final String COMM_HYDRO_PK="PK";
private RubarStCnFileFormat() {
super(1);
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStReader.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStReader.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStReader.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -95,7 +95,7 @@
if (isSt_) {
in_.readFields(fmt1Line);
name=in_.stringField(6).trim();
- pk=RubarStCnFileFormat.COMM_HYDRO_PK+"="+in_.stringField(4).trim();
+ pk=GISAttributeConstants.ATT_COMM_HYDRO_PK+"="+in_.stringField(4).trim();
}
String first = CtuluLibString.EMPTY_STRING;
String sec = CtuluLibString.EMPTY_STRING;
Modified: trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStWriter.java
===================================================================
--- trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStWriter.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/dodico-h2d/io/src/main/java/org/fudaa/dodico/rubar/io/RubarStWriter.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -114,7 +114,7 @@
name=name.substring(0,Math.min(name.length(),42));
// PK, issu du commentaire hydrualique.
if (attPk!=-1) {
- pk=GISLib.getHydroCommentDouble((String)profs_.getValue(attPk, i),RubarStCnFileFormat.COMM_HYDRO_PK);
+ pk=GISLib.getHydroCommentDouble((String)profs_.getValue(attPk, i),GISAttributeConstants.ATT_COMM_HYDRO_PK);
}
// Nombre de points => On tient compte des points dupliqu\xE9s car partag\xE9s par plusieurs lignes directrices.
int nbpt=0;
Modified: trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderMascaret.java
===================================================================
--- trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderMascaret.java 2011-04-13 15:34:07 UTC (rev 6211)
+++ trunk/business/fudaa-sig/src/main/java/org/fudaa/fudaa/sig/wizard/FSigFileLoaderMascaret.java 2011-04-13 15:48:46 UTC (rev 6212)
@@ -63,16 +63,16 @@
if(op.containsMessages()&&op.getAnalyze().containsFatalError())
return;
- GISZoneCollectionLigneBrisee lines=(GISZoneCollectionLigneBrisee)op.getSource();
- _r.nbPointTotal_+=lines.getNumPoints();
- _r.nbPolylignes_+=lines.getNumGeometries();
- // Ajout de l'attribut ETAT_GEOM
- _r.findOrCreateAttribute(GISAttributeConstants.ETAT_GEOM.getID(), String.class, false);
- GISDataModelAttributeAdapter adapter = new GISDataModelAttributeAdapter(lines);
- adapter.addAttribut(GISAttributeConstants.ETAT_GEOM, _origine);
- //
- _r.ligneModel_.add(adapter);
- _r.addUsedAttributes(GISLib.getAttributeFrom(lines));
+ GISZoneCollectionLigneBrisee[] lines=(GISZoneCollectionLigneBrisee[])op.getSource();
+ for (GISZoneCollectionLigneBrisee zl : lines) {
+ _r.nbPointTotal_+=zl.getNumPoints();
+ _r.nbPolylignes_+=zl.getNumGeometries();
+ // Ajout de l'attribut ETAT_GEOM
+ _r.findOrCreateAttribute(GISAttributeConstants.ETAT_GEOM.getID(), String.class, false);
+ GISDataModelAttributeAdapter adapter = new GISDataModelAttributeAdapter(zl);
+ adapter.addAttribut(GISAttributeConstants.ETAT_GEOM, _origine);
+ _r.ligneModel_.add(adapter);
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|