X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_PolyhedronPerSolid_3D.cxx;h=b8e1089589087033f005b863e0db28d077f3bc34;hp=6695eea7bc32ae6ac14e428602a5a509288de8a6;hb=b586ea5065bb78c57dcaee29097c6fd8df52d1d0;hpb=6472eab132825fec572beda8276947593f85ffa1 diff --git a/src/StdMeshers/StdMeshers_PolyhedronPerSolid_3D.cxx b/src/StdMeshers/StdMeshers_PolyhedronPerSolid_3D.cxx index 6695eea7b..b8e108958 100644 --- a/src/StdMeshers/StdMeshers_PolyhedronPerSolid_3D.cxx +++ b/src/StdMeshers/StdMeshers_PolyhedronPerSolid_3D.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -196,6 +196,9 @@ namespace int iSide = trias[0] + 1; if ( iSide == trias[1] ) ++iSide; + if (iSide == 5) + // use first side (otherwise, out of bounds) + iSide = 0; const SMDS_MeshElement* botFace = faces[ trias[0]]; const SMDS_MeshElement* topFace = faces[ trias[1]]; @@ -296,10 +299,6 @@ namespace if ( hexa[1] == -1 ) return newHexPrism; - int iSide = hexa[0] + 1; - if ( iSide == hexa[1] ) - ++iSide; - const SMDS_MeshElement* botFace = faces[ hexa[ 0 ]]; const SMDS_MeshElement* topFace = faces[ hexa[ 1 ]]; std::vector< const SMDS_MeshNode* > nodes( 24 ); // last 12 is a working buffer