if ( !theForce3d )
{ // setenv NO_FixQuadraticElements to know if FixQuadraticElements() is guilty of bad conversion
aHelper.SetSubShape(0); // apply FixQuadraticElements() to the whole mesh
- aHelper.FixQuadraticElements();
+ aHelper.FixQuadraticElements(myError);
}
}
if ( !theForce3d && !getenv("NO_FixQuadraticElements"))
{ // setenv NO_FixQuadraticElements to know if FixQuadraticElements() is guilty of bad conversion
helper.SetSubShape(0); // apply FixQuadraticElements() to the whole mesh
- helper.FixQuadraticElements();
+ helper.FixQuadraticElements( myError );
}
}
#include "SMESH_Controls.hxx"
#include "SMESH_Mesh.hxx"
#include "SMESH_TypeDefs.hxx"
+#include "SMESH_ComputeError.hxx"
#include <utilities.h>
SMESH_MeshEditor( SMESH_Mesh* theMesh );
+ SMESH_Mesh * GetMesh() { return myMesh; }
+ SMESHDS_Mesh * GetMeshDS() { return myMesh->GetMeshDS(); }
+
+ const SMESH_SequenceOfElemPtr& GetLastCreatedNodes() const { return myLastCreatedNodes; }
+ const SMESH_SequenceOfElemPtr& GetLastCreatedElems() const { return myLastCreatedElems; }
+
+ SMESH_ComputeErrorPtr & GetError() { return myError; }
+
/*!
* \brief Add element
*/
// Return an index of the shape theElem is on
// or zero if a shape not found
- SMESH_Mesh * GetMesh() { return myMesh; }
-
- SMESHDS_Mesh * GetMeshDS() { return myMesh->GetMeshDS(); }
-
- const SMESH_SequenceOfElemPtr& GetLastCreatedNodes() const { return myLastCreatedNodes; }
-
- const SMESH_SequenceOfElemPtr& GetLastCreatedElems() const { return myLastCreatedElems; }
-
bool DoubleNodes( const std::list< int >& theListOfNodes,
const std::list< int >& theListOfModifiedElems );
private:
- SMESH_Mesh * myMesh;
-
- /*!
- * Sequence for keeping nodes created during last operation
- */
- SMESH_SequenceOfElemPtr myLastCreatedNodes;
+ SMESH_Mesh * myMesh;
- /*!
- * Sequence for keeping elements created during last operation
- */
- SMESH_SequenceOfElemPtr myLastCreatedElems;
+ // Nodes and elements created during last operation
+ SMESH_SequenceOfElemPtr myLastCreatedNodes, myLastCreatedElems;
+ // Description of error/warning occured during last operation
+ SMESH_ComputeErrorPtr myError;
};
#endif
/*!
* \brief Move medium nodes of faces and volumes to fix distorted elements
+ * \param error - container of fixed distorted elements
* \param volumeOnly - fix nodes on geom faces or not if the shape is solid
*/
- void FixQuadraticElements(bool volumeOnly=true);
+ void FixQuadraticElements(SMESH_ComputeErrorPtr& error, bool volumeOnly=true);
/*!
* \brief To set created elements on the shape set by IsQuadraticSubMesh()