#include <TColStd_HSequenceOfInteger.hxx>
#include <TCollection_AsciiString.hxx>
+#include <SMESH_Comment.hxx>
#ifdef _DEBUG_
return *this;
}
+ TPythonDump&
+ TPythonDump::
+ operator<<(const SMESH::GeometryType& theArg)
+ {
+ myStream<<"SMESH.";
+ switch(theArg){
+ case Geom_POINT: myStream<<"Geom_POINT"; break;
+ case Geom_EDGE: myStream<<"Geom_EDGE"; break;
+ case Geom_TRIANGLE: myStream<<"Geom_TRIANGLE"; break;
+ case Geom_QUADRANGLE: myStream<<"Geom_QUADRANGLE"; break;
+ case Geom_POLYGON: myStream<<"Geom_POLYGON"; break;
+ case Geom_TETRA: myStream<<"Geom_TETRA"; break;
+ case Geom_PYRAMID: myStream<<"Geom_PYRAMID"; break;
+ case Geom_HEXA: myStream<<"Geom_HEXA"; break;
+ case Geom_PENTA: myStream<<"Geom_PENTA"; break;
+ case Geom_POLYHEDRA: myStream<<"Geom_POLYHEDRA"; break;
+ }
+ return *this;
+ }
+
template<class TArray>
void DumpArray(const TArray& theArray, std::ostringstream & theStream)
{
case FT_Taper: myStream<< "aTaper"; break;
case FT_Skew: myStream<< "aSkew"; break;
case FT_Area: myStream<< "aArea"; break;
+ case FT_Volume3D: myStream<< "aVolume3D"; break;
case FT_FreeBorders: myStream<< "aFreeBorders"; break;
case FT_FreeEdges: myStream<< "aFreeEdges"; break;
case FT_FreeNodes: myStream<< "aFreeNodes"; break;
+ case FT_FreeFaces: myStream<< "aFreeFaces"; break;
case FT_MultiConnection: myStream<< "aMultiConnection"; break;
case FT_MultiConnection2D:myStream<< "aMultiConnection2D";break;
case FT_Length: myStream<< "aLength"; break;
case FT_LyingOnGeom: myStream<< "aLyingOnGeom"; break;
case FT_RangeOfIds: myStream<< "aRangeOfIds"; break;
case FT_BadOrientedVolume:myStream<< "aBadOrientedVolume";break;
+ case FT_LinearOrQuadratic:myStream<< "aLinearOrQuadratic";break;
+ case FT_GroupColor: myStream<< "aGroupColor"; break;
+ case FT_ElemGeomType: myStream<< "anElemGeomType"; 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;
+ case FT_Undefined:
+ default: myStream<< "anUndefined"; break;
}
myStream<<theArg;
}
if (aSeq->Value(aLen) < aScriptLength)
anUpdatedScript += aScript.SubString(aSeq->Value(aLen) + 1, aScriptLength);
-
- //SMESH_Gen_i* aSMESHGenI = SMESH_Gen_i::GetSMESHGen();
- if( !CORBA::is_nil(theStudy) )
+ // Set colors
+ SALOMEDS::SObject_var aComp = theStudy->FindComponent(ComponentDataType());
+ if( !CORBA::is_nil(aComp) )
{
- SALOMEDS::SObject_var aComp = theStudy->FindComponent(ComponentDataType());
- if( !CORBA::is_nil(aComp) )
+ SALOMEDS::ChildIterator_var Itr = theStudy->NewChildIterator(aComp);
+ for( Itr->InitEx(true); Itr->More(); Itr->Next() )
{
- SALOMEDS::ChildIterator_var Itr = theStudy->NewChildIterator(aComp);
- for( Itr->InitEx(true); Itr->More(); Itr->Next() )
+ SALOMEDS::SObject_var aSObj = Itr->Value();
+ SMESH::SMESH_Mesh_var aMesh = SMESH::SMESH_Mesh::_narrow( SObjectToObject( aSObj ) );
+ // mesh auto color
+ if( !CORBA::is_nil(aMesh) && aMesh->GetAutoColor() )
{
- SALOMEDS::SObject_var aSObj = Itr->Value();
- CORBA::String_var aName = aSObj->GetName();
-
- SMESH::SMESH_Mesh_var aMesh = SMESH::SMESH_Mesh::_narrow( SMESH_Gen_i::SObjectToObject( aSObj ) );
- if( !CORBA::is_nil(aMesh) )
- {
- bool isAutoColor = aMesh->GetAutoColor();
- if( isAutoColor )
- {
- anUpdatedScript += "\n\t";
- anUpdatedScript += (char*)aName.in();
- anUpdatedScript += ".SetAutoColor(1)";
- }
- }
-
- SMESH::SMESH_GroupBase_var aGroup = SMESH::SMESH_GroupBase::_narrow( SMESH_Gen_i::SObjectToObject( aSObj ) );
- if( !CORBA::is_nil(aGroup) )
- {
- SALOMEDS::Color aColor = aGroup->GetColor();
- if ( aColor.R > 0 || aColor.G > 0 || aColor.B > 0 )
- {
- anUpdatedScript += "\n\t";
- anUpdatedScript += (char*)aName.in();
- anUpdatedScript += ".SetColor(SALOMEDS.Color(";
- anUpdatedScript += aColor.R;
- anUpdatedScript += ",";
- anUpdatedScript += aColor.G;
- anUpdatedScript += ",";
- anUpdatedScript += aColor.B;
- anUpdatedScript += "))";
- }
- }
+ CORBA::String_var anEntry = aSObj->GetID();
+ anUpdatedScript +=
+ SMESH_Comment("\n\t") << theObjectNames(anEntry.inout()) << ".SetAutoColor(1)";
+ }
+ SMESH::SMESH_GroupBase_var aGroup = SMESH::SMESH_GroupBase::_narrow( SObjectToObject(aSObj));
+ if( !CORBA::is_nil(aGroup) )
+ {
+ SALOMEDS::Color aColor = aGroup->GetColor();
+ if ( aColor.R > 0 || aColor.G > 0 || aColor.B > 0 )
+ {
+ CORBA::String_var anEntry = aSObj->GetID();
+ anUpdatedScript += SMESH_Comment("\n\t")
+ << theObjectNames(anEntry.inout()) << ".SetColor(SALOMEDS.Color("
+ << aColor.R <<", "<< aColor.G <<", "<< aColor.B <<" ))";
+ }
}
}
}