mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-14 10:40:34 +05:00
PythonDump for SMESH Controls / Filter
This commit is contained in:
parent
d448969fe8
commit
e5c454adf0
@ -9,176 +9,10 @@
|
|||||||
#include "SMESH_Filter_i.hxx"
|
#include "SMESH_Filter_i.hxx"
|
||||||
|
|
||||||
#include <TColStd_HSequenceOfInteger.hxx>
|
#include <TColStd_HSequenceOfInteger.hxx>
|
||||||
|
#include <TCollection_AsciiString.hxx>
|
||||||
|
|
||||||
namespace SMESH
|
namespace SMESH
|
||||||
{
|
{
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString, const char* theArg){
|
|
||||||
theString += Standard_CString(theArg);
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString, int theArg){
|
|
||||||
theString += TCollection_AsciiString(theArg);
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString, float theArg){
|
|
||||||
theString += TCollection_AsciiString(theArg);
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
const SMESH::long_array& theArg)
|
|
||||||
{
|
|
||||||
theString<<"[ ";
|
|
||||||
CORBA::Long i = 1, iEnd = theArg.length();
|
|
||||||
for(; i <= iEnd; i++) {
|
|
||||||
theString<<int(theArg[i-1]);
|
|
||||||
if(i < iEnd)
|
|
||||||
theString<< ", ";
|
|
||||||
}
|
|
||||||
theString<<" ]";
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
CORBA::Object_ptr theArg)
|
|
||||||
{
|
|
||||||
CORBA::String_var aString("None");
|
|
||||||
SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen();
|
|
||||||
SALOMEDS::Study_ptr aStudy = aSMESHGen->GetCurrentStudy();
|
|
||||||
SALOMEDS::SObject_var aSObject = SMESH_Gen_i::ObjectToSObject(aStudy,theArg);
|
|
||||||
if(!aSObject->_is_nil()){
|
|
||||||
aString = aSObject->GetID();
|
|
||||||
}else if(!CORBA::is_nil(theArg)){
|
|
||||||
aString = SMESH_Gen_i::GetORB()->object_to_string(theArg);
|
|
||||||
}
|
|
||||||
theString<<aString.in();
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::FilterLibrary_i* theArg)
|
|
||||||
{
|
|
||||||
theString += TCollection_AsciiString("aFilterLibrary_");
|
|
||||||
theString += TCollection_AsciiString(int(theArg));
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::FilterManager_i* theArg)
|
|
||||||
{
|
|
||||||
theString += TCollection_AsciiString("aFilterManager_");
|
|
||||||
theString += TCollection_AsciiString(int(theArg));
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::Filter_i* theArg)
|
|
||||||
{
|
|
||||||
theString += TCollection_AsciiString("aFilter_");
|
|
||||||
theString += TCollection_AsciiString(int(theArg));
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::Functor_i* theArg)
|
|
||||||
{
|
|
||||||
FunctorType aFunctorType = theArg->GetFunctorType();
|
|
||||||
switch(aFunctorType){
|
|
||||||
case FT_AspectRatio:
|
|
||||||
theString += TCollection_AsciiString("anAspectRatio");
|
|
||||||
break;
|
|
||||||
case FT_AspectRatio3D:
|
|
||||||
theString += TCollection_AsciiString("anAspectRatio3D");
|
|
||||||
break;
|
|
||||||
case FT_Warping:
|
|
||||||
theString += TCollection_AsciiString("aWarping");
|
|
||||||
break;
|
|
||||||
case FT_MinimumAngle:
|
|
||||||
theString += TCollection_AsciiString("aMinimumAngle");
|
|
||||||
break;
|
|
||||||
case FT_Taper:
|
|
||||||
theString += TCollection_AsciiString("aTaper");
|
|
||||||
break;
|
|
||||||
case FT_Skew:
|
|
||||||
theString += TCollection_AsciiString("aSkew");
|
|
||||||
break;
|
|
||||||
case FT_Area:
|
|
||||||
theString += TCollection_AsciiString("aArea");
|
|
||||||
break;
|
|
||||||
case FT_FreeBorders:
|
|
||||||
theString += TCollection_AsciiString("aFreeBorders");
|
|
||||||
break;
|
|
||||||
case FT_FreeEdges:
|
|
||||||
theString += TCollection_AsciiString("aFreeEdges");
|
|
||||||
break;
|
|
||||||
case FT_MultiConnection:
|
|
||||||
theString += TCollection_AsciiString("aMultiConnection");
|
|
||||||
break;
|
|
||||||
case FT_MultiConnection2D:
|
|
||||||
theString += TCollection_AsciiString("aMultiConnection2D");
|
|
||||||
break;
|
|
||||||
case FT_Length:
|
|
||||||
theString += TCollection_AsciiString("aLength");
|
|
||||||
break;
|
|
||||||
case FT_Length2D:
|
|
||||||
theString += TCollection_AsciiString("aLength");
|
|
||||||
break;
|
|
||||||
case FT_BelongToGeom:
|
|
||||||
theString += TCollection_AsciiString("aBelongToGeom");
|
|
||||||
break;
|
|
||||||
case FT_BelongToPlane:
|
|
||||||
theString += TCollection_AsciiString("aBelongToPlane");
|
|
||||||
break;
|
|
||||||
case FT_BelongToCylinder:
|
|
||||||
theString += TCollection_AsciiString("aBelongToCylinder");
|
|
||||||
break;
|
|
||||||
case FT_LyingOnGeom:
|
|
||||||
theString += TCollection_AsciiString("aLyingOnGeom");
|
|
||||||
break;
|
|
||||||
case FT_RangeOfIds:
|
|
||||||
theString += TCollection_AsciiString("aRangeOfIds");
|
|
||||||
break;
|
|
||||||
case FT_BadOrientedVolume:
|
|
||||||
theString += TCollection_AsciiString("aBadOrientedVolume");
|
|
||||||
break;
|
|
||||||
case FT_LessThan:
|
|
||||||
theString += TCollection_AsciiString("aLessThan");
|
|
||||||
break;
|
|
||||||
case FT_MoreThan:
|
|
||||||
theString += TCollection_AsciiString("aMoreThan");
|
|
||||||
break;
|
|
||||||
case FT_EqualTo:
|
|
||||||
theString += TCollection_AsciiString("anEqualTo");
|
|
||||||
break;
|
|
||||||
case FT_LogicalNOT:
|
|
||||||
theString += TCollection_AsciiString("aLogicalNOT");
|
|
||||||
break;
|
|
||||||
case FT_LogicalAND:
|
|
||||||
theString += TCollection_AsciiString("aLogicalAND");
|
|
||||||
break;
|
|
||||||
case FT_LogicalOR:
|
|
||||||
theString += TCollection_AsciiString("aLogicalOR");
|
|
||||||
break;
|
|
||||||
case FT_Undefined:
|
|
||||||
theString += TCollection_AsciiString("anUndefined");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
theString += Standard_CString("_");
|
|
||||||
theString += TCollection_AsciiString(int(theArg));
|
|
||||||
return theString;
|
|
||||||
}
|
|
||||||
|
|
||||||
size_t TPythonDump::myCounter = 0;
|
size_t TPythonDump::myCounter = 0;
|
||||||
|
|
||||||
@ -194,10 +28,184 @@ namespace SMESH
|
|||||||
SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen();
|
SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen();
|
||||||
SALOMEDS::Study_ptr aStudy = aSMESHGen->GetCurrentStudy();
|
SALOMEDS::Study_ptr aStudy = aSMESHGen->GetCurrentStudy();
|
||||||
if(!aStudy->_is_nil()){
|
if(!aStudy->_is_nil()){
|
||||||
aSMESHGen->AddToPythonScript(aStudy->StudyId(),myString);
|
std::string aString = myStream.str();
|
||||||
|
TCollection_AsciiString aCollection(Standard_CString(aString.c_str()));
|
||||||
|
aSMESHGen->AddToPythonScript(aStudy->StudyId(),aCollection);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(const SMESH::ElementType& theArg)
|
||||||
|
{
|
||||||
|
myStream<<"SMESH.";
|
||||||
|
switch(theArg){
|
||||||
|
case ALL:
|
||||||
|
myStream<<"ALL";
|
||||||
|
break;
|
||||||
|
case NODE:
|
||||||
|
myStream<<"NODE";
|
||||||
|
break;
|
||||||
|
case EDGE:
|
||||||
|
myStream<<"EDGE";
|
||||||
|
break;
|
||||||
|
case FACE:
|
||||||
|
myStream<<"FACE";
|
||||||
|
break;
|
||||||
|
case VOLUME:
|
||||||
|
myStream<<"VOLUME";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(const SMESH::long_array& theArg)
|
||||||
|
{
|
||||||
|
myStream<<"[ ";
|
||||||
|
CORBA::Long i = 1, iEnd = theArg.length();
|
||||||
|
for(; i <= iEnd; i++) {
|
||||||
|
myStream<<theArg[i-1];
|
||||||
|
if(i < iEnd)
|
||||||
|
myStream<< ", ";
|
||||||
|
}
|
||||||
|
myStream<<" ]";
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(CORBA::Object_ptr theArg)
|
||||||
|
{
|
||||||
|
CORBA::String_var aString("None");
|
||||||
|
SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen();
|
||||||
|
SALOMEDS::Study_ptr aStudy = aSMESHGen->GetCurrentStudy();
|
||||||
|
SALOMEDS::SObject_var aSObject = SMESH_Gen_i::ObjectToSObject(aStudy,theArg);
|
||||||
|
if(!aSObject->_is_nil()){
|
||||||
|
aString = aSObject->GetID();
|
||||||
|
}else if(!CORBA::is_nil(theArg)){
|
||||||
|
aString = SMESH_Gen_i::GetORB()->object_to_string(theArg);
|
||||||
|
}
|
||||||
|
myStream<<aString.in();
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(SMESH::FilterLibrary_i* theArg)
|
||||||
|
{
|
||||||
|
myStream<<"aFilterLibrary"<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(SMESH::FilterManager_i* theArg)
|
||||||
|
{
|
||||||
|
myStream<<"aFilterManager"<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(SMESH::Filter_i* theArg)
|
||||||
|
{
|
||||||
|
myStream<<"aFilter"<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
TPythonDump::
|
||||||
|
operator<<(SMESH::Functor_i* theArg)
|
||||||
|
{
|
||||||
|
FunctorType aFunctorType = theArg->GetFunctorType();
|
||||||
|
switch(aFunctorType){
|
||||||
|
case FT_AspectRatio:
|
||||||
|
myStream<<"anAspectRatio";
|
||||||
|
break;
|
||||||
|
case FT_AspectRatio3D:
|
||||||
|
myStream<<"anAspectRatio3D";
|
||||||
|
break;
|
||||||
|
case FT_Warping:
|
||||||
|
myStream<<"aWarping";
|
||||||
|
break;
|
||||||
|
case FT_MinimumAngle:
|
||||||
|
myStream<<"aMinimumAngle";
|
||||||
|
break;
|
||||||
|
case FT_Taper:
|
||||||
|
myStream<<"aTaper";
|
||||||
|
break;
|
||||||
|
case FT_Skew:
|
||||||
|
myStream<<"aSkew";
|
||||||
|
break;
|
||||||
|
case FT_Area:
|
||||||
|
myStream<<"aArea";
|
||||||
|
break;
|
||||||
|
case FT_FreeBorders:
|
||||||
|
myStream<<"aFreeBorders";
|
||||||
|
break;
|
||||||
|
case FT_FreeEdges:
|
||||||
|
myStream<<"aFreeEdges";
|
||||||
|
break;
|
||||||
|
case FT_MultiConnection:
|
||||||
|
myStream<<"aMultiConnection";
|
||||||
|
break;
|
||||||
|
case FT_MultiConnection2D:
|
||||||
|
myStream<<"aMultiConnection2D";
|
||||||
|
break;
|
||||||
|
case FT_Length:
|
||||||
|
myStream<<"aLength";
|
||||||
|
break;
|
||||||
|
case FT_Length2D:
|
||||||
|
myStream<<"aLength";
|
||||||
|
break;
|
||||||
|
case FT_BelongToGeom:
|
||||||
|
myStream<<"aBelongToGeom";
|
||||||
|
break;
|
||||||
|
case FT_BelongToPlane:
|
||||||
|
myStream<<"aBelongToPlane";
|
||||||
|
break;
|
||||||
|
case FT_BelongToCylinder:
|
||||||
|
myStream<<"aBelongToCylinder";
|
||||||
|
break;
|
||||||
|
case FT_LyingOnGeom:
|
||||||
|
myStream<<"aLyingOnGeom";
|
||||||
|
break;
|
||||||
|
case FT_RangeOfIds:
|
||||||
|
myStream<<"aRangeOfIds";
|
||||||
|
break;
|
||||||
|
case FT_BadOrientedVolume:
|
||||||
|
myStream<<"aBadOrientedVolume";
|
||||||
|
break;
|
||||||
|
case FT_LessThan:
|
||||||
|
myStream<<"aLessThan";
|
||||||
|
break;
|
||||||
|
case FT_MoreThan:
|
||||||
|
myStream<<"aMoreThan";
|
||||||
|
break;
|
||||||
|
case FT_EqualTo:
|
||||||
|
myStream<<"anEqualTo";
|
||||||
|
break;
|
||||||
|
case FT_LogicalNOT:
|
||||||
|
myStream<<"aLogicalNOT";
|
||||||
|
break;
|
||||||
|
case FT_LogicalAND:
|
||||||
|
myStream<<"aLogicalAND";
|
||||||
|
break;
|
||||||
|
case FT_LogicalOR:
|
||||||
|
myStream<<"aLogicalOR";
|
||||||
|
break;
|
||||||
|
case FT_Undefined:
|
||||||
|
myStream<<"anUndefined";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
@ -70,8 +70,7 @@ namespace SMESH
|
|||||||
Predicate_i*
|
Predicate_i*
|
||||||
GetPredicate( Predicate_ptr thePredicate )
|
GetPredicate( Predicate_ptr thePredicate )
|
||||||
{
|
{
|
||||||
PortableServer::ServantBase_var aServant = SMESH_Gen_i::GetServant( thePredicate );
|
return DownCast<Predicate_i*>(thePredicate);
|
||||||
return dynamic_cast<Predicate_i*>(aServant.in());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -322,8 +321,7 @@ inline
|
|||||||
const SMDS_Mesh*
|
const SMDS_Mesh*
|
||||||
MeshPtr2SMDSMesh( SMESH_Mesh_ptr theMesh )
|
MeshPtr2SMDSMesh( SMESH_Mesh_ptr theMesh )
|
||||||
{
|
{
|
||||||
SMESH_Mesh_i* anImplPtr =
|
SMESH_Mesh_i* anImplPtr = DownCast<SMESH_Mesh_i*>(theMesh);
|
||||||
dynamic_cast<SMESH_Mesh_i*>( SMESH_Gen_i::GetServant( theMesh ).in() );
|
|
||||||
return anImplPtr ? anImplPtr->GetImpl().GetMeshDS() : 0;
|
return anImplPtr ? anImplPtr->GetImpl().GetMeshDS() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -437,6 +435,7 @@ CORBA::Double NumericalFunctor_i::GetValue( CORBA::Long theId )
|
|||||||
void NumericalFunctor_i::SetPrecision( CORBA::Long thePrecision )
|
void NumericalFunctor_i::SetPrecision( CORBA::Long thePrecision )
|
||||||
{
|
{
|
||||||
myNumericalFunctorPtr->SetPrecision( thePrecision );
|
myNumericalFunctorPtr->SetPrecision( thePrecision );
|
||||||
|
TPythonDump()<<this<<".SetPrecision("<<thePrecision<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
CORBA::Long NumericalFunctor_i::GetPrecision()
|
CORBA::Long NumericalFunctor_i::GetPrecision()
|
||||||
@ -731,6 +730,7 @@ void BelongToGeom_i::SetGeom( GEOM::GEOM_Object_ptr theGeom )
|
|||||||
GEOM::GEOM_Gen_var aGEOMGen = SMESH_Gen_i::GetGeomEngine();
|
GEOM::GEOM_Gen_var aGEOMGen = SMESH_Gen_i::GetGeomEngine();
|
||||||
TopoDS_Shape aLocShape = aSMESHGen->GetShapeReader()->GetShape( aGEOMGen, theGeom );
|
TopoDS_Shape aLocShape = aSMESHGen->GetShapeReader()->GetShape( aGEOMGen, theGeom );
|
||||||
myBelongToGeomPtr->SetGeom( aLocShape );
|
myBelongToGeomPtr->SetGeom( aLocShape );
|
||||||
|
TPythonDump()<<this<<".SetGeom("<<theGeom<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
void BelongToGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
void BelongToGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
||||||
@ -740,6 +740,7 @@ void BelongToGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
|||||||
|
|
||||||
void BelongToGeom_i::SetElementType(ElementType theType){
|
void BelongToGeom_i::SetElementType(ElementType theType){
|
||||||
myBelongToGeomPtr->SetType(SMDSAbs_ElementType(theType));
|
myBelongToGeomPtr->SetType(SMDSAbs_ElementType(theType));
|
||||||
|
TPythonDump()<<this<<".SetElementType("<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
FunctorType BelongToGeom_i::GetFunctorType()
|
FunctorType BelongToGeom_i::GetFunctorType()
|
||||||
@ -752,6 +753,7 @@ void BelongToGeom_i::SetShapeName( const char* theName )
|
|||||||
delete myShapeName;
|
delete myShapeName;
|
||||||
myShapeName = strdup( theName );
|
myShapeName = strdup( theName );
|
||||||
myBelongToGeomPtr->SetGeom( getShapeByName( myShapeName ) );
|
myBelongToGeomPtr->SetGeom( getShapeByName( myShapeName ) );
|
||||||
|
TPythonDump()<<this<<".SetShapeName('"<<theName<<"')";
|
||||||
}
|
}
|
||||||
|
|
||||||
char* BelongToGeom_i::GetShapeName()
|
char* BelongToGeom_i::GetShapeName()
|
||||||
@ -795,6 +797,7 @@ void BelongToSurface_i::SetSurface( GEOM::GEOM_Object_ptr theGeom, ElementType t
|
|||||||
}
|
}
|
||||||
|
|
||||||
myElementsOnSurfacePtr->SetSurface( TopoDS_Shape(), (SMDSAbs_ElementType)theType );
|
myElementsOnSurfacePtr->SetSurface( TopoDS_Shape(), (SMDSAbs_ElementType)theType );
|
||||||
|
TPythonDump()<<this<<".SetSurface("<<theGeom<<",'"<<theType<<"')";
|
||||||
}
|
}
|
||||||
|
|
||||||
void BelongToSurface_i::SetShapeName( const char* theName, ElementType theType )
|
void BelongToSurface_i::SetShapeName( const char* theName, ElementType theType )
|
||||||
@ -802,6 +805,7 @@ void BelongToSurface_i::SetShapeName( const char* theName, ElementType theType )
|
|||||||
delete myShapeName;
|
delete myShapeName;
|
||||||
myShapeName = strdup( theName );
|
myShapeName = strdup( theName );
|
||||||
myElementsOnSurfacePtr->SetSurface( getShapeByName( myShapeName ), (SMDSAbs_ElementType)theType );
|
myElementsOnSurfacePtr->SetSurface( getShapeByName( myShapeName ), (SMDSAbs_ElementType)theType );
|
||||||
|
TPythonDump()<<this<<".SetShapeName('"<<theName<<"',"<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
char* BelongToSurface_i::GetShapeName()
|
char* BelongToSurface_i::GetShapeName()
|
||||||
@ -812,6 +816,7 @@ char* BelongToSurface_i::GetShapeName()
|
|||||||
void BelongToSurface_i::SetTolerance( CORBA::Double theToler )
|
void BelongToSurface_i::SetTolerance( CORBA::Double theToler )
|
||||||
{
|
{
|
||||||
myElementsOnSurfacePtr->SetTolerance( theToler );
|
myElementsOnSurfacePtr->SetTolerance( theToler );
|
||||||
|
TPythonDump()<<this<<".SetTolerance("<<theToler<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
CORBA::Double BelongToSurface_i::GetTolerance()
|
CORBA::Double BelongToSurface_i::GetTolerance()
|
||||||
@ -832,6 +837,7 @@ BelongToPlane_i::BelongToPlane_i()
|
|||||||
void BelongToPlane_i::SetPlane( GEOM::GEOM_Object_ptr theGeom, ElementType theType )
|
void BelongToPlane_i::SetPlane( GEOM::GEOM_Object_ptr theGeom, ElementType theType )
|
||||||
{
|
{
|
||||||
BelongToSurface_i::SetSurface( theGeom, theType );
|
BelongToSurface_i::SetSurface( theGeom, theType );
|
||||||
|
TPythonDump()<<this<<".SetPlane("<<theGeom<<","<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
FunctorType BelongToPlane_i::GetFunctorType()
|
FunctorType BelongToPlane_i::GetFunctorType()
|
||||||
@ -852,6 +858,7 @@ BelongToCylinder_i::BelongToCylinder_i()
|
|||||||
void BelongToCylinder_i::SetCylinder( GEOM::GEOM_Object_ptr theGeom, ElementType theType )
|
void BelongToCylinder_i::SetCylinder( GEOM::GEOM_Object_ptr theGeom, ElementType theType )
|
||||||
{
|
{
|
||||||
BelongToSurface_i::SetSurface( theGeom, theType );
|
BelongToSurface_i::SetSurface( theGeom, theType );
|
||||||
|
TPythonDump()<<this<<".SetCylinder("<<theGeom<<","<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
FunctorType BelongToCylinder_i::GetFunctorType()
|
FunctorType BelongToCylinder_i::GetFunctorType()
|
||||||
@ -883,6 +890,7 @@ void LyingOnGeom_i::SetGeom( GEOM::GEOM_Object_ptr theGeom )
|
|||||||
GEOM::GEOM_Gen_var aGEOMGen = SMESH_Gen_i::GetGeomEngine();
|
GEOM::GEOM_Gen_var aGEOMGen = SMESH_Gen_i::GetGeomEngine();
|
||||||
TopoDS_Shape aLocShape = aSMESHGen->GetShapeReader()->GetShape( aGEOMGen, theGeom );
|
TopoDS_Shape aLocShape = aSMESHGen->GetShapeReader()->GetShape( aGEOMGen, theGeom );
|
||||||
myLyingOnGeomPtr->SetGeom( aLocShape );
|
myLyingOnGeomPtr->SetGeom( aLocShape );
|
||||||
|
TPythonDump()<<this<<".SetGeom("<<theGeom<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
void LyingOnGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
void LyingOnGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
||||||
@ -892,6 +900,7 @@ void LyingOnGeom_i::SetGeom( const TopoDS_Shape& theShape )
|
|||||||
|
|
||||||
void LyingOnGeom_i::SetElementType(ElementType theType){
|
void LyingOnGeom_i::SetElementType(ElementType theType){
|
||||||
myLyingOnGeomPtr->SetType(SMDSAbs_ElementType(theType));
|
myLyingOnGeomPtr->SetType(SMDSAbs_ElementType(theType));
|
||||||
|
TPythonDump()<<this<<".SetElementType("<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
FunctorType LyingOnGeom_i::GetFunctorType()
|
FunctorType LyingOnGeom_i::GetFunctorType()
|
||||||
@ -904,6 +913,7 @@ void LyingOnGeom_i::SetShapeName( const char* theName )
|
|||||||
delete myShapeName;
|
delete myShapeName;
|
||||||
myShapeName = strdup( theName );
|
myShapeName = strdup( theName );
|
||||||
myLyingOnGeomPtr->SetGeom( getShapeByName( myShapeName ) );
|
myLyingOnGeomPtr->SetGeom( getShapeByName( myShapeName ) );
|
||||||
|
TPythonDump()<<this<<".SetShapeName('"<<theName<<"')";
|
||||||
}
|
}
|
||||||
|
|
||||||
char* LyingOnGeom_i::GetShapeName()
|
char* LyingOnGeom_i::GetShapeName()
|
||||||
@ -986,10 +996,12 @@ void RangeOfIds_i::SetRange( const SMESH::long_array& theIds )
|
|||||||
CORBA::Long iEnd = theIds.length();
|
CORBA::Long iEnd = theIds.length();
|
||||||
for ( CORBA::Long i = 0; i < iEnd; i++ )
|
for ( CORBA::Long i = 0; i < iEnd; i++ )
|
||||||
myRangeOfIdsPtr->AddToRange( theIds[ i ] );
|
myRangeOfIdsPtr->AddToRange( theIds[ i ] );
|
||||||
|
TPythonDump()<<this<<".SetRange("<<theIds<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
CORBA::Boolean RangeOfIds_i::SetRangeStr( const char* theRange )
|
CORBA::Boolean RangeOfIds_i::SetRangeStr( const char* theRange )
|
||||||
{
|
{
|
||||||
|
TPythonDump()<<this<<".SetRangeStr('"<<theRange<<"')";
|
||||||
return myRangeOfIdsPtr->SetRangeStr(
|
return myRangeOfIdsPtr->SetRangeStr(
|
||||||
TCollection_AsciiString( (Standard_CString)theRange ) );
|
TCollection_AsciiString( (Standard_CString)theRange ) );
|
||||||
}
|
}
|
||||||
@ -1004,6 +1016,7 @@ char* RangeOfIds_i::GetRangeStr()
|
|||||||
void RangeOfIds_i::SetElementType( ElementType theType )
|
void RangeOfIds_i::SetElementType( ElementType theType )
|
||||||
{
|
{
|
||||||
myRangeOfIdsPtr->SetType( SMDSAbs_ElementType( theType ) );
|
myRangeOfIdsPtr->SetType( SMDSAbs_ElementType( theType ) );
|
||||||
|
TPythonDump()<<this<<".SetElementType("<<theType<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
FunctorType RangeOfIds_i::GetFunctorType()
|
FunctorType RangeOfIds_i::GetFunctorType()
|
||||||
@ -1028,7 +1041,7 @@ Comparator_i::~Comparator_i()
|
|||||||
void Comparator_i::SetMargin( CORBA::Double theValue )
|
void Comparator_i::SetMargin( CORBA::Double theValue )
|
||||||
{
|
{
|
||||||
myComparatorPtr->SetMargin( theValue );
|
myComparatorPtr->SetMargin( theValue );
|
||||||
TPythonDump()<<this<<".SetMargin("<<float(theValue)<<")";
|
TPythonDump()<<this<<".SetMargin("<<theValue<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
CORBA::Double Comparator_i::GetMargin()
|
CORBA::Double Comparator_i::GetMargin()
|
||||||
@ -1041,7 +1054,7 @@ void Comparator_i::SetNumFunctor( NumericalFunctor_ptr theFunct )
|
|||||||
if ( myNumericalFunctor )
|
if ( myNumericalFunctor )
|
||||||
myNumericalFunctor->Destroy();
|
myNumericalFunctor->Destroy();
|
||||||
|
|
||||||
myNumericalFunctor = dynamic_cast<NumericalFunctor_i*>( SMESH_Gen_i::GetServant( theFunct ).in() );
|
myNumericalFunctor = DownCast<NumericalFunctor_i*>(theFunct);
|
||||||
|
|
||||||
if ( myNumericalFunctor )
|
if ( myNumericalFunctor )
|
||||||
{
|
{
|
||||||
@ -1107,7 +1120,7 @@ EqualTo_i::EqualTo_i()
|
|||||||
void EqualTo_i::SetTolerance( CORBA::Double theToler )
|
void EqualTo_i::SetTolerance( CORBA::Double theToler )
|
||||||
{
|
{
|
||||||
myEqualToPtr->SetTolerance( theToler );
|
myEqualToPtr->SetTolerance( theToler );
|
||||||
TPythonDump()<<this<<".SetTolerance("<<float(theToler)<<")";
|
TPythonDump()<<this<<".SetTolerance("<<theToler<<")";
|
||||||
}
|
}
|
||||||
|
|
||||||
CORBA::Double EqualTo_i::GetTolerance()
|
CORBA::Double EqualTo_i::GetTolerance()
|
||||||
@ -1822,6 +1835,10 @@ CORBA::Boolean Filter_i::SetCriteria( const SMESH::Filter::Criteria& theCriteria
|
|||||||
ElementType aTypeOfElem = theCriteria[ i ].TypeOfElement;
|
ElementType aTypeOfElem = theCriteria[ i ].TypeOfElement;
|
||||||
long aPrecision = theCriteria[ i ].Precision;
|
long aPrecision = theCriteria[ i ].Precision;
|
||||||
|
|
||||||
|
TPythonDump()<<this<<".SetCriteria(SMESH.Filter.Criteria("<<
|
||||||
|
aCriterion<<","<<aCompare<<","<<aThreshold<<","<<aUnary<<","<<aBinary<<","<<
|
||||||
|
aTolerance<<",'"<<aThresholdStr<<"',"<<aTypeOfElem<<","<<aPrecision<<")";
|
||||||
|
|
||||||
SMESH::Predicate_ptr aPredicate = SMESH::Predicate::_nil();
|
SMESH::Predicate_ptr aPredicate = SMESH::Predicate::_nil();
|
||||||
SMESH::NumericalFunctor_ptr aFunctor = SMESH::NumericalFunctor::_nil();
|
SMESH::NumericalFunctor_ptr aFunctor = SMESH::NumericalFunctor::_nil();
|
||||||
|
|
||||||
@ -2452,6 +2469,8 @@ Filter_ptr FilterLibrary_i::Copy( const char* theFilterName )
|
|||||||
aRes = myFilterMgr->CreateFilter();
|
aRes = myFilterMgr->CreateFilter();
|
||||||
aRes->SetCriteria( aCriteriaVar.inout() );
|
aRes->SetCriteria( aCriteriaVar.inout() );
|
||||||
|
|
||||||
|
TPythonDump()<<this<<".Copy('"<<theFilterName<<"')";
|
||||||
|
|
||||||
return aRes;
|
return aRes;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2463,6 +2482,7 @@ void FilterLibrary_i::SetFileName( const char* theFileName )
|
|||||||
{
|
{
|
||||||
delete myFileName;
|
delete myFileName;
|
||||||
myFileName = strdup( theFileName );
|
myFileName = strdup( theFileName );
|
||||||
|
TPythonDump()<<this<<".SetFileName('"<<theFileName<<"')";
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
@ -2499,6 +2519,8 @@ CORBA::Boolean FilterLibrary_i::Add( const char* theFilterName, Filter_ptr theFi
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
aSection.appendChild( aFilterItem );
|
aSection.appendChild( aFilterItem );
|
||||||
|
if(Filter_i* aFilter = DownCast<Filter_i*>(theFilter))
|
||||||
|
TPythonDump()<<this<<".Add('"<<theFilterName<<"',"<<aFilter<<")";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2527,6 +2549,7 @@ CORBA::Boolean FilterLibrary_i::AddEmpty( const char* theFilterName, ElementType
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
aSection.appendChild( aFilterItem );
|
aSection.appendChild( aFilterItem );
|
||||||
|
TPythonDump()<<this<<".AddEmpty('"<<theFilterName<<"',"<<theType<<")";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2543,6 +2566,7 @@ CORBA::Boolean FilterLibrary_i::Delete ( const char* theFilterName )
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
aParentNode.removeChild( aFilterNode );
|
aParentNode.removeChild( aFilterNode );
|
||||||
|
TPythonDump()<<this<<".Delete('"<<theFilterName<<"')";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2565,6 +2589,8 @@ CORBA::Boolean FilterLibrary_i::Replace( const char* theFilterName,
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
aFilterItem.ReplaceElement( aNewItem );
|
aFilterItem.ReplaceElement( aNewItem );
|
||||||
|
if(Filter_i* aFilter = DownCast<Filter_i*>(theFilter))
|
||||||
|
TPythonDump()<<this<<".Replace('"<<theFilterName<<"',"<<theNewName<<"',"<<aFilter<<")";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2587,6 +2613,7 @@ CORBA::Boolean FilterLibrary_i::Save()
|
|||||||
aWriter << myDoc;
|
aWriter << myDoc;
|
||||||
fclose( aOutFile );
|
fclose( aOutFile );
|
||||||
|
|
||||||
|
TPythonDump()<<this<<".Save()";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2597,6 +2624,7 @@ CORBA::Boolean FilterLibrary_i::Save()
|
|||||||
CORBA::Boolean FilterLibrary_i::SaveAs( const char* aFileName )
|
CORBA::Boolean FilterLibrary_i::SaveAs( const char* aFileName )
|
||||||
{
|
{
|
||||||
myFileName = strdup ( aFileName );
|
myFileName = strdup ( aFileName );
|
||||||
|
TPythonDump()<<this<<".SaveAs('"<<aFileName<<"')";
|
||||||
return Save();
|
return Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -428,4 +428,16 @@ private:
|
|||||||
std::map < int, Handle(TColStd_HSequenceOfAsciiString) > myPythonScripts;
|
std::map < int, Handle(TColStd_HSequenceOfAsciiString) > myPythonScripts;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
namespace SMESH
|
||||||
|
{
|
||||||
|
template<class T>
|
||||||
|
T
|
||||||
|
DownCast(CORBA::Object_ptr theArg)
|
||||||
|
{
|
||||||
|
return dynamic_cast<T>(SMESH_Gen_i::GetServant(theArg).in());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -23,63 +23,79 @@
|
|||||||
#include <SALOMEconfig.h>
|
#include <SALOMEconfig.h>
|
||||||
#include CORBA_SERVER_HEADER(SMESH_Mesh)
|
#include CORBA_SERVER_HEADER(SMESH_Mesh)
|
||||||
|
|
||||||
#include <TCollection_AsciiString.hxx>
|
#include <sstream>
|
||||||
|
|
||||||
namespace SMESH
|
namespace SMESH
|
||||||
{
|
{
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
const char* theArg);
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
int theArg);
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
float theArg);
|
|
||||||
|
|
||||||
class FilterLibrary_i;
|
class FilterLibrary_i;
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::FilterLibrary_i* theArg);
|
|
||||||
|
|
||||||
class FilterManager_i;
|
class FilterManager_i;
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::FilterManager_i* theArg);
|
|
||||||
|
|
||||||
class Filter_i;
|
class Filter_i;
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::Filter_i* theArg);
|
|
||||||
|
|
||||||
class Functor_i;
|
class Functor_i;
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
SMESH::Functor_i* theArg);
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
CORBA::Object_ptr theArg);
|
|
||||||
|
|
||||||
TCollection_AsciiString&
|
|
||||||
operator<<(TCollection_AsciiString& theString,
|
|
||||||
const SMESH::long_array& theArg);
|
|
||||||
|
|
||||||
class TPythonDump
|
class TPythonDump
|
||||||
{
|
{
|
||||||
TCollection_AsciiString myString;
|
std::ostringstream myStream;
|
||||||
static size_t myCounter;
|
static size_t myCounter;
|
||||||
public:
|
public:
|
||||||
TPythonDump();
|
TPythonDump();
|
||||||
virtual ~TPythonDump();
|
virtual ~TPythonDump();
|
||||||
|
|
||||||
template<class T>
|
TPythonDump&
|
||||||
TCollection_AsciiString&
|
operator<<(long int theArg){
|
||||||
operator<<(T theArg){
|
myStream<<theArg;
|
||||||
return myString<<theArg;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(int theArg){
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(double theArg){
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(float theArg){
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(const void* theArg){
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(const char* theArg){
|
||||||
|
myStream<<theArg;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(const SMESH::ElementType& theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(const SMESH::long_array& theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(CORBA::Object_ptr theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(SMESH::FilterLibrary_i* theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(SMESH::FilterManager_i* theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(SMESH::Filter_i* theArg);
|
||||||
|
|
||||||
|
TPythonDump&
|
||||||
|
operator<<(SMESH::Functor_i* theArg);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user