-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2014 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
std::string _name;
std::vector<const Cell*> _cells;
std::vector< Group* > _groups; // des sous-groupes composant le Group
- //bool _isShared; // true if any Cell was added to the mesh from other Group
bool _isProfile; // is a field support or not
std::vector<std::string> _refNames; /* names of groups referring this one;
_refNames is resized according to nb of references
Node* getNode( TID nID ) { return _points.getNode( nID ); }
int getNbCellsOfType( TCellType type ) const { return _cellsByType[type].size(); }
const Cell* insert(TCellType type, const Cell& ma) { return &( *_cellsByType[type].insert( ma ).first ); }
- ParaMEDMEM::MEDFileData* convertInMEDFileDS();
+ Group* addNewGroup(std::vector<SauvUtilities::Group*>* groupsToFix=0);
+
+ ParaMEDMEM::MEDFileData* convertInMEDFileDS(bool fix2DOri);
private:
- ParaMEDMEM::MEDFileUMesh* makeMEDFileMesh();
+ ParaMEDMEM::MEDFileUMesh* makeMEDFileMesh(bool fix2DOri);
ParaMEDMEM::DataArrayDouble * getCoords();
void setConnectivity( ParaMEDMEM::MEDFileUMesh* mesh, ParaMEDMEM::DataArrayDouble* coords );
void setGroups( ParaMEDMEM::MEDFileUMesh* mesh );
void eraseUselessGroups();
void detectMixDimGroups();
void orientElements2D();
- void orientElements3D();
+ void orientElements3D(bool fix2DOri);
void orientFaces3D();
void orientVolumes();
void numberElements();