-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
CORBA::Boolean theUnderlyingOnly )
throw (SALOME::SALOME_Exception);
+ SMESH::ListOfGroups* FaceGroupsSeparatedByEdges( CORBA::Double theSharpAngle,
+ CORBA::Boolean theCreateEdges,
+ CORBA::Boolean theUseExistingEdges )
+ throw (SALOME::SALOME_Exception);
SMESH::SMESH_Group_ptr ConvertToStandalone( SMESH::SMESH_GroupBase_ptr theGroupOn )
throw (SALOME::SALOME_Exception);
*/
CORBA::Boolean HasDuplicatedGroupNamesMED();
+ /*!
+ * Return string representation of a MED file version comprising nbDigits
+ */
+ char* GetVersionString(CORBA::Long minor, CORBA::Short nbDigits);
+
+ /*!
+ * Return the list of med versions compatibles for write/append,
+ * encoded in 10*major+minor (for instance, code for med 3.2.1 is 32)
+ */
+ SMESH::long_array* GetMEDVersionsCompatibleForAppend();
+
void ExportMED( const char* file,
CORBA::Boolean auto_groups,
+ CORBA::Long version,
CORBA::Boolean overwrite,
CORBA::Boolean autoDimension = true) throw (SALOME::SALOME_Exception);
void ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart,
const char* file,
CORBA::Boolean auto_groups,
+ CORBA::Long version,
CORBA::Boolean overwrite,
CORBA::Boolean autoDim,
const GEOM::ListOfFields& fields,
- const char* geomAssocFields) throw (SALOME::SALOME_Exception);
+ const char* geomAssocFields,
+ CORBA::Double ZTolerance) throw (SALOME::SALOME_Exception);
void ExportPartToDAT(SMESH::SMESH_IDSource_ptr meshPart,
const char* file) throw (SALOME::SALOME_Exception);
void ExportPartToUNV(SMESH::SMESH_IDSource_ptr meshPart,
const char* theGroupName)
throw (SALOME::SALOME_Exception);
+ // ===================================================
// Internal methods not available through CORBA
// They are called by corresponding interface methods
+ // ===================================================
+
SMESH_Hypothesis::Hypothesis_Status addHypothesis(GEOM::GEOM_Object_ptr aSubShape,
SMESH::SMESH_Hypothesis_ptr anHyp,
std::string* anErrorText=0);
SMESH::SMESH_GroupBase_ptr createGroup(SMESH::ElementType theElemType,
const char* theName,
+ const int theID = -1,
const TopoDS_Shape& theShape = TopoDS_Shape(),
const SMESH_PredicatePtr& thePred = SMESH_PredicatePtr());
const std::map<int, SMESH::SMESH_GroupBase_ptr>& getGroups() { return _mapGroups; }
// return existing group objects
- void onHypothesisModified();
+ void onHypothesisModified(int theHypID);
// callback from _impl to forget not loaded mesh data (issue 0021208)
void checkMeshLoaded();
*/
void CreateGroupServants();
+ /*!
+ * \brief Return true if all sub-meshes are computed OK - to update an icon
+ */
+ bool IsComputedOK();
+
+
+ // ====================================
+ // SMESH_Mesh interface (continuation)
+ // ====================================
+
/*!
* \brief Return groups cantained in _mapGroups by their IDs
*/
* For given node returns list of IDs of inverse elements
* If there is not node for given ID - returns empty list
*/
- SMESH::long_array* GetNodeInverseElements(CORBA::Long id);
+ SMESH::long_array* GetNodeInverseElements(CORBA::Long id,
+ SMESH::ElementType elemType);
/*!
* \brief Return position of a node on shape
*/
virtual SMESH::MedFileInfo* GetMEDFileInfo();
+ /*!
+ * Persistence of file info
+ */
+ std::string FileInfoToString();
+ void FileInfoFromString(const std::string& info);
+
/*!
* Sets list of notebook variables used for Mesh operations separated by ":" symbol
*/
* happen if mesh data is not yet fully loaded from the file of study.
*/
bool IsMeshInfoCorrect();
- /*!
- * Returns mesh unstructed grid information.
- */
- virtual SALOMEDS::TMPFile* GetVtkUgStream();
+ /*!
+ * Returns mesh unstructed grid information.
+ */
+ virtual SALOMEDS::TMPFile* GetVtkUgStream();
+
std::map<int, SMESH_subMesh_i*> _mapSubMesh_i; //NRI
std::map<int, ::SMESH_subMesh*> _mapSubMesh; //NRI