X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_QuadToTriaAdaptor.hxx;h=3e33fd4da7e975ba0354fc38c99858e2b08c788a;hb=95de5fabdc238bcf1dbc3399e79d3b5c5ff41a5e;hp=87063ee3f416098685fdbc8d39b81872dc158ed4;hpb=bd4e115a78b52e3fbc016e5e30bb0e19b2a9e7d6;p=modules%2Fsmesh.git diff --git a/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx b/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx index 87063ee3f..3e33fd4da 100644 --- a/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx +++ b/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx @@ -1,9 +1,9 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE // // 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 @@ -27,13 +27,14 @@ #include "SMESH_ProxyMesh.hxx" +#include +#include + class SMESH_Mesh; class SMESH_ElementSearcher; class SMDS_MeshElement; class SMDS_MeshNode; class SMDS_MeshFace; -class Handle_TColgp_HArray1OfPnt; -class Handle_TColgp_HArray1OfVec; class gp_Pnt; class gp_Vec; @@ -65,16 +66,20 @@ public: protected: int Preparation(const SMDS_MeshElement* face, - Handle_TColgp_HArray1OfPnt& PN, - Handle_TColgp_HArray1OfVec& VN, + TColgp_Array1OfPnt& PN, + TColgp_Array1OfVec& VN, std::vector& FNodes, gp_Pnt& PC, gp_Vec& VNorm, const SMDS_MeshElement** volumes=0); - bool CheckIntersection(const gp_Pnt& P, const gp_Pnt& PC, - gp_Pnt& Pint, SMESH_Mesh& aMesh, - const TopoDS_Shape& aShape, - const SMDS_MeshElement* NotCheckedFace); + bool LimitHeight (gp_Pnt& Papex, + const gp_Pnt& PC, + const TColgp_Array1OfPnt& PN, + const std::vector& FNodes, + SMESH_Mesh& aMesh, + const SMDS_MeshElement* NotCheckedFace, + const bool UseApexRay, + const TopoDS_Shape& Shape = TopoDS_Shape()); bool Compute2ndPart(SMESH_Mesh& aMesh, const std::vector& pyramids); @@ -85,7 +90,8 @@ protected: std::set & nodesToMove); void MergeAdjacent(const SMDS_MeshElement* PrmI, - std::set& nodesToMove); + std::set& nodesToMove, + const bool isRecursion = false); TopoDS_Shape myShape;