]> SALOME platform Git repositories - tools/medcoupling.git/commitdiff
Salome HOME
MEDFileCurveLinearMesh -> getSpaceDimension() was missing
authorabn <adrien.bruneton@cea.fr>
Fri, 16 Oct 2020 12:54:18 +0000 (14:54 +0200)
committerabn <adrien.bruneton@cea.fr>
Fri, 16 Oct 2020 12:54:18 +0000 (14:54 +0200)
src/MEDLoader/MEDFileMesh.cxx
src/MEDLoader/MEDFileMesh.hxx
src/MEDLoader/Swig/MEDLoaderCommon.i
src/MEDLoader/Swig/MEDLoaderTest4.py

index 076c7c1776044156b20fb9787b48b4dc350f65bc..10a17bc428c79fe567610794b5d93465ba1f542e 100644 (file)
@@ -7131,10 +7131,17 @@ MEDFileCurveLinearMesh *MEDFileCurveLinearMesh::deepCopy() const
 int MEDFileCurveLinearMesh::getMeshDimension() const
 {
   if(!((const MEDCouplingCurveLinearMesh*)_clmesh))
-    throw INTERP_KERNEL::Exception("MEDFileCurveLinearMesh::getMeshDimension : unable to get meshdimension because no mesh set !");
+    throw INTERP_KERNEL::Exception("MEDFileCurveLinearMesh::getMeshDimension : unable to get mesh dimension because no mesh set !");
   return _clmesh->getMeshDimension();
 }
 
+int MEDFileCurveLinearMesh::getSpaceDimension() const
+{
+  if(!((const MEDCouplingCurveLinearMesh*)_clmesh))
+    throw INTERP_KERNEL::Exception("MEDFileCurveLinearMesh::getMeshDimension : unable to get space dimension because no mesh set !");
+  return _clmesh->getSpaceDimension();
+}
+
 std::string MEDFileCurveLinearMesh::simpleRepr() const
 {
   return MEDFileStructuredMesh::simpleRepr();
index 88e9724188268281cdbc6ebb830ea3614b3f12d5..f50321917ed5ee551aee4ac00ef8822dea246c06 100644 (file)
@@ -167,6 +167,7 @@ namespace MEDCoupling
     MEDLOADER_EXPORT void normalizeFamIdsTrio();
     MEDLOADER_EXPORT void normalizeFamIdsMEDFile();
     MEDLOADER_EXPORT virtual int getMeshDimension() const = 0;
+    MEDLOADER_EXPORT virtual int getSpaceDimension() const = 0;
     MEDLOADER_EXPORT virtual std::string simpleRepr() const;
     MEDLOADER_EXPORT virtual std::string advancedRepr() const = 0;
     //
@@ -392,9 +393,9 @@ MCAuto<DataArrayDouble>& coords, MCAuto<PartDefinition>& partCoords, MCAuto<Data
   private:
     static const char SPE_FAM_STR_EXTRUDED_MESH[];
   private:
-    std::vector< MCAuto<MEDFileUMeshSplitL1> > _ms;
+    std::vector< MCAuto<MEDFileUMeshSplitL1> > _ms;   ///< The array of single-dimension constituting meshes, stored in decreasing order (dimRelativeToMax=0,-1,-2, ...)
     MCAuto<DataArrayDouble> _coords;
-    MCAuto<DataArrayIdType> _fam_coords;     ///< Node family indices
+    MCAuto<DataArrayIdType> _fam_coords;              ///< Node family indices
     MCAuto<DataArrayIdType> _num_coords;
     MCAuto<DataArrayIdType> _global_num_coords;
     MCAuto<DataArrayAsciiChar> _name_coords;
@@ -532,6 +533,7 @@ MCAuto<DataArrayDouble>& coords, MCAuto<PartDefinition>& partCoords, MCAuto<Data
     MEDLOADER_EXPORT MEDFileCurveLinearMesh *shallowCpy() const;
     MEDLOADER_EXPORT bool isEqual(const MEDFileMesh *other, double eps, std::string& what) const;
     MEDLOADER_EXPORT int getMeshDimension() const;
+    MEDLOADER_EXPORT int getSpaceDimension() const;
     MEDLOADER_EXPORT std::string simpleRepr() const;
     MEDLOADER_EXPORT std::string advancedRepr() const;
     MEDLOADER_EXPORT void clearNonDiscrAttributes() const;
index 24f3aedaeafd06f618109f41dbc19e7dedaf4524..955e5f565440b9268e597d1f9e095a297a3396d3 100644 (file)
@@ -1778,6 +1778,8 @@ namespace MEDCoupling
     static MEDFileCurveLinearMesh *New(const std::string& fileName, MEDFileMeshReadSelector *mrs=0);
     static MEDFileCurveLinearMesh *New(const std::string& fileName, const std::string& mName, int dt=-1, int it=-1, MEDFileMeshReadSelector *mrs=0);
     void setMesh(MEDCouplingCurveLinearMesh *m);
+    int getSpaceDimension() const;
+    int getMeshDimension() const;
     %extend
        {
          MEDFileCurveLinearMesh()
index 6e4ec0ce1220abf7e032aaa3888e24afccaa4698..2cef212f15a4dc1815fe31858f871df04936a9e4 100644 (file)
@@ -1253,6 +1253,7 @@ class MEDLoaderTest4(unittest.TestCase):
         a0Exp.setInfoOnComponents(["XX [m]","YYY [km]"])
         m.setCoords(a0Exp)
         mm=MEDFileCurveLinearMesh() ; mm.setMesh(m)
+        self.assertEqual(mm.getSpaceDimension(), m.getSpaceDimension())
         fam=DataArrayInt(8) ; fam.iota(0) ; mm.setFamilyFieldArr(0,fam) ; del fam
         num=DataArrayInt(8) ; num.iota(100) ; mm.setRenumFieldArr(0,num) ; del num
         #