#include "SMDS_VolumeTool.hxx"
#include "SMESHDS_SubMesh.hxx"
#include "SMESH_Mesh.hxx"
-#include "SMESH_MeshEditor.hxx"
+#include "SMESH_MesherHelper.hxx"
#include "SMESH_subMesh.hxx"
#include "SMESH_subMeshEventListener.hxx"
#include "SMESH_Comment.hxx"
return bOK;
}
- SMESH_MesherHelper helper(aMesh);
- myTool = &helper;
- myCreateQuadratic = myTool->IsQuadraticSubMesh(aShape);
-
//
MakeBlock();
if (!myErrorStatus->IsOK()) {
if (!myErrorStatus->IsOK()) {
return bOK;
}
+
+ // now unnecessary faces removed, we can load medium nodes
+ SMESH_MesherHelper helper(aMesh);
+ myTool = &helper;
+ myCreateQuadratic = myTool->IsQuadraticSubMesh(aShape);
+
//
MakeNodes();
if (!myErrorStatus->IsOK()) {
TopoDS::Face(myBlock.Shape(SMESH_Block::ID_Fxy0));
const TopoDS_Face& aFxy1=
TopoDS::Face(myBlock.Shape(SMESH_Block::ID_Fxy1));
- SMESH_MesherHelper faceHelper( *GetMesh() );
- faceHelper.IsQuadraticSubMesh(aFxy1);
//
SMESH_Mesh* pMesh = GetMesh();
SMESHDS_Mesh * meshDS = pMesh->GetMeshDS();
SMDS_MeshFace * face = 0;
switch ( aNbNodes ) {
case 3:
- face = faceHelper.AddFace(aNodes1[0], aNodes1[1], aNodes1[2]);
+ face = myTool->AddFace(aNodes1[0], aNodes1[1], aNodes1[2]);
break;
case 4:
- face = faceHelper.AddFace(aNodes1[0], aNodes1[1], aNodes1[2], aNodes1[3]);
+ face = myTool->AddFace(aNodes1[0], aNodes1[1], aNodes1[2], aNodes1[3]);
break;
default:
continue;
aElementType = pElement->GetType();
if (aElementType==SMDSAbs_Face) {
iNbNodes = pElement->NbNodes();
- if ( iNbNodes==3 || (myCreateQuadratic && iNbNodes==6) ) {
+ if ( iNbNodes==3 || (pElement->IsQuadratic() && iNbNodes==6) ) {
aFTr = aF;
++iCnt;
if (iCnt>1) {