0022468: [CEA 1048] IMP GEOM: creating groups on materials at STEP import

Additional fix to make correct Python dump when material groups are created
This commit is contained in:
vsr 2014-04-04 10:57:53 +04:00
parent 6833ee2b3e
commit 2df46277e9
3 changed files with 23 additions and 6 deletions

View File

@ -125,6 +125,22 @@ namespace GEOM
return *this;
}
TPythonDump& TPythonDump::operator<< (const Handle(TColStd_HSequenceOfTransient)& theObjects)
{
Standard_Integer aLength = theObjects->Length();
if ( aLength > 1 ) {
myStream << "[";
}
for ( Standard_Integer i = 1; i <= aLength; i++ ) {
*this << Handle(GEOM_Object)::DownCast(theObjects->Value(i));
if ( i < aLength ) myStream << ", ";
}
if ( aLength > 1 ) {
myStream << "]";
}
return *this;
}
TPythonDump& TPythonDump::operator<< (const GEOM_BaseObject* theObject)
{
if ( !theObject ) {

View File

@ -56,6 +56,7 @@ namespace GEOM
Standard_EXPORT TPythonDump& operator<< (const TCollection_AsciiString theArg);
Standard_EXPORT TPythonDump& operator<< (const TopAbs_ShapeEnum theArg);
Standard_EXPORT TPythonDump& operator<< (const Handle(GEOM_BaseObject)& theObject);
Standard_EXPORT TPythonDump& operator<< (const Handle(TColStd_HSequenceOfTransient)& theObjects);
Standard_EXPORT TPythonDump& operator<< (const GEOM_BaseObject* theObject);
};

View File

@ -303,17 +303,17 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IInsertOperations::Import
if (theFormatName != "IGES_UNIT") {
GEOM::TPythonDump pd (aFunction);
if (theFormatName == "BREP")
pd << anImported << " = geompy.ImportBREP(\"" << theFileName.ToCString() << "\")";
pd << aSeq << " = geompy.ImportBREP(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "IGES")
pd << anImported << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\")";
pd << aSeq << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "IGES_SCALE")
pd << anImported << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\", True)";
pd << aSeq << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\", True)";
else if (theFormatName == "STEP")
pd << anImported << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\")";
pd << aSeq << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "STEP_SCALE")
pd << anImported << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\", True)";
pd << aSeq << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\", True)";
else {
pd << anImported << " = geompy.ImportFile(\""
pd << aSeq << " = geompy.ImportFile(\""
<< theFileName.ToCString() << "\", \"" << theFormatName.ToCString() << "\")";
}
}