]> SALOME platform Git repositories - tools/medcoupling.git/commitdiff
Salome HOME
MEDMEM Industrialization 2008
authoreap <eap@opencascade.com>
Wed, 14 Jan 2009 10:24:42 +0000 (10:24 +0000)
committereap <eap@opencascade.com>
Wed, 14 Jan 2009 10:24:42 +0000 (10:24 +0000)
  Form interpolation matrix in intersectors

     void interpolateMeshes(const MyMeshType& mesh1, const MyMeshType& mesh2, MatrixType& result,
+                           const std::string& method)

src/INTERP_KERNEL/Interpolation.hxx
src/INTERP_KERNEL/Interpolation3D.hxx
src/INTERP_KERNEL/InterpolationPlanar.hxx
src/INTERP_KERNEL/InterpolationPlanar.txx

index fac2603899a3f31e58b557de9e7a7b595eda5db1..ad7b7e44bdaeb272b0bd76df7b251087736b615d 100644 (file)
@@ -10,6 +10,8 @@
 #include "INTERPKERNEL_defines.hxx"
 #include "InterpolationOptions.hxx"
 
+#include <string>
+
 namespace INTERP_KERNEL
 {
   template<class TrueMainInterpolator>
@@ -28,8 +30,9 @@ namespace INTERP_KERNEL
                Interpolation(const InterpolationOptions& io) :InterpolationOptions(io){}
     //interpolation of two triangular meshes.
     template<class MatrixType, class MyMeshType>
-    void interpolateMeshes(const MyMeshType& mesh1, const MyMeshType& mesh2, MatrixType& result)
-    { return asLeaf().interpolateMeshes(mesh1,mesh2,result); }
+    void interpolateMeshes(const MyMeshType& mesh1, const MyMeshType& mesh2, MatrixType& result,
+                           const std::string& method)
+    { return asLeaf().interpolateMeshes(mesh1,mesh2,result,method); }
   protected:
     TrueMainInterpolator& asLeaf() { return static_cast<TrueMainInterpolator&>(*this); }
   };
index 89d820d441a50ee209c774b29b765182ed52511e..05a0a12d0ee696cfad687bd824a484dcac15621b 100644 (file)
@@ -13,7 +13,8 @@ namespace INTERP_KERNEL
     Interpolation3D();
     Interpolation3D(const InterpolationOptions& io);
     template<class MatrixType, class MyMeshType>
-    void interpolateMeshes(const MyMeshType& srcMesh, const MyMeshType& targetMesh, MatrixType& result);
+    void interpolateMeshes(const MyMeshType& srcMesh, const MyMeshType& targetMesh, MatrixType& result,
+                           const std::string& method);
   private:
     SplittingPolicy _splitting_policy;
   };
index 111ade9e6e4a85e394e3706749daa7f95f461eb6..094c7c3d6e0c94ee938f619504c9e2044eb7341c 100755 (executable)
@@ -25,7 +25,8 @@ namespace INTERP_KERNEL
 
     // Main function to interpolate triangular and quadratic meshes
     template<class MatrixType, class MyMeshType>
-    void interpolateMeshes(const MyMeshType& mesh1, const MyMeshType& mesh2, MatrixType& result);
+    void interpolateMeshes(const MyMeshType& mesh1, const MyMeshType& mesh2, MatrixType& result,
+                           const std::string& method);
 
   public:
     bool doRotate() const { return asLeafInterpPlanar().doRotate(); }
index f9061110f922b23921033a3982e0749bd1f82fb4..b41546430b3ec5452887f71963e9f8abe72b5e7b 100644 (file)
@@ -249,15 +249,9 @@ namespace INTERP_KERNEL
                 getBarycentricCoordinates<MyMeshType,3>( baryCentre, OTT<ConnType,numPol>::indFC(i_P),
                                                          myMesh_P, baryCoords );
                 if ( nodeCoeff ) { // 1 coeff per target node
-                  cout << "P elem " << OTT<ConnType,numPol>::indFC(i_P)
-                       << ", S elem " << OTT<ConnType,numPol>::indFC(i_S)
-                       << ", surf: " << surf
-                       << endl;
                   for ( int n = 0; n < 3; ++n ) {
                     ConnType node = getGlobalNumberOfNode(n, OTT<ConnType,numPol>::indFC(i_P), myMesh_P);
                     result[node].insert(make_pair(OTT<ConnType,numPol>::indFC(i_S),surf*baryCoords[n]));
-                    cout << "node " << node << " baryCoord[" << n << "]=" << baryCoords[n]
-                         << ", surf*bc = " << surf*baryCoords[n] << endl;
                   }
                 }
                 else { // several coeffs per target node