X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_QuadToTriaAdaptor.hxx;h=333d73491a1ff3105bb52f7e2489570d35e88541;hp=87063ee3f416098685fdbc8d39b81872dc158ed4;hb=e74c29b7867ca230102fc580d831dda6b81b3b4c;hpb=bd4e115a78b52e3fbc016e5e30bb0e19b2a9e7d6 diff --git a/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx b/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.hxx index 87063ee3f..333d73491 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-2016 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;