X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Filter_i.cxx;h=739a4d904ffe1fd5f6cf0e7041e8ec17ab85ad1f;hp=46a46b18dfa5a1886bf191925ca594a07dcd2013;hb=1a3a88cfc996394b2c79f2cf374c8f3c4140f036;hpb=d547f440f838090c4aca61aa64b5f7d5b9e0aff4 diff --git a/src/SMESH_I/SMESH_Filter_i.cxx b/src/SMESH_I/SMESH_Filter_i.cxx index 46a46b18d..739a4d904 100644 --- a/src/SMESH_I/SMESH_Filter_i.cxx +++ b/src/SMESH_I/SMESH_Filter_i.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 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 @@ -40,6 +40,8 @@ #include #include +#include + #include #include #include @@ -170,21 +172,21 @@ static TopoDS_Shape getShapeByID (const char* theID) return TopoDS_Shape(); } -static std::string getShapeNameByID (const char* theID) -{ - if ( theID && strlen( theID ) > 0 ) { - SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen(); - SALOMEDS::Study_var aStudy = aSMESHGen->GetCurrentStudy(); - if ( !aStudy->_is_nil() ) { - SALOMEDS::SObject_wrap aSObj = aStudy->FindObjectID(theID); - if ( !aSObj->_is_nil() ) { - CORBA::String_var name = aSObj->GetName(); - return name.in(); - } - } - } - return ""; -} +// static std::string getShapeNameByID (const char* theID) +// { +// if ( theID && strlen( theID ) > 0 ) { +// SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen(); +// SALOMEDS::Study_var aStudy = aSMESHGen->GetCurrentStudy(); +// if ( !aStudy->_is_nil() ) { +// SALOMEDS::SObject_wrap aSObj = aStudy->FindObjectID(theID); +// if ( !aSObj->_is_nil() ) { +// CORBA::String_var name = aSObj->GetName(); +// return name.in(); +// } +// } +// } +// return ""; +// } /* FUNCTORS @@ -510,7 +512,6 @@ FunctorType Length2D_i::GetFunctorType() SMESH::Length2D::Values* Length2D_i::GetValues() { - INFOS("Length2D_i::GetValues"); SMESH::Controls::Length2D::TValues aValues; (dynamic_cast(myFunctorPtr.get()))->GetValues( aValues ); @@ -530,7 +531,6 @@ SMESH::Length2D::Values* Length2D_i::GetValues() aValue.myPnt2 = aVal.myPntId[ 1 ]; } - INFOS("Length2D_i::GetValuess~"); return aResult._retn(); } @@ -564,6 +564,21 @@ FunctorType BallDiameter_i::GetFunctorType() return SMESH::FT_BallDiameter; } +/* + Class : NodeConnectivityNumber_i + Description : Functor returning diameter of a ball element +*/ +NodeConnectivityNumber_i::NodeConnectivityNumber_i() +{ + myNumericalFunctorPtr.reset( new Controls::NodeConnectivityNumber() ); + myFunctorPtr = myNumericalFunctorPtr; +} + +FunctorType NodeConnectivityNumber_i::GetFunctorType() +{ + return SMESH::FT_NodeConnectivityNumber; +} + /* Class : MultiConnection2D_i Description : Functor for calculating number of faces conneted to the edge @@ -581,7 +596,6 @@ FunctorType MultiConnection2D_i::GetFunctorType() SMESH::MultiConnection2D::Values* MultiConnection2D_i::GetValues() { - INFOS("MultiConnection2D_i::GetValues"); SMESH::Controls::MultiConnection2D::MValues aValues; (dynamic_cast(myFunctorPtr.get()))->GetValues( aValues ); @@ -601,7 +615,6 @@ SMESH::MultiConnection2D::Values* MultiConnection2D_i::GetValues() aValue.myNbConnects = (*anIter).second; } - INFOS("Multiconnection2D_i::GetValuess~"); return aResult._retn(); } @@ -839,8 +852,8 @@ BelongToGeom_i::BelongToGeom_i() BelongToGeom_i::~BelongToGeom_i() { - delete myShapeName; - delete myShapeID; + CORBA::string_free( myShapeName ); + CORBA::string_free( myShapeID ); } void BelongToGeom_i::SetGeom( GEOM::GEOM_Object_ptr theGeom ) @@ -872,18 +885,18 @@ FunctorType BelongToGeom_i::GetFunctorType() void BelongToGeom_i::SetShapeName( const char* theName ) { - delete myShapeName; - myShapeName = strdup( theName ); + CORBA::string_free( myShapeName ); + myShapeName = CORBA::string_dup( theName ); myBelongToGeomPtr->SetGeom( getShapeByName( myShapeName ) ); TPythonDump()<SetSurface( getShapeByName( myShapeName ), (SMDSAbs_ElementType)theType ); TPythonDump()<SetGeom( getShapeByName( myShapeName ) ); TPythonDump()<GetBoreders( aBorders ); @@ -1237,8 +1249,6 @@ SMESH::FreeEdges::Borders* FreeEdges_i::GetBorders() aBorder.myPnt1 = aBord.myPntId[ 0 ]; aBorder.myPnt2 = aBord.myPntId[ 1 ]; } - - INFOS("FreeEdges_i::GetBorders~"); return aResult._retn(); } @@ -1419,7 +1429,7 @@ FunctorType LinearOrQuadratic_i::GetFunctorType() /* Class : GroupColor_i - Description : Functor for check color of group to whic mesh element belongs to + Description : Functor for check color of group to which mesh element belongs to */ GroupColor_i::GroupColor_i() { @@ -1635,7 +1645,7 @@ void ConnectedElements_i::SetThreshold ( const char* { case SMESH::ConnectedElements::POINT: // read 3 node coordinates /////////////////// { - vector< double > xyz; + std::vector< double > xyz; char* endptr; do { @@ -1837,9 +1847,9 @@ FunctorType EqualTo_i::GetFunctorType() Class : LogicalNOT_i Description : Logical NOT predicate */ -LogicalNOT_i::LogicalNOT_i() -: myPredicate( NULL ), - myLogicalNOTPtr( new Controls::LogicalNOT() ) +LogicalNOT_i::LogicalNOT_i(): + myLogicalNOTPtr( new Controls::LogicalNOT() ), + myPredicate( NULL ) { myFunctorPtr = myPredicatePtr = myLogicalNOTPtr; } @@ -2127,6 +2137,14 @@ BallDiameter_ptr FilterManager_i::CreateBallDiameter() return anObj._retn(); } +NodeConnectivityNumber_ptr FilterManager_i::CreateNodeConnectivityNumber() +{ + SMESH::NodeConnectivityNumber_i* aServant = new SMESH::NodeConnectivityNumber_i(); + SMESH::NodeConnectivityNumber_var anObj = aServant->_this(); + TPythonDump()<CreateBallDiameter(); break; + case SMESH::FT_NodeConnectivityNumber: + aFunctor = aFilterMgr->CreateNodeConnectivityNumber(); + break; // Predicates @@ -3672,7 +3693,7 @@ static LDOM_Element createFilterItem( const char* theName, //======================================================================= FilterLibrary_i::FilterLibrary_i( const char* theFileName ) { - myFileName = strdup( theFileName ); + myFileName = CORBA::string_dup( theFileName ); SMESH::FilterManager_i* aFilterMgr = new SMESH::FilterManager_i(); myFilterMgr = aFilterMgr->_this(); @@ -3713,7 +3734,7 @@ FilterLibrary_i::FilterLibrary_i() FilterLibrary_i::~FilterLibrary_i() { - delete myFileName; + CORBA::string_free( myFileName ); //TPythonDump()<