+ bool CheckNbEdgesForEvaluate(SMESH_Mesh& aMesh,
+ const TopoDS_Shape & aShape,
+ MapShapeNbElems& aResMap,
+ std::vector<int>& aNbNodes,
+ bool& IsQuadratic);
+
+ bool SetNormalizedGrid(SMESH_Mesh& aMesh,
+ const TopoDS_Shape& aShape,
+ FaceQuadStruct*& quad);
+
+ void SplitQuad(SMESHDS_Mesh *theMeshDS,
+ const int theFaceID,
+ const SMDS_MeshNode* theNode1,
+ const SMDS_MeshNode* theNode2,
+ const SMDS_MeshNode* theNode3,
+ const SMDS_MeshNode* theNode4);
+
+ bool ComputeQuadPref(SMESH_Mesh& aMesh,
+ const TopoDS_Shape& aShape,
+ FaceQuadStruct* quad);
+
+ bool EvaluateQuadPref(SMESH_Mesh& aMesh,
+ const TopoDS_Shape& aShape,
+ std::vector<int>& aNbNodes,
+ MapShapeNbElems& aResMap,
+ bool IsQuadratic);
+
+ bool ComputeReduced (SMESH_Mesh& aMesh,
+ const TopoDS_Shape& aShape,
+ FaceQuadStruct* quad);
+
+ void UpdateDegenUV(FaceQuadStruct* quad);
+
+ void Smooth (FaceQuadStruct* quad);
+
+
+ // true if QuadranglePreference hypothesis is assigned that forces
+ // construction of quadrangles if the number of nodes on opposite edges
+ // is not the same in the case where the global number of nodes on edges
+ // is even
+ bool myQuadranglePreference;
+
+ bool myTrianglePreference;
+
+ int myTriaVertexID;
+
+ StdMeshers_QuadType myQuadType;