|
From: <chr...@us...> - 2009-11-04 14:47:44
|
Revision: 5468
http://fudaa.svn.sourceforge.net/fudaa/?rev=5468&view=rev
Author: chrisc83
Date: 2009-11-04 14:47:36 +0000 (Wed, 04 Nov 2009)
Log Message:
-----------
OPEN - issue PREPRO-55: G?\195?\169rer les fichiers TriGrid
http://www.fudaa.fr/jira/browse/PREPRO-55
Modified Paths:
--------------
trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/EfGridSource.java
trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceDefaut.java
trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceMutable.java
trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourcesAbstract.java
trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinAdapter.java
trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinGridSourceAdapter.java
trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinMaillageBuilderAdapter.java
trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/trigrid/TrigridReader.java
trunk/business/fudaa-ef/io/src/test/java/org/fudaa/dodico/ef/io/trigrid/TestJTrigrid.java
Removed Paths:
-------------
trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/GridReadResult.java
Modified: trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/EfGridSource.java
===================================================================
--- trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/EfGridSource.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/EfGridSource.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -67,4 +67,5 @@
*/
double getValue(int _valueIdx,int _timeStep,int _ptIdx) throws IOException;
+ int[] getBoundaryConditions();
}
\ No newline at end of file
Modified: trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceDefaut.java
===================================================================
--- trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceDefaut.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceDefaut.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -25,10 +25,15 @@
* @param _f le format
*/
public EfGridSourceDefaut(final EfGridInterface _g, final FileFormat _f) {
- g_ = _g;
- f_ = _f;
+ this(_g, _f, new int[0]);
}
+ public EfGridSourceDefaut(final EfGridInterface _g, final FileFormat _f, int[] _b) {
+ g_ = _g;
+ f_ = _f;
+ boundaryConditions = _b;
+ }
+
/**
*
*/
Modified: trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceMutable.java
===================================================================
--- trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceMutable.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourceMutable.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -24,7 +24,8 @@
double[] timesStep_;
double[][] values_;
double[][] valuesElt_;
-
+ int[] boundaryConditions;
+
public EfGridSourceMutable() {}
public boolean isElement(final int _idx) {
@@ -137,4 +138,11 @@
}
+ public int[] getBoundaryConditions() {
+ return boundaryConditions;
+ }
+
+ public void setBoundaryConditions(int[] boundaryConditions) {
+ this.boundaryConditions = boundaryConditions;
+ }
}
\ No newline at end of file
Modified: trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourcesAbstract.java
===================================================================
--- trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourcesAbstract.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/core/src/main/java/org/fudaa/dodico/ef/impl/EfGridSourcesAbstract.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -13,6 +13,17 @@
*/
public abstract class EfGridSourcesAbstract implements EfGridSource {
+ int[] boundaryConditions;
+
+
+ public int[] getBoundaryConditions() {
+ return boundaryConditions;
+ }
+
+ public void setBoundaryConditions(int[] boundaryConditions) {
+ this.boundaryConditions = boundaryConditions;
+ }
+
public boolean containsNodeData(){
return false;
}
Deleted: trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/GridReadResult.java
===================================================================
--- trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/GridReadResult.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/GridReadResult.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -1,53 +0,0 @@
-package org.fudaa.dodico.ef.io;
-
-import org.fudaa.dodico.ef.impl.EfGridSourceDefaut;
-
-public class GridReadResult
-{
- EfGridSourceDefaut gridSrc;
- int[] boundaryConditions;
- String title;
-
- public GridReadResult()
- {
- this(null, null, null);
- }
-
- public GridReadResult(EfGridSourceDefaut gridSrc, int[] boundaryConditions, String title)
- {
- super();
- this.gridSrc = gridSrc;
- this.boundaryConditions = boundaryConditions;
- this.title = title;
- }
-
- public EfGridSourceDefaut getGridSrc()
- {
- return gridSrc;
- }
-
- public void setGridSrc(EfGridSourceDefaut gridSrc)
- {
- this.gridSrc = gridSrc;
- }
-
- public int[] getBoundaryConditions()
- {
- return boundaryConditions;
- }
-
- public void setBoundaryConditions(int[] boundaryConditions)
- {
- this.boundaryConditions = boundaryConditions;
- }
-
- public String getTitle()
- {
- return title;
- }
-
- public void setTitle(String title)
- {
- this.title = title;
- }
-}
Modified: trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinAdapter.java
===================================================================
--- trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinAdapter.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinAdapter.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -26,8 +26,20 @@
* @author Fred Deniger
*/
public class SerafinAdapter implements SerafinInterface {
+ int[] boundaryConditions;
- /**
+
+ public int[] getBoundaryConditions()
+ {
+ return boundaryConditions;
+ }
+
+ public void setBoundaryConditions(int[] boundaryConditions)
+ {
+ this.boundaryConditions = boundaryConditions;
+ }
+
+/**
* @return the isVolumique
*/
public boolean isVolumique() {
Modified: trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinGridSourceAdapter.java
===================================================================
--- trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinGridSourceAdapter.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinGridSourceAdapter.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -27,6 +27,7 @@
int[] iparam_;
EfGridSource source_;
String titre_;
+ int[] boundaryConditions;
/**
* @param _s la source
@@ -205,4 +206,14 @@
ft_.unsetDateDefini(iparam_);
}
+ public int[] getBoundaryConditions()
+ {
+ return boundaryConditions;
+ }
+
+ public void setBoundaryConditions(int[] boundaryConditions)
+ {
+ this.boundaryConditions = boundaryConditions;
+ }
+
}
\ No newline at end of file
Modified: trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinMaillageBuilderAdapter.java
===================================================================
--- trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinMaillageBuilderAdapter.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/serafin/SerafinMaillageBuilderAdapter.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -19,6 +19,7 @@
double firstTimeStep_;
CtuluCollectionDouble[] values_;
+ int[] boundaryConditions;
/**
* Par defaut le format colonne est choisi.
@@ -87,4 +88,13 @@
isVolumique_ = _values != null && _values[0] != null && _values[0].getSize() == getGrid().getEltNb();
}
+ public int[] getBoundaryConditions()
+ {
+ return boundaryConditions;
+ }
+
+ public void setBoundaryConditions(int[] boundaryConditions)
+ {
+ this.boundaryConditions = boundaryConditions;
+ }
}
\ No newline at end of file
Modified: trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/trigrid/TrigridReader.java
===================================================================
--- trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/trigrid/TrigridReader.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/main/java/org/fudaa/dodico/ef/io/trigrid/TrigridReader.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -13,7 +13,6 @@
import java.util.List;
import org.fudaa.ctulu.CtuluLibMessage;
-
import org.fudaa.dodico.ef.EfElement;
import org.fudaa.dodico.ef.EfElementType;
import org.fudaa.dodico.ef.EfGridSource;
@@ -51,11 +50,13 @@
in_.setJumpCommentLine(true);
EfNode[] pts = null;
EfElement[] elt = null;
+ int[] boundaryCond = null;
try {
// Premiere ligne donne le nombre de points
in_.readFields();
final int nbPoint = in_.intField(0);
pts = new EfNode[nbPoint];
+ boundaryCond = new int[nbPoint];
// 2 eme ligne : le nombre max de connexion par points
in_.readFields();
final int nbMaxVoisin = in_.intField(0);
@@ -69,6 +70,7 @@
for (int i = 0; i < nbPoint; i++) {
in_.readFields();
pts[i] = new EfNode(in_.doubleField(1), in_.doubleField(2), in_.doubleField(4));
+ boundaryCond[i] = this.getBoundaryCondition(in_.intField(3));
for (int j = 0; j < nbMaxVoisin; j++) {
m[i][j] = in_.intField(5 + j) - 1;
}
@@ -151,11 +153,71 @@
final EfGridMutable r = new EfGridMutable(pts, elt);
r.setTypeElt(EfElementType.T3);
EfLib.orienteGrid(r, progress_, true, analyze_);
- return new EfGridSourceDefaut(r, TrigridFileFormat.getInstance());
+ return new EfGridSourceDefaut(r, TrigridFileFormat.getInstance(), boundaryCond);
}
return null;
}
+ private int getBoundaryCondition(int code)
+ {
+ switch (code)
+ {
+ case 1 :
+ {
+ return 11;
+ }
+ case 2 :
+ {
+ return 4;
+ }
+ case 3 :
+ {
+ return 5;
+ }
+ case 4 :
+ {
+ return 7;
+ }
+ case 5 :
+ {
+ return 8;
+ }
+ case 6 :
+ {
+ return 9;
+ }
+ case 7 :
+ {
+ return 1;
+ }
+ case 8 :
+ {
+ return 12;
+ }
+ case 9 :
+ {
+ return 15;
+ }
+ case 10 :
+ {
+ return 2;
+ }
+ case 11 :
+ {
+ return 3;
+ }
+ case 12 :
+ {
+ return 14;
+ }
+ case 13 :
+ {
+ return 13;
+ }
+ }
+
+ return -1;
+ }
}
\ No newline at end of file
Modified: trunk/business/fudaa-ef/io/src/test/java/org/fudaa/dodico/ef/io/trigrid/TestJTrigrid.java
===================================================================
--- trunk/business/fudaa-ef/io/src/test/java/org/fudaa/dodico/ef/io/trigrid/TestJTrigrid.java 2009-11-03 17:15:24 UTC (rev 5467)
+++ trunk/business/fudaa-ef/io/src/test/java/org/fudaa/dodico/ef/io/trigrid/TestJTrigrid.java 2009-11-04 14:47:36 UTC (rev 5468)
@@ -12,14 +12,12 @@
import org.fudaa.ctulu.CtuluAnalyze;
import org.fudaa.ctulu.CtuluLibArray;
-
import org.fudaa.dodico.common.TestIO;
import org.fudaa.dodico.ef.EfElement;
import org.fudaa.dodico.ef.EfGridInterface;
import org.fudaa.dodico.ef.EfGridSource;
import org.fudaa.dodico.ef.EfLib;
import org.fudaa.dodico.ef.io.serafin.SerafinFileFormat;
-import org.fudaa.dodico.ef.io.trigrid.TrigridFileFormat;
/**
* @author deniger
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|