From: eap Date: Wed, 13 May 2009 13:50:33 +0000 (+0000) Subject: 0020042: EDF 864 SMESH: Mesh of holes (GHS3D/BLSurf) X-Git-Tag: V5_1_2~5 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=86d3847efcf7baf06e2b26a304fdbb752672736b;p=plugins%2Fghs3dplugin.git 0020042: EDF 864 SMESH: Mesh of holes (GHS3D/BLSurf) fix previous non-compilable integration --- diff --git a/src/GHS3DPlugin_GHS3D.cxx b/src/GHS3DPlugin_GHS3D.cxx index df635eb..360ae87 100644 --- a/src/GHS3DPlugin_GHS3D.cxx +++ b/src/GHS3DPlugin_GHS3D.cxx @@ -575,17 +575,17 @@ static int findShapeID(SMESH_Mesh& mesh, // find UV of the center of triangle on geomFace SMESH_MesherHelper helper( mesh ); + BRepAdaptor_Surface surface( geomFace ); gp_XY UV(0,0); const SMDS_MeshNode* nodes[3] = { node1, node2, node3 }; for ( int n = 0; n < 3; ++n ) { - const SMDS_MeshNode* node = nodes[n] + const SMDS_MeshNode* node = nodes[n]; gp_XY uv = helper.GetNodeUV( geomFace, node ); // check that uv is correct gp_Pnt nodePnt ( node->X(), node->Y(), node->Z() ); double tol = BRep_Tool::Tolerance( geomFace ); - BRepAdaptor_Surface surface( geomFace ); if ( nodePnt.Distance( surface.Value( uv.X(), uv.Y() )) > 2 * tol ) { // project node onto geomFace to get right UV GeomAPI_ProjectPointOnSurf projector( nodePnt, surface.Surface().Surface() ); @@ -598,6 +598,7 @@ static int findShapeID(SMESH_Mesh& mesh, UV += uv / 3.; } // normale to face at node1 + gp_Pnt node1Pnt ( node1->X(), node1->Y(), node1->Z() ); gp_Pnt node2Pnt ( node2->X(), node2->Y(), node2->Z() ); gp_Pnt node3Pnt ( node3->X(), node3->Y(), node3->Z() ); gp_Vec vec12( node1Pnt, node2Pnt );