X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_ConvToQuadOp.cxx;h=77b0a8fe67c5ff3363075ec18a53c1f2c5c973ba;hp=b32a648bae76cfd9dc3e75f088859aa7a711b679;hb=2077baef82667760cb5fdc79454203a10d457d38;hpb=bd8f1aee7c78f7d2eb82bd4fec5e08c9e3d280ce diff --git a/src/SMESHGUI/SMESHGUI_ConvToQuadOp.cxx b/src/SMESHGUI/SMESHGUI_ConvToQuadOp.cxx index b32a648ba..77b0a8fe6 100644 --- a/src/SMESHGUI/SMESHGUI_ConvToQuadOp.cxx +++ b/src/SMESHGUI/SMESHGUI_ConvToQuadOp.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 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 @@ -6,7 +6,7 @@ // 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 @@ -105,7 +105,7 @@ void SMESHGUI_ConvToQuadOp::startOperation() SMESHGUI_SelectionOp::startOperation(); - myDlg->SetMediumNdsOnGeom( false ); + myDlg->SetMediumNdsOnGeom( true ); myDlg->activateObject( 0 ); myDlg->ShowWarning( false ); myDlg->show(); @@ -326,15 +326,19 @@ void SMESHGUI_ConvToQuadOp::onWarningWinFinished() SMESHGUI_ConvToQuadOp::MeshDestinationType SMESHGUI_ConvToQuadOp::DestinationMesh( const SMESH::SMESH_IDSource_var& idSource, - bool* isMixOrder) const + bool* isMixOrder) { SMESH::long_array_var nbElemOfType = idSource->GetMeshInfo(); - bool hasBiQuad = ( nbElemOfType[SMDSEntity_BiQuad_Quadrangle ] || + bool hasBiQuad = ( nbElemOfType[SMDSEntity_BiQuad_Triangle ] || + nbElemOfType[SMDSEntity_BiQuad_Quadrangle ] || + nbElemOfType[SMDSEntity_BiQuad_Penta ] || nbElemOfType[SMDSEntity_TriQuad_Hexa ] ); - bool hasLinStruct = ( nbElemOfType[SMDSEntity_Quadrangle ] || + bool hasLinBiQuad = ( nbElemOfType[SMDSEntity_Triangle ] || + nbElemOfType[SMDSEntity_Quadrangle ] || nbElemOfType[SMDSEntity_Hexa ] ); - bool hasQuadStruct = ( nbElemOfType[SMDSEntity_Quad_Quadrangle ] || + bool hasQuadBiQuad = ( nbElemOfType[SMDSEntity_Quad_Triangle ] || + nbElemOfType[SMDSEntity_Quad_Quadrangle ] || nbElemOfType[SMDSEntity_Quad_Hexa ] ); bool hasQuad = ( nbElemOfType[SMDSEntity_Quad_Edge ] || @@ -343,6 +347,7 @@ SMESHGUI_ConvToQuadOp::DestinationMesh( const SMESH::SMESH_IDSource_var& idSourc nbElemOfType[SMDSEntity_Quad_Tetra ] || nbElemOfType[SMDSEntity_Quad_Hexa ] || nbElemOfType[SMDSEntity_Quad_Pyramid ] || + nbElemOfType[SMDSEntity_Quad_Polygon ] || nbElemOfType[SMDSEntity_Quad_Penta ] ); bool hasLin = ( nbElemOfType[SMDSEntity_Edge ] || @@ -351,14 +356,15 @@ SMESHGUI_ConvToQuadOp::DestinationMesh( const SMESH::SMESH_IDSource_var& idSourc nbElemOfType[SMDSEntity_Tetra ] || nbElemOfType[SMDSEntity_Hexa ] || nbElemOfType[SMDSEntity_Pyramid ] || + nbElemOfType[SMDSEntity_Polygon ] || nbElemOfType[SMDSEntity_Penta ] ); int tgtType = 0; if ( hasBiQuad ) tgtType |= ( Quadratic | Linear ); - if ( hasLinStruct ) + if ( hasLinBiQuad ) tgtType |= ( BiQuadratic | Quadratic ); - if ( hasQuadStruct ) + if ( hasQuadBiQuad ) tgtType |= ( BiQuadratic | Linear ); if ( hasQuad ) tgtType |= Linear;